trait AssociationHandle extends AnyRef
An SPI layer for abstracting over logical links (associations) created by a pekko.remote.transport.Transport. Handles are responsible for providing an API for sending and receiving from the underlying channel.
To register a listener for processing incoming payload data, the listener must be registered by completing the Promise returned by pekko.remote.transport.AssociationHandle#readHandlerPromise. Incoming data is not processed until this registration takes place.
- Annotations
- @deprecated
- Deprecated
(Since version Akka 2.6.0) Classic remoting is deprecated, use Artery
- Source
- Transport.scala
- Alphabetic
- By Inheritance
- AssociationHandle
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def localAddress: Address
Address of the local endpoint.
Address of the local endpoint.
- returns
Address of the local endpoint.
- abstract def readHandlerPromise: Promise[HandleEventListener]
The Promise returned by this call must be completed with an pekko.remote.transport.AssociationHandle.HandleEventListener to register a listener responsible for handling incoming payload.
The Promise returned by this call must be completed with an pekko.remote.transport.AssociationHandle.HandleEventListener to register a listener responsible for handling incoming payload. Until the listener is not registered the transport SHOULD buffer incoming messages.
- returns
Promise that must be completed with the listener responsible for handling incoming data.
- abstract def remoteAddress: Address
Address of the remote endpoint.
Address of the remote endpoint.
- returns
Address of the remote endpoint.
- abstract def write(payload: ByteString): Boolean
Asynchronously sends the specified payload to the remote endpoint.
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).
- payload
The payload to be delivered to the remote endpoint.
- returns
Boolean indicating the availability of the association for subsequent writes.
- abstract def disassociate(): Unit
Closes the underlying transport link, if needed.
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.
- Annotations
- @deprecated
- Deprecated
(Since version Akka 2.5.3) Use method that states reasons to make sure disassociation reasons are logged.
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- def +(other: String): String
- Implicit
- This member is added by an implicit conversion from AssociationHandle toany2stringadd[AssociationHandle] performed by method any2stringadd in scala.Predef.
- Definition Classes
- any2stringadd
- def ->[B](y: B): (AssociationHandle, B)
- Implicit
- This member is added by an implicit conversion from AssociationHandle toArrowAssoc[AssociationHandle] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @HotSpotIntrinsicCandidate() @native()
- def disassociate(reason: String, log: LoggingAdapter): Unit
Closes the underlying transport link, if needed.
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.
- Annotations
- @nowarn()
- def ensuring(cond: (AssociationHandle) => Boolean, msg: => Any): AssociationHandle
- Implicit
- This member is added by an implicit conversion from AssociationHandle toEnsuring[AssociationHandle] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: (AssociationHandle) => Boolean): AssociationHandle
- Implicit
- This member is added by an implicit conversion from AssociationHandle toEnsuring[AssociationHandle] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: Boolean, msg: => Any): AssociationHandle
- Implicit
- This member is added by an implicit conversion from AssociationHandle toEnsuring[AssociationHandle] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: Boolean): AssociationHandle
- Implicit
- This member is added by an implicit conversion from AssociationHandle toEnsuring[AssociationHandle] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
(Since version 9)
- def formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from AssociationHandle toStringFormat[AssociationHandle] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @deprecated @inline()
- Deprecated
(Since version 2.12.16) Use
formatString.format(value)
instead ofvalue.formatted(formatString)
, or use thef""
string interpolator. In Java 15 and later,formatted
resolves to the new method in String which has reversed parameters.
- def →[B](y: B): (AssociationHandle, B)
- Implicit
- This member is added by an implicit conversion from AssociationHandle toArrowAssoc[AssociationHandle] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @deprecated
- Deprecated
(Since version 2.13.0) Use
->
instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.