Class SearchServiceAutoConfiguration
java.lang.Object
com.broadleafcommerce.search.core.service.autoconfigure.SearchServiceAutoConfiguration
@Configuration
@EnableConfigurationProperties({SpellCheckProperties.class,LoadSynonymProperties.class,LoadStopwordProperties.class,ExternalSearchTenantProperties.class,ExternalSearchRecommendationProperties.class,SSLVerificationProperties.class})
public class SearchServiceAutoConfiguration
extends Object
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncatalogSearchRecommendationProvider
(org.springframework.web.reactive.function.client.WebClient webClient, ExternalSearchRecommendationProperties properties, com.broadleafcommerce.common.extension.cache.CacheStateManager cacheStateManager, com.broadleafcommerce.common.extension.TypeFactory typeFactory, com.fasterxml.jackson.databind.ObjectMapper mapper) FieldDefinitionService<com.broadleafcommerce.search.api.domain.FieldDefinition>
fieldDefinitionService
(FieldDefinitionRepository<com.broadleafcommerce.data.tracking.core.Trackable> fieldDefinitionRepository, com.broadleafcommerce.data.tracking.core.service.RsqlCrudEntityHelper helper, com.broadleafcommerce.common.extension.cache.CacheStateManager cacheStateManager) RelevancyRuleUtils<com.broadleafcommerce.search.api.domain.RelevancyRule>
relevancyRuleUtils
(SearchSettingsUtils searchSettingsUtils, SettingsRelevancyRuleGroupService<com.broadleafcommerce.search.api.domain.SettingsRelevancyRuleGroup> settingsRelevancyRuleGroupService, RelevancyRuleGroupService<com.broadleafcommerce.search.api.domain.RelevancyRuleGroup> relevancyRuleGroupService, RelevancyRuleGroupRuleService<com.broadleafcommerce.search.api.domain.RelevancyRuleGroupRule> relevancyRuleGroupRuleService, RelevancyRuleService<com.broadleafcommerce.search.api.domain.RelevancyRule> relevancyRuleService, com.broadleafcommerce.search.autoconfigure.SearchSettingsProperties searchSettingsProperties) SearchCatalogAccessPolicyService<com.broadleafcommerce.search.api.domain.accesspolicy.SearchCatalogAccessPolicy>
searchCatalogAccessPolicyService
(SearchCatalogAccessPolicyRepository<com.broadleafcommerce.data.tracking.core.Trackable> repository, com.broadleafcommerce.data.tracking.core.service.RsqlCrudEntityHelper helper, com.broadleafcommerce.data.tracking.core.filtering.fetch.FilterParser<cz.jirutka.rsql.parser.ast.Node> parser, com.broadleafcommerce.common.extension.cache.CacheStateManager cacheStateManager) SearchFacetUtils<com.broadleafcommerce.search.api.domain.Facet>
searchFacetUtils
(SettingsFacetGroupService<com.broadleafcommerce.search.api.domain.SettingsFacetGroup> settingsFacetGroupService, FacetGroupService<com.broadleafcommerce.search.api.domain.FacetGroup> facetGroupService, FacetGroupFacetService<com.broadleafcommerce.search.api.domain.FacetGroupFacet> facetGroupFacetService, FacetService<com.broadleafcommerce.search.api.domain.Facet> facetService, com.broadleafcommerce.search.autoconfigure.SearchSettingsProperties searchSettingsProperties, SearchSettingsUtils searchSettingsUtils) searchSettingsUtils
(com.broadleafcommerce.resource.security.utils.service.AuthenticationUtils authenticationUtils, SearchSettingsService<com.broadleafcommerce.search.api.domain.SearchSettings> searchSettingsService, com.broadleafcommerce.data.tracking.core.web.ContextRequestHydrator contextRequestHydrator) searchTenantProvider
(org.springframework.web.reactive.function.client.WebClient webClient, ExternalSearchTenantProperties externalSearchTenantProperties) Supplier<org.springframework.security.oauth2.client.web.reactive.function.client.ServletOAuth2AuthorizedClientExchangeFilterFunction>
searchTransactionOauth2FilterFunctionSupplier
(org.springframework.security.oauth2.client.registration.ClientRegistrationRepository clientRegistrations, SSLVerificationProperties sslVerificationProperties) We'll leave this with a general name as it can (and should) be reused in a flex package.org.springframework.web.reactive.function.client.WebClient
searchWebClient
(Supplier<org.springframework.security.oauth2.client.web.reactive.function.client.ServletOAuth2AuthorizedClientExchangeFilterFunction> oauth2FilterSupplier, com.fasterxml.jackson.databind.ObjectMapper objectMapper, SSLVerificationProperties sslVerificationProperties) SortOptionUtils<com.broadleafcommerce.search.api.domain.SortOption>
sortOptionUtils
(SettingsSortGroupService<com.broadleafcommerce.search.api.domain.SettingsSortGroup> settingsSortGroupService, SortGroupService<com.broadleafcommerce.search.api.domain.SortGroup> sortGroupService, SortGroupSortOptionService<com.broadleafcommerce.search.api.domain.SortGroupSortOption> sortGroupSortOptionService, SortOptionService<com.broadleafcommerce.search.api.domain.SortOption> sortOptionService, com.broadleafcommerce.search.autoconfigure.SearchSettingsProperties searchSettingsProperties, SearchSettingsUtils searchSettingsUtils) TypeAheadConfigurationService<com.broadleafcommerce.search.api.domain.TypeAheadConfiguration>
typeAheadConfigurationService
(TypeAheadConfigurationRepository<com.broadleafcommerce.data.tracking.core.Trackable> typeAheadConfigurationRepository, FieldDefinitionService<com.broadleafcommerce.search.api.domain.FieldDefinition> fieldDefinitionService, com.broadleafcommerce.data.tracking.core.service.CrudEntityHelper helper)
-
Constructor Details
-
SearchServiceAutoConfiguration
public SearchServiceAutoConfiguration()
-
-
Method Details
-
searchWebClient
@Bean @ConditionalOnMissingBean(name="searchWebClient") public org.springframework.web.reactive.function.client.WebClient searchWebClient(@Qualifier("oAuth2FilterFunctionSupplier") Supplier<org.springframework.security.oauth2.client.web.reactive.function.client.ServletOAuth2AuthorizedClientExchangeFilterFunction> oauth2FilterSupplier, com.fasterxml.jackson.databind.ObjectMapper objectMapper, SSLVerificationProperties sslVerificationProperties) throws SSLException - Throws:
SSLException
-
searchTransactionOauth2FilterFunctionSupplier
@Bean(name="oAuth2FilterFunctionSupplier") @ConditionalOnMissingBean(name="oAuth2FilterFunctionSupplier") public Supplier<org.springframework.security.oauth2.client.web.reactive.function.client.ServletOAuth2AuthorizedClientExchangeFilterFunction> searchTransactionOauth2FilterFunctionSupplier(org.springframework.security.oauth2.client.registration.ClientRegistrationRepository clientRegistrations, SSLVerificationProperties sslVerificationProperties) We'll leave this with a general name as it can (and should) be reused in a flex package.- Parameters:
clientRegistrations
-sslVerificationProperties
-- Returns:
-
searchTenantProvider
@Bean @ConditionalOnMissingBean public SearchTenantProvider searchTenantProvider(@Qualifier("searchWebClient") org.springframework.web.reactive.function.client.WebClient webClient, ExternalSearchTenantProperties externalSearchTenantProperties) -
catalogSearchRecommendationProvider
@Bean @ConditionalOnMissingBean public RecommendationProvider catalogSearchRecommendationProvider(@Qualifier("searchWebClient") org.springframework.web.reactive.function.client.WebClient webClient, ExternalSearchRecommendationProperties properties, @Nullable com.broadleafcommerce.common.extension.cache.CacheStateManager cacheStateManager, com.broadleafcommerce.common.extension.TypeFactory typeFactory, com.fasterxml.jackson.databind.ObjectMapper mapper) -
fieldDefinitionService
@Bean @ConditionalOnMissingBean public FieldDefinitionService<com.broadleafcommerce.search.api.domain.FieldDefinition> fieldDefinitionService(FieldDefinitionRepository<com.broadleafcommerce.data.tracking.core.Trackable> fieldDefinitionRepository, com.broadleafcommerce.data.tracking.core.service.RsqlCrudEntityHelper helper, @Nullable com.broadleafcommerce.common.extension.cache.CacheStateManager cacheStateManager) -
typeAheadConfigurationService
@Bean @ConditionalOnMissingBean public TypeAheadConfigurationService<com.broadleafcommerce.search.api.domain.TypeAheadConfiguration> typeAheadConfigurationService(TypeAheadConfigurationRepository<com.broadleafcommerce.data.tracking.core.Trackable> typeAheadConfigurationRepository, FieldDefinitionService<com.broadleafcommerce.search.api.domain.FieldDefinition> fieldDefinitionService, com.broadleafcommerce.data.tracking.core.service.CrudEntityHelper helper) -
searchSettingsUtils
@Bean @ConditionalOnMissingBean public SearchSettingsUtils searchSettingsUtils(com.broadleafcommerce.resource.security.utils.service.AuthenticationUtils authenticationUtils, SearchSettingsService<com.broadleafcommerce.search.api.domain.SearchSettings> searchSettingsService, @Qualifier("searchContextRequestHydrator") com.broadleafcommerce.data.tracking.core.web.ContextRequestHydrator contextRequestHydrator) -
searchFacetUtils
@Bean @ConditionalOnMissingBean public SearchFacetUtils<com.broadleafcommerce.search.api.domain.Facet> searchFacetUtils(SettingsFacetGroupService<com.broadleafcommerce.search.api.domain.SettingsFacetGroup> settingsFacetGroupService, FacetGroupService<com.broadleafcommerce.search.api.domain.FacetGroup> facetGroupService, FacetGroupFacetService<com.broadleafcommerce.search.api.domain.FacetGroupFacet> facetGroupFacetService, FacetService<com.broadleafcommerce.search.api.domain.Facet> facetService, com.broadleafcommerce.search.autoconfigure.SearchSettingsProperties searchSettingsProperties, SearchSettingsUtils searchSettingsUtils) -
sortOptionUtils
@Bean @ConditionalOnMissingBean public SortOptionUtils<com.broadleafcommerce.search.api.domain.SortOption> sortOptionUtils(SettingsSortGroupService<com.broadleafcommerce.search.api.domain.SettingsSortGroup> settingsSortGroupService, SortGroupService<com.broadleafcommerce.search.api.domain.SortGroup> sortGroupService, SortGroupSortOptionService<com.broadleafcommerce.search.api.domain.SortGroupSortOption> sortGroupSortOptionService, SortOptionService<com.broadleafcommerce.search.api.domain.SortOption> sortOptionService, com.broadleafcommerce.search.autoconfigure.SearchSettingsProperties searchSettingsProperties, SearchSettingsUtils searchSettingsUtils) -
relevancyRuleUtils
@Bean @ConditionalOnMissingBean public RelevancyRuleUtils<com.broadleafcommerce.search.api.domain.RelevancyRule> relevancyRuleUtils(SearchSettingsUtils searchSettingsUtils, SettingsRelevancyRuleGroupService<com.broadleafcommerce.search.api.domain.SettingsRelevancyRuleGroup> settingsRelevancyRuleGroupService, RelevancyRuleGroupService<com.broadleafcommerce.search.api.domain.RelevancyRuleGroup> relevancyRuleGroupService, RelevancyRuleGroupRuleService<com.broadleafcommerce.search.api.domain.RelevancyRuleGroupRule> relevancyRuleGroupRuleService, RelevancyRuleService<com.broadleafcommerce.search.api.domain.RelevancyRule> relevancyRuleService, com.broadleafcommerce.search.autoconfigure.SearchSettingsProperties searchSettingsProperties) -
searchCatalogAccessPolicyService
@Bean @ConditionalOnMissingBean public SearchCatalogAccessPolicyService<com.broadleafcommerce.search.api.domain.accesspolicy.SearchCatalogAccessPolicy> searchCatalogAccessPolicyService(SearchCatalogAccessPolicyRepository<com.broadleafcommerce.data.tracking.core.Trackable> repository, com.broadleafcommerce.data.tracking.core.service.RsqlCrudEntityHelper helper, com.broadleafcommerce.data.tracking.core.filtering.fetch.FilterParser<cz.jirutka.rsql.parser.ast.Node> parser, @Nullable com.broadleafcommerce.common.extension.cache.CacheStateManager cacheStateManager)
-