Class AbstractPutIfAbsentOperation<K,T>

All Implemented Interfaces:
Runnable, CompletionStage<T>, Future<T>, HotRodConstants, ChannelOperation
Direct Known Subclasses:
PutIfAbsentOperation, SetIfAbsentOperation

public abstract class AbstractPutIfAbsentOperation<K,T> extends AbstractKeyValueOperation<K,T>
Implements "putIfAbsent" operation as described in Hot Rod protocol specification.
Since:
14.0
  • Constructor Details

    • AbstractPutIfAbsentOperation

      public AbstractPutIfAbsentOperation(OperationContext operationContext, K key, byte[] keyBytes, byte[] value, org.infinispan.api.common.CacheWriteOptions options, DataFormat dataFormat)
  • Method Details

    • executeOperation

      protected void executeOperation(io.netty.channel.Channel channel)
      Description copied from class: RetryOnFailureOperation
      Perform the operation-specific request/response I/O on the specified channel. If an error occurs during I/O, this class will detect it and retry the operation with a different channel by invoking the executeOperation method again.
      Specified by:
      executeOperation in class RetryOnFailureOperation<T>
      Parameters:
      channel - the channel to use for I/O
    • acceptResponse

      public void acceptResponse(io.netty.buffer.ByteBuf buf, short status, HeaderDecoder decoder)
      Specified by:
      acceptResponse in class HotRodOperation<T>