All Known Implementing Classes:
Codec20, Codec21, Codec22, Codec23, Codec24, Codec25, Codec26, Codec27, Codec28, Codec29, Codec30, Codec31, Codec40

public interface Codec
A Hot Rod protocol encoder/decoder.
Since:
5.1
Author:
Galder ZamarreƱo
  • Method Details

    • estimateHeaderSize

      int estimateHeaderSize(HeaderParams headerParams)
    • writeHeader

      HeaderParams writeHeader(io.netty.buffer.ByteBuf buf, HeaderParams params)
      Writes a request header with the given parameters to the transport and returns an updated header parameters.
    • writeClientListenerParams

      void writeClientListenerParams(io.netty.buffer.ByteBuf buf, ClientListener clientListener, byte[][] filterFactoryParams, byte[][] converterFactoryParams)
      Writes client listener parameters
    • writeExpirationParams

      void writeExpirationParams(io.netty.buffer.ByteBuf buf, long lifespan, TimeUnit lifespanTimeUnit, long maxIdle, TimeUnit maxIdleTimeUnit)
      Write lifespan/maxidle parameters.
    • writeBloomFilter

      void writeBloomFilter(io.netty.buffer.ByteBuf buf, int bloomFilterBits)
    • estimateExpirationSize

      int estimateExpirationSize(long lifespan, TimeUnit lifespanTimeUnit, long maxIdle, TimeUnit maxIdleTimeUnit)
    • readMessageId

      long readMessageId(io.netty.buffer.ByteBuf buf)
    • readOpCode

      short readOpCode(io.netty.buffer.ByteBuf buf)
    • readHeader

      short readHeader(io.netty.buffer.ByteBuf buf, double receivedOpCode, HeaderParams params, ChannelFactory channelFactory, SocketAddress serverAddress)
      Reads a response header from the transport and returns the status of the response.
    • readCacheEvent

      AbstractClientEvent readCacheEvent(io.netty.buffer.ByteBuf buf, Function<byte[],DataFormat> listenerDataFormat, short eventTypeId, org.infinispan.commons.configuration.ClassAllowList allowList, SocketAddress serverAddress)
    • returnPossiblePrevValue

      Object returnPossiblePrevValue(io.netty.buffer.ByteBuf buf, short status, DataFormat dataFormat, int flags, org.infinispan.commons.configuration.ClassAllowList allowList, org.infinispan.commons.marshall.Marshaller marshaller)
    • writeClientListenerInterests

      void writeClientListenerInterests(io.netty.buffer.ByteBuf buf, Set<Class<? extends Annotation>> classes)
    • readCounterEvent

      HotRodCounterEvent readCounterEvent(io.netty.buffer.ByteBuf buf)
      Reads a HotRodCounterEvent with the listener-id.
    • allowOperationsAndEvents

      default boolean allowOperationsAndEvents()
      Returns:
      True if we can send operations after registering a listener on given channel
    • readProjectionSize

      default int readProjectionSize(io.netty.buffer.ByteBuf buf)
      Iteration read for projection size
      Parameters:
      buf -
      Returns:
    • readMeta

      default short readMeta(io.netty.buffer.ByteBuf buf)
      Iteration read to tell if metadata is present for entry
      Parameters:
      buf -
      Returns:
    • writeIteratorStartOperation

      default void writeIteratorStartOperation(io.netty.buffer.ByteBuf buf, org.infinispan.commons.util.IntSet segments, String filterConverterFactory, int batchSize, boolean metadata, byte[][] filterParameters)
    • keyIterator

      default <K> org.infinispan.commons.util.CloseableIterator<K> keyIterator(RemoteCache<K,?> remoteCache, OperationsFactory operationsFactory, org.infinispan.commons.util.IntSet segments, int batchSize)
      Creates a key iterator with the given batch size if applicable. This iterator does not support removal.
      Type Parameters:
      K -
      Parameters:
      remoteCache -
      operationsFactory -
      segments -
      batchSize -
      Returns:
    • entryIterator

      default <K, V> org.infinispan.commons.util.CloseableIterator<Map.Entry<K,V>> entryIterator(RemoteCache<K,V> remoteCache, org.infinispan.commons.util.IntSet segments, int batchSize)
      Creates an entry iterator with the given batch size if applicable. This iterator does not support removal.
      Type Parameters:
      K -
      V -
      Parameters:
      remoteCache -
      segments -
      batchSize -
      Returns:
    • readKeyType

      default org.infinispan.commons.dataconversion.MediaType readKeyType(io.netty.buffer.ByteBuf buf)
      Reads the MediaType of the key during initial ping of the cache.
    • readValueType

      default org.infinispan.commons.dataconversion.MediaType readValueType(io.netty.buffer.ByteBuf buf)
      Reads the MediaType of the key during initial ping of the cache.
    • isObjectStorageHinted

      boolean isObjectStorageHinted(PingResponse pingResponse)
      Read the response code for hints of object storage in the server.
    • estimateSizeMultimapSupportsDuplicated

      int estimateSizeMultimapSupportsDuplicated()
      Returns:
      size that needs to be allocated in buffer for supportsDuplicates information.
    • writeMultimapSupportDuplicates

      void writeMultimapSupportDuplicates(io.netty.buffer.ByteBuf buf, boolean supportsDuplicates)
      Parameters:
      buf - , buffer which supportsDuplicates info will be written to.
      supportsDuplicates - , to see whether multimap cache supports duplicates or not.
    • isUnsafeForTheHandshake

      default boolean isUnsafeForTheHandshake()
      Returns true if the current codec uses a latest codec version, that could be unsafe for the initial handshake. This is necessary to check interoperability between versions during the protocol negotiation.