Table of Contents

Class MessageModuleOptions<TSossObject>

Namespace
Scaleout.Modules.Hosting
Assembly
Scaleout.Modules.Hosting.dll

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

Func<Stream, TSossObject>

IsJsonSerializer

Gets a value indicating whether the serializer performs JSON serialization.

public bool IsJsonSerializer { get; }

Property Value

bool

LockMode

Specifies locking behavior of the underlying object in the ScaleOut service during message processing.

public LockMode LockMode { get; }

Property Value

LockMode

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; }

Property Value

Action<TSossObject, Stream>