akka.routing
Class RoutedActorCell

java.lang.Object
  extended by akka.actor.ActorCell
      extended by akka.routing.RoutedActorCell
All Implemented Interfaces:
AbstractActorContext, ActorContext, ActorRefFactory, Cell, Children, DeathWatch, Dispatch, FaultHandling, ReceiveTimeout, UntypedActorContext
Direct Known Subclasses:
ResizablePoolCell

public class RoutedActorCell
extends ActorCell

INTERNAL API


Nested Class Summary
static class RoutedActorCell.RouterActorCreator
           
 
Constructor Summary
RoutedActorCell(ActorSystemImpl _system, InternalActorRef _ref, Props _routerProps, MessageDispatcher _routerDispatcher, Props routeeProps, InternalActorRef _supervisor)
           
 
Method Summary
 void addRoutee(Routee routee)
           
 void addRoutees(scala.collection.immutable.Iterable<Routee> routees)
          Add routees to the Router.
protected  void preSuperStart()
          Called when router is initalized but before super.start() to be able to do extra initialization in subclass.
 void removeRoutee(Routee routee, boolean stopChild)
           
 void removeRoutees(scala.collection.immutable.Iterable<Routee> routees, boolean stopChild)
          Remove routees from the Router.
 Props routeeProps()
           
 Router router()
           
 RouterConfig routerConfig()
           
 void sendMessage(Envelope envelope)
          Route the message via the router to the selected destination.
 RoutedActorCell start()
          Start the cell: enqueued message must not be processed before this has been called.
 
Methods inherited from class akka.actor.ActorCell
actor, autoReceiveMessage, become, become, become, clazz, clearActorCellFields, clearActorFields, contextStack, create, currentMessage, DefaultState, dispatcher, emptyActorRefSet, emptyBehaviorStack, emptyCancellable, guardian, handleSupervise, invoke, isLocal, lookupRoot, newActor, newUid, parent, props, provider, publish, receiveMessage, self, sender, setActorFields, splitNameAndUid, stash, SuspendedState, SuspendedWaitForChildrenState, system, systemImpl, systemInvoke, terminatedProps, uid, unbecome, undefinedUid
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface akka.actor.UntypedActorContext
getChild, getChildren
 
Methods inherited from interface akka.actor.AbstractActorContext
getChild, getChildren
 
Methods inherited from interface akka.actor.ActorContext
become, child, children, receiveTimeout, setReceiveTimeout, unwatch, watch, writeObject
 
Methods inherited from interface akka.actor.ActorRefFactory
actorFor, actorFor, actorFor, actorFor, actorOf, actorOf, actorSelection, actorSelection, stop
 
Methods inherited from interface akka.actor.Cell
childrenRefs, getChildByName, getSingleChild, hasMessages, isTerminated, numberOfMessages, restart, resume, sendMessage, sendSystemMessage, stop, suspend
 
Methods inherited from interface akka.actor.dungeon.ReceiveTimeout
cancelReceiveTimeout, checkReceiveTimeout, receiveTimeout, receiveTimeoutData, setReceiveTimeout
 
Methods inherited from interface akka.actor.dungeon.Children
_childrenRefsDoNotCallMeDirectly, _nextNameDoNotCallMeDirectly, actorOf, actorOf, attachChild, attachChild, checkName, child, children, childrenRefs, getAllChildStats, getChild, getChildByName, getChildByRef, getChildren, getSingleChild, initChild, isNormal, isTerminating, makeChild, randomName, removeChildAndGetStateChange, reserveChild, resumeChildren, setChildrenTerminationReason, setTerminated, stop, suspendChildren, swapChildrenRefs, unreserveChild, waitingForChildrenOrNull
 
Methods inherited from interface akka.actor.dungeon.Dispatch
_mailboxDoNotCallMeDirectly, handleException, hasMessages, init, isTerminated, mailbox, numberOfMessages, restart, resume, sendSystemMessage, stop, suspend, swapMailbox
 
Methods inherited from interface akka.actor.dungeon.DeathWatch
addressTerminated, addWatcher, maintainAddressTerminatedSubscription, receivedTerminated, removeFromSet, remWatcher, subscribeAddressTerminated, tellWatchersWeDied, terminatedQueued, terminatedQueuedFor, unsubscribeAddressTerminated, unwatch, unwatchWatchedActors, watch, watchedActorTerminated, watchedBy, watching, watchingContains
 
Methods inherited from interface akka.actor.dungeon.FaultHandling
_failed, clearFailed, faultCreate, faultRecreate, faultResume, faultSuspend, finishCreate, finishRecreate, finishTerminate, handleChildTerminated, handleFailure, handleInvokeFailure, handleNonFatalOrInterruptedException, isFailed, perpetrator, resumeNonRecursive, setFailed, suspendNonRecursive, terminate
 

Constructor Detail

RoutedActorCell

public RoutedActorCell(ActorSystemImpl _system,
                       InternalActorRef _ref,
                       Props _routerProps,
                       MessageDispatcher _routerDispatcher,
                       Props routeeProps,
                       InternalActorRef _supervisor)
Method Detail

routeeProps

public Props routeeProps()

routerConfig

public RouterConfig routerConfig()

router

public Router router()

addRoutee

public void addRoutee(Routee routee)

addRoutees

public void addRoutees(scala.collection.immutable.Iterable<Routee> routees)
Add routees to the Router. Messages in flight may still be routed to the old Router instance containing the old routees.

Parameters:
routees - (undocumented)

removeRoutee

public void removeRoutee(Routee routee,
                         boolean stopChild)

removeRoutees

public void removeRoutees(scala.collection.immutable.Iterable<Routee> routees,
                          boolean stopChild)
Remove routees from the Router. Messages in flight may still be routed to the old Router instance containing the old routees.

Parameters:
routees - (undocumented)
stopChild - (undocumented)

start

public RoutedActorCell start()
Description copied from interface: Cell
Start the cell: enqueued message must not be processed before this has been called. The usual action is to attach the mailbox to a dispatcher.

Returns:
(undocumented)

preSuperStart

protected void preSuperStart()
Called when router is initalized but before super.start() to be able to do extra initialization in subclass.


sendMessage

public void sendMessage(Envelope envelope)
Route the message via the router to the selected destination.

When CurrentRoutees is sent to the RoutedActorRef it replies with RouterRoutees.

Parameters:
envelope - (undocumented)