public interface ChannelService
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> channelKeys)
Filters out the keys which are already cached and fetches only the not-cached channel keys from
the CTP project defined in an injected
SphereClient and stores a mapping for every
channel to id in the cached map of keys -> ids and returns this cached map. |
java.util.concurrent.CompletionStage<java.util.Optional<io.sphere.sdk.channels.Channel>> |
createAndCacheChannel(java.lang.String key)
Creates a new channel with the supplied
key and puts a new mapping of it's key to id in
a cache map. |
java.util.concurrent.CompletionStage<java.util.Optional<io.sphere.sdk.channels.Channel>> |
createChannel(java.lang.String key)
Creates a new channel with the supplied
key . |
java.util.concurrent.CompletionStage<java.util.Optional<java.lang.String>> |
fetchCachedChannelId(java.lang.String key)
Given a
key , this method first checks if a cached map of channel keys -> ids is not
empty. |
@Nonnull java.util.concurrent.CompletionStage<java.util.Map<java.lang.String,java.lang.String>> cacheKeysToIds(@Nonnull java.util.Set<java.lang.String> channelKeys)
SphereClient
and stores a mapping for every
channel to id in the cached map of keys -> ids and returns this cached map.channelKeys
- - a set of channel keys to fetch and cache the ids forCompletionStage
<Map
> in which the result of it's completion
contains a map of requested tax channel -> ids@Nonnull java.util.concurrent.CompletionStage<java.util.Optional<java.lang.String>> fetchCachedChannelId(@Nonnull java.lang.String key)
key
, this method first checks if a cached map of channel keys -> ids is not
empty. If not, it returns a completed future that contains an optional that contains what this
key maps to in the cache. If the cache is empty, the method populates the cache with the
mapping of all channels' keys to ids in the CTP project, by querying the CTP project channels.
After that, the method returns a CompletionStage
<Optional
<String
>> in which the result of it's completion could contain an Optional
with
the id inside of it or an empty Optional
if no Channel
was found in the CTP
project with this key.
key
- the key by which a Channel
id should be fetched from the CTP project.CompletionStage
<Optional
<String
>> in which the
result of it's completion could contain an Optional
with the id inside of it or an
empty Optional
if no Channel
was found in the CTP project with this
external id.@Nonnull java.util.concurrent.CompletionStage<java.util.Optional<io.sphere.sdk.channels.Channel>> createChannel(@Nonnull java.lang.String key)
key
.key
- key of supply channel.Channel
or a sphere exception.@Nonnull java.util.concurrent.CompletionStage<java.util.Optional<io.sphere.sdk.channels.Channel>> createAndCacheChannel(@Nonnull java.lang.String key)
key
and puts a new mapping of it's key to id in
a cache map.key
- key of supply channel.Channel
or a sphere exception.