Class WrappedActorRefProvider
Abstract base class for implementing an IActorRefProvider which wraps an underlying Akka.NET implementation
Inherited Members
Namespace: Phobos.Actor.Impl
Assembly: Phobos.Actor.dll
Syntax
public abstract class WrappedActorRefProvider : IActorRefProvider, IPhobosActorRefProvider
Constructors
WrappedActorRefProvider(string, Settings, EventStream)
Declaration
protected WrappedActorRefProvider(string systemName, Settings settings, EventStream eventStream)
Parameters
Type | Name | Description |
---|---|---|
string | systemName | |
Settings | settings | |
EventStream | eventStream |
Properties
DeadLetters
Gets the dead letters.
Declaration
public IActorRef DeadLetters { get; }
Property Value
Type | Description |
---|---|
IActorRef |
DefaultAddress
Gets the external address of the default transport.
Declaration
public Address DefaultAddress { get; }
Property Value
Type | Description |
---|---|
Address |
Deployer
Gets the deployer.
Declaration
public virtual Deployer Deployer { get; }
Property Value
Type | Description |
---|---|
Deployer |
Filtering
Declaration
public FilteringEngine Filtering { get; }
Property Value
Type | Description |
---|---|
FilteringEngine |
Guardian
Gets the supervisor used for all top-level user actors.
Declaration
public LocalActorRef Guardian { get; }
Property Value
Type | Description |
---|---|
LocalActorRef |
IgnoreRef
Declaration
public IActorRef IgnoreRef { get; }
Property Value
Type | Description |
---|---|
IActorRef |
Initialized
Declaration
protected bool Initialized { get; }
Property Value
Type | Description |
---|---|
bool |
Log
Declaration
public ILoggingAdapter Log { get; }
Property Value
Type | Description |
---|---|
ILoggingAdapter |
Monitor
Declaration
public abstract Meter Monitor { get; protected set; }
Property Value
Type | Description |
---|---|
Meter |
PhobosDeployer
Declaration
public PhobosDeployer PhobosDeployer { get; }
Property Value
Type | Description |
---|---|
PhobosDeployer |
PhobosSettings
Declaration
public PhobosSettings PhobosSettings { get; }
Property Value
Type | Description |
---|---|
PhobosSettings |
RootGuardian
Reference to the supervisor of guardian and systemGuardian; this is exposed so that the ActorSystemImpl can use it as lookupRoot, i.e. for anchoring absolute actor look-ups.
Declaration
public IInternalActorRef RootGuardian { get; }
Property Value
Type | Description |
---|---|
IInternalActorRef |
RootPath
Gets the root path for all actors within this actor system, not including any remote address information.
Declaration
public ActorPath RootPath { get; }
Property Value
Type | Description |
---|---|
ActorPath |
SerializationInformation
INTERNAL API.
Declaration
public Information SerializationInformation { get; }
Property Value
Type | Description |
---|---|
Information |
Settings
Gets the settings.
Declaration
public Settings Settings { get; }
Property Value
Type | Description |
---|---|
Settings |
SystemGuardian
Gets the supervisor used for all top-level system actors.
Declaration
public LocalActorRef SystemGuardian { get; }
Property Value
Type | Description |
---|---|
LocalActorRef |
TempContainer
Returns the actor reference representing the "/temp" path.
Declaration
public IInternalActorRef TempContainer { get; }
Property Value
Type | Description |
---|---|
IInternalActorRef |
TerminationTask
This Future is completed upon termination of this IActorRefProvider, which is usually initiated by stopping the guardian via Stop(IActorRef).
Declaration
public Task TerminationTask { get; }
Property Value
Type | Description |
---|---|
Task |
Tracer
Declaration
public abstract Tracer Tracer { get; protected set; }
Property Value
Type | Description |
---|---|
Tracer |
Underlying
Declaration
protected IActorRefProvider Underlying { get; }
Property Value
Type | Description |
---|---|
IActorRefProvider |
Methods
ActorOf(ActorSystemImpl, Props, IInternalActorRef, ActorPath, bool, Deploy, bool, bool)
Actor factory with create-only semantics: will create an actor as
described by props
with the given supervisor
and path
(may be different
in case of remote supervision). If systemService
is true, deployment is
bypassed (local-only). If a value fordeploy
is passed in, it should be
regarded as taking precedence over the nominally applicable settings,
but it should be overridable from external configuration; the lookup of
the latter can be suppressed by setting "lookupDeploy" to "false".
Declaration
public abstract IInternalActorRef ActorOf(ActorSystemImpl system, Props props, IInternalActorRef supervisor, ActorPath path, bool systemService, Deploy deploy, bool lookupDeploy, bool async)
Parameters
Type | Name | Description |
---|---|---|
ActorSystemImpl | system | TBD |
Props | props | TBD |
IInternalActorRef | supervisor | TBD |
ActorPath | path | TBD |
bool | systemService | TBD |
Deploy | deploy | TBD |
bool | lookupDeploy | TBD |
bool | async | TBD |
Returns
Type | Description |
---|---|
IInternalActorRef | TBD |
CreateFutureRef<T>(TaskCompletionSource<T>)
Automatically generates a FutureActorRef<T> with a temporary path.
Declaration
public virtual FutureActorRef<T> CreateFutureRef<T>(TaskCompletionSource<T> tcs)
Parameters
Type | Name | Description |
---|---|---|
TaskCompletionSource<T> | tcs | A typed TaskCompletionSource<TResult> |
Returns
Type | Description |
---|---|
FutureActorRef<T> | A new, single-use FutureActorRef<T> instance. |
Type Parameters
Name | Description |
---|---|
T | The type of output this FutureActorRef<T> expects. |
Remarks
CreateLog(IActorRefProvider, EventStream)
Declaration
protected abstract ILoggingAdapter CreateLog(IActorRefProvider underlying, EventStream stream = null)
Parameters
Type | Name | Description |
---|---|---|
IActorRefProvider | underlying | |
EventStream | stream |
Returns
Type | Description |
---|---|
ILoggingAdapter |
CreateUnderlying(string, Settings, EventStream)
Declaration
protected abstract IActorRefProvider CreateUnderlying(string systemName, Settings settings, EventStream eventStream)
Parameters
Type | Name | Description |
---|---|---|
string | systemName | |
Settings | settings | |
EventStream | eventStream |
Returns
Type | Description |
---|---|
IActorRefProvider |
GetExternalAddressFor(Address)
Obtain the address which is to be used within sender references when sending to the given other address or none if the other address cannot be reached from this system (i.e. no means of communication known; no attempt is made to verify actual reachability).
Declaration
public Address GetExternalAddressFor(Address address)
Parameters
Type | Name | Description |
---|---|---|
Address | address | TBD |
Returns
Type | Description |
---|---|
Address | TBD |
Init(ActorSystemImpl)
Initialization of an ActorRefProvider happens in two steps: first construction of the object with settings, eventStream, etc. and then—when the ActorSystem is constructed—the second phase during which actors may be created (e.g. the guardians).
Declaration
public virtual void Init(ActorSystemImpl system)
Parameters
Type | Name | Description |
---|---|---|
ActorSystemImpl | system | TBD |
RegisterTempActor(IInternalActorRef, ActorPath)
Registers an actorRef at a path returned by TempPath(); do NOT pass in any other path.
Declaration
public void RegisterTempActor(IInternalActorRef actorRef, ActorPath path)
Parameters
Type | Name | Description |
---|---|---|
IInternalActorRef | actorRef | The actor reference. |
ActorPath | path | A path returned by TempPath(). Do NOT pass in any other path! |
ResolveActorRef(ActorPath)
Get the actor reference for a specified path. If no such actor exists, it will be (equivalent to) a dead letter reference.
Declaration
public IActorRef ResolveActorRef(ActorPath actorPath)
Parameters
Type | Name | Description |
---|---|---|
ActorPath | actorPath | TBD |
Returns
Type | Description |
---|---|
IActorRef | TBD |
ResolveActorRef(string)
Get the actor reference for a specified path. If no such actor exists, it will be (equivalent to) a dead letter reference.
Declaration
public IActorRef ResolveActorRef(string path)
Parameters
Type | Name | Description |
---|---|---|
string | path | TBD |
Returns
Type | Description |
---|---|
IActorRef | TBD |
RootGuardianAt(Address)
Reference to the supervisor of guardian and systemGuardian at the specified address; this is exposed so that the ActorRefFactory can use it as lookupRoot, i.e. for anchoring absolute actor selections.
Declaration
public IActorRef RootGuardianAt(Address address)
Parameters
Type | Name | Description |
---|---|---|
Address | address | TBD |
Returns
Type | Description |
---|---|
IActorRef | TBD |
TempPath()
Generates and returns a unique actor path below "/temp".
Declaration
public ActorPath TempPath()
Returns
Type | Description |
---|---|
ActorPath | TBD |
UnregisterTempActor(ActorPath)
Unregister a temporary actor (i.e. obtained from TempPath()); do NOT pass in any other path.
Declaration
public void UnregisterTempActor(ActorPath path)
Parameters
Type | Name | Description |
---|---|---|
ActorPath | path | A path returned by TempPath(). Do NOT pass in any other path! |