Search in sources :

Example 1 with GetAllCommand

use of org.infinispan.commands.read.GetAllCommand in project infinispan by infinispan.

the class CacheMgmtInterceptorTest method testVisitGetAllCommand.

public void testVisitGetAllCommand() throws Throwable {
    GetAllCommand command = new GetAllCommand(Collections.singleton(KEY), 0, false);
    InvocationStage stage = makeStage(interceptor.visitGetAllCommand(ctx, command));
    assertFalse(stage.isDone());
    timeService.advance(1);
    nextInterceptor.completeLastInvocation(Collections.emptyMap());
    assertEquals(Collections.emptyMap(), stage.get());
    assertEquals(1, interceptor.getAverageReadTime());
}
Also used : InvocationStage(org.infinispan.interceptors.InvocationStage) GetAllCommand(org.infinispan.commands.read.GetAllCommand)

Example 2 with GetAllCommand

use of org.infinispan.commands.read.GetAllCommand in project infinispan by infinispan.

the class ScatteredDistributionInterceptor method visitGetAllCommand.

@Override
public Object visitGetAllCommand(InvocationContext ctx, GetAllCommand command) throws Throwable {
    LocalizedCacheTopology cacheTopology = checkTopology(command);
    if (command.hasAnyFlag(FlagBitSets.CACHE_MODE_LOCAL | FlagBitSets.SKIP_REMOTE_LOOKUP | FlagBitSets.SKIP_OWNERSHIP_CHECK)) {
        return invokeNext(ctx, command);
    }
    if (ctx.isOriginLocal()) {
        Map<Address, List<Object>> remoteKeys = new HashMap<>();
        for (Object key : command.getKeys()) {
            if (ctx.lookupEntry(key) != null) {
                continue;
            }
            DistributionInfo info = cacheTopology.getDistribution(key);
            if (info.primary() == null) {
                throw OutdatedTopologyException.RETRY_NEXT_TOPOLOGY;
            } else if (!info.isPrimary()) {
                remoteKeys.computeIfAbsent(info.primary(), k -> new ArrayList<>()).add(key);
            }
        }
        if (remoteKeys.isEmpty()) {
            return invokeNext(ctx, command);
        }
        ClusteredGetAllFuture sync = new ClusteredGetAllFuture(remoteKeys.size());
        for (Map.Entry<Address, List<Object>> remote : remoteKeys.entrySet()) {
            List<Object> keys = remote.getValue();
            ClusteredGetAllCommand clusteredGetAllCommand = cf.buildClusteredGetAllCommand(keys, command.getFlagsBitSet(), null);
            clusteredGetAllCommand.setTopologyId(command.getTopologyId());
            SingletonMapResponseCollector collector = SingletonMapResponseCollector.ignoreLeavers();
            CompletionStage<Map<Address, Response>> rpcFuture = rpcManager.invokeCommand(remote.getKey(), clusteredGetAllCommand, collector, rpcManager.getSyncRpcOptions());
            rpcFuture.whenComplete(((responseMap, throwable) -> handleGetAllResponse(responseMap, throwable, ctx, keys, sync)));
        }
        return asyncInvokeNext(ctx, command, sync);
    } else {
        // remote
        for (Object key : command.getKeys()) {
            if (ctx.lookupEntry(key) == null) {
                return UnsureResponse.INSTANCE;
            }
        }
        return invokeNext(ctx, command);
    }
}
Also used : WriteCommand(org.infinispan.commands.write.WriteCommand) Arrays(java.util.Arrays) GetCacheEntryCommand(org.infinispan.commands.read.GetCacheEntryCommand) CacheNotFoundResponse(org.infinispan.remoting.responses.CacheNotFoundResponse) LogFactory(org.infinispan.util.logging.LogFactory) RemoteMetadata(org.infinispan.container.entries.RemoteMetadata) ClusteredGetAllCommand(org.infinispan.commands.remote.ClusteredGetAllCommand) Map(java.util.Map) RemoveCommand(org.infinispan.commands.write.RemoveCommand) ConsistentHash(org.infinispan.distribution.ch.ConsistentHash) EmbeddedMetadata(org.infinispan.metadata.EmbeddedMetadata) ReadWriteManyEntriesCommand(org.infinispan.commands.functional.ReadWriteManyEntriesCommand) UnsuccessfulResponse(org.infinispan.remoting.responses.UnsuccessfulResponse) Set(java.util.Set) GroupManager(org.infinispan.distribution.group.impl.GroupManager) CacheTopology(org.infinispan.topology.CacheTopology) ResponseCollector(org.infinispan.remoting.transport.ResponseCollector) DONT_LOAD(org.infinispan.commands.VisitableCommand.LoadType.DONT_LOAD) CompletionStage(java.util.concurrent.CompletionStage) Stream(java.util.stream.Stream) SuccessfulResponse(org.infinispan.remoting.responses.SuccessfulResponse) InternalCacheValue(org.infinispan.container.entries.InternalCacheValue) AbstractVisitor(org.infinispan.commands.AbstractVisitor) ArrayCollector(org.infinispan.commons.util.ArrayCollector) InternalCacheEntry(org.infinispan.container.entries.InternalCacheEntry) CacheEntryRemoved(org.infinispan.notifications.cachelistener.annotation.CacheEntryRemoved) PersistenceManager(org.infinispan.persistence.manager.PersistenceManager) ComputeCommand(org.infinispan.commands.write.ComputeCommand) MetadataAwareCommand(org.infinispan.commands.MetadataAwareCommand) EvictionManager(org.infinispan.eviction.EvictionManager) ReadOnlyKeyCommand(org.infinispan.commands.functional.ReadOnlyKeyCommand) ArrayList(java.util.ArrayList) WriteOnlyManyEntriesCommand(org.infinispan.commands.functional.WriteOnlyManyEntriesCommand) Start(org.infinispan.factories.annotations.Start) MapResponseCollector(org.infinispan.remoting.transport.impl.MapResponseCollector) PassthroughSingleResponseCollector(org.infinispan.remoting.transport.impl.PassthroughSingleResponseCollector) SingleResponseCollector(org.infinispan.remoting.transport.impl.SingleResponseCollector) DataWriteCommand(org.infinispan.commands.write.DataWriteCommand) FunctionalNotifier(org.infinispan.functional.impl.FunctionalNotifier) ValueMatcher(org.infinispan.commands.write.ValueMatcher) ClearCommand(org.infinispan.commands.write.ClearCommand) Address(org.infinispan.remoting.transport.Address) ExceptionResponse(org.infinispan.remoting.responses.ExceptionResponse) CacheEntry(org.infinispan.container.entries.CacheEntry) NotifyHelper(org.infinispan.notifications.cachelistener.NotifyHelper) WriteOnlyKeyValueCommand(org.infinispan.commands.functional.WriteOnlyKeyValueCommand) ValidResponse(org.infinispan.remoting.responses.ValidResponse) CacheNotifier(org.infinispan.notifications.cachelistener.CacheNotifier) Inject(org.infinispan.factories.annotations.Inject) ReadWriteKeyCommand(org.infinispan.commands.functional.ReadWriteKeyCommand) ReadWriteManyCommand(org.infinispan.commands.functional.ReadWriteManyCommand) NullCacheEntry(org.infinispan.container.entries.NullCacheEntry) AggregateCompletionStage(org.infinispan.util.concurrent.AggregateCompletionStage) ReplaceCommand(org.infinispan.commands.write.ReplaceCommand) EntryVersion(org.infinispan.container.versioning.EntryVersion) UnsureResponse(org.infinispan.remoting.responses.UnsureResponse) MultiTargetCollector(org.infinispan.util.concurrent.CommandAckCollector.MultiTargetCollector) GetKeysInGroupCommand(org.infinispan.commands.remote.GetKeysInGroupCommand) ActivationManager(org.infinispan.eviction.impl.ActivationManager) RepeatableReadEntry(org.infinispan.container.entries.RepeatableReadEntry) InvocationContext(org.infinispan.context.InvocationContext) CompletableFutures(org.infinispan.util.concurrent.CompletableFutures) OutdatedTopologyException(org.infinispan.statetransfer.OutdatedTopologyException) RpcOptions(org.infinispan.remoting.rpc.RpcOptions) Predicate(java.util.function.Predicate) Collection(java.util.Collection) ReadWriteKeyValueCommand(org.infinispan.commands.functional.ReadWriteKeyValueCommand) MetadataImmortalCacheEntry(org.infinispan.container.entries.metadata.MetadataImmortalCacheEntry) DataOperationOrderer(org.infinispan.util.concurrent.DataOperationOrderer) InequalVersionComparisonResult(org.infinispan.container.versioning.InequalVersionComparisonResult) InvocationSuccessFunction(org.infinispan.interceptors.InvocationSuccessFunction) List(java.util.List) SingletonMapResponseCollector(org.infinispan.remoting.transport.impl.SingletonMapResponseCollector) InvocationFinallyAction(org.infinispan.interceptors.InvocationFinallyAction) PutKeyValueCommand(org.infinispan.commands.write.PutKeyValueCommand) FlagAffectedCommand(org.infinispan.commands.FlagAffectedCommand) TopologyAffectedCommand(org.infinispan.commands.TopologyAffectedCommand) HashMap(java.util.HashMap) CompletableFuture(java.util.concurrent.CompletableFuture) Metadata(org.infinispan.metadata.Metadata) CompletionStages(org.infinispan.util.concurrent.CompletionStages) GetAllCommand(org.infinispan.commands.read.GetAllCommand) Function(java.util.function.Function) AllOwnersLostException(org.infinispan.statetransfer.AllOwnersLostException) FlagBitSets(org.infinispan.context.impl.FlagBitSets) KeyPartitioner(org.infinispan.distribution.ch.KeyPartitioner) ClusteredGetCommand(org.infinispan.commands.remote.ClusteredGetCommand) IracPutKeyValueCommand(org.infinispan.commands.write.IracPutKeyValueCommand) Log(org.infinispan.util.logging.Log) AbstractDataCommand(org.infinispan.commands.read.AbstractDataCommand) SegmentSpecificCommand(org.infinispan.commands.SegmentSpecificCommand) MetadataImmortalCacheValue(org.infinispan.container.entries.metadata.MetadataImmortalCacheValue) ResponseCollectors(org.infinispan.remoting.transport.ResponseCollectors) Response(org.infinispan.remoting.responses.Response) ClusteringInterceptor(org.infinispan.interceptors.impl.ClusteringInterceptor) GetKeyValueCommand(org.infinispan.commands.read.GetKeyValueCommand) CacheException(org.infinispan.commons.CacheException) Iterator(java.util.Iterator) EvictCommand(org.infinispan.commands.write.EvictCommand) WriteOnlyManyCommand(org.infinispan.commands.functional.WriteOnlyManyCommand) PutMapCommand(org.infinispan.commands.write.PutMapCommand) ReadOnlyManyCommand(org.infinispan.commands.functional.ReadOnlyManyCommand) ComputeIfAbsentCommand(org.infinispan.commands.write.ComputeIfAbsentCommand) LocalizedCacheTopology(org.infinispan.distribution.LocalizedCacheTopology) Configuration(org.infinispan.configuration.cache.Configuration) DistributionInfo(org.infinispan.distribution.DistributionInfo) Operation(org.infinispan.util.concurrent.DataOperationOrderer.Operation) WriteOnlyKeyCommand(org.infinispan.commands.functional.WriteOnlyKeyCommand) VisitableCommand(org.infinispan.commands.VisitableCommand) DeliverOrder(org.infinispan.remoting.inboundhandler.DeliverOrder) Collections(java.util.Collections) TimeService(org.infinispan.commons.time.TimeService) ScatteredVersionManager(org.infinispan.scattered.ScatteredVersionManager) Address(org.infinispan.remoting.transport.Address) HashMap(java.util.HashMap) LocalizedCacheTopology(org.infinispan.distribution.LocalizedCacheTopology) DistributionInfo(org.infinispan.distribution.DistributionInfo) ClusteredGetAllCommand(org.infinispan.commands.remote.ClusteredGetAllCommand) ArrayList(java.util.ArrayList) List(java.util.List) Map(java.util.Map) HashMap(java.util.HashMap) SingletonMapResponseCollector(org.infinispan.remoting.transport.impl.SingletonMapResponseCollector)

