|
||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||
java.lang.Objectorg.jibx.binding.def.BindingBuilder
public abstract class BindingBuilder
Binding definition builder. This processes the binding definition file to generate the code generation structure.
| Nested Class Summary | |
|---|---|
(package private) static class |
BindingBuilder.ContainerBase
Base class for containers. |
| Field Summary | |
|---|---|
(package private) static int |
ACC_PACKAGE
|
(package private) static int |
ACC_PRIVATE
|
(package private) static int |
ACC_PROTECTED
|
(package private) static int |
ACC_PUBLIC
|
private static java.lang.String[] |
ACCESS_LEVEL_NAMES
|
private static int[] |
ACCESS_LEVEL_NUMS
|
private static java.lang.String[] |
AUTO_LINK_NAMES
|
private static int[] |
AUTO_LINK_NUMS
|
private static java.lang.String |
BINDING_DIRECTION
|
private static java.lang.String |
BINDING_ELEMENT
Definitions for "binding" element use "BINDING" prefix. |
private static java.lang.String |
BINDING_FORCE
|
private static java.lang.String |
BINDING_FORWARDS
|
private static java.lang.String |
BINDING_GLOBALID
|
private static java.lang.String |
BINDING_NAME
|
private static java.lang.String |
BINDING_PACKAGE
|
private static java.lang.String |
BINDING_TRACKING
|
private static java.lang.String[] |
BINDINGDIR_NAMES
|
private static int[] |
BINDINGDIR_NUMS
|
private static java.lang.String |
COLLECTION_ADDMETHOD
|
private static java.lang.String |
COLLECTION_ELEMENT
Definitions for "collection" element use "COLLECTION" prefix. |
private static java.lang.String |
COLLECTION_ITEMTYPE
|
private static java.lang.String |
COLLECTION_ITERMETHOD
|
private static java.lang.String |
COLLECTION_LOADMETHOD
|
private static java.lang.String |
COLLECTION_SIZEMETHOD
|
private static java.lang.String |
COLLECTION_STOREMETHOD
|
private static java.lang.String |
COMMON_ACCESSLEVEL
|
private static java.lang.String |
COMMON_AUTOLINK
|
private static java.lang.String |
COMMON_CHOICE
|
private static java.lang.String |
COMMON_CREATETYPE
|
private static java.lang.String |
COMMON_DEFAULT
|
private static java.lang.String |
COMMON_DESERIALIZER
|
private static java.lang.String |
COMMON_DUPLICATES
|
private static java.lang.String |
COMMON_ENUMVALUEMETHOD
|
private static java.lang.String |
COMMON_FACTORY
|
private static java.lang.String |
COMMON_FIELD
|
private static java.lang.String |
COMMON_FLEXIBLE
|
private static java.lang.String |
COMMON_GETMETHOD
|
private static java.lang.String |
COMMON_LABEL
|
private static java.lang.String |
COMMON_MARSHALLER
|
private static java.lang.String |
COMMON_NAME
|
private static java.lang.String |
COMMON_NAMESPACE
|
private static java.lang.String |
COMMON_NAMESTYLE
|
private static java.lang.String |
COMMON_NILLABLE
|
private static java.lang.String |
COMMON_ORDERED
|
private static java.lang.String |
COMMON_POSTSET
|
private static java.lang.String |
COMMON_PREGET
|
private static java.lang.String |
COMMON_PRESET
|
private static java.lang.String |
COMMON_SERIALIZER
|
private static java.lang.String |
COMMON_SETMETHOD
|
private static java.lang.String |
COMMON_STRIPPREFIX
|
private static java.lang.String |
COMMON_STRIPSUFFIX
|
private static java.lang.String |
COMMON_STYLE
|
private static java.lang.String |
COMMON_TESTMETHOD
|
private static java.lang.String |
COMMON_TYPE
|
private static java.lang.String |
COMMON_UNMARSHALLER
|
private static java.lang.String |
COMMON_USAGE
|
private static java.lang.String |
COMMON_USING
|
private static java.lang.String[] |
COMPONENT_OBJECT_NAMES
|
private static java.lang.String[] |
COMPONENT_OBJECT_NAMESPACES
|
private static java.lang.String[] |
CONTAINING_STYLE_NAMES
|
private static int[] |
CONTAINING_STYLE_NUMS
|
private static java.lang.String |
CUSTOM_ENUM_DESERIALIZER_NAME
|
private static java.lang.String |
CUSTOM_ENUM_SERIALIZER_NAME
|
private static int |
DIRECTION_BOTH
|
private static int |
DIRECTION_INPUT
|
private static int |
DIRECTION_OUTPUT
|
private static java.lang.String |
FORMAT_ELEMENT
Definitions for "format" element use "FORMAT" prefix. |
private static java.lang.String |
FORMAT_NAME
|
private static java.lang.String |
FORMAT_TYPE
|
private static java.lang.String[] |
IDENTTYPE_NAMES
|
private static int[] |
IDENTTYPE_NUMS
|
private static java.lang.String |
INCLUDE_ELEMENT
Definitions for "include" element use "INCLUDE" prefix. |
private static java.lang.String |
INCLUDE_PATH
|
(package private) static int |
LINK_FIELDS
|
(package private) static int |
LINK_METHODS
|
(package private) static int |
LINK_NONE
|
private static java.lang.String |
MAPPING_ABSTRACT
|
private static java.lang.String |
MAPPING_CLASS
|
private static java.lang.String |
MAPPING_ELEMENT
Definitions for "mapping" element use "MAPPING" prefix. |
private static java.lang.String |
MAPPING_EXTENDS
|
private static java.lang.String |
MAPPING_TYPENAME
|
private static java.lang.String |
MARSHALLER_INTERFACE
|
private static java.lang.String |
MARSHALLER_INTERFACETYPE
|
private static java.lang.String[] |
NAME_GENERATE_NAMES
|
private static int[] |
NAME_GENERATE_NUMS
|
(package private) static int |
NAME_HYPHENS
|
(package private) static int |
NAME_MIXED
|
private static java.lang.String |
NAMESPACE_DEFAULT
|
private static java.lang.String |
NAMESPACE_ELEMENT
Definitions for "namespace" element use "NAMESPACE" prefix. |
private static java.lang.String |
NAMESPACE_PREFIX
|
private static java.lang.String |
NAMESPACE_URI
|
private static java.lang.String[] |
NAMESPACEACCESS_NAMES
|
private static int[] |
NAMESPACEACCESS_NUMS
|
private static java.lang.String |
STRUCTURE_ELEMENT
Definitions for "structure" element use "STRUCTURE" prefix. |
private static java.lang.String |
STRUCTURE_MAPAS
|
private static java.lang.String |
UNMARSHALLER_INTERFACE
|
private static java.lang.String |
UNMARSHALLER_INTERFACETYPE
|
private static java.lang.String |
URI_ATTRIBUTES
Attribute namespace used for binding definition file. |
private static java.lang.String |
URI_ELEMENTS
Element namespace used for binding definition file. |
private static java.lang.String |
USAGE_OPTIONAL
|
private static java.lang.String |
USAGE_REQUIRED
|
private static java.lang.String |
VALUE_CONSTANT
|
private static java.lang.String |
VALUE_ELEMENT
Definitions for "value" element use "VALUE" prefix. |
private static java.lang.String |
VALUE_FORMAT
|
private static java.lang.String |
VALUE_IDENT
|
private static java.lang.String |
VALUE_STYLE
|
private static java.lang.String[] |
VALUE_STYLE_NAMES
|
private static int[] |
VALUE_STYLE_NUMS
|
| Constructor Summary | |
|---|---|
BindingBuilder()
|
|
| Method Summary | |
|---|---|
private static void |
buildEnumValueMethods(java.lang.String type,
java.lang.String evmeth)
Add serializer and deserializer methods to enum class with special value method. |
private static boolean |
isDirectObject(UnmarshallingContext ctx)
Check if attributes define a direct object reference. |
private static boolean |
isMappingRef(UnmarshallingContext ctx)
Check if attributes define a mapping reference. |
private static boolean |
isNamePresent(UnmarshallingContext ctx)
Check if attributes supply a name definition. |
private static boolean |
isObjectBinding(UnmarshallingContext ctx)
Check for component object present. |
private static boolean |
isOptionalProperty(UnmarshallingContext ctx)
Check for optional property. |
private static boolean |
isPropertyPresent(UnmarshallingContext ctx)
Check for property definition present. |
static BindingDefinition |
unmarshalBindingDefinition(UnmarshallingContext ctx,
java.lang.String name,
java.net.URL root)
Unmarshal binding definition. |
private static DirectObject |
unmarshalDirectObj(UnmarshallingContext ctx,
java.lang.String type,
IContainer parent,
DefinitionContext defc,
int slot,
NameDefinition name)
Unmarshal direct object component. |
private static void |
unmarshalFormats(UnmarshallingContext ctx,
DefinitionContext defc)
Unmarshal format definitions. |
static void |
unmarshalInclude(UnmarshallingContext ctx,
BindingDefinition bdef,
java.net.URL root,
java.util.ArrayList nslist,
java.util.HashSet paths)
Unmarshal included binding. |
static IMapping |
unmarshalMapping(UnmarshallingContext ctx,
IContainer parent,
java.util.ArrayList nss,
boolean uord)
Unmarshal mapping definition. |
private static IComponent |
unmarshalMappingRef(UnmarshallingContext ctx,
IContainer parent,
IContextObj objc,
PropertyDefinition prop,
NameDefinition name)
Unmarshal mapping reference component. |
private static void |
unmarshalMappings(UnmarshallingContext ctx,
IContainer parent,
java.util.ArrayList nss,
boolean uord)
Unmarshal mapping definitions. |
private static NameDefinition |
unmarshalName(UnmarshallingContext ctx,
boolean attr)
Unmarshal name definition. |
private static NamespaceDefinition |
unmarshalNamespace(UnmarshallingContext ctx)
Unmarshal namespace definition. |
private static void |
unmarshalNamespaces(UnmarshallingContext ctx,
DefinitionContext defc)
Unmarshal namespace definitions. |
private static ObjectBinding |
unmarshalObjectBinding(UnmarshallingContext ctx,
IContextObj objc,
IContainer parent,
java.lang.String type)
Unmarshal object binding component. |
private static PropertyDefinition |
unmarshalProperty(UnmarshallingContext ctx,
IContainer parent,
IContextObj cobj,
boolean opt)
Unmarshal property definition. |
private static StringConversion |
unmarshalStringConversion(UnmarshallingContext ctx,
StringConversion base,
java.lang.String type)
Unmarshal string conversion. |
static IComponent |
unmarshalStructure(UnmarshallingContext ctx,
IContainer contain,
IContextObj cobj,
boolean coll,
boolean uord,
boolean implic)
Unmarshal subclass instance for structure definition. |
private static void |
unmarshalStructureChildren(UnmarshallingContext ctx,
NestedBase nest,
IContextObj objc,
boolean impl,
java.lang.String itype)
Unmarshal child bindings for a nested structure definition. |
private static IComponent |
unmarshalStructureRef(UnmarshallingContext ctx,
IContainer contain,
NameDefinition name,
PropertyDefinition prop,
IContextObj cobj)
Unmarshal structure reference component. |
private static ValueChild |
unmarshalValue(UnmarshallingContext ctx,
IContainer parent,
IContextObj cobj,
boolean uord,
boolean impl,
java.lang.String itype)
Unmarshal value definition. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
private static final java.lang.String URI_ELEMENTS
private static final java.lang.String URI_ATTRIBUTES
private static final java.lang.String COMMON_STYLE
private static final java.lang.String COMMON_AUTOLINK
private static final java.lang.String COMMON_ACCESSLEVEL
private static final java.lang.String COMMON_STRIPPREFIX
private static final java.lang.String COMMON_STRIPSUFFIX
private static final java.lang.String COMMON_NAMESTYLE
private static final java.lang.String COMMON_NAME
private static final java.lang.String COMMON_NAMESPACE
private static final java.lang.String COMMON_FACTORY
private static final java.lang.String COMMON_PRESET
private static final java.lang.String COMMON_POSTSET
private static final java.lang.String COMMON_PREGET
private static final java.lang.String COMMON_MARSHALLER
private static final java.lang.String COMMON_UNMARSHALLER
private static final java.lang.String COMMON_CREATETYPE
private static final java.lang.String COMMON_FIELD
private static final java.lang.String COMMON_TYPE
private static final java.lang.String COMMON_USAGE
private static final java.lang.String COMMON_TESTMETHOD
private static final java.lang.String COMMON_GETMETHOD
private static final java.lang.String COMMON_SETMETHOD
private static final java.lang.String COMMON_DEFAULT
private static final java.lang.String COMMON_SERIALIZER
private static final java.lang.String COMMON_DESERIALIZER
private static final java.lang.String COMMON_ENUMVALUEMETHOD
private static final java.lang.String COMMON_LABEL
private static final java.lang.String COMMON_USING
private static final java.lang.String COMMON_ORDERED
private static final java.lang.String COMMON_CHOICE
private static final java.lang.String COMMON_FLEXIBLE
private static final java.lang.String COMMON_DUPLICATES
private static final java.lang.String COMMON_NILLABLE
private static final java.lang.String BINDING_ELEMENT
private static final java.lang.String BINDING_NAME
private static final java.lang.String BINDING_DIRECTION
private static final java.lang.String BINDING_GLOBALID
private static final java.lang.String BINDING_FORWARDS
private static final java.lang.String BINDING_PACKAGE
private static final java.lang.String BINDING_TRACKING
private static final java.lang.String BINDING_FORCE
private static final java.lang.String NAMESPACE_ELEMENT
private static final java.lang.String NAMESPACE_URI
private static final java.lang.String NAMESPACE_PREFIX
private static final java.lang.String NAMESPACE_DEFAULT
private static final java.lang.String FORMAT_ELEMENT
private static final java.lang.String FORMAT_NAME
private static final java.lang.String FORMAT_TYPE
private static final java.lang.String MAPPING_ELEMENT
private static final java.lang.String MAPPING_CLASS
private static final java.lang.String MAPPING_ABSTRACT
private static final java.lang.String MAPPING_EXTENDS
private static final java.lang.String MAPPING_TYPENAME
private static final java.lang.String VALUE_ELEMENT
private static final java.lang.String VALUE_STYLE
private static final java.lang.String VALUE_FORMAT
private static final java.lang.String VALUE_CONSTANT
private static final java.lang.String VALUE_IDENT
private static final java.lang.String STRUCTURE_ELEMENT
private static final java.lang.String STRUCTURE_MAPAS
private static final java.lang.String COLLECTION_ELEMENT
private static final java.lang.String COLLECTION_LOADMETHOD
private static final java.lang.String COLLECTION_SIZEMETHOD
private static final java.lang.String COLLECTION_STOREMETHOD
private static final java.lang.String COLLECTION_ADDMETHOD
private static final java.lang.String COLLECTION_ITERMETHOD
private static final java.lang.String COLLECTION_ITEMTYPE
private static final java.lang.String INCLUDE_ELEMENT
private static final java.lang.String INCLUDE_PATH
private static final java.lang.String[] VALUE_STYLE_NAMES
private static final int[] VALUE_STYLE_NUMS
private static final java.lang.String[] CONTAINING_STYLE_NAMES
private static final int[] CONTAINING_STYLE_NUMS
static final int LINK_NONE
static final int LINK_FIELDS
static final int LINK_METHODS
private static final java.lang.String[] AUTO_LINK_NAMES
private static final int[] AUTO_LINK_NUMS
static final int ACC_PRIVATE
static final int ACC_PACKAGE
static final int ACC_PROTECTED
static final int ACC_PUBLIC
private static final java.lang.String[] ACCESS_LEVEL_NAMES
private static final int[] ACCESS_LEVEL_NUMS
static final int NAME_HYPHENS
static final int NAME_MIXED
private static final java.lang.String[] NAME_GENERATE_NAMES
private static final int[] NAME_GENERATE_NUMS
private static final java.lang.String[] COMPONENT_OBJECT_NAMESPACES
private static final java.lang.String[] COMPONENT_OBJECT_NAMES
private static final java.lang.String[] NAMESPACEACCESS_NAMES
private static final int[] NAMESPACEACCESS_NUMS
private static final java.lang.String[] IDENTTYPE_NAMES
private static final int[] IDENTTYPE_NUMS
private static final int DIRECTION_INPUT
private static final int DIRECTION_OUTPUT
private static final int DIRECTION_BOTH
private static final java.lang.String[] BINDINGDIR_NAMES
private static final int[] BINDINGDIR_NUMS
private static final java.lang.String USAGE_OPTIONAL
private static final java.lang.String USAGE_REQUIRED
private static final java.lang.String UNMARSHALLER_INTERFACE
private static final java.lang.String MARSHALLER_INTERFACE
private static final java.lang.String UNMARSHALLER_INTERFACETYPE
private static final java.lang.String MARSHALLER_INTERFACETYPE
private static final java.lang.String CUSTOM_ENUM_SERIALIZER_NAME
private static final java.lang.String CUSTOM_ENUM_DESERIALIZER_NAME
| Constructor Detail |
|---|
public BindingBuilder()
| Method Detail |
|---|
private static boolean isNamePresent(UnmarshallingContext ctx)
ctx - unmarshalling context information
true if attributes define a name,
false if notprivate static boolean isPropertyPresent(UnmarshallingContext ctx)
ctx - unmarshalling context informationprivate static boolean isDirectObject(UnmarshallingContext ctx)
ctx - unmarshalling context information
private static boolean isMappingRef(UnmarshallingContext ctx)
throws JiBXException
ctx - unmarshalling context information
true if attributes define a mapping reference,
false if not
JiBXException - if error in unmarshalling
private static boolean isObjectBinding(UnmarshallingContext ctx)
throws JiBXException
ctx - unmarshalling context information
JiBXException - if error in unmarshalling
private static NameDefinition unmarshalName(UnmarshallingContext ctx,
boolean attr)
throws JiBXException
ctx - unmarshalling context informationattr - flag for attribute name definition
JiBXException - if error in unmarshalling
private static NamespaceDefinition unmarshalNamespace(UnmarshallingContext ctx)
throws JiBXException
ctx - unmarshalling context information
JiBXException - if error in unmarshalling
private static void buildEnumValueMethods(java.lang.String type,
java.lang.String evmeth)
throws JiBXException
type - evmeth -
JiBXException
private static StringConversion unmarshalStringConversion(UnmarshallingContext ctx,
StringConversion base,
java.lang.String type)
throws JiBXException
ctx - unmarshalling context informationbase - conversion used as base for this conversiontype - fully qualified class name of type handled by conversion
JiBXException - if error in unmarshalling
private static boolean isOptionalProperty(UnmarshallingContext ctx)
throws JiBXException
ctx - unmarshalling context information
true if attribute present with value "true",
false otherwise
JiBXException - if error in unmarshalling
private static PropertyDefinition unmarshalProperty(UnmarshallingContext ctx,
IContainer parent,
IContextObj cobj,
boolean opt)
throws JiBXException
ctx - unmarshalling context informationparent - containing binding definition structurecobj - context object informationopt - force optional value flag
JiBXException - if error in unmarshalling
private static ValueChild unmarshalValue(UnmarshallingContext ctx,
IContainer parent,
IContextObj cobj,
boolean uord,
boolean impl,
java.lang.String itype)
throws JiBXException
ctx - unmarshalling context informationparent - containing binding definition structurecobj - context object informationuord - unordered collection member flagimpl - implicit value from collection flagitype - base type for value
JiBXException - if error in unmarshalling
private static DirectObject unmarshalDirectObj(UnmarshallingContext ctx,
java.lang.String type,
IContainer parent,
DefinitionContext defc,
int slot,
NameDefinition name)
throws JiBXException
ctx - unmarshalling context informationtype - fully qualified class name of object type handledparent - containing binding definition structuredefc - definition context to be used (if separate from parent,
otherwise null)slot - marshaller/unmarshaller slot numbername - element name information (null if no element
name)
JiBXException - if error in unmarshalling
private static IComponent unmarshalMappingRef(UnmarshallingContext ctx,
IContainer parent,
IContextObj objc,
PropertyDefinition prop,
NameDefinition name)
throws JiBXException
ctx - unmarshalling context informationparent - containing binding definition structureobjc - current object contextprop - property definitionname - reference name definition (only allowed with abstract
mappings)
JiBXException - if error in unmarshalling
private static IComponent unmarshalStructureRef(UnmarshallingContext ctx,
IContainer contain,
NameDefinition name,
PropertyDefinition prop,
IContextObj cobj)
throws JiBXException
ctx - unmarshalling context informationcontain - containing binding componentname - element name information (null if no element
name)prop - property definition (null if no separate
property)cobj - context object
JiBXException - if error in unmarshalling
private static void unmarshalStructureChildren(UnmarshallingContext ctx,
NestedBase nest,
IContextObj objc,
boolean impl,
java.lang.String itype)
throws JiBXException
ctx - unmarshalling context informationnest - nested structure definitionobjc - context object definitionimpl - property value implicit flagitype - item type for child components
JiBXException - if error in unmarshalling
private static ObjectBinding unmarshalObjectBinding(UnmarshallingContext ctx,
IContextObj objc,
IContainer parent,
java.lang.String type)
throws JiBXException
ctx - unmarshalling context informationparent - containing binding definition structureobjc - current object contexttype - fully qualified name of object class
JiBXException - if error in unmarshalling
private static void unmarshalNamespaces(UnmarshallingContext ctx,
DefinitionContext defc)
throws JiBXException
ctx - unmarshalling context informationdefc - definition context for defined namespaces
JiBXException - if error in unmarshalling
private static void unmarshalFormats(UnmarshallingContext ctx,
DefinitionContext defc)
throws JiBXException
ctx - unmarshalling context informationdefc - definition context for defined formats
JiBXException - if error in unmarshalling
private static void unmarshalMappings(UnmarshallingContext ctx,
IContainer parent,
java.util.ArrayList nss,
boolean uord)
throws JiBXException
ctx - unmarshalling context informationparent - containing binding definition structurenss - extra namespaces to be included in this mapping definition
(may be null)uord - container is unordered structure flag
JiBXException - if error in unmarshalling
public static IComponent unmarshalStructure(UnmarshallingContext ctx,
IContainer contain,
IContextObj cobj,
boolean coll,
boolean uord,
boolean implic)
throws JiBXException
ctx - unmarshalling context informationcontain - containing binding definition structurecobj - context object informationcoll - collection structure flaguord - container is unordered structure flagimplic - property value implicit flag
JiBXException - if error in unmarshalling
public static IMapping unmarshalMapping(UnmarshallingContext ctx,
IContainer parent,
java.util.ArrayList nss,
boolean uord)
throws JiBXException
ctx - unmarshalling context informationparent - containing binding definition structurenss - extra namespaces to be included in this mapping definition
(may be null)uord - container is unordered structure flag
JiBXException - if error in unmarshalling
public static void unmarshalInclude(UnmarshallingContext ctx,
BindingDefinition bdef,
java.net.URL root,
java.util.ArrayList nslist,
java.util.HashSet paths)
throws JiBXException
ctx - unmarshalling context informationbdef - binding defintion at root of includesroot - base URL for binding, or null if unknownnslist - list of namespaces definedpaths - set of binding paths processed
JiBXException - if error in unmarshalling
public static BindingDefinition unmarshalBindingDefinition(UnmarshallingContext ctx,
java.lang.String name,
java.net.URL root)
throws JiBXException
ctx - unmarshalling context informationname - default name for bindingroot - base URL for binding, or null if unknown
JiBXException - if error in unmarshalling
|
||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||