akka.remote.transport
Class ThrottlerHandle
java.lang.Object
akka.remote.transport.AbstractTransportAdapterHandle
akka.remote.transport.ThrottlerHandle
- All Implemented Interfaces:
- AssociationHandle, SchemeAugmenter, java.io.Serializable, scala.Equals, scala.Product
public class ThrottlerHandle
- extends AbstractTransportAdapterHandle
- implements scala.Product, scala.Serializable
INTERNAL API
- See Also:
- Serialized Form
Nested classes/interfaces inherited from interface akka.remote.transport.AssociationHandle |
AssociationHandle.ActorHandleEventListener, AssociationHandle.ActorHandleEventListener$, AssociationHandle.Disassociated, AssociationHandle.Disassociated$, AssociationHandle.DisassociateInfo, AssociationHandle.HandleEvent, AssociationHandle.HandleEventListener, AssociationHandle.InboundPayload, AssociationHandle.InboundPayload$, AssociationHandle.Quarantined$, AssociationHandle.Shutdown$, AssociationHandle.Unknown$ |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface scala.Product |
productArity, productElement, productIterator, productPrefix |
Methods inherited from interface scala.Equals |
canEqual, equals |
ThrottlerHandle
public ThrottlerHandle(AssociationHandle _wrappedHandle,
ActorRef throttlerActor)
_wrappedHandle
public AssociationHandle _wrappedHandle()
throttlerActor
public ActorRef throttlerActor()
outboundThrottleMode
public java.util.concurrent.atomic.AtomicReference<ThrottlerTransportAdapter.ThrottleMode> outboundThrottleMode()
readHandlerPromise
public scala.concurrent.Promise<AssociationHandle.HandleEventListener> readHandlerPromise()
- Description copied from interface:
AssociationHandle
- The Promise returned by this call must be completed with an
AssociationHandle.HandleEventListener
to register a listener responsible for handling incoming payload. Until the listener is not registered the
transport SHOULD buffer incoming messages.
- Specified by:
readHandlerPromise
in interface AssociationHandle
- Returns:
- Promise that must be completed with the listener responsible for handling incoming data.
write
public boolean write(ByteString payload)
- Description copied from interface:
AssociationHandle
- Asynchronously sends the specified payload to the remote endpoint. This method MUST be thread-safe as it might
be called from different threads. This method MUST NOT block.
Writes guarantee ordering of messages, but not their reception. The call to write returns with
a Boolean indicating if the channel was ready for writes or not. A return value of false indicates that the
channel is not yet ready for delivery (e.g.: the write buffer is full) and the sender needs to wait
until the channel becomes ready again. Returning false also means that the current write was dropped (this MUST be
guaranteed to ensure duplication-free delivery).
- Specified by:
write
in interface AssociationHandle
- Parameters:
payload
- The payload to be delivered to the remote endpoint.
- Returns:
- Boolean indicating the availability of the association for subsequent writes.
disassociate
public void disassociate()
- Description copied from interface:
AssociationHandle
- Closes the underlying transport link, if needed. Some transports might not need an explicit teardown (UDP) and
some transports may not support it (hardware connections). Remote endpoint of the channel or connection MAY
be notified, but this is not guaranteed. The Transport that provides the handle MUST guarantee that disassociate()
could be called arbitrarily many times.
- Specified by:
disassociate
in interface AssociationHandle
disassociateWithFailure
public void disassociateWithFailure(AssociationHandle.DisassociateInfo reason)