Example 3 with GetAllCommand

use of org.infinispan.commands.read.GetAllCommand in project infinispan by infinispan.

the class EntryWrappingInterceptor method getAllHandle.

private Object getAllHandle(InvocationContext rCtx, GetAllCommand command, Object rv, Throwable t) {
    if (useRepeatableRead) {
        for (Object key : command.getKeys()) {
            CacheEntry cacheEntry = rCtx.lookupEntry(key);
            if (cacheEntry == null) {
                // Data was lost
                if (log.isTraceEnabled())
                    log.tracef(t, "Missing entry for " + key);
            } else {
                cacheEntry.setSkipLookup(true);
            }
        }
    }
    AggregateCompletionStage<Void> stage = CompletionStages.aggregateCompletionStage();
    // instanceof check excludes the case when the command returns UnsuccessfulResponse
    if (t == null && rv instanceof Map) {
        boolean notify = !command.hasAnyFlag(FlagBitSets.SKIP_LISTENER_NOTIFICATION) && notifier.hasListener(CacheEntryVisited.class);
        log.tracef("Notifying getAll? %s; result %s", notify, rv);
        if (notify) {
            Map<Object, Object> map = (Map<Object, Object>) rv;
            for (Map.Entry<Object, Object> entry : map.entrySet()) {
                Object value = entry.getValue();
                if (value != null) {
                    Object finalValue = command.isReturnEntries() ? ((CacheEntry) value).getValue() : entry.getValue();
                    CompletionStage<Void> innerStage = notifier.notifyCacheEntryVisited(entry.getKey(), finalValue, true, rCtx, command);
                    stage.dependsOn(innerStage.thenCompose(ig -> notifier.notifyCacheEntryVisited(entry.getKey(), finalValue, false, rCtx, command)));
                }
            }
        }
    }
    return delayedValue(stage.freeze(), rv, t);
}
Also used : WriteCommand(org.infinispan.commands.write.WriteCommand) IntSets(org.infinispan.commons.util.IntSets) GetCacheEntryCommand(org.infinispan.commands.read.GetCacheEntryCommand) LogFactory(org.infinispan.util.logging.LogFactory) Util.toStr(org.infinispan.commons.util.Util.toStr) WriteSkewHelper.versionFromEntry(org.infinispan.transaction.impl.WriteSkewHelper.versionFromEntry) VersionGenerator(org.infinispan.container.versioning.VersionGenerator) ReplaceCommand(org.infinispan.commands.write.ReplaceCommand) GetKeysInGroupCommand(org.infinispan.commands.remote.GetKeysInGroupCommand) InvocationContext(org.infinispan.context.InvocationContext) ComponentRef(org.infinispan.factories.impl.ComponentRef) CompletableFutures(org.infinispan.util.concurrent.CompletableFutures) TxInvocationContext(org.infinispan.context.impl.TxInvocationContext) RemoveExpiredCommand(org.infinispan.commands.write.RemoveExpiredCommand) OutdatedTopologyException(org.infinispan.statetransfer.OutdatedTopologyException) Map(java.util.Map) TxReadOnlyKeyCommand(org.infinispan.commands.functional.TxReadOnlyKeyCommand) TxReadOnlyManyCommand(org.infinispan.commands.functional.TxReadOnlyManyCommand) DDAsyncInterceptor(org.infinispan.interceptors.DDAsyncInterceptor) EntryFactory.expirationCheckDelay(org.infinispan.container.impl.EntryFactory.expirationCheckDelay) PrepareCommand(org.infinispan.commands.tx.PrepareCommand) RemoveCommand(org.infinispan.commands.write.RemoveCommand) Collection(java.util.Collection) ReadWriteManyEntriesCommand(org.infinispan.commands.functional.ReadWriteManyEntriesCommand) ReadWriteKeyValueCommand(org.infinispan.commands.functional.ReadWriteKeyValueCommand) SingleKeyNonTxInvocationContext(org.infinispan.context.impl.SingleKeyNonTxInvocationContext) GroupManager(org.infinispan.distribution.group.impl.GroupManager) LockingMode(org.infinispan.transaction.LockingMode) InvalidateL1Command(org.infinispan.commands.write.InvalidateL1Command) InvocationSuccessFunction(org.infinispan.interceptors.InvocationSuccessFunction) IntSet(org.infinispan.commons.util.IntSet) List(java.util.List) CompletionStage(java.util.concurrent.CompletionStage) Flag(org.infinispan.context.Flag) PutKeyValueCommand(org.infinispan.commands.write.PutKeyValueCommand) InvocationFinallyFunction(org.infinispan.interceptors.InvocationFinallyFunction) FlagAffectedCommand(org.infinispan.commands.FlagAffectedCommand) AbstractVisitor(org.infinispan.commands.AbstractVisitor) DataCommand(org.infinispan.commands.DataCommand) ComputeCommand(org.infinispan.commands.write.ComputeCommand) ExceptionSyncInvocationStage(org.infinispan.interceptors.ExceptionSyncInvocationStage) CompletableFuture(java.util.concurrent.CompletableFuture) CompletionStages(org.infinispan.util.concurrent.CompletionStages) XSiteStateConsumer(org.infinispan.xsite.statetransfer.XSiteStateConsumer) GetAllCommand(org.infinispan.commands.read.GetAllCommand) ReadOnlyKeyCommand(org.infinispan.commands.functional.ReadOnlyKeyCommand) StateTransferLock(org.infinispan.statetransfer.StateTransferLock) WriteOnlyManyEntriesCommand(org.infinispan.commands.functional.WriteOnlyManyEntriesCommand) Start(org.infinispan.factories.annotations.Start) FlagBitSets(org.infinispan.context.impl.FlagBitSets) AbstractDataWriteCommand(org.infinispan.commands.write.AbstractDataWriteCommand) Configurations(org.infinispan.configuration.cache.Configurations) CacheEntryVisited(org.infinispan.notifications.cachelistener.annotation.CacheEntryVisited) KeyPartitioner(org.infinispan.distribution.ch.KeyPartitioner) IracPutKeyValueCommand(org.infinispan.commands.write.IracPutKeyValueCommand) Log(org.infinispan.util.logging.Log) AbstractDataCommand(org.infinispan.commands.read.AbstractDataCommand) DataWriteCommand(org.infinispan.commands.write.DataWriteCommand) ClusteringDependentLogic(org.infinispan.interceptors.locking.ClusteringDependentLogic) ClearCommand(org.infinispan.commands.write.ClearCommand) Address(org.infinispan.remoting.transport.Address) IncrementableEntryVersion(org.infinispan.container.versioning.IncrementableEntryVersion) Response(org.infinispan.remoting.responses.Response) GetKeyValueCommand(org.infinispan.commands.read.GetKeyValueCommand) CacheEntry(org.infinispan.container.entries.CacheEntry) InternalDataContainer(org.infinispan.container.impl.InternalDataContainer) WriteOnlyKeyValueCommand(org.infinispan.commands.functional.WriteOnlyKeyValueCommand) EvictCommand(org.infinispan.commands.write.EvictCommand) WriteOnlyManyCommand(org.infinispan.commands.functional.WriteOnlyManyCommand) PutMapCommand(org.infinispan.commands.write.PutMapCommand) EntryFactory(org.infinispan.container.impl.EntryFactory) CacheNotifier(org.infinispan.notifications.cachelistener.CacheNotifier) CommitCommand(org.infinispan.commands.tx.CommitCommand) Inject(org.infinispan.factories.annotations.Inject) FunctionalCommand(org.infinispan.commands.functional.FunctionalCommand) ReadOnlyManyCommand(org.infinispan.commands.functional.ReadOnlyManyCommand) MVCCEntry(org.infinispan.container.entries.MVCCEntry) StateConsumer(org.infinispan.statetransfer.StateConsumer) InvalidateCommand(org.infinispan.commands.write.InvalidateCommand) IsolationLevel(org.infinispan.util.concurrent.IsolationLevel) ReadWriteKeyCommand(org.infinispan.commands.functional.ReadWriteKeyCommand) ComputeIfAbsentCommand(org.infinispan.commands.write.ComputeIfAbsentCommand) LocalizedCacheTopology(org.infinispan.distribution.LocalizedCacheTopology) WriteOnlyKeyCommand(org.infinispan.commands.functional.WriteOnlyKeyCommand) VisitableCommand(org.infinispan.commands.VisitableCommand) ReadWriteManyCommand(org.infinispan.commands.functional.ReadWriteManyCommand) DistributionManager(org.infinispan.distribution.DistributionManager) AggregateCompletionStage(org.infinispan.util.concurrent.AggregateCompletionStage) CacheEntryVisited(org.infinispan.notifications.cachelistener.annotation.CacheEntryVisited) CacheEntry(org.infinispan.container.entries.CacheEntry) Map(java.util.Map)

