Package org.jibx.schema.codegen.custom
Class SchemaRootBase.ExtensionUnmarshaller
java.lang.Object
org.jibx.schema.codegen.custom.SchemaRootBase.ExtensionUnmarshaller
- All Implemented Interfaces:
IUnmarshaller
- Direct Known Subclasses:
SchemaRootBase.ClassDecoratorUnmarshaller,SchemaRootBase.NameConverterUnmarshaller
- Enclosing class:
SchemaRootBase
public abstract static class SchemaRootBase.ExtensionUnmarshaller
extends Object
implements IUnmarshaller
Unmarshaller for extension elements. This expects to find a 'class' attribute giving the name of the class to be
created, along with other attributes used to set properties on an instance of the class. The latter attributes
are handled by converting the attribute name into a field (with an 'm_' prefix) or method (with a 'set' prefix)
name, then storing the value to that field or method.
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract ObjectcreateInstance(String cname, UnmarshallingContext ctx) Instance creation method.booleanCheck for element present.unmarshal(Object obj, IUnmarshallingContext ictx) Unmarshal instance of element.
-
Field Details
-
m_name
-
-
Constructor Details
-
ExtensionUnmarshaller
Constructor.- Parameters:
name- local name for the element handled
-
-
Method Details
-
createInstance
Instance creation method. This is called by theunmarshal(Object, IUnmarshallingContext)method to create the actual object instance to be handled. Subclasses must implement this method to create the instance and perform any appropriate initialization.- Parameters:
cname- class name from element (nullif not supplied)ctx- unmarshalling context- Returns:
- object instance to be unmarshalled, or
nullif error
-
isPresent
Check for element present.- Specified by:
isPresentin interfaceIUnmarshaller- Parameters:
ictx-- Returns:
trueif present,falseif not- Throws:
JiBXException- on error
-
unmarshal
Unmarshal instance of element. This ignores the 'class' attribute, if present, since that's intended for use by the subclass.- Specified by:
unmarshalin interfaceIUnmarshaller- Parameters:
obj- ignored (new instance always created)ictx-- Returns:
- unmarshalled instance
- Throws:
JiBXException- on error
-