Class MessageModuleOptions<TSossObject>
Options for configuring a message processing module in the ScaleOut StateServer (SOSS) service. Built using MessageModuleOptionsBuilder<TSossObject>, supplied when registering the module with AddMsgModule<TSossObject, TMessageProcessor>(string, MessageModuleOptions<TSossObject>?).
public class MessageModuleOptions<TSossObject>
Type Parameters
TSossObject
- Inheritance
-
MessageModuleOptions<TSossObject>
- Inherited Members
Properties
Deserializer
Deserializer for the module's objects in the ScaleOut service. Defaults to System.Text.Json serialization.
public Func<Stream, TSossObject> Deserializer { get; }
Property Value
IsJsonSerializer
Gets a value indicating whether the serializer performs JSON serialization.
public bool IsJsonSerializer { get; }
Property Value
LockMode
Specifies locking behavior of the underlying object in the ScaleOut service during message processing.
public LockMode LockMode { get; }
Property Value
Remarks
Messages will be processed sequentially for each object instance, so None is sufficient for most cases. However, if external clients are directly modifying the object outside of the message module, you may want to use Exclusive to ensure consistency.
Serializer
Serializer for the module's objects in the ScaleOut service. Defaults to System.Text.Json serialization.
public Action<TSossObject, Stream> Serializer { get; }