Example 4 with GetAllCommand

use of org.infinispan.commands.read.GetAllCommand in project infinispan by infinispan.

the class CacheImpl method getAllCacheEntries.

public final Map<K, CacheEntry<K, V>> getAllCacheEntries(Set<?> keys, long explicitFlags, InvocationContext ctx) {
    GetAllCommand command = commandsFactory.buildGetAllCommand(keys, explicitFlags, true);
    Map<K, CacheEntry<K, V>> map = invocationHelper.invoke(ctx, command);
    map.entrySet().removeIf(entry -> entry.getValue() == null);
    return map;
}
Also used : CacheEntry(org.infinispan.container.entries.CacheEntry) GetAllCommand(org.infinispan.commands.read.GetAllCommand)

Example 5 with GetAllCommand

use of org.infinispan.commands.read.GetAllCommand in project infinispan by infinispan.

the class ClusteredGetAllCommand method invokeGetAll.

private CompletionStage<Object> invokeGetAll(ComponentRegistry cr) {
    // make sure the get command doesn't perform a remote call
    // as our caller is already calling the ClusteredGetCommand on all the relevant nodes
    GetAllCommand command = cr.getCommandsFactory().buildGetAllCommand(keys, getFlagsBitSet(), true);
    command.setTopologyId(topologyId);
    InvocationContext invocationContext = cr.getInvocationContextFactory().running().createRemoteInvocationContextForCommand(command, getOrigin());
    CompletionStage<Object> future = cr.getInterceptorChain().running().invokeAsync(invocationContext, command);
    return future.thenApply(rv -> {
        if (log.isTraceEnabled())
            log.trace("Found: " + rv);
        if (rv == null || rv instanceof Response) {
            return rv;
        }
        Map<K, CacheEntry<K, V>> map = (Map<K, CacheEntry<K, V>>) rv;
        InternalCacheValue<V>[] values = new InternalCacheValue[keys.size()];
        int i = 0;
        for (Object key : keys) {
            CacheEntry<K, V> entry = map.get(key);
            InternalCacheValue<V> value;
            if (entry == null) {
                value = null;
            } else if (entry instanceof InternalCacheEntry) {
                value = ((InternalCacheEntry<K, V>) entry).toInternalCacheValue();
            } else {
                value = cr.getInternalEntryFactory().running().createValue(entry);
                value.setInternalMetadata(entry.getInternalMetadata());
            }
            values[i++] = value;
        }
        return values;
    });
}
Also used : InternalCacheEntry(org.infinispan.container.entries.InternalCacheEntry) CacheEntry(org.infinispan.container.entries.CacheEntry) InternalCacheValue(org.infinispan.container.entries.InternalCacheValue) GetAllCommand(org.infinispan.commands.read.GetAllCommand) Response(org.infinispan.remoting.responses.Response) InternalCacheEntry(org.infinispan.container.entries.InternalCacheEntry) InvocationContext(org.infinispan.context.InvocationContext) Map(java.util.Map)

