Class ObjectDeserializationHandler
- java.lang.Object
-
- com.inductiveautomation.ignition.common.xmlserialization.deserialization.AbstractDeserializationHandler
-
- com.inductiveautomation.ignition.common.xmlserialization.deserialization.handlers.ObjectDeserializationHandler
-
- All Implemented Interfaces:
DeserializationHandler
- Direct Known Subclasses:
ComponentDeserializationHandler,ShapeDeserializationHandler
public class ObjectDeserializationHandler extends AbstractDeserializationHandler
-
-
Field Summary
Fields Modifier and Type Field Description protected java.util.List<java.lang.Object>argsprotected java.lang.Classclazzprotected java.lang.StringmethodNameprotected java.lang.Class[]methodSig-
Fields inherited from class com.inductiveautomation.ignition.common.xmlserialization.deserialization.AbstractDeserializationHandler
object, refId
-
-
Constructor Summary
Constructors Constructor Description ObjectDeserializationHandler()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DeserializationHandlerclone()Clones this handler.voidendElement(DeserializationContext context)Notifies the handler that their element has ended.voidendObject(java.lang.Object obj)Notifies the handler that an object tag was found and deserialized within their scopevoidendSubElement(java.lang.String name, DeserializationContext context)Notifies the handler that a sub-element has endedDecoder<?>getBodyDecoder()Called when body data is encountered in this tag or a sub-tag.java.lang.StringgetElementName()Returns the name of the element type that this handler ...voidonBody(java.lang.Object body)Called when body data is encountered in this tag or a sub-tag.voidstartElement(java.lang.String name, AttributesMap attr, DeserializationContext context)Notifies the handler that their element has started.voidstartSubElement(java.lang.String name, AttributesMap attributes, DeserializationContext context)Notifies the handler that a sub-element has started.booleansupportsNestedElements()Return true if the element type that you're parsing can have nested elements, or false if you're a singleton element.-
Methods inherited from class com.inductiveautomation.ignition.common.xmlserialization.deserialization.AbstractDeserializationHandler
getObject, getRefId, setObject, setRefId
-
-
-
-
Method Detail
-
startElement
public void startElement(java.lang.String name, AttributesMap attr, DeserializationContext context) throws java.lang.ExceptionDescription copied from interface:DeserializationHandlerNotifies the handler that their element has started.- Throws:
java.lang.Exception
-
onBody
public void onBody(java.lang.Object body)
Description copied from interface:DeserializationHandlerCalled when body data is encountered in this tag or a sub-tag. This data is first interpreted by the handler-provided decoder (seeDeserializationHandler.getBodyDecoder()), and then this function will be called.
-
getBodyDecoder
public Decoder<?> getBodyDecoder()
Description copied from interface:DeserializationHandlerCalled when body data is encountered in this tag or a sub-tag. Used to decode the body into an object, which is then passed toDeserializationHandler.onBody(Object)
-
endElement
public void endElement(DeserializationContext context) throws java.lang.Exception
Description copied from interface:DeserializationHandlerNotifies the handler that their element has ended.- Throws:
java.lang.Exception
-
endObject
public void endObject(java.lang.Object obj)
Description copied from interface:DeserializationHandlerNotifies the handler that an object tag was found and deserialized within their scope- Specified by:
endObjectin interfaceDeserializationHandler- Overrides:
endObjectin classAbstractDeserializationHandler
-
endSubElement
public void endSubElement(java.lang.String name, DeserializationContext context) throws java.lang.ExceptionDescription copied from interface:DeserializationHandlerNotifies the handler that a sub-element has ended- Specified by:
endSubElementin interfaceDeserializationHandler- Overrides:
endSubElementin classAbstractDeserializationHandler- Throws:
java.lang.Exception
-
startSubElement
public void startSubElement(java.lang.String name, AttributesMap attributes, DeserializationContext context) throws java.lang.ExceptionDescription copied from interface:DeserializationHandlerNotifies the handler that a sub-element has started.- Specified by:
startSubElementin interfaceDeserializationHandler- Overrides:
startSubElementin classAbstractDeserializationHandler- Throws:
java.lang.Exception
-
getElementName
public java.lang.String getElementName()
Description copied from interface:DeserializationHandlerReturns the name of the element type that this handler ... handles.
-
clone
public DeserializationHandler clone()
Description copied from interface:DeserializationHandlerClones this handler. Only handlers that support nested elements will be cloned, all others can throw an unsupported operation exception instead.- Specified by:
clonein interfaceDeserializationHandler- Specified by:
clonein classAbstractDeserializationHandler
-
supportsNestedElements
public boolean supportsNestedElements()
Description copied from interface:DeserializationHandlerReturn true if the element type that you're parsing can have nested elements, or false if you're a singleton element. If you return true, you need to implement clone().
Note As of Ignition 7.6.5 with support for multi-deserialization, you should also return true from this and implement clone() if your return object is mutable, otherwise instances may be shared amongst multi-deserialized objects.
-
-