public interface CustomerService
| Modifier and Type | Method and Description |
|---|---|
java.util.concurrent.CompletionStage<java.util.Map<java.lang.String,java.lang.String>> |
cacheKeysToIds(java.util.Set<java.lang.String> keysToCache)
Given a set of keys this method caches in-memory a mapping of key -> id only for those keys which are not
already cached.
|
java.util.concurrent.CompletionStage<java.util.Optional<io.sphere.sdk.customers.Customer>> |
createCustomer(io.sphere.sdk.customers.CustomerDraft customerDraft)
Given a resource draft of type
CustomerDraft, this method attempts to create a resource Customer
based on the draft, in the CTP project defined by the sync options. |
java.util.concurrent.CompletionStage<java.util.Optional<java.lang.String>> |
fetchCachedCustomerId(java.lang.String key)
Given a
key, if it is blank (null/empty), a completed future with an empty optional is returned. |
java.util.concurrent.CompletionStage<java.util.Optional<io.sphere.sdk.customers.Customer>> |
fetchCustomerByKey(java.lang.String key)
Given a customer key, this method fetches a customer that matches this given key in the CTP project defined in a
potentially injected
SphereClient. |
java.util.concurrent.CompletionStage<java.util.Set<io.sphere.sdk.customers.Customer>> |
fetchMatchingCustomersByKeys(java.util.Set<java.lang.String> customerKeys)
Given a
Set of customer keys, this method fetches a set of all the customers, matching the given set of
keys in the CTP project, defined in an injected SphereClient. |
java.util.concurrent.CompletionStage<io.sphere.sdk.customers.Customer> |
updateCustomer(io.sphere.sdk.customers.Customer customer,
java.util.List<io.sphere.sdk.commands.UpdateAction<io.sphere.sdk.customers.Customer>> updateActions)
Given a
Customer and a List<UpdateAction<Customer>>, this method
issues an update request with these update actions on this Customer in the CTP project defined in a
potentially injected SphereClient. |
@Nonnull
java.util.concurrent.CompletionStage<java.util.Map<java.lang.String,java.lang.String>> cacheKeysToIds(@Nonnull
java.util.Set<java.lang.String> keysToCache)
keysToCache - a set of keys to cache.@Nonnull
java.util.concurrent.CompletionStage<java.util.Set<io.sphere.sdk.customers.Customer>> fetchMatchingCustomersByKeys(@Nonnull
java.util.Set<java.lang.String> customerKeys)
Set of customer keys, this method fetches a set of all the customers, matching the given set of
keys in the CTP project, defined in an injected SphereClient. A mapping of the key to the id of the
fetched customers is persisted in an in-memory map.customerKeys - set of customer keys to fetch matching resources by.CompletionStage<Set<Customer>> in which the result of it's completion
contains a Set of all matching customers.@Nonnull
java.util.concurrent.CompletionStage<java.util.Optional<io.sphere.sdk.customers.Customer>> fetchCustomerByKey(@Nullable
java.lang.String key)
SphereClient. If there is no matching resource an empty Optional will be
returned in the returned future. A mapping of the key to the id of the fetched customer is persisted in an in
-memory map.key - the key of the resource to fetchCompletionStage<Optional> in which the result of it's completion contains an Optional that contains the matching Customer if exists, otherwise empty.@Nonnull
java.util.concurrent.CompletionStage<java.util.Optional<java.lang.String>> fetchCachedCustomerId(@Nonnull
java.lang.String key)
key, if it is blank (null/empty), a completed future with an empty optional is returned.
Otherwise this method checks if the cached map of resource keys -> ids contains the given key. If it does, an
optional containing the matching id is returned. If the cache doesn't contain the key; this method attempts to
fetch the id of the key from the CTP project, caches it and returns a CompletionStage< Optional<String>> in which the result of it's completion could contain an Optional
holding the id or an empty Optional if no customer was found in the CTP project with this key.key - the key by which a customer id should be fetched from the CTP project.CompletionStage<Optional<String>> in which the result of it's
completion could contain an Optional holding the id or an empty Optional if no customer
was found in the CTP project with this key.@Nonnull
java.util.concurrent.CompletionStage<java.util.Optional<io.sphere.sdk.customers.Customer>> createCustomer(@Nonnull
io.sphere.sdk.customers.CustomerDraft customerDraft)
CustomerDraft, this method attempts to create a resource Customer
based on the draft, in the CTP project defined by the sync options.
A completion stage containing an empty option and the error callback will be triggered in those cases:
On the other hand, if the resource gets created successfully on CTP, the created resource's id and
key are cached and the method returns a CompletionStage in which the result of it's completion
contains an instance Optional of the resource which was created.
customerDraft - the resource draft to create a resource based off of.CompletionStage containing an optional with the created resource if successful otherwise an
empty optional.@Nonnull
java.util.concurrent.CompletionStage<io.sphere.sdk.customers.Customer> updateCustomer(@Nonnull
io.sphere.sdk.customers.Customer customer,
@Nonnull
java.util.List<io.sphere.sdk.commands.UpdateAction<io.sphere.sdk.customers.Customer>> updateActions)
Customer and a List<UpdateAction<Customer>>, this method
issues an update request with these update actions on this Customer in the CTP project defined in a
potentially injected SphereClient. This method returns CompletionStage<Customer> in
which the result of it's completion contains an instance of the Customer which was updated in the CTP
project.customer - the Customer to update.updateActions - the update actions to update the Customer with.CompletionStage<Customer> containing as a result of it's completion an instance of
the Customer which was updated in the CTP project or a SphereException.