akka.remote
Class RemoteActorRefProvider

java.lang.Object
  extended by akka.remote.RemoteActorRefProvider
All Implemented Interfaces:
akka.actor.ActorRefProvider

public class RemoteActorRefProvider
extends java.lang.Object
implements akka.actor.ActorRefProvider

INTERNAL API Depending on this class is not supported, only the ActorRefProvider interface is supported.

Remote ActorRefProvider. Starts up actor on remote node and creates a RemoteActorRef representing it.


Nested Class Summary
static class RemoteActorRefProvider.Finished$
           
static class RemoteActorRefProvider.Idle$
           
static interface RemoteActorRefProvider.TerminatorState
           
static class RemoteActorRefProvider.Uninitialized$
           
static class RemoteActorRefProvider.WaitDaemonShutdown$
           
static class RemoteActorRefProvider.WaitTransportShutdown$
           
 
Constructor Summary
RemoteActorRefProvider(java.lang.String systemName, akka.actor.ActorSystem.Settings settings, akka.event.EventStream eventStream, akka.actor.DynamicAccess dynamicAccess)
           
 
Method Summary
 akka.actor.InternalActorRef actorFor(akka.actor.ActorPath path)
           
 akka.actor.InternalActorRef actorFor(akka.actor.InternalActorRef ref, scala.collection.Iterable<java.lang.String> path)
           
 akka.actor.InternalActorRef actorFor(akka.actor.InternalActorRef ref, java.lang.String path)
           
 akka.actor.InternalActorRef actorOf(akka.actor.ActorSystemImpl system, akka.actor.Props props, akka.actor.InternalActorRef supervisor, akka.actor.ActorPath path, boolean systemService, scala.Option<akka.actor.Deploy> deploy, boolean lookupDeploy, boolean async)
           
 void afterSendSystemMessage(akka.dispatch.sysmsg.SystemMessage message)
          INTERNAL API
protected  RemoteDeployer createDeployer()
          Factory method to make it possible to override deployer in subclass Creates a new instance every time
protected  akka.actor.ActorRef createRemoteDeploymentWatcher(akka.actor.ActorSystemImpl system)
           
protected  akka.actor.ActorRef createRemoteWatcher(akka.actor.ActorSystemImpl system)
           
protected  FailureDetectorRegistry<akka.actor.Address> createRemoteWatcherFailureDetector(akka.actor.ExtendedActorSystem system)
           
 akka.actor.InternalActorRef deadLetters()
           
 akka.actor.Deployer deployer()
           
 akka.actor.DynamicAccess dynamicAccess()
           
 akka.event.EventStream eventStream()
           
 akka.actor.Address getDefaultAddress()
           
 scala.Option<akka.actor.Address> getExternalAddressFor(akka.actor.Address addr)
           
 akka.actor.LocalActorRef guardian()
           
 void init(akka.actor.ActorSystemImpl system)
           
 akka.event.LoggingAdapter log()
           
 void quarantine(akka.actor.Address address, scala.Option<java.lang.Object> uid)
          Marks a remote system as out of sync and prevents reconnects until the quarantine timeout elapses.
 void registerTempActor(akka.actor.InternalActorRef actorRef, akka.actor.ActorPath path)
           
 akka.actor.InternalActorRef remoteDaemon()
           
 RemoteSettings remoteSettings()
           
 akka.actor.ActorRef resolveActorRef(akka.actor.ActorPath path)
           
 akka.actor.ActorRef resolveActorRef(java.lang.String path)
           
 akka.actor.InternalActorRef resolveActorRefWithLocalAddress(java.lang.String path, akka.actor.Address localAddress)
          INTERNAL API Called in deserialization of incoming remote messages where the correct local address is known.
 akka.actor.InternalActorRef rootGuardian()
           
 akka.actor.ActorRef rootGuardianAt(akka.actor.Address address)
           
 akka.actor.ActorPath rootPath()
           
 akka.serialization.Serialization serialization()
           
 akka.actor.ActorSystem.Settings settings()
           
 akka.actor.LocalActorRef systemGuardian()
           
 java.lang.String systemName()
           
 akka.actor.VirtualPathContainer tempContainer()
           
 akka.actor.ActorPath tempPath()
           
 scala.concurrent.Future<scala.runtime.BoxedUnit> terminationFuture()
           
 RemoteTransport transport()
           
 void unregisterTempActor(akka.actor.ActorPath path)
           
 void useActorOnNode(akka.actor.ActorRef ref, akka.actor.Props props, akka.actor.Deploy deploy, akka.actor.ActorRef supervisor)
          Using (checking out) actor on a specific node.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RemoteActorRefProvider

public RemoteActorRefProvider(java.lang.String systemName,
                              akka.actor.ActorSystem.Settings settings,
                              akka.event.EventStream eventStream,
                              akka.actor.DynamicAccess dynamicAccess)
Method Detail

systemName

public java.lang.String systemName()

settings

public akka.actor.ActorSystem.Settings settings()
Specified by:
settings in interface akka.actor.ActorRefProvider

eventStream

public akka.event.EventStream eventStream()

dynamicAccess

public akka.actor.DynamicAccess dynamicAccess()

remoteSettings

public RemoteSettings remoteSettings()

deployer

public akka.actor.Deployer deployer()
Specified by:
deployer in interface akka.actor.ActorRefProvider

createDeployer

