Notification based event listener container allowing to subscribe to DataEventArrived that will be triggered
by notifications.
Event listener execution can automatically be wrapped in transactions through
passing an ITransactionManager into the TransactionManager property.
The container can automatically take the notified event data (using Take<(Of <(T>)>)(T))
if the PerformTakeOnNotify is set to true. If the flag is set to true, IgnoreEventOnNullTake
can control of the event will be propagated to the event listener if the take operation returned
null.
Declaration Syntax
C# | Visual Basic | Visual C++ | J# |
public class NotifyEventListenerContainer<TData> : EventListenerContainer<TData>
Public Class NotifyEventListenerContainer(Of TData) _ Inherits EventListenerContainer(Of TData)
generic<typename TData> public ref class NotifyEventListenerContainer : public EventListenerContainer<TData>
Generic Template Parameters
- TData
- Type of data which the container monitors for events.
Members
All Members | Constructors | Methods | Properties | Fields | Events |
Icon | Member | Description |
---|---|---|
NotifyEventListenerContainer<(Of <(TData>)>)()()() |
Creates a container without configuration.
| |
NotifyEventListenerContainer<(Of <(TData>)>)(ISpaceProxy) |
Creates a container with the specified space proxy.
| |
NotifyEventListenerContainer<(Of <(TData>)>)(ISpaceProxy, Object) |
Creates a container with the specified space proxy and template.
| |
_failedEvents |
Number of failed events
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
_processedEvents |
Number of processed events
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
ActualTemplate |
Gets the actual template that is used for event listening. If PerformSnapshot is true, this will be the snapshot result of the Template.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
AssertNotActive(String) |
Asserts that the container is not running currently, and if it does throws InvalidEventListenerOperationException.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
BatchDataEventArrived |
Occurs when a batch data event arrives.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
BatchDataEventArrivedHasSubscriptions()()() |
Returns true if BatchDataEventArrived has subscriptions, false otherwise.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
CloneEventListenersPerThread |
Gets or sets whether to clone the event listener containing classes when the container is invoking the DataEventArrived event
from more than one thread
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
ContainerExceptionOccured |
Occurs when an exception is thrown during the container's asynchronous life-cycle.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
DataEventArrived |
Occurs when a data event arrives.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
DataEventArrivedHasSubscriptions()()() |
Returns true if DataEventArrived has subscriptions, false otherwise.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
DefaultIgnoreEventOnNullTake |
Default value for IgnoreEventOnNullTake | |
DefaultNotifyType |
Default notification type used when registering for notifications
| |
DefaultPerformTakeOnNotify |
Default value for PerformTakeOnNotify | |
DefaultQueuedEventHandlersPoolSize |
Default value for QueuedEventHandlersPoolSize | |
DefaultQueuedEventHandling |
Default value for QueuedEventHandling | |
DefaultQueuedEventsSizeLimit |
Default value for QueuedEventsSizeLimit | |
Dispose()()() |
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
Equals(Object) | (Inherited from Object.) | |
EventSessionConfig |
Gets or sets the event session config that is used to create the IDataEventSession that is used for
notification registration.
| |
Finalize()()() |
Allows an Object to attempt to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection.
(Inherited from Object.) | |
GetContainerNameLoggingPrefix()()() |
Creates a container logging prefix.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
GetHashCode()()() |
Serves as a hash function for a particular type.
(Inherited from Object.) | |
GetType()()() |
Gets the Type of the current instance.
(Inherited from Object.) | |
IgnoreEventOnNullTake |
Gets or sets whether a data event should be raised when the container receives a notification but fails to take the entry. This can happen, for instance, if
there are multiple listeners that listen for the same data and use PerformTakeOnNotify .In that case only one of them will take the entry and the rest
will return null, which is probably means the event is irrelevant for those listeners and should not be raised.
| |
InitTransaction()()() |
Creates a transaction using the supplied TransactionManager,
it takes into consideration the TransactionTimeout if it was set to override the default manager timeout.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
InvokeBatchDataEventArrived(Object, BatchDataEventArgs<(Of <(TData>)>)) |
Invokes BatchDataEventArrived event.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
InvokeContainerExceptionOccured(Object, ContainerExceptionEventArgs) |
Invokes ContainerExceptionOccured event.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
InvokeDataEventArrived(Object, DataEventArgs<(Of <(TData>)>)) |
Invokes DataEventArrived event.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
InvokeUserExceptionOccured(Object, UserExceptionEventArgs<(Of <(TData>)>)) |
Invokes UserExceptionOccured event.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
IsActive |
Returns true if the container is currently listening to events, false otherwise.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
IsBatch |
Returns true if the listener is in batch mode, false otherwise.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
MemberwiseClone()()() |
Creates a shallow copy of the current Object.
(Inherited from Object.) | |
Mode |
Gets the space mode that container is aware of
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
Name |
Gets or sets the name of the container. This property is not required, but setting a friendly name might be helpful in debugging scenarios.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
NotifyType |
Gets or sets the type(s) of notification to register for.
| |
OnBecomeNotPrimary()()() |
Execute container logic that should be done when the underlying space behind the proxy is no longer primary, this method should not block.
(Overrides EventListenerContainer<(Of <(TData>)>).OnBecomeNotPrimary()()().) | |
OnBecomePrimary()()() |
Execute container logic that should be done when the underlying space behind the proxy becomes primary, this method should not block.
(Overrides EventListenerContainer<(Of <(TData>)>).OnBecomePrimary()()().) | |
OnStart()()() |
Execute container logic that should be done when the container is started, this method should not block.
The container is space mode aware, and should do its work in OnBecomePrimary()()().
(Overrides EventListenerContainer<(Of <(TData>)>).OnStart()()().) | |
OnStop(Int32) |
Execute container logic that should be done when the container is stopped, this method should not block.
(Overrides EventListenerContainer<(Of <(TData>)>).OnStop(Int32).) | |
PerformSnapshot |
Gets or sets whether to perform an Snapshot<(Of <(T>)>)(T) on the Template for improved performance.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
PerformTakeOnNotify |
Gets or sets whether the container should take the entry from the space when an event arrives.
| |
QueuedEventHandlersPoolSize |
Gets or sets the size of the event handling thread pool, this is relevant when QueuedEventHandling is set to true.
Note:Using QueuedEventHandling in conjuction with larger than one QueuedEventHandlersPoolSize might break fifo behaviour if fifo is configured by the space or the specific class type. | |
QueuedEventHandling |
Gets or sets whether events are processed in the notification thread or queued and processed in different event handler threads.
Note:Using QueuedEventHandling in conjuction with larger than one QueuedEventHandlersPoolSize might break fifo behaviour if fifo is configured by the space or the specific class type. Note:The notification is executed in a resource
pool of the proxy that handles notifications, if the notification triggered code takes too long, it can overload the proxy notification resources
which can cause notifications evantually to get lost. | |
QueuedEventsSizeLimit |
Gets or sets the size of the events queue, this is relevant when QueuedEventHandling is set to true.
When the queue size is reached, it will block until the size decreases.
| |
SpaceProxy |
Gets or sets the proxy to the space which should be listened to.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
Start()()() |
Starts listening to events.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
Stop()()() |
Stops listening to events. Execution is blocked until the container is fully stopped.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
Stop(TimeSpan) |
Stops listening to events. Execution is blocked until the container is fully stopped or the specified timeout elapses.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
Stop(Int32) |
Stops listening to events. Execution is blocked until the container is fully stopped or the specified timeout elapses.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
Template |
Gets or sets the template that determines which entries this container should listen for.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
ToString()()() | (Inherited from Object.) | |
TransactionManager |
Gets or sets the transaction manager that will be used to create transactions for the event listening and handling operations.
If null, no transactions will be used.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
TransactionTimeout |
Gets or sets a transaction timeout value to override the default value in the TransactionManager property.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
TransactionType |
Gets or sets the TransactionType. When Manual is used, the transaction type will be determined by the TransactionManager.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
UserExceptionOccured |
Occurs when an exception is thrown while DataEventArrived is processed.
(Inherited from EventListenerContainer<(Of <(TData>)>).) | |
Validate()()() |
Validate that the container is configured properly
The container is not configured properly. (Overrides EventListenerContainer<(Of <(TData>)>).Validate()()().) |
Inheritance Hierarchy
Object | ||
EventListenerContainer<(Of <(TData>)>) | ||
NotifyEventListenerContainer<(Of <(TData>)>) |