Package akka.remote.artery.compress
Class InboundActorRefCompression
- java.lang.Object
-
- akka.remote.artery.compress.InboundCompression<ActorRef>
-
- akka.remote.artery.compress.InboundActorRefCompression
-
public final class InboundActorRefCompression extends InboundCompression<ActorRef>
INTERNAL API Dedicated per remote system inbound compression table.The outbound context is available by looking it up in the association. It can be used to advertise a compression table. If the association is not complete - we simply dont advertise the table, which is fine (handshake not yet complete).
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class akka.remote.artery.compress.InboundCompression
InboundCompression.Tables<T>, InboundCompression.Tables$
-
-
Constructor Summary
Constructors Constructor Description InboundActorRefCompression(LoggingAdapter log, ArterySettings.Compression settings, long originUid, InboundContext inboundContext, TopHeavyHitters<ActorRef> heavyHitters)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
advertiseCompressionTable(OutboundContext outboundContext, CompressionTable<ActorRef> table)
Must be implemented by extending classes in order to send aControlMessage
of appropriate type to the remote system in order to advertise the compression table to it.protected scala.collection.immutable.Map<ActorRef,java.lang.Object>
buildTableForAdvertisement(scala.collection.Iterator<ActorRef> elements)
OptionVal<ActorRef>
decompress(byte tableVersion, int idx)
Override and specialize if needed, for default compression logic delegate to 3-param overloadvoid
increment(Address remoteAddress, ActorRef value, long n)
Addn
occurrence for the given key and callheavyHittedDetected
if element has become a heavy hitter.-
Methods inherited from class akka.remote.artery.compress.InboundCompression
confirmAdvertisement, decompressInternal, heavyHitters, KeepOldTablesNumber, log, originUid, runNextTableAdvertisement, settings, toString
-
-
-
-
Constructor Detail
-
InboundActorRefCompression
public InboundActorRefCompression(LoggingAdapter log, ArterySettings.Compression settings, long originUid, InboundContext inboundContext, TopHeavyHitters<ActorRef> heavyHitters)
-
-
Method Detail
-
advertiseCompressionTable
public void advertiseCompressionTable(OutboundContext outboundContext, CompressionTable<ActorRef> table)
Description copied from class:InboundCompression
Must be implemented by extending classes in order to send aControlMessage
of appropriate type to the remote system in order to advertise the compression table to it.- Specified by:
advertiseCompressionTable
in classInboundCompression<ActorRef>
-
buildTableForAdvertisement
protected scala.collection.immutable.Map<ActorRef,java.lang.Object> buildTableForAdvertisement(scala.collection.Iterator<ActorRef> elements)
- Overrides:
buildTableForAdvertisement
in classInboundCompression<ActorRef>
-
decompress
public OptionVal<ActorRef> decompress(byte tableVersion, int idx)
Description copied from class:InboundCompression
Override and specialize if needed, for default compression logic delegate to 3-param overload- Specified by:
decompress
in classInboundCompression<ActorRef>
-
increment
public void increment(Address remoteAddress, ActorRef value, long n)
Description copied from class:InboundCompression
Addn
occurrence for the given key and callheavyHittedDetected
if element has become a heavy hitter. Empty keys are omitted.- Overrides:
increment
in classInboundCompression<ActorRef>
-
-