protected RemoteDeployer createDeployer()
Factory method to make it possible to override deployer in subclass Creates a new instance every time


log

public akka.event.LoggingAdapter log()

rootPath

public akka.actor.ActorPath rootPath()
Specified by:
rootPath in interface akka.actor.ActorRefProvider

deadLetters

public akka.actor.InternalActorRef deadLetters()
Specified by:
deadLetters in interface akka.actor.ActorRefProvider

rootGuardian

public akka.actor.InternalActorRef rootGuardian()
Specified by:
rootGuardian in interface akka.actor.ActorRefProvider

guardian

public akka.actor.LocalActorRef guardian()
Specified by:
guardian in interface akka.actor.ActorRefProvider

systemGuardian

public akka.actor.LocalActorRef systemGuardian()
Specified by:
systemGuardian in interface akka.actor.ActorRefProvider

terminationFuture

public scala.concurrent.Future<scala.runtime.BoxedUnit> terminationFuture()
Specified by:
terminationFuture in interface akka.actor.ActorRefProvider

registerTempActor

public void registerTempActor(akka.actor.InternalActorRef actorRef,
                              akka.actor.ActorPath path)
Specified by:
registerTempActor in interface akka.actor.ActorRefProvider

unregisterTempActor

public void unregisterTempActor(akka.actor.ActorPath path)
Specified by:
unregisterTempActor in interface akka.actor.ActorRefProvider

tempPath

public akka.actor.ActorPath tempPath()
Specified by:
tempPath in interface akka.actor.ActorRefProvider

tempContainer

public akka.actor.VirtualPathContainer tempContainer()
Specified by:
tempContainer in interface akka.actor.ActorRefProvider

transport

public RemoteTransport transport()

serialization

public akka.serialization.Serialization serialization()

remoteDaemon

public akka.actor.InternalActorRef remoteDaemon()

init

public void init(akka.actor.ActorSystemImpl system)
Specified by:
init in interface akka.actor.ActorRefProvider

createRemoteWatcher

protected akka.actor.ActorRef createRemoteWatcher(akka.actor.ActorSystemImpl system)

createRemoteWatcherFailureDetector

protected FailureDetectorRegistry<akka.actor.Address> createRemoteWatcherFailureDetector(akka.actor.ExtendedActorSystem system)

createRemoteDeploymentWatcher

protected akka.actor.ActorRef createRemoteDeploymentWatcher(akka.actor.ActorSystemImpl system)

actorOf

public akka.actor.InternalActorRef actorOf(akka.actor.ActorSystemImpl system,
                                           akka.actor.Props props,
                                           akka.actor.InternalActorRef supervisor,
                                           akka.actor.ActorPath path,
                                           boolean systemService,
                                           scala.Option<akka.actor.Deploy> deploy,
                                           boolean lookupDeploy,
                                           boolean async)
Specified by:
actorOf in interface akka.actor.ActorRefProvider

actorFor

public akka.actor.InternalActorRef actorFor(akka.actor.ActorPath path)
Specified by:
actorFor in interface akka.actor.ActorRefProvider

actorFor

public akka.actor.InternalActorRef actorFor(akka.actor.InternalActorRef ref,
                                            java.lang.String path)
Specified by:
actorFor in interface akka.actor.ActorRefProvider

actorFor

public akka.actor.InternalActorRef actorFor(akka.actor.InternalActorRef ref,
                                            scala.collection.Iterable<java.lang.String> path)
Specified by:
actorFor in interface akka.actor.ActorRefProvider

rootGuardianAt

public akka.actor.ActorRef rootGuardianAt(akka.actor.Address address)
Specified by:
rootGuardianAt in interface akka.actor.ActorRefProvider

resolveActorRefWithLocalAddress

public akka.actor.InternalActorRef resolveActorRefWithLocalAddress(java.lang.String path,
                                                                   akka.actor.Address localAddress)
INTERNAL API Called in deserialization of incoming remote messages where the correct local address is known.


resolveActorRef

public akka.actor.ActorRef resolveActorRef(java.lang.String path)
Specified by:
resolveActorRef in interface akka.actor.ActorRefProvider

resolveActorRef

public akka.actor.ActorRef resolveActorRef(akka.actor.ActorPath path)
Specified by:
resolveActorRef in interface akka.actor.ActorRefProvider

useActorOnNode

public void useActorOnNode(akka.actor.ActorRef ref,
                           akka.actor.Props props,
                           akka.actor.Deploy deploy,
                           akka.actor.ActorRef supervisor)
Using (checking out) actor on a specific node.


getExternalAddressFor

public scala.Option<akka.actor.Address> getExternalAddressFor(akka.actor.Address addr)
Specified by:
getExternalAddressFor in interface akka.actor.ActorRefProvider

getDefaultAddress

public akka.actor.Address getDefaultAddress()
Specified by:
getDefaultAddress in interface akka.actor.ActorRefProvider

quarantine

public void quarantine(akka.actor.Address address,
                       scala.Option<java.lang.Object> uid)
Marks a remote system as out of sync and prevents reconnects until the quarantine timeout elapses.

Parameters:
address - Address of the remote system to be quarantined
uid - UID of the remote system, if the uid is not defined it will not be a strong quarantine but the current endpoint writer will be stopped (dropping system messages) and the address will be gated

afterSendSystemMessage

public void afterSendSystemMessage(akka.dispatch.sysmsg.SystemMessage message)
INTERNAL API