Interface IEvent<TValue>
- Assembly
- Diffusion.Client.dll
The event in a time series.
public interface IEvent<TValue>
Type Parameters
TValueThe event value type.
Remarks
Added in version 6.1.
Properties
IsEditEvent
Returns true if the current event is an
edit event. Otherwise false.
bool IsEditEvent { get; }
Property Value
- bool
trueif the current event is an edit event.falseif the current event is an original event.
Metadata
Gets the IEventMetadata of the current event.
IEventMetadata Metadata { get; }
Property Value
- IEventMetadata
The IEventMetadata of the current event.
OriginalMetadata
Gets the IEventMetadata of the original event if the current event is an edit event. Otherwise it will be the same as Metadata.
IEventMetadata OriginalMetadata { get; }
Property Value
- IEventMetadata
The IEventMetadata of the original event or same as Metadata.
Remarks
The result is always the metadata of an original event, never that of an edit event.
Value
Gets the value associated with the event.
TValue Value { get; }
Property Value
- TValue
The event value.
Methods
WithValue<TNewValue>(TNewValue)
Copies this event with a different value.
IEvent<TNewValue> WithValue<TNewValue>(TNewValue value)
Parameters
valueTNewValueThe new value.
Returns
- IEvent<TNewValue>
A copy of the current event with the new
value.
Type Parameters
TNewValueThe new value type.
Remarks
This method is useful when further transformation of the received value is needed, but the application wishes to preserve other event attributes. For example, if a IBytes value is received which the session wishes to interpret as IJSON.
All attributes other than the value will be copied from the current event.