akka.remote.transport
Class FailureInjectorTransportAdapter

java.lang.Object
  extended by akka.remote.transport.AbstractTransportAdapter
      extended by akka.remote.transport.FailureInjectorTransportAdapter
All Implemented Interfaces:
SchemeAugmenter, Transport, Transport.AssociationEventListener

public class FailureInjectorTransportAdapter
extends AbstractTransportAdapter
implements Transport.AssociationEventListener

INTERNAL API


Nested Class Summary
static class FailureInjectorTransportAdapter.All
           
static class FailureInjectorTransportAdapter.All$
           
static class FailureInjectorTransportAdapter.Drop
           
static class FailureInjectorTransportAdapter.Drop$
           
static interface FailureInjectorTransportAdapter.FailureInjectorCommand
           
static interface FailureInjectorTransportAdapter.GremlinMode
           
static class FailureInjectorTransportAdapter.One
           
static class FailureInjectorTransportAdapter.One$
           
static class FailureInjectorTransportAdapter.PassThru$
           
 
Nested classes/interfaces inherited from interface akka.remote.transport.Transport
Transport.ActorAssociationEventListener, Transport.ActorAssociationEventListener$, Transport.AssociationEvent, Transport.AssociationEventListener, Transport.InboundAssociation, Transport.InboundAssociation$, Transport.InvalidAssociationException, Transport.InvalidAssociationException$
 
Constructor Summary
FailureInjectorTransportAdapter(Transport wrappedTransport, ExtendedActorSystem extendedSystem)
           
 
Method Summary
 java.lang.String addedSchemeIdentifier()
           
 java.util.concurrent.ConcurrentHashMap<Address,FailureInjectorTransportAdapter.GremlinMode> addressChaosTable()
           
 FailureInjectorTransportAdapter.GremlinMode chaosMode(Address remoteAddress)
           
 ExtendedActorSystem extendedSystem()
           
static java.lang.String FailureInjectorSchemeIdentifier()
           
protected  void interceptAssociate(Address remoteAddress, scala.concurrent.Promise<AssociationHandle> statusPromise)
           
 Transport.AssociationEvent interceptInboundAssociation(Transport.AssociationEvent ev)
           
protected  scala.concurrent.Future<Transport.AssociationEventListener> interceptListen(Address listenAddress, scala.concurrent.Future<Transport.AssociationEventListener> listenerFuture)
           
 scala.concurrent.Future<java.lang.Object> managementCommand(java.lang.Object cmd)
          This method allows upper layers to send management commands to the transport.
protected  int maximumOverhead()
           
 void notify(Transport.AssociationEvent ev)
          Called by the transport to notify the listener about an AssociationEvent
 boolean shouldDropInbound(Address remoteAddress, java.lang.Object instance, java.lang.String debugMessage)
           
 boolean shouldDropOutbound(Address remoteAddress, java.lang.Object instance, java.lang.String debugMessage)
           
 
Methods inherited from class akka.remote.transport.AbstractTransportAdapter
associate, ec, isResponsibleFor, listen, maximumPayloadBytes, schemeIdentifier, shutdown, wrappedTransport
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface akka.remote.transport.SchemeAugmenter
augmentScheme, augmentScheme, removeScheme, removeScheme
 

Constructor Detail

FailureInjectorTransportAdapter

public FailureInjectorTransportAdapter(Transport wrappedTransport,
                                       ExtendedActorSystem extendedSystem)
Method Detail

FailureInjectorSchemeIdentifier

public static java.lang.String FailureInjectorSchemeIdentifier()

extendedSystem

public ExtendedActorSystem extendedSystem()

addressChaosTable

public java.util.concurrent.ConcurrentHashMap<Address,FailureInjectorTransportAdapter.GremlinMode> addressChaosTable()

addedSchemeIdentifier

public java.lang.String addedSchemeIdentifier()
Specified by:
addedSchemeIdentifier in interface SchemeAugmenter

maximumOverhead

protected int maximumOverhead()
Specified by:
maximumOverhead in class AbstractTransportAdapter

managementCommand

public scala.concurrent.Future<java.lang.Object> managementCommand(java.lang.Object cmd)
Description copied from interface: Transport
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.

Specified by:
managementCommand in interface Transport
Parameters:
cmd - Command message to the transport
Returns:
Future that succeeds when the command was handled or dropped

interceptListen

protected scala.concurrent.Future<Transport.AssociationEventListener> interceptListen(Address listenAddress,
                                                                                      scala.concurrent.Future<Transport.AssociationEventListener> listenerFuture)
Specified by:
interceptListen in class AbstractTransportAdapter

interceptAssociate

protected void interceptAssociate(Address remoteAddress,
                                  scala.concurrent.Promise<AssociationHandle> statusPromise)
Specified by:
interceptAssociate in class AbstractTransportAdapter

notify

public void notify(Transport.AssociationEvent ev)
Description copied from interface: Transport.AssociationEventListener
Called by the transport to notify the listener about an AssociationEvent

Specified by:
notify in interface Transport.AssociationEventListener
Parameters:
ev - The AssociationEvent of the transport

interceptInboundAssociation

public Transport.AssociationEvent interceptInboundAssociation(Transport.AssociationEvent ev)

shouldDropInbound

public boolean shouldDropInbound(Address remoteAddress,
                                 java.lang.Object instance,
                                 java.lang.String debugMessage)

shouldDropOutbound

public boolean shouldDropOutbound(Address remoteAddress,
                                  java.lang.Object instance,
                                  java.lang.String debugMessage)

chaosMode

public FailureInjectorTransportAdapter.GremlinMode chaosMode(Address remoteAddress)