[This is preliminary documentation and is subject to change.]
The InProcBinding type exposes the following members.Constructors
Name | Description | |
---|---|---|
![]() | InProcBinding(String) | Initializes a new instance of the InProcBinding class |
![]() | InProcBinding(IGlueImplementation, String) | Initializes a new instance of the InProcBinding class |
Methods
Name | Description | |
---|---|---|
![]() | ____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.) |
![]() | __setComponentDirector | (Inherited from ApplicationComponent.) |
![]() | _Register | (Inherited from Binding.) |
![]() | _Unregister | (Inherited from Binding.) |
![]() | AbortStart |
Allows to abort unsuccessful DoStart() overridden implementation.
This method must be called from within DoStart()
(Inherited from Service.) |
![]() | AcceptManagerVisit |
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.) |
![]() | AcquireClientTransportForCall | (Overrides Binding AcquireClientTransportForCall(ClientEndPoint, RequestMsg).) |
![]() | AreNodesIdentical | (Overrides Binding AreNodesIdentical(Node, Node).) |
![]() | CheckForCompleteStop |
Non-blocking call that returns true when the service instance has completely stopped after SignalStop()
(Inherited from Service.) |
![]() | CheckRunningState |
Ensures that application and binding runtime are running or throws otherwise
(Inherited from Binding.) |
![]() | CheckServiceActive |
Checks for service activity and throws exception if service is not in ControlStatus.Active state
(Inherited from Service.) |
![]() | CheckServiceActiveOrStarting |
Checks for service activity and throws exception if service is not in ControlStatus.Active state
(Inherited from Service.) |
![]() | CheckServiceInactive |
Checks for service inactivity and throws exception if service is running (started, starting or stopping)
(Inherited from Service.) |
![]() | CloseServerEndpoint | (Overrides Binding CloseServerEndpoint(ServerEndPoint).) |
![]() | Configure |
Configures service from configuration node (and possibly it's sub-nodes)
(Inherited from Service.) |
![]() | ConfigureAndStartNewClientTransport |
Override to perform custom transport preparation and launch
(Inherited from Binding.) |
![]() | Destructor | (Inherited from Binding.) |
![]() | DispatchCall |
Dispatches a call allocating new or re-using existing transport if needed. The strategy depends on particular Binding implementation.
This call is thread-safe
(Inherited from Binding.) |
![]() | Dispose |
Deterministically disposes object. DO NOT OVERRIDE this method, override Destructor() instead
(Inherited from DisposableObject.) |
![]() | DoAcceptManagerVisit | (Inherited from Binding.) |
![]() | DoCheckForCompleteStop |
Provides implementation for checking whether the service has completely stopped
(Inherited from Service.) |
![]() | DoConfigure | (Inherited from Binding.) |
![]() | DoSignalStop | (Inherited from Binding.) |
![]() | DoStart |
Provides implementation that starts the service
(Inherited from Service.) |
![]() | DoWaitForCompleteStop | (Inherited from Binding.) |
![]() | DumpMsg(Boolean, Msg, ArraySegment Byte ) |
Conditionally dumps message to disk
(Inherited from Binding.) |
![]() | DumpMsg(Boolean, Msg, Func ArraySegment Byte ) |
Conditionally dumps message to disk where the data is lazily obtained by calling dataFun
(Inherited from Binding.) |
![]() | DumpMsg(Boolean, Msg, Byte , Int32, Int32) |
Conditionally dumps message to disk
(Inherited from Binding.) |
![]() | EnsureObjectNotDisposed |
Checks to see whether object dispose started or has already been disposed and throws an exception if Dispose() was called
(Inherited from DisposableObject.) |
![]() | ![]() | Determines whether the specified object is equal to the current object. (Inherited from ![]() |
![]() | ExternalGetParameter |
Gets external parameter value returning true if parameter was found
(Inherited from ServiceWithInstrumentationBase TDirector .) |
![]() | ExternalParametersForGroups |
Returns named parameters that can be used to control this component
(Inherited from ServiceWithInstrumentationBase TDirector .) |
![]() | ExternalSetParameter |
Sets external parameter value returning true if parameter was found and set
(Inherited from ServiceWithInstrumentationBase TDirector .) |
![]() | Finalize | (Inherited from DisposableObject.) |
![]() | GetClientCallStatTimeKey |
Extracts necessary information from client:request pair that characterizes the particular call
for the purpose of call timing
(Inherited from Binding.) |
![]() | ![]() | Serves as the default hash function. (Inherited from ![]() |
![]() | ![]() | Gets the (Inherited from ![]() ![]() |
![]() | LocalizedTimeToUniversalTime |
Converts localized time to UTC time as of TimeLocation property
(Inherited from Service.) |
![]() | MakeNewClientTransport | (Overrides Binding MakeNewClientTransport(ClientEndPoint).) |
![]() | ![]() | Creates a shallow copy of the current (Inherited from ![]() ![]() |
![]() | OpenServerEndpoint | (Overrides Binding OpenServerEndpoint(ServerEndPoint).) |
![]() | ReleaseClientTransportAfterCall | (Overrides Binding ReleaseClientTransportAfterCall(ClientTransport).) |
![]() | SignalStop |
Non-blocking call that initiates the stopping of the service
(Inherited from Service.) |
![]() | Start |
Blocking call that starts the service instance
(Inherited from Service.) |
![]() | StartByApplication |
Blocking call that starts the service instance
(Inherited from Service.) |
![]() | ![]() | Returns a string that represents the current object. (Inherited from ![]() |
![]() | TryGetExistingAcquiredTransportPerRemoteNode |
Tries to acquire an available client transport to make a call.
This method respects binding/transport settings that impose a limit on the number of
open concurrent transports and timeouts for acqusition waiting
(Inherited from Binding.) |
![]() | UniversalTimeToLocalizedTime |
Converts universal time to local time as of TimeLocation property
(Inherited from Service.) |
![]() | WaitForCompleteStop |
Blocks execution of current thread until this service has completely stopped
(Inherited from Service.) |
![]() | WriteLog | (Inherited from GlueComponentService.) |
Extension Methods
Fields
Name | Description | |
---|---|---|
![]() | m_ClientTransportAllocatorLocks |
Hash table of locks used during new transport allocation, must be prime size
(Inherited from Binding.) |
![]() | m_Provider | (Inherited from Binding.) |
![]() | m_Transports | (Inherited from Binding.) |
Properties
Name | Description | |
---|---|---|
![]() | ApplicationDontAutoStartService |
Checks whether the class is decorated with ApplicationDontAutoStartServiceAttribute
(Inherited from Service.) |
![]() | ClientDump |
Turns on/off client message dumping to disk. Turning on dumping has negative effect on performance and consumes resources
(Inherited from Binding.) |
![]() | ClientMsgInspectors |
Returns client message inspectors for this instance
(Inherited from Binding.) |
![]() | ClientTransportCountWaitThreshold |
Sets the threshold, expressed as the number of active client transports per remote address, below which binding will always allocate a new instance
of client transport without trying/waiting to acquire an existing one. When this number is exceeded then binding will try to acquire an existing
client transport instance for up to ClientTransportExistingAcquisitionTimeoutMs milliseconds.
For more info, see 'NFX.Glue: Client Call Concurrency' topic in manual/blog
(Inherited from Binding.) |
![]() | ClientTransportExistingAcquisitionTimeoutMs |
Sets the length of interval for the binding trying to acquire existing client transport instance to make a call.
When this interval is exhausted then binding tries to allocate a new client transport per remote address, unless
other limits prohibit (max transport count). The value has to be greater or equal to zero.
NOTE: this property works in conjunction with ClientTransportCoutWaitThreshold, if the number of active client transports
is below ClientTransportCoutWaitThreshold, then binding does not wait and allocates a new client transport right away until
ClientTransportCoutWaitThreshold limit is reached, then binding will try to acquire existing transport for ClientTransportExistingAcquisitionTimeoutMs milliseconds.
For more info, see 'NFX.Glue: Client Call Concurrency' topic in manual/blog
(Inherited from Binding.) |
![]() | ClientTransportIdleTimeoutMs |
Specifies when client transports get auto-closed. Interval is measured in ms. Zero means indefinite/never closed transport.
For more info, see 'NFX.Glue: Client Call Concurrency' topic in manual/blog
(Inherited from Binding.) |
![]() | ClientTransportMaxCount |
Imposes a limit on number of active client transports per remote address. Once this limit is reached the binding will block until it can acquire
an existing transport instance. Set value to zero to remove the limit.
For more info, see 'NFX.Glue: Client Call Concurrency' topic in manual/blog
(Inherited from Binding.) |
![]() | ClientTransportMaxExistingAcquisitionTimeoutMs |
Imposes a timeout for binding trying to get an existing transport instance per remote address.
Binding throws ClientCallException when this timeout is exceeded. A value of zero removes the limit
(Inherited from Binding.) |
![]() | ClientTransports |
Returns all client transports in the binding stack
(Inherited from Binding.) |
![]() | ComponentCommonName |
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.) |
![]() | ComponentDirector | (Inherited from Service TDirector .) |
![]() | ComponentSID |
Returns process/instance unique app component system id
(Inherited from ApplicationComponent.) |
![]() | ComponentStartTime |
Returns local computer time of component start (not from application container time)
(Inherited from ApplicationComponent.) |
![]() | ConfigNode |
Returns configuration node for this named instance
(Inherited from Binding.) |
![]() | Disposed |
Indicates whether this object was already disposed - the Dispose() has finished
(Inherited from DisposableObject.) |
![]() | DisposeStarted |
Indicates whether this object Dispose() has been called and dispose started but not finished yet
(Inherited from DisposableObject.) |
![]() | DumpMsgFormat |
Set the format for message dumping
(Inherited from Binding.) |
![]() | DumpPath |
Set the path for message dumping. Must be an existing navigable path
(Inherited from Binding.) |
![]() | EncodingFormat | (Overrides Binding EncodingFormat.) |
![]() | ExternalParameters |
Returns named parameters that can be used to control this component
(Inherited from ServiceWithInstrumentationBase TDirector .) |
![]() | Glue | (Inherited from GlueComponentService.) |
![]() | InstrumentationEnabled |
Implements IInstrumentable
(Inherited from GlueComponentService.) |
![]() | InstrumentClientTransportStat |
Defines whether client transport statistics is periodically dumped into instrumentation
(Inherited from Binding.) |
![]() | InstrumentServerTransportStat |
Defines whether server transport statistics is periodically dumped into instrumentation
(Inherited from Binding.) |
![]() | LocalizedTime |
Returns current time localized per TimeLocation
(Inherited from Service.) |
![]() | MeasureStatTimes |
Defines whether message processing latency should be measured - i.e. messages time-stamped on arrival
(Inherited from Binding.) |
![]() | Name |
Provides textual name for the service
(Inherited from Service.) |
![]() | OperationFlow |
InProc binding is synchronous by definition
(Overrides Binding OperationFlow.) |
![]() | Provider | (Inherited from Binding.) |
![]() | Running |
Returns true when service is active or about to become active.
Check in service implementation loops/threads/tasks
(Inherited from Service.) |
![]() | ServerDump |
Turns on/off server message dumping to disk. Turning on dumping has negative effect on performance and consumes resources
(Inherited from Binding.) |
![]() | ServerMsgInspectors |
Returns server message inspectors for this instance
(Inherited from Binding.) |
![]() | ServerTransportIdleTimeoutMs |
Specifies when server transports get auto-closed. Interval is measured in ms. Zero means indefinite/never closed transport.
For more info, see 'NFX.Glue: Client Call Concurrency' topic in manual/blog
(Inherited from Binding.) |
![]() | ServerTransports |
Returns all server transports in the binding stack
(Inherited from Binding.) |
![]() | StatTimesEMAFactor |
Defines how much smoothing the timing statistics filter does - the lower the number the more smoothing is done.
Smoothing makes stat times insensitive to some seldom delays that may happen every now and then
(Inherited from Binding.) |
![]() | StatTimeTicks |
Returns current time in system frequency-dependent ticks.
This property is used to measure accurate times and depends on MeasureStatTimes set to true, otherwise 0 is returned
(Inherited from Binding.) |
![]() | Status |
Current service status
(Inherited from Service.) |
![]() | TimeLocation |
Returns time location of this LocalizedTimeProvider implementation
(Inherited from Service.) |
![]() | Transports |
Returns all transports in the binding stack
(Inherited from Binding.) |
See Also