Aggregations

GetAllCommand (org.infinispan.commands.read.GetAllCommand)6 CacheEntry (org.infinispan.container.entries.CacheEntry)4 Map (java.util.Map)3 InvocationContext (org.infinispan.context.InvocationContext)3 Collection (java.util.Collection)2 List (java.util.List)2 CompletableFuture (java.util.concurrent.CompletableFuture)2 CompletionStage (java.util.concurrent.CompletionStage)2 AbstractVisitor (org.infinispan.commands.AbstractVisitor)2 FlagAffectedCommand (org.infinispan.commands.FlagAffectedCommand)2 VisitableCommand (org.infinispan.commands.VisitableCommand)2 ReadOnlyKeyCommand (org.infinispan.commands.functional.ReadOnlyKeyCommand)2 ReadOnlyManyCommand (org.infinispan.commands.functional.ReadOnlyManyCommand)2 ReadWriteKeyCommand (org.infinispan.commands.functional.ReadWriteKeyCommand)2 ReadWriteKeyValueCommand (org.infinispan.commands.functional.ReadWriteKeyValueCommand)2 ReadWriteManyCommand (org.infinispan.commands.functional.ReadWriteManyCommand)2 ReadWriteManyEntriesCommand (org.infinispan.commands.functional.ReadWriteManyEntriesCommand)2 WriteOnlyKeyCommand (org.infinispan.commands.functional.WriteOnlyKeyCommand)2 WriteOnlyKeyValueCommand (org.infinispan.commands.functional.WriteOnlyKeyValueCommand)2 WriteOnlyManyCommand (org.infinispan.commands.functional.WriteOnlyManyCommand)2