com.prosysopc.ua.typedictionary
Class DynamicStructureSerializer

java.lang.Object
  extended by org.opcfoundation.ua.encoding.utils.AbstractSerializer
      extended by com.prosysopc.ua.StructureSerializer
          extended by com.prosysopc.ua.typedictionary.DynamicStructureSerializer
All Implemented Interfaces:
org.opcfoundation.ua.encoding.binary.IEncodeableSerializer

public class DynamicStructureSerializer
extends StructureSerializer
implements org.opcfoundation.ua.encoding.binary.IEncodeableSerializer


Constructor Summary
DynamicStructureSerializer(org.opcfoundation.ua.encoding.binary.IEncodeableSerializer delegate, StructureSpecification structureSpecification)
          Creates a new DynamicStructureSerializer.
 
Method Summary
 void calcEncodeable(Class<? extends org.opcfoundation.ua.encoding.IEncodeable> clazz, org.opcfoundation.ua.encoding.IEncodeable encodeable, org.opcfoundation.ua.encoding.IEncoder calculator)
           
 Class<? extends org.opcfoundation.ua.encoding.IEncodeable> getClass(org.opcfoundation.ua.builtintypes.ExpandedNodeId id)
           
 org.opcfoundation.ua.encoding.IEncodeable getEncodeable(Class<? extends org.opcfoundation.ua.encoding.IEncodeable> clazz, org.opcfoundation.ua.encoding.IDecoder decoder)
           
 org.opcfoundation.ua.builtintypes.ExpandedNodeId getNodeId(Class<? extends org.opcfoundation.ua.encoding.IEncodeable> clazz, org.opcfoundation.ua.encoding.EncodeType type)
           
 void getSupportedClasses(Collection<Class<? extends org.opcfoundation.ua.encoding.IEncodeable>> result)
           
 void getSupportedNodeIds(Collection<org.opcfoundation.ua.builtintypes.ExpandedNodeId> result)
           
 org.opcfoundation.ua.encoding.IEncodeable newEncodeable()
           
 void putEncodeable(Class<? extends org.opcfoundation.ua.encoding.IEncodeable> clazz, org.opcfoundation.ua.encoding.IEncodeable encodeable, org.opcfoundation.ua.encoding.IEncoder encoder)
           
 
Methods inherited from class com.prosysopc.ua.StructureSerializer
calcEncodeable, getEncodeable, getEncodeable, isBitOn, putBitOn, putEncodeable
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DynamicStructureSerializer

public DynamicStructureSerializer(org.opcfoundation.ua.encoding.binary.IEncodeableSerializer delegate,
                                  StructureSpecification structureSpecification)
Creates a new DynamicStructureSerializer. Generally this should not be created manually, but instead the TypeDictionary should be used instead to encode and decode custom Structures.

Parameters:
delegate - the serializer to delegate for known fields
structureSpecification - the specification of the structure (encoding ids and fields)
Method Detail

calcEncodeable

public void calcEncodeable(Class<? extends org.opcfoundation.ua.encoding.IEncodeable> clazz,
                           org.opcfoundation.ua.encoding.IEncodeable encodeable,
                           org.opcfoundation.ua.encoding.IEncoder calculator)
                    throws org.opcfoundation.ua.encoding.EncodingException
Specified by:
calcEncodeable in interface org.opcfoundation.ua.encoding.binary.IEncodeableSerializer
Overrides:
calcEncodeable in class org.opcfoundation.ua.encoding.utils.AbstractSerializer
Throws:
org.opcfoundation.ua.encoding.EncodingException

getClass

public Class<? extends org.opcfoundation.ua.encoding.IEncodeable> getClass(org.opcfoundation.ua.builtintypes.ExpandedNodeId id)
Specified by:
getClass in interface org.opcfoundation.ua.encoding.binary.IEncodeableSerializer
Overrides:
getClass in class org.opcfoundation.ua.encoding.utils.AbstractSerializer

getEncodeable

public org.opcfoundation.ua.encoding.IEncodeable getEncodeable(Class<? extends org.opcfoundation.ua.encoding.IEncodeable> clazz,
                                                               org.opcfoundation.ua.encoding.IDecoder decoder)
                                                        throws org.opcfoundation.ua.encoding.DecodingException
Specified by:
getEncodeable in interface org.opcfoundation.ua.encoding.binary.IEncodeableSerializer
Overrides:
getEncodeable in class org.opcfoundation.ua.encoding.utils.AbstractSerializer
Throws:
org.opcfoundation.ua.encoding.DecodingException

getNodeId

public org.opcfoundation.ua.builtintypes.ExpandedNodeId getNodeId(Class<? extends org.opcfoundation.ua.encoding.IEncodeable> clazz,
                                                                  org.opcfoundation.ua.encoding.EncodeType type)
Specified by:
getNodeId in interface org.opcfoundation.ua.encoding.binary.IEncodeableSerializer
Overrides:
getNodeId in class org.opcfoundation.ua.encoding.utils.AbstractSerializer

getSupportedClasses

public void getSupportedClasses(Collection<Class<? extends org.opcfoundation.ua.encoding.IEncodeable>> result)
Specified by:
getSupportedClasses in interface org.opcfoundation.ua.encoding.binary.IEncodeableSerializer
Overrides:
getSupportedClasses in class org.opcfoundation.ua.encoding.utils.AbstractSerializer

getSupportedNodeIds

public void getSupportedNodeIds(Collection<org.opcfoundation.ua.builtintypes.ExpandedNodeId> result)
Specified by:
getSupportedNodeIds in interface org.opcfoundation.ua.encoding.binary.IEncodeableSerializer
Overrides:
getSupportedNodeIds in class org.opcfoundation.ua.encoding.utils.AbstractSerializer

newEncodeable

public org.opcfoundation.ua.encoding.IEncodeable newEncodeable()
Specified by:
newEncodeable in class StructureSerializer

putEncodeable

public void putEncodeable(Class<? extends org.opcfoundation.ua.encoding.IEncodeable> clazz,
                          org.opcfoundation.ua.encoding.IEncodeable encodeable,
                          org.opcfoundation.ua.encoding.IEncoder encoder)
                   throws org.opcfoundation.ua.encoding.EncodingException
Specified by:
putEncodeable in interface org.opcfoundation.ua.encoding.binary.IEncodeableSerializer
Overrides:
putEncodeable in class org.opcfoundation.ua.encoding.utils.AbstractSerializer
Throws:
org.opcfoundation.ua.encoding.EncodingException


Copyright © 2018. All rights reserved.