Show / Hide Table of Contents

Class ModelSerializer

Denotes the standard model serializer

Inheritance
object
XmlSerializer
XmiSerializer
ModelSerializer
DynamicModelSerializer
ExplicitIdSerializer
Implements
IModelSerializer
Inherited Members
XmiSerializer.XMLSchemaInstanceNamespace
XmiSerializer.XMLSchemaInstancePrefix
XmiSerializer.XMIPrefix
XmiSerializer.XMINamespace
XmiSerializer.RootPrefix
XmiSerializer.GoToPropertyContent(XmlReader)
XmiSerializer.GetElementTypeInfo(XmlReader, IPropertySerializationInfo)
XmiSerializer.WriteBeginElement(XmlWriter, object, ITypeSerializationInfo)
XmiSerializer.WriteEndElement(XmlWriter, object, ITypeSerializationInfo)
XmiSerializer.WriteBeginRootElement(XmlWriter, object, ITypeSerializationInfo)
XmiSerializer.WriteEndRootElement(XmlWriter, object, ITypeSerializationInfo)
XmiSerializer.OverrideIdentifiedObject(object, XmlReader, XmlSerializationContext)
XmiSerializer.HandleUnknownAttribute(XmlReader, object, ITypeSerializationInfo, XmlSerializationContext)
XmiSerializer.InitializeTypeSerializationInfo(Type, ITypeSerializationInfo)
XmlSerializer.Settings
XmlSerializer.KnownTypes
XmlSerializer.RegisterNamespace(ITypeSerializationInfo)
XmlSerializer.GetTypeInfo(string, string)
XmlSerializer.CreateTypeSerializationInfoFor(Type)
XmlSerializer.Serialize(object, string, bool)
XmlSerializer.Serialize(object, Stream, bool)
XmlSerializer.Serialize(object, TextWriter)
XmlSerializer.Serialize(object, XmlWriter)
XmlSerializer.Serialize(object, TextWriter, bool)
XmlSerializer.Serialize(object, XmlWriter, bool)
XmlSerializer.WriteConstructorProperties(XmlWriter, object, ITypeSerializationInfo, XmlSerializationContext)
XmlSerializer.WriteAttributeProperties(XmlWriter, object, ITypeSerializationInfo, XmlSerializationContext)
XmlSerializer.WriteAttributeValue(XmlWriter, object, object, IPropertySerializationInfo, XmlSerializationContext)
XmlSerializer.WriteCollectionMembers(XmlWriter, object, ITypeSerializationInfo, XmlSerializationContext)
XmlSerializer.Deserialize(string)
XmlSerializer.Deserialize(Stream)
XmlSerializer.Deserialize(TextReader)
XmlSerializer.Deserialize(XmlReader)
XmlSerializer.CreateRoot(XmlReader)
XmlSerializer.GetRootElementTypeInfo(XmlReader)
XmlSerializer.CreateObject(XmlReader, ITypeSerializationInfo, XmlSerializationContext)
XmlSerializer.InitializeProperty(XmlReader, IPropertySerializationInfo, object, XmlSerializationContext)
XmlSerializer.InitializePropertyFromText(IPropertySerializationInfo, object, string, XmlSerializationContext)
XmlSerializer.Initialize(XmlReader, object, XmlSerializationContext)
XmlSerializer.InitializeAttributeProperties(XmlReader, object, ITypeSerializationInfo, XmlSerializationContext)
XmlSerializer.HandleUnknownType(IPropertySerializationInfo, string, string)
XmlSerializer.HandleUnknownElement(XmlReader, object, ITypeSerializationInfo, XmlSerializationContext)
XmlSerializer.OnUnknownElement(UnknownElementEventArgs)
XmlSerializer.OnUnknownAttribute(UnknownAttributeEventArgs)
XmlSerializer.OnUnknownType(UnknownTypeEventArgs)
XmlSerializer.UnknownElement
XmlSerializer.UnknownAttribute
XmlSerializer.UnknownType
XmlSerializer.GetSerializationInfoForInstance(object, bool)
XmlSerializer.GetSerializationInfo(Type, bool)
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
object.ToString()
Namespace: NMF.Models.Repository.Serialization
Assembly: NMF.Models.dll
Syntax
public class ModelSerializer : XmiSerializer, IModelSerializer

Constructors

| Edit this page View Source

ModelSerializer()

Creates a new model serializer

Declaration
public ModelSerializer()
| Edit this page View Source

ModelSerializer(XmlSerializationSettings)

Creates a new model serializer

Declaration
public ModelSerializer(XmlSerializationSettings settings)
Parameters
Type Name Description
XmlSerializationSettings settings

The serialization settings

| Edit this page View Source

ModelSerializer(XmlSerializationSettings, IEnumerable<Type>)

Creates a new serializer and copies settings and known types from the given serializer

Declaration
public ModelSerializer(XmlSerializationSettings settings, IEnumerable<Type> knownTypes)
Parameters
Type Name Description
XmlSerializationSettings settings

The serialization settings

IEnumerable<Type> knownTypes

A collection of known types

| Edit this page View Source

ModelSerializer(XmlSerializer)

Creates a new serializer and copies settings and known types from the given serializer

Declaration
public ModelSerializer(XmlSerializer parent)
Parameters
Type Name Description
XmlSerializer parent

An XML serializer to copy settings and known type information from

| Edit this page View Source

ModelSerializer(XmlSerializer, XmlSerializationSettings)

Creates a new serializer and copies settings and known types from the given serializer

Declaration
public ModelSerializer(XmlSerializer parent, XmlSerializationSettings settings)
Parameters
Type Name Description
XmlSerializer parent

An XML serializer to copy settings and known type information from

XmlSerializationSettings settings

The serialization settings

Properties

| Edit this page View Source

IdAttribute

Gets the attribute used for identifiers

Declaration
protected override IPropertySerializationInfo IdAttribute { get; }
Property Value
Type Description
IPropertySerializationInfo
Overrides
XmiSerializer.IdAttribute

Methods

| Edit this page View Source

CreateModelForRoot(object)

Creates the model for the given root element

Declaration
protected virtual Model CreateModelForRoot(object root)
Parameters
Type Name Description
object root

The root element

Returns
Type Description
Model

The model instance

Exceptions
Type Condition
InvalidOperationException

Thrown if root is not a model element

| Edit this page View Source

CreateSerializationContext(object)

Creates a serialization context for the given root element

Declaration
protected override XmlSerializationContext CreateSerializationContext(object root)
Parameters
Type Name Description
object root

The root element of the serialization

Returns
Type Description
XmlSerializationContext

A serialization context

Overrides
XmiSerializer.CreateSerializationContext(object)
| Edit this page View Source

Deserialize(Stream, Uri, IModelRepository, bool)

Declaration
public Model Deserialize(Stream source, Uri modelUri, IModelRepository repository, bool addToRepository)
Parameters
Type Name Description
Stream source
Uri modelUri
IModelRepository repository
bool addToRepository
Returns
Type Description
Model
| Edit this page View Source

GetAttributeValue(object, ITypeSerializationInfo, bool, XmlSerializationContext)

Gets the serialization of the given attribute value

Declaration
protected override string GetAttributeValue(object value, ITypeSerializationInfo info, bool isCollection, XmlSerializationContext context)
Parameters
Type Name Description
object value

The value of the attribute

ITypeSerializationInfo info

The serialization information of the type

bool isCollection

True, if the value is added to a collection, otherwise false

XmlSerializationContext context

The serialization context

Returns
Type Description
string

The serialized value of the attribute

Overrides
XmlSerializer.GetAttributeValue(object, ITypeSerializationInfo, bool, XmlSerializationContext)
| Edit this page View Source

InitializeElementProperties(XmlReader, ref object, ITypeSerializationInfo, XmlSerializationContext)

Initializes the element properties from the xml reader position

Declaration
protected override void InitializeElementProperties(XmlReader reader, ref object obj, ITypeSerializationInfo info, XmlSerializationContext context)
Parameters
Type Name Description
XmlReader reader

the xml reader

object obj

the element

ITypeSerializationInfo info

the type serialization information

XmlSerializationContext context

the serialization context

Overrides
XmiSerializer.InitializeElementProperties(XmlReader, ref object, ITypeSerializationInfo, XmlSerializationContext)
| Edit this page View Source

IsPropertyElement(XmlReader, IPropertySerializationInfo)

Determines whether the element at the current reader position refers to the given property

Declaration
protected override bool IsPropertyElement(XmlReader reader, IPropertySerializationInfo property)
Parameters
Type Name Description
XmlReader reader

The reader position

IPropertySerializationInfo property

The property that should be tested

Returns
Type Description
bool

true, if the element is about the property, otherwise false

Overrides
XmlSerializer.IsPropertyElement(XmlReader, IPropertySerializationInfo)
| Edit this page View Source

SelectRoot(object, bool)

Gets the serialization root element

Declaration
protected override object SelectRoot(object graph, bool fragment)
Parameters
Type Name Description
object graph

The base element that should be serialized

bool fragment

A value indicating whether only a fragment should be written

Returns
Type Description
object

The root element for serialization

Overrides
XmlSerializer.SelectRoot(object, bool)
| Edit this page View Source

Serialize(Model, Stream)

Declaration
public void Serialize(Model model, Stream target)
Parameters
Type Name Description
Model model
Stream target
| Edit this page View Source

Serialize(object, XmlWriter, IPropertySerializationInfo, bool, XmlIdentificationMode, XmlSerializationContext)

Serializes the given object

Declaration
public override void Serialize(object obj, XmlWriter writer, IPropertySerializationInfo property, bool writeInstance, XmlIdentificationMode identificationMode, XmlSerializationContext context)
Parameters
Type Name Description
object obj

The object to be serialized

XmlWriter writer

The XmlWriter to write the Xml-code on

IPropertySerializationInfo property

The property for which the object is serialized

bool writeInstance

A value that indicates whether the serializer should write the element definition

XmlIdentificationMode identificationMode

A value indicating whether it is allowed to the serializer to use identifier

XmlSerializationContext context

The serialization context

Overrides
XmlSerializer.Serialize(object, XmlWriter, IPropertySerializationInfo, bool, XmlIdentificationMode, XmlSerializationContext)
Remarks

If a converter is provided that is able to convert the object to string and convert the string back to this object, just the string-conversion is printed out

| Edit this page View Source

SerializeFragment(ModelElement, Stream)

Declaration
public void SerializeFragment(ModelElement element, Stream target)
Parameters
Type Name Description
ModelElement element
Stream target
| Edit this page View Source

WriteElementProperties(XmlWriter, object, ITypeSerializationInfo, XmlSerializationContext)

Writes the element properties of the given object to the provided writer

Declaration
protected override void WriteElementProperties(XmlWriter writer, object obj, ITypeSerializationInfo info, XmlSerializationContext context)
Parameters
Type Name Description
XmlWriter writer

The xml writer to write to

object obj

The element

ITypeSerializationInfo info

The serialization information of the objects type

XmlSerializationContext context

The serialization context

Overrides
XmiSerializer.WriteElementProperties(XmlWriter, object, ITypeSerializationInfo, XmlSerializationContext)
| Edit this page View Source

WriteIdentifiedObject(XmlWriter, object, XmlIdentificationMode, ITypeSerializationInfo, XmlSerializationContext)

Writes the provided identified object

Declaration
protected override bool WriteIdentifiedObject(XmlWriter writer, object obj, XmlIdentificationMode identificationMode, ITypeSerializationInfo info, XmlSerializationContext context)
Parameters
Type Name Description
XmlWriter writer

The xml writer to write to

object obj

The element

XmlIdentificationMode identificationMode

The identification mode for the current object

ITypeSerializationInfo info

The serialization information of the objects type

XmlSerializationContext context

The serialization context

Returns
Type Description
bool

true, if the object could be written as identified object, otherwise false

Overrides
XmiSerializer.WriteIdentifiedObject(XmlWriter, object, XmlIdentificationMode, ITypeSerializationInfo, XmlSerializationContext)

Implements

IModelSerializer

Extension Methods

ModelExtensions.Serialize(IModelSerializer, IModelElement, Stream, Uri)
ModelExtensions.Serialize(IModelSerializer, IModelElement, string)
ModelExtensions.Serialize(IModelSerializer, IModelElement, string, Uri)
  • Edit this page
  • View Source
In this article
Back to top Generated by DocFX