Interface IMutableEventExchange
Represents a mutable collection of event publishers identifiable by their event types.
public interface IMutableEventExchange : IEventExchange, IDisposable
- Inherited Members
- Extension Methods
Methods
GetPublisher(Type)
Returns an event publisher associated with the provided eventType
.
[Pure]
IEventPublisher GetPublisher(Type eventType)
Parameters
eventType
TypeEvent type.
Returns
- IEventPublisher
Registered IEventPublisher instance.
Exceptions
- EventPublisherNotFoundException
When event publisher does not exist.
RegisterPublisher<TEvent>(IEventPublisher<TEvent>)
Registers the provided event publisher.
IEventPublisher<TEvent> RegisterPublisher<TEvent>(IEventPublisher<TEvent> publisher)
Parameters
publisher
IEventPublisher<TEvent>Event publisher to register.
Returns
- IEventPublisher<TEvent>
Registered event publisher.
Type Parameters
TEvent
Event type.
Exceptions
- EventPublisherAlreadyExistsException
When event publisher for the given event type already exists.
TryGetPublisher(Type, out IEventPublisher)
Attempts to return an event publisher associated with the provided eventType
.
bool TryGetPublisher(Type eventType, out IEventPublisher result)
Parameters
eventType
TypeEvent type.
result
IEventPublisherout parameter that returns the registered IEventPublisher instance.
Returns
- bool
true when event publisher exists, otherwise false.