Show / Hide Table of Contents

Class SoMessageSerializer

Base implementation for message serializers.

Inheritance
Object
SoMessageSerializer
SoAcknowledgeMessageSerializer
SoAliveMessageSerializer
SoTestMessageSerializer
Implements
ISoMessageSerializer
Inherited Members
Object.ToString()
Object.Equals(Object)
Object.Equals(Object, Object)
Object.ReferenceEquals(Object, Object)
Object.GetHashCode()
Object.GetType()
Object.MemberwiseClone()
Namespace: SuperOffice.Messaging.Messages
Assembly: SoDataBase.dll
Syntax
public abstract class SoMessageSerializer : ISoMessageSerializer, IPlugin

Constructors

SoMessageSerializer()

Base implementation for message serializers.

Declaration
protected SoMessageSerializer()

Properties

MessageType

Abstract method to be implemented by message serializers.

Declaration
protected abstract Type MessageType { get; }
Property Value
Type Description
Type

Methods

Deserialize<TMessage>(Byte[])

Base implementation for message serializers.

Declaration
public static TMessage Deserialize<TMessage>(byte[] rawMessage)
    where TMessage : SoMessageHeader, new()
Parameters
Type Name Description
Byte[] rawMessage
Returns
Type Description
TMessage
Type Parameters
Name Description
TMessage

RawDeserialize(Byte[], Int32, Type)

Perform raw de-serialization without meta data.

Declaration
public static object RawDeserialize(byte[] rawData, int position, Type anyType)
Parameters
Type Name Description
Byte[] rawData

Data to de-serialize

Int32 position

Position inside the the data buffer to de-serialize

Type anyType

Type to de-serialize

Returns
Type Description
Object

De-serialized object.

RawSerialize(Object)

Perform raw serialization without meta-data

Declaration
public static byte[] RawSerialize(object anything)
Parameters
Type Name Description
Object anything

Object to serialize (without meta-data).

Returns
Type Description
Byte[]

De-serialized byte array.

Serialize<TMessage>(TMessage)

Base implementation for message serializers.

Declaration
public static byte[] Serialize<TMessage>(TMessage message)
    where TMessage : SoMessageHeader, new()
Parameters
Type Name Description
TMessage message
Returns
Type Description
Byte[]
Type Parameters
Name Description
TMessage

Explicit Interface Implementations

ISoMessageSerializer.Deserialize(Byte[])

De-serialize a raw message recieved over the network.

Declaration
SoMessageHeader ISoMessageSerializer.Deserialize(byte[] rawMessage)
Parameters
Type Name Description
Byte[] rawMessage

Byte array forming message to de-serialize

Returns
Type Description
SoMessageHeader

De-serialized message.

ISoMessageSerializer.Serialize(SoMessageHeader)

Serialize a message to a byte array so it can be sent over the network.

Declaration
byte[] ISoMessageSerializer.Serialize(SoMessageHeader message)
Parameters
Type Name Description
SoMessageHeader message

Message to serialize.

Returns
Type Description
Byte[]

Byte array forming the message to be sent over the network.

Implements

ISoMessageSerializer

Extension Methods

EnumUtil.MapEnums<From, To>(From)
Converters.MapEnums<From, To>(From)
© SuperOffice. All rights reserved.
SuperOffice |  Community |  Release Notes |  Privacy |  Site feedback |  Search Docs |  About Docs |  Contribute |  Back to top