Class CatalogJpaAutoConfiguration
java.lang.Object
com.broadleafcommerce.catalog.provider.jpa.autoconfigure.CatalogJpaAutoConfiguration
@Configuration
@ConditionalOnProperty(name="broadleaf.database.provider",
havingValue="jpa")
@EnableJpaRepositories(basePackageClasses=JpaCategoryProductRepository.class,
repositoryFactoryBeanClass=com.broadleafcommerce.data.tracking.jpa.filtering.narrow.factory.JpaTrackableRepositoryFactoryBean.class,
excludeFilters=,
entityManagerFactoryRef="catalogEntityManagerFactory",
transactionManagerRef="catalogTransactionManager")
@JpaEntityScan(basePackages="com.broadleafcommerce.catalog.provider.jpa.domain",
routePackage="com.broadleafcommerce.catalog")
@EnableConfigurationProperties({CatalogProperties.class,org.springframework.boot.autoconfigure.integration.IntegrationProperties.class,ProductTagRepositoryProperties.class,PromotionalCategoryProductRepositoryProperties.class,PromotionalProductRepositoryProperties.class,CategoryProductRepositoryProperties.class,CategoryAssetRepositoryProperties.class,CategoryRepositoryProperties.class,OptionTemplateRepositoryProperties.class,JpaProductCharacteristicPropagationProperties.class})
@JpaDataRoute(boundPropertiesType=CatalogProperties.class,
routePackage="com.broadleafcommerce.catalog",
routeKey="catalog",
supportingRouteTypes={com.broadleafcommerce.data.tracking.core.data.TrackingDataRouteSupporting.class,com.broadleafcommerce.common.messaging.data.MessagingDataRouteSupporting.class,com.broadleafcommerce.data.tracking.core.data.CatalogDataRouteSupporting.class,com.broadleafcommerce.translation.data.TranslationDataRouteSupporting.class,com.broadleafcommerce.bulk.data.BulkDataRouteSupporting.class,com.broadleafcommerce.common.dataexport.data.ExportDataRouteSupporting.class,com.broadleafcommerce.common.dataimport.data.ImportDataRouteSupporting.class,com.broadleafcommerce.data.tracking.core.data.MarketplaceDataRouteSupporting.class})
public class CatalogJpaAutoConfiguration
extends Object
The main Jpa auto configuration that initializes the out of the box Jpa repositories
- Author:
- Jeff Fischer
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncom.broadleafcommerce.data.tracking.jpa.persistence.NativeSqlStrategycom.broadleafcommerce.data.tracking.jpa.persistence.NativeSqlStrategydefaultSimpleProductTagPropagationUpdateNativeSqlStrategy(com.fasterxml.jackson.databind.ObjectMapper fieldChangeMapper, com.broadleafcommerce.data.tracking.jpa.filtering.propagation.support.PropagationUpdateNativeSqlHelperUtility propagationUpdateNativeSqlUtility) com.broadleafcommerce.data.tracking.jpa.persistence.NativeSqlStrategycom.broadleafcommerce.data.tracking.jpa.persistence.NativeSqlStrategyjpaBusinessTypeRepositoryImpl(com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager, com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder filterRulesCriteriaBuilder) jpaCategoryAssetRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, List<com.broadleafcommerce.data.tracking.core.service.RsqlQueryTransformer> rsqlQueryTransformers, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaCriteriaBuilderRsqlVisitor rsqlVisitor, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder catalogFilterRuleCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) jpaCategoryProductRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, List<com.broadleafcommerce.data.tracking.core.service.RsqlQueryTransformer> rsqlQueryTransformers, cz.jirutka.rsql.parser.ast.RSQLVisitor<jakarta.persistence.criteria.Predicate, Class<?>> rsqlVisitor, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder catalogFilterRuleCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) jpaCategoryRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder catalogFilterRuleCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) jpaDataDrivenEnumRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder filterRulesCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) jpaOptionTemplateRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder catalogFilterRuleCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) jpaProductAssetRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, List<com.broadleafcommerce.data.tracking.core.service.RsqlQueryTransformer> rsqlQueryTransformers, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaCriteriaBuilderRsqlVisitor rsqlVisitor, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder catalogFilterRuleCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) jpaProductCharacteristicRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder filterRulesCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) jpaProductRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, List<com.broadleafcommerce.data.tracking.core.service.RsqlQueryTransformer> rsqlQueryTransformers, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaCriteriaBuilderRsqlVisitor rsqlVisitor, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder filterRulesCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) jpaProductTagRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, List<com.broadleafcommerce.data.tracking.core.service.RsqlQueryTransformer> rsqlQueryTransformers, cz.jirutka.rsql.parser.ast.RSQLVisitor<jakarta.persistence.criteria.Predicate, Class<?>> rsqlVisitor, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder catalogFilterRuleCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) jpaPromotionalCategoryProductRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder catalogFilterRuleCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) jpaPromotionalProductRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, List<com.broadleafcommerce.data.tracking.core.service.RsqlQueryTransformer> rsqlQueryTransformers, cz.jirutka.rsql.parser.ast.RSQLVisitor<jakarta.persistence.criteria.Predicate, Class<?>> rsqlVisitor, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder catalogFilterRuleCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) jpaVariantRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder filterRulesCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) com.broadleafcommerce.data.tracking.jpa.persistence.NativeSqlStrategycom.broadleafcommerce.data.tracking.jpa.persistence.NativeSqlStrategycom.broadleafcommerce.data.tracking.jpa.persistence.NativeSqlStrategyproductCharacteristicDisabledHierarchyPropagationHandler(com.broadleafcommerce.common.extension.TypeFactory typeFactory) com.broadleafcommerce.data.tracking.core.filtering.fetch.rsql.CatalogFilterRulesMappingproductSimpleTagsUpdatePropagator(com.broadleafcommerce.common.extension.TypeFactory typeFactory)
-
Constructor Details
-
CatalogJpaAutoConfiguration
public CatalogJpaAutoConfiguration()
-
-
Method Details
-
jpaCategoryProductRepositoryImpl
@Bean @ConditionalOnMissingBean public CustomizedCategoryProductRepository<JpaCategoryProduct> jpaCategoryProductRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, List<com.broadleafcommerce.data.tracking.core.service.RsqlQueryTransformer> rsqlQueryTransformers, cz.jirutka.rsql.parser.ast.RSQLVisitor<jakarta.persistence.criteria.Predicate, Class<?>> rsqlVisitor, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder catalogFilterRuleCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) -
jpaProductTagRepositoryImpl
@Bean @ConditionalOnMissingBean public CustomizedProductTagRepository<JpaProductTag> jpaProductTagRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, List<com.broadleafcommerce.data.tracking.core.service.RsqlQueryTransformer> rsqlQueryTransformers, cz.jirutka.rsql.parser.ast.RSQLVisitor<jakarta.persistence.criteria.Predicate, Class<?>> rsqlVisitor, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder catalogFilterRuleCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) -
jpaPromotionalProductRepositoryImpl
@Bean @ConditionalOnMissingBean public CustomizedPromotionalProductRepository<JpaPromotionalProduct> jpaPromotionalProductRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, List<com.broadleafcommerce.data.tracking.core.service.RsqlQueryTransformer> rsqlQueryTransformers, cz.jirutka.rsql.parser.ast.RSQLVisitor<jakarta.persistence.criteria.Predicate, Class<?>> rsqlVisitor, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder catalogFilterRuleCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) -
jpaProductAssetRepositoryImpl
@Bean @ConditionalOnMissingBean public CustomizedProductAssetRepository<JpaProductAsset> jpaProductAssetRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, List<com.broadleafcommerce.data.tracking.core.service.RsqlQueryTransformer> rsqlQueryTransformers, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaCriteriaBuilderRsqlVisitor rsqlVisitor, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder catalogFilterRuleCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) -
jpaCategoryAssetRepositoryImpl
@Bean @ConditionalOnMissingBean public CustomizedCategoryAssetRepository<JpaCategoryAsset> jpaCategoryAssetRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, List<com.broadleafcommerce.data.tracking.core.service.RsqlQueryTransformer> rsqlQueryTransformers, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaCriteriaBuilderRsqlVisitor rsqlVisitor, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder catalogFilterRuleCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) -
jpaProductRepositoryImpl
@Bean @ConditionalOnMissingBean public CustomizedProductRepository<JpaProduct> jpaProductRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, List<com.broadleafcommerce.data.tracking.core.service.RsqlQueryTransformer> rsqlQueryTransformers, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaCriteriaBuilderRsqlVisitor rsqlVisitor, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder filterRulesCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) -
jpaVariantRepositoryImpl
@Bean @ConditionalOnMissingBean public CustomizedVariantRepository<JpaVariant> jpaVariantRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder filterRulesCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) -
jpaPromotionalCategoryProductRepositoryImpl
@Bean @ConditionalOnMissingBean public CustomizedPromotionalCategoryProductRepository<JpaPromotionalCategoryProduct> jpaPromotionalCategoryProductRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder catalogFilterRuleCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) -
jpaOptionTemplateRepositoryImpl
@Bean @ConditionalOnMissingBean public CustomizedOptionTemplateRepository<JpaOptionTemplate> jpaOptionTemplateRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder catalogFilterRuleCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) -
jpaCategoryRepositoryImpl
@Bean @ConditionalOnMissingBean public CustomizedCategoryRepository<JpaCategory> jpaCategoryRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder catalogFilterRuleCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) -
productFilterRulesExtractor
@Bean("productFilterRulesExtractor") @ConditionalOnMissingBean(name="productFilterRulesExtractor") public com.broadleafcommerce.data.tracking.core.filtering.fetch.rsql.CatalogFilterRulesMapping productFilterRulesExtractor() -
jpaDataDrivenEnumRepositoryImpl
@Bean @ConditionalOnMissingBean public CustomizedDataDrivenEnumRepository<JpaDataDrivenEnum> jpaDataDrivenEnumRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder filterRulesCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) -
jpaBusinessTypeRepositoryImpl
@Bean @ConditionalOnMissingBean public CustomizedBusinessTypeRepository<JpaBusinessType> jpaBusinessTypeRepositoryImpl(com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager, com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder filterRulesCriteriaBuilder) -
jpaProductCharacteristicRepositoryImpl
@Bean @ConditionalOnMissingBean public CustomizedProductCharacteristicRepository<JpaProductCharacteristic> jpaProductCharacteristicRepositoryImpl(com.broadleafcommerce.data.tracking.core.TrackableBehaviorUtil behaviorUtil, com.broadleafcommerce.data.tracking.jpa.filtering.fetch.rsql.JpaFiltersCriteriaBuilder filterRulesCriteriaBuilder, com.broadleafcommerce.common.jpa.RepositoryEntityTypeManager repositoryEntityTypeManager) -
jpaCatalogQueryHelper
-
defaultCategoryAncestorHierarchyNativeSqlStrategy
@Bean public com.broadleafcommerce.data.tracking.jpa.persistence.NativeSqlStrategy defaultCategoryAncestorHierarchyNativeSqlStrategy(@Value("${broadleaf.jpa.id.type:STRING}") String idType) -
hsqlCategoryAncestorHierarchyNativeSqlStrategy
@Bean public com.broadleafcommerce.data.tracking.jpa.persistence.NativeSqlStrategy hsqlCategoryAncestorHierarchyNativeSqlStrategy(@Value("${broadleaf.jpa.id.type:STRING}") String idType) -
oracleCategoryAncestorHierarchyNativeSqlStrategy
@Bean public com.broadleafcommerce.data.tracking.jpa.persistence.NativeSqlStrategy oracleCategoryAncestorHierarchyNativeSqlStrategy(@Value("${broadleaf.jpa.id.type:STRING}") String idType) -
defaultProductUsingReferencedOptionTemplateNativeSqlStrategy
@Bean public com.broadleafcommerce.data.tracking.jpa.persistence.NativeSqlStrategy defaultProductUsingReferencedOptionTemplateNativeSqlStrategy(@Value("${broadleaf.jpa.id.type:STRING}") String idType) -
mysqlProductUsingReferencedOptionTemplateNativeSqlStrategy
@Bean public com.broadleafcommerce.data.tracking.jpa.persistence.NativeSqlStrategy mysqlProductUsingReferencedOptionTemplateNativeSqlStrategy(@Value("${broadleaf.jpa.id.type:STRING}") String idType) -
oracleProductUsingReferencedOptionTemplateNativeSqlStrategy
@Bean public com.broadleafcommerce.data.tracking.jpa.persistence.NativeSqlStrategy oracleProductUsingReferencedOptionTemplateNativeSqlStrategy(@Value("${broadleaf.jpa.id.type:STRING}") String idType) -
hsqlProductUsingReferencedOptionTemplateNativeSqlStrategy
@Bean public com.broadleafcommerce.data.tracking.jpa.persistence.NativeSqlStrategy hsqlProductUsingReferencedOptionTemplateNativeSqlStrategy(@Value("${broadleaf.jpa.id.type:STRING}") String idType) -
productCharacteristicDisabledHierarchyPropagationHandler
@Bean @ConditionalOnMissingBean(name="productCharacteristicDisabledHierarchyPropagationHandler") @ConditionalOnProperty(name="broadleaf.catalog.characteristic-propagation.enabled", havingValue="false", matchIfMissing=true) public JpaProductCharacteristicDisabledHierarchyPropagationHandler productCharacteristicDisabledHierarchyPropagationHandler(com.broadleafcommerce.common.extension.TypeFactory typeFactory) -
productCharacteristicDisabledPropagationHandler
@Bean @ConditionalOnMissingBean(name="productCharacteristicDisabledPropagationHandler") @ConditionalOnProperty(name="broadleaf.catalog.characteristic-propagation.enabled", havingValue="false", matchIfMissing=true) public JpaProductCharacteristicDisabledPropagationHandler productCharacteristicDisabledPropagationHandler() -
productSimpleTagsUpdatePropagator
@Bean @ConditionalOnMissingBean(name="productSimpleTagsUpdatePropagator") public JpaProductSimpleTagsUpdatePropagator productSimpleTagsUpdatePropagator(com.broadleafcommerce.common.extension.TypeFactory typeFactory) -
defaultSimpleProductTagPropagationUpdateNativeSqlStrategy
@Bean @ConditionalOnMissingBean(name="defaultSimpleProductTagPropagationUpdateNativeSqlStrategy") public DefaultSimpleProductTagPropagationUpdateNativeSqlStrategy defaultSimpleProductTagPropagationUpdateNativeSqlStrategy(@Autowired(required=false) @Nullable com.fasterxml.jackson.databind.ObjectMapper fieldChangeMapper, com.broadleafcommerce.data.tracking.jpa.filtering.propagation.support.PropagationUpdateNativeSqlHelperUtility propagationUpdateNativeSqlUtility)
-