Class ExternalCustomerProvider<F extends FilteredAccounts>
java.lang.Object
com.broadleafcommerce.subscriptionoperation.service.provider.external.AbstractExternalProvider
com.broadleafcommerce.subscriptionoperation.service.provider.external.ExternalCustomerProvider<F>
- All Implemented Interfaces:
CustomerProvider<F>
public class ExternalCustomerProvider<F extends FilteredAccounts>
extends AbstractExternalProvider
implements CustomerProvider<F>
-
Field Summary
Fields inherited from class com.broadleafcommerce.subscriptionoperation.service.provider.external.AbstractExternalProvider
ENTITY_NOT_FOUND, RSQL_FILTER_PARAM, SANDBOX_AWARE_HEADER -
Constructor Summary
ConstructorsConstructorDescriptionExternalCustomerProvider(org.springframework.web.reactive.function.client.WebClient webClient, com.fasterxml.jackson.databind.ObjectMapper objectMapper, com.broadleafcommerce.common.extension.TypeFactory typeFactory, ExternalCustomerProviderProperties properties) -
Method Summary
Modifier and TypeMethodDescriptionprotected org.springframework.web.util.UriComponentsBuilderGets the base URI common to all requests this provider will make.protected ExternalCustomerProviderPropertiesprotected StringreadAccountsBySegments(Set<String> includeSegmentIds, Set<String> excludeSegmentIds, Set<String> accountIds, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Group the requested account ids by the requested segments that match those accounts.Methods inherited from class com.broadleafcommerce.subscriptionoperation.service.provider.external.AbstractExternalProvider
addOffsetOrPageNumber, buildNotFoundException, executeRequest, getHeaders, getObjectMapper, getTypeFactory, getWebClient, isEntityNotFound, pageableToParams, uriVars
-
Constructor Details
-
ExternalCustomerProvider
public ExternalCustomerProvider(org.springframework.web.reactive.function.client.WebClient webClient, com.fasterxml.jackson.databind.ObjectMapper objectMapper, com.broadleafcommerce.common.extension.TypeFactory typeFactory, ExternalCustomerProviderProperties properties)
-
-
Method Details
-
readAccountsBySegments
public F readAccountsBySegments(Set<String> includeSegmentIds, @Nullable Set<String> excludeSegmentIds, Set<String> accountIds, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Description copied from interface:CustomerProviderGroup the requested account ids by the requested segments that match those accounts.- Specified by:
readAccountsBySegmentsin interfaceCustomerProvider<F extends FilteredAccounts>- Parameters:
includeSegmentIds- The ids of candidateCustomerSegments whose matching accounts should be includedexcludeSegmentIds- The ids of candidateCustomerSegments whose matching accounts should be excluded from the include resultsaccountIds- The ids of candidateAccountscontextInfo- Context information surrounding sandboxing and multitenant state- Returns:
- A map of segment ids to the accounts that match those segments
-
getBaseUri
protected org.springframework.web.util.UriComponentsBuilder getBaseUri()Gets the base URI common to all requests this provider will make.- Returns:
- a URI components builder with the base URI set up
-
getServiceClient
-
getProperties
-