ErlLocalNode MembersNFX Class Library

[This is preliminary documentation and is subject to change.]

The ErlLocalNode type exposes the following members.
Constructors

  NameDescription
Protected methodErlLocalNode(String, IConfigSectionNode)
Initializes a new instance of the ErlLocalNode class
Public methodErlLocalNode(String, Boolean, Boolean)
Create a node with the given name and the default cookie
Public methodErlLocalNode(String, ErlAtom, Boolean, Boolean)
Create a node with the given name, cookie, and short name indicator
Back to Top
Methods

  NameDescription
Protected method____ObtainPrivateServiceStatusLockObject
WARNING: Developers never call this method!!! It is used by advanced derived implementations that need to synchronize status updates. We do not want to make statuslock protected as it is almost never needed, hence this accessor
(Inherited from Service.)
Protected method__setComponentDirector (Inherited from ApplicationComponent.)
Protected methodAbortStart
Allows to abort unsuccessful DoStart() overridden implementation. This method must be called from within DoStart()
(Inherited from Service.)
Public methodAcceptManagerVisit
Accepts a visit of a manager entity - this call is useful for periodic updates of service status, i.e. when service does not have a thread of its own it can be periodically managed by some other service through this method. The default implementation of DoAcceptManagerVisit(object, DateTime) does nothing
(Inherited from Service.)
Public methodAdd
Add a connection to collection
Public methodApplicationFinishAfterCleanup
Public methodApplicationFinishBeforeCleanup
Protected methodBreakLinks
Break links of all pids linked to pids on the fromNode node
Public methodCheckForCompleteStop
Non-blocking call that returns true when the service instance has completely stopped after SignalStop()
(Inherited from Service.)
Protected methodCheckServiceActive
Checks for service activity and throws exception if service is not in ControlStatus.Active state
(Inherited from Service.)
Protected methodCheckServiceActiveOrStarting
Checks for service activity and throws exception if service is not in ControlStatus.Active state
(Inherited from Service.)
Protected methodCheckServiceInactive
Checks for service inactivity and throws exception if service is running (started, starting or stopping)
(Inherited from Service.)
Public methodCloseMbox
Close the given mailbox
Public methodConfigure
Configures service from configuration node (and possibly it's sub-nodes)
(Inherited from Service.)
Public methodConnection(String, Nullable ErlAtom )
Public methodConnection(ErlAtom, Nullable ErlAtom )
Protected methodConnection(String, IConfigSectionNode, Nullable ErlAtom )
Public methodCreateMbox(String)
Create a new named mailbox (emulates spawning a new Pid)
Public methodCreateMbox(ErlAtom)
Create a new named mailbox (emulates spawning a new Pid)
Protected methodStatic memberCreateNullPid
Create an Erlang ErlPid that belongs to current node
Protected methodCreatePid
Create an Erlang ErlPid. Erlang pids are based upon some node specific information; this method creates a pid using the information in this node. Each call to this method produces a unique pid
Protected methodCreatePort
Create an Erlang ErlPort. Erlang ports are based upon some node specific information; this method creates a port using the information in this node. Each call to this method produces a unique port. It may not be meaningful to create a port in a non-Erlang environment, but this method is provided for completeness
Public methodCreateRef
Create an Erlang {@link Ref reference}. Erlang references are based upon some node specific information; this method creates a reference using the information in this node. Each call to this method produces a unique reference
Protected methodDeliver(ErlConnectionException)
Protected methodDeliver(ErlMsg)
Protected methodDeliver(ErlAtom, ErlMsg)
Protected methodDestructor (Inherited from Service.)
Public methodDisconnect
Public methodDispose
Deterministically disposes object. DO NOT OVERRIDE this method, override Destructor() instead
(Inherited from DisposableObject.)
Protected methodDoAcceptManagerVisit
Accepts a visit from external manager. Base implementation does nothing. Override in services that need external management calls to update their state periodically, i.e. when they don't have a thread on their own
(Inherited from Service.)
Protected methodDoCheckForCompleteStop
Provides implementation for checking whether the service has completely stopped
(Inherited from Service.)
Protected methodDoConfigure (Overrides ErlAbstractNode DoConfigure(IConfigSectionNode).)
Protected methodDoSignalStop
Provides implementation that signals service to stop. This is expected not to block
(Inherited from Service.)
Protected methodDoStart
Start current node. This optionally creates a socket listener and I/O server
(Overrides Service DoStart .)
Protected methodDoWaitForCompleteStop (Overrides Service DoWaitForCompleteStop .)
Public methodEnsureObjectNotDisposed
Checks to see whether object dispose started or has already been disposed and throws an exception if Dispose() was called
(Inherited from DisposableObject.)
Public methodOnlineEquals
Determines whether the specified object is equal to the current object.
(Inherited from OnlineObject.)
Protected methodFinalize (Inherited from DisposableObject.)
Public methodFindMbox
Determine the mailbox corresponding to a registered name on this ErlLocalNode
Public methodOnlineGetHashCode
Serves as the default hash function.
(Inherited from OnlineObject.)
Public methodOnlineGetType
Gets the OnlineType of the current instance.
(Inherited from OnlineObject.)
Public methodLocalizedTimeToUniversalTime
Converts localized time to UTC time as of TimeLocation property
(Inherited from Service.)
Public methodStatic memberMakeLocalNodeForThisAppOnThisHost
Makes local node name based on app id and local host name
Protected methodOnlineMemberwiseClone
Creates a shallow copy of the current OnlineObject.
(Inherited from OnlineObject.)
Protected methodOnConnectAttempt
Protected methodOnEpmdFailedConnectAttempt
Protected methodOnIoOutput
Protected methodOnNodeStatusChange
Protected methodOnReadWrite
Protected methodOnTrace(ErlTraceLevel, Direction, Func String , String, Int32)
Protected methodOnTrace(ErlTraceLevel, Direction, String, String, Int32)
Protected methodOnTraceCore
Protected methodOnUnhandledMsg
Public methodRemoteNodeConfig
Get configuration settings for a given remote node
Public methodRemove
Remove a connection from collection
Public methodRPC
Public methodSend(ErlPid, IErlObject)
Send a message to a remote ErlPid, representing either another ErlMbox or an Erlang process
Public methodSend(ErlPid, ErlAtom, IErlObject)
Send a message to a named mailbox on local node
Public methodSend(ErlPid, ErlAtom, ErlAtom, IErlObject)
Send a message to a named mailbox on a given remote node
Protected methodSetNodeName (Inherited from ErlAbstractNode.)
Public methodSignalStop
Non-blocking call that initiates the stopping of the service
(Inherited from Service.)
Public methodStart
Blocking call that starts the service instance
(Inherited from Service.)
Protected methodStartByApplication
Blocking call that starts the service instance
(Inherited from Service.)
Public methodToString (Inherited from ErlAbstractNode.)
Public methodUniversalTimeToLocalizedTime
Converts universal time to local time as of TimeLocation property
(Inherited from Service.)
Public methodWaitAny( ErlMbox )
Public methodWaitAny(Int32,  ErlMbox )
Public methodWaitAny( ErlMbox , Int32)
Wait for arrival of messages in any one of the given mailboxes
Public methodWaitAny(IEnumerable ErlMbox , Int32)
Public methodWaitForCompleteStop
Blocks execution of current thread until this service has completely stopped
(Inherited from Service.)
Back to Top
Extension Methods

  NameDescription
Public Extension MethodAsBool (Defined by ObjectValueConversion.)
Public Extension MethodAsByte (Defined by ObjectValueConversion.)
Public Extension MethodAsChar (Defined by ObjectValueConversion.)
Public Extension MethodAsDateTime Overloaded. (Defined by ObjectValueConversion.)
Public Extension MethodAsDateTime(DateTime, ConvertErrorHandling)Overloaded. (Defined by ObjectValueConversion.)
Public Extension MethodAsDecimal (Defined by ObjectValueConversion.)
Public Extension MethodAsDouble (Defined by ObjectValueConversion.)
Public Extension MethodAsEnum TEnum  (Defined by ObjectValueConversion.)
Public Extension MethodAsFloat (Defined by ObjectValueConversion.)
Public Extension MethodAsGDID Overloaded. (Defined by ObjectValueConversion.)
Public Extension MethodAsGDID(GDID, ConvertErrorHandling)Overloaded. (Defined by ObjectValueConversion.)
Public Extension MethodAsGDIDSymbol Overloaded. (Defined by ObjectValueConversion.)
Public Extension MethodAsGDIDSymbol(GDIDSymbol, ConvertErrorHandling)Overloaded. (Defined by ObjectValueConversion.)
Public Extension MethodAsGUID (Defined by ObjectValueConversion.)
Public Extension MethodAsInt (Defined by ObjectValueConversion.)
Public Extension MethodAsJSONConfig (Defined by ObjectValueConversion.)
Public Extension MethodAsLaconicConfig (Defined by ObjectValueConversion.)
Public Extension MethodAsLong (Defined by ObjectValueConversion.)
Public Extension MethodAsNonNullOrEmptyString (Defined by ObjectValueConversion.)
Public Extension MethodAsNullableBool (Defined by ObjectValueConversion.)
Public Extension MethodAsNullableByte (Defined by ObjectValueConversion.)
Public Extension MethodAsNullableChar (Defined by ObjectValueConversion.)
Public Extension MethodAsNullableDateTime (Defined by ObjectValueConversion.)
Public Extension MethodAsNullableDecimal (Defined by ObjectValueConversion.)
Public Extension MethodAsNullableDouble (Defined by ObjectValueConversion.)
Public Extension MethodAsNullableEnum TEnum  (Defined by ObjectValueConversion.)
Public Extension MethodAsNullableFloat (Defined by ObjectValueConversion.)
Public Extension MethodAsNullableGDID (Defined by ObjectValueConversion.)
Public Extension MethodAsNullableGDIDSymbol (Defined by ObjectValueConversion.)
Public Extension MethodAsNullableGUID (Defined by ObjectValueConversion.)
Public Extension MethodAsNullableInt (Defined by ObjectValueConversion.)
Public Extension MethodAsNullableLong (Defined by ObjectValueConversion.)
Public Extension MethodAsNullableSByte (Defined by ObjectValueConversion.)
Public Extension MethodAsNullableShort (Defined by ObjectValueConversion.)
Public Extension MethodAsNullableTimeSpan (Defined by ObjectValueConversion.)
Public Extension MethodAsNullableUInt (Defined by ObjectValueConversion.)
Public Extension MethodAsNullableULong (Defined by ObjectValueConversion.)
Public Extension MethodAsNullableUShort (Defined by ObjectValueConversion.)
Public Extension MethodAsSByte (Defined by ObjectValueConversion.)
Public Extension MethodAsShort (Defined by ObjectValueConversion.)
Public Extension MethodAsString (Defined by ObjectValueConversion.)
Public Extension MethodAsTimeSpan Overloaded. (Defined by ObjectValueConversion.)
Public Extension MethodAsTimeSpan(TimeSpan, ConvertErrorHandling)Overloaded. (Defined by ObjectValueConversion.)
Public Extension MethodAsUInt (Defined by ObjectValueConversion.)
Public Extension MethodAsULong (Defined by ObjectValueConversion.)
Public Extension MethodAsUri (Defined by ObjectValueConversion.)
Public Extension MethodAsUShort (Defined by ObjectValueConversion.)
Public Extension MethodAsXMLConfig (Defined by ObjectValueConversion.)
Public Extension MethodToErlObject Overloaded.
Try to convert .NET native object type to corresponding Erlang term. Throw exception if conversion is not possible
(Defined by ErlObject.)
Public Extension MethodToErlObject(ErlTypeOrder, Boolean)Overloaded.
Try to convert .NET native object type to corresponding Erlang term of given type. Throw exception if conversion is not possible
(Defined by ErlObject.)
Public Extension MethodToJSON(JSONWritingOptions)Overloaded.
Serializes object into JSON string
(Defined by JSONExtensions.)
Public Extension MethodToJSON(TextWriter, JSONWritingOptions)Overloaded.
Serializes object into JSON format using provided TextWriter
(Defined by JSONExtensions.)
Public Extension MethodToJSON(Stream, JSONWritingOptions, Encoding)Overloaded.
Serializes object into JSON format using provided stream and optional encoding
(Defined by JSONExtensions.)
Back to Top
Fields

  NameDescription
Protected fieldm_Creation (Inherited from ErlAbstractNode.)
Protected fieldm_Mailboxes
Protected fieldm_OnReadWrite
Delegate invoked on read/write from socket
Protected fieldm_TcpKeepAlive (Inherited from ErlAbstractNode.)
Protected fieldm_TcpLinger (Inherited from ErlAbstractNode.)
Protected fieldm_TcpNoDelay (Inherited from ErlAbstractNode.)
Protected fieldm_TcpRcvBufSize (Inherited from ErlAbstractNode.)
Protected fieldm_TcpSndBufSize (Inherited from ErlAbstractNode.)
Back to Top
Properties

  NameDescription
Protected propertyAcceptAddressPort
Configuration Address and Port information for the listener in the "address:port" format
Public propertyAcceptConnections
If true local node will start a listener
Public propertyAliveName
Get the alivename part of the hostname. Nodenames are composed of two parts, an alivename and a hostname, separated by '@'. This method returns the part of the nodename preceding the '@'
(Inherited from ErlAbstractNode.)
Public propertyAllNodeConfigs
Configs for remote nodes
Public propertyApplicationDontAutoStartService
Checks whether the class is decorated with ApplicationDontAutoStartServiceAttribute
(Inherited from Service.)
Public propertyComponentCommonName
Returns the common name used to identify the component, for example "Glue" for various IGlue implementations. This name is searched-by some management tools that allow to find component by this name that does not change between application restarts like ComponentSID does. Subordinate (non-root) components return null
(Inherited from ApplicationComponent.)
Public propertyComponentDirector
Returns a reference to an object that this app component services/operates under, or null
(Inherited from ApplicationComponent.)
Public propertyComponentSID
Returns process/instance unique app component system id
(Inherited from ApplicationComponent.)
Public propertyComponentStartTime
Returns local computer time of component start (not from application container time)
(Inherited from ApplicationComponent.)
Public propertyConnections
Public propertyCookie
Get the authorization cookie used by this node
(Inherited from ErlAbstractNode.)
Public propertyCreation
Contains node creation bits that facilitate Pid uniqueness upon node restart
Public propertyDisposed
Indicates whether this object was already disposed - the Dispose() has finished
(Inherited from DisposableObject.)
Public propertyDisposeStarted
Indicates whether this object Dispose() has been called and dispose started but not finished yet
(Inherited from DisposableObject.)
Protected propertyDistChoose (Inherited from ErlAbstractNode.)
Protected propertyDistHigh (Inherited from ErlAbstractNode.)
Protected propertyDistLow (Inherited from ErlAbstractNode.)
Protected propertyEpmd
Get/Set the Epmd socket after publishing this nodes listen port to Epmd
(Inherited from ErlAbstractNode.)
Protected propertyFlags (Inherited from ErlAbstractNode.)
Public propertyGroupLeader
Mailbox for handling all I/O directed from remote nodes
Public propertyHost
Get the hostname part of the nodename. Nodenames are composed of two parts, an alivename and a hostname, separated by '@'. This method returns the part of the nodename following the '@'
(Inherited from ErlAbstractNode.)
Public propertyLocalizedTime
Returns current time localized per TimeLocation
(Inherited from Service.)
Public propertyLogUnhandledMsgs
Record unhandled msgs to log
Protected propertyMailboxes
Protected propertyMboxFreelist
Cache of freed mailboxes that can be reused for RPC calls
Public propertyName
Provides textual name for the service
(Inherited from Service.)
Public propertyNodeLongName
Get the long name of this node
(Inherited from ErlAbstractNode.)
Public propertyNodeName
Get the name of this node (short or long depending on UseShortName)
(Inherited from ErlAbstractNode.)
Protected propertyNtype (Inherited from ErlAbstractNode.)
Public propertyPort
Get the port number used by this node. For local node the value may be 0 if the node was not registered with the EPMD port mapper
(Inherited from ErlAbstractNode.)
Protected propertyProto (Inherited from ErlAbstractNode.)
Public propertyRemoteNodeConfigs
Public propertyRunning
Returns true when service is active or about to become active. Check in service implementation loops/threads/tasks
(Inherited from Service.)
Public propertyStatus
Current service status
(Inherited from Service.)
Public propertyTcpKeepAlive (Inherited from ErlAbstractNode.)
Public propertyTcpLinger (Inherited from ErlAbstractNode.)
Public propertyTcpNoDelay (Inherited from ErlAbstractNode.)
Public propertyTcpRcvBufSize (Inherited from ErlAbstractNode.)
Public propertyTcpSndBufSize (Inherited from ErlAbstractNode.)
Public propertyTimeLocation
Returns time location of this LocalizedTimeProvider implementation
(Inherited from Service.)
Public propertyTraceLevel
Set the trace level for this connection. Normally tracing is off by default
Public propertyTraceToLog
Save trace events to log
Protected propertyUseShortName (Inherited from ErlAbstractNode.)
Back to Top
Events

  NameDescription
Public eventConnectAttempt
Public eventEpmdFailedConnectAttempt
Public eventIoOutput
Public eventNodeStatusChange
Public eventReadWrite
Public eventTrace
Trace callback executed if connection tracing is enabled
Public eventUnhandledMsg
Back to Top
See Also