ActorTransportAdapter

org.apache.pekko.remote.transport.ActorTransportAdapter
See theActorTransportAdapter companion object
abstract class ActorTransportAdapter(wrappedTransport: Transport, system: ActorSystem) extends AbstractTransportAdapter

Attributes

Companion
object
Deprecated
true
Source
AbstractTransportAdapter.scala
Graph
Supertypes
trait Transport
class Object
trait Matchable
class Any
Show all
Known subtypes

Members list

Value members

Concrete methods

override def interceptAssociate(remoteAddress: Address, statusPromise: Promise[AssociationHandle]): Unit

Attributes

Definition Classes
Source
AbstractTransportAdapter.scala
override def interceptListen(listenAddress: Address, listenerPromise: Future[AssociationEventListener]): Future[AssociationEventListener]

Attributes

Definition Classes
Source
AbstractTransportAdapter.scala
override def shutdown(): Future[Boolean]

Shuts down the transport layer and releases all the corresponding resources. Shutdown is asynchronous signalling the end of the shutdown by completing the returned future.

Shuts down the transport layer and releases all the corresponding resources. Shutdown is asynchronous signalling the end of the shutdown by completing the returned future.

The transport SHOULD try flushing pending writes before becoming completely closed.

Attributes

Returns

Future signalling the completion of shutdown

Definition Classes
Source
AbstractTransportAdapter.scala

Inherited methods

protected def addedSchemeIdentifier: String

Attributes

Inherited from:
SchemeAugmenter
Source
AbstractTransportAdapter.scala
override def associate(remoteAddress: Address): Future[AssociationHandle]

Asynchronously opens a logical duplex link between two Transport Entities over a network. It could be backed by a real transport-layer connection (TCP), more lightweight connections provided over datagram protocols (UDP with additional services), substreams of multiplexed connections (SCTP) or physical links (serial port).

Asynchronously opens a logical duplex link between two Transport Entities over a network. It could be backed by a real transport-layer connection (TCP), more lightweight connections provided over datagram protocols (UDP with additional services), substreams of multiplexed connections (SCTP) or physical links (serial port).

This call returns a future of an pekko.remote.transport.AssociationHandle. A failed future indicates that the association attempt was unsuccessful. If the exception is pekko.remote.transport.Transport.InvalidAssociationException then the association request was invalid, and it is impossible to recover.

Value parameters

remoteAddress

The address of the remote transport entity.

Attributes

Returns

A status instance representing failure or a success containing an pekko.remote.transport.AssociationHandle

Definition Classes
Inherited from:
AbstractTransportAdapter
Source
AbstractTransportAdapter.scala
protected def augmentScheme(address: Address): Address

Attributes

Inherited from:
SchemeAugmenter
Source
AbstractTransportAdapter.scala
protected def augmentScheme(originalScheme: String): String

Attributes

Inherited from:
SchemeAugmenter
Source
AbstractTransportAdapter.scala
override def isResponsibleFor(address: Address): Boolean

A function that decides whether the specific transport instance is responsible for delivering to a given address. The function must be thread-safe and non-blocking.

A function that decides whether the specific transport instance is responsible for delivering to a given address. The function must be thread-safe and non-blocking.

The purpose of this function is to resolve cases when the scheme part of an URL is not enough to resolve the correct transport i.e. multiple instances of the same transport implementation are loaded. These cases arise when

  • the same transport, but with different configurations is used for different remote systems
  • a transport is able to serve one address only (hardware protocols, e.g. Serial port) and multiple instances are needed to be loaded for different endpoints.

Attributes

Returns

whether the transport instance is responsible to serve communications to the given address.

Definition Classes
Inherited from:
AbstractTransportAdapter
Source
AbstractTransportAdapter.scala

Asynchronously attempts to setup the transport layer to listen and accept incoming associations. The result of the attempt is wrapped by a Future returned by this method. The pair contained in the future contains a Promise for an ActorRef. By completing this Promise with an pekko.remote.transport.Transport.AssociationEventListener, that listener becomes responsible for handling incoming associations. Until the Promise is not completed, no associations are processed.

Asynchronously attempts to setup the transport layer to listen and accept incoming associations. The result of the attempt is wrapped by a Future returned by this method. The pair contained in the future contains a Promise for an ActorRef. By completing this Promise with an pekko.remote.transport.Transport.AssociationEventListener, that listener becomes responsible for handling incoming associations. Until the Promise is not completed, no associations are processed.

Attributes

Returns

A Future containing a pair of the bound local address and a Promise of an AssociationListener that must be completed by the consumer of the future.

Definition Classes
Inherited from:
AbstractTransportAdapter
Source
AbstractTransportAdapter.scala
def managementCommand(cmd: Any): Future[Boolean]

This method allows upper layers to send management commands to the transport. It is the responsibility of the sender to send appropriate commands to different transport implementations. Unknown commands will be ignored.

This method allows upper layers to send management commands to the transport. It is the responsibility of the sender to send appropriate commands to different transport implementations. Unknown commands will be ignored.

Value parameters

cmd

Command message to the transport

Attributes

Returns

Future that succeeds when the command was handled or dropped

Inherited from:
Transport
Source
Transport.scala
protected def maximumOverhead: Int

Attributes

Inherited from:
AbstractTransportAdapter
Source
AbstractTransportAdapter.scala
override def maximumPayloadBytes: Int

Defines the maximum size of payload this transport is able to deliver. All transports MUST support at least 32kBytes (32000 octets) of payload, but some MAY support larger sizes.

Defines the maximum size of payload this transport is able to deliver. All transports MUST support at least 32kBytes (32000 octets) of payload, but some MAY support larger sizes.

Attributes

Definition Classes
Inherited from:
AbstractTransportAdapter
Source
AbstractTransportAdapter.scala
protected def removeScheme(address: Address): Address

Attributes

Inherited from:
SchemeAugmenter
Source
AbstractTransportAdapter.scala
protected def removeScheme(scheme: String): String

Attributes

Inherited from:
SchemeAugmenter
Source
AbstractTransportAdapter.scala
override def schemeIdentifier: String

Returns a string that will be used as the scheme part of the URLs corresponding to this transport

Returns a string that will be used as the scheme part of the URLs corresponding to this transport

Attributes

Returns

the scheme string

Definition Classes
Inherited from:
AbstractTransportAdapter
Source
AbstractTransportAdapter.scala

Implicits

Inherited implicits

implicit val ec: ExecutionContext

Attributes

Inherited from:
AbstractTransportAdapter
Source
AbstractTransportAdapter.scala