IRtSerializer
Namespace: Meshmakers.Octo.Runtime.Contracts.Serialization
Interface for a serializer for the runtime model
public interface IRtSerializer
Methods
SerializeAsync(StreamWriter, RtModelRootTcDto)
Serializes the model to the stream.
Task SerializeAsync(StreamWriter streamWriter, RtModelRootTcDto modelRootTcDto)
Parameters
streamWriter StreamWriter
A stream ready to write used for serialization
modelRootTcDto RtModelRootTcDto
Model to serialize
Returns
DeserializeStreamAsync(Stream, Nullable<CancellationToken>)
Deserializes the runtime model from the stream, optimized for huge files.
Task<IRtDeserializeStream> DeserializeStreamAsync(Stream stream, Nullable<CancellationToken> cancellationToken)
Parameters
stream Stream
The stream to read
cancellationToken Nullable<CancellationToken>
Token to cancel the operation
Returns
Task<IRtDeserializeStream>
The deserialized object. Please check the for validation issues in operationResult.
Remarks:
This method bypasses the schema validation because of huge file size and currently there is no way to validate the JSON schema in a streaming way (without commercial libraries)
DeserializeAsync(Stream, String, OperationResult)
Deserializes the runtime model from the stream.
Task<RtModelRootTcDto> DeserializeAsync(Stream stream, string locationReference, OperationResult operationResult)
Parameters
stream Stream
The stream to read
locationReference String
A reference used in messages to signal the position of a file or resource
operationResult OperationResult
A operation result object that lists all validation issues. In case of exceptions this object contains the
validation errors too.
Returns
DeserializeAsync(String, String, OperationResult)
Deserializes the runtime model from a string.
Task<RtModelRootTcDto> DeserializeAsync(string s, string locationReference, OperationResult operationResult)
Parameters
s String
The text containing the runtime model to read
locationReference String
A reference used in messages to signal the position of a file or resource
operationResult OperationResult
A operation result object that lists all validation issues. In case of exceptions this object contains the
validation errors too.
Returns
Task<RtModelRootTcDto>
The deserialized object. Please check the for validation issues in operationResult.