org.opcfoundation.ua.encoding.binary
Interface IEncodeableSerializer

All Known Implementing Classes:
AbstractSerializer, EncodeableReflectionSerializer, EncodeableSerializer, SerializerComposition

public interface IEncodeableSerializer

IEncodeableSerializer serializes IEncodeable classes. There are two implementations; Reflection based EncodeableReflectionSerializer and code-generate based EncodeableSerializer.

Author:
Toni Kalajainen (toni.kalajainen@vtt.fi)
See Also:
Implementation that unifies a set of serializers, Reflection based implementation, Code-generated implementation

Method Summary
 void calcEncodeable(Class<? extends IEncodeable> clazz, IEncodeable encodeable, IEncoder calculator)
          Calculate encodeable size in bytes.
 Class<? extends IEncodeable> getClass(ExpandedNodeId id)
          getClass.
 IEncodeable getEncodeable(Class<? extends IEncodeable> clazz, IDecoder decoder)
          Deserialize an object from a binary stream.
 ExpandedNodeId getNodeId(Class<? extends IEncodeable> clazz, EncodeType type)
          getNodeId.
 void getSupportedClasses(Collection<Class<? extends IEncodeable>> result)
          Returns a set of classes this serializes knows how to encode
 void getSupportedNodeIds(Collection<ExpandedNodeId> result)
          Get the set of node ids this serializes knows how to decode.
 void putEncodeable(Class<? extends IEncodeable> clazz, IEncodeable encodeable, IEncoder encoder)
          Serialize object to encoder.
 

Method Detail

getSupportedNodeIds

void getSupportedNodeIds(Collection<ExpandedNodeId> result)
Get the set of node ids this serializes knows how to decode.

Parameters:
result - a collection to be filled with node ids

getSupportedClasses

void getSupportedClasses(Collection<Class<? extends IEncodeable>> result)
Returns a set of classes this serializes knows how to encode

Parameters:
result - a Collection object.

getClass

Class<? extends IEncodeable> getClass(ExpandedNodeId id)

getClass.

Parameters:
id - a ExpandedNodeId object.
Returns:
a Class object.

getNodeId

ExpandedNodeId getNodeId(Class<? extends IEncodeable> clazz,
                         EncodeType type)

getNodeId.

Parameters:
clazz - a Class object.
type - a EncodeType object.
Returns:
a ExpandedNodeId object.

getEncodeable

IEncodeable getEncodeable(Class<? extends IEncodeable> clazz,
                          IDecoder decoder)
                          throws DecodingException
Deserialize an object from a binary stream. Reading NodeId must be omited.

Parameters:
clazz - a Class object.
decoder - a IDecoder object.
Returns:
deserialized object
Throws:
DecodingException - if any.

putEncodeable

void putEncodeable(Class<? extends IEncodeable> clazz,
                   IEncodeable encodeable,
                   IEncoder encoder)
                   throws EncodingException
Serialize object to encoder. Serialization of NodeId is omited.

Parameters:
encodeable - a IEncodeable object.
encoder - a IEncoder object.
clazz - a Class object.
Throws:
EncodingException - if any.

calcEncodeable

void calcEncodeable(Class<? extends IEncodeable> clazz,
                    IEncodeable encodeable,
                    IEncoder calculator)
                    throws EncodingException
Calculate encodeable size in bytes. Omit NodeId.

Parameters:
encodeable - a IEncodeable object.
calculator - a IEncoder object.
clazz - a Class object.
Throws:
EncodingException - if any.


Copyright © 2018. All rights reserved.