public class DefinitionContext
extends java.lang.Object
| Modifier and Type | Field | Description |
|---|---|---|
private NamespaceDefinition |
m_attributeDefault |
Namespace used by default at this level for attributes.
|
private ArrayMap |
m_classMap |
Mapping from fully qualified class name to mapping index (lazy
create).
|
private IContainer |
m_container |
Containing binding definition component.
|
private DefinitionContext |
m_context |
Containing definition context.
|
private java.util.Map |
m_convertMap |
Map from signatures to
String conversions. |
private NamespaceDefinition |
m_elementDefault |
Namespace used by default at this level for elements.
|
private java.util.Map |
m_formatMap |
Map from format qnames to
String conversions. |
private java.util.ArrayList |
m_mappings |
Class mappings defined at level (lazy create).
|
private java.util.Map |
m_namedStructureMap |
Named binding components (only for root context of a binding).
|
private java.util.ArrayList |
m_namespaces |
Namespaces defined at level (lazy create).
|
private java.util.Map |
m_overrideMap |
Mapping from override namespace definition to original (lazy create).
|
private java.util.Map |
m_uriMap |
Mapping from URI to namespace definition (lazy create).
|
| Constructor | Description |
|---|---|
DefinitionContext(IContainer contain) |
Constructor.
|
| Modifier and Type | Method | Description |
|---|---|---|
void |
addConversion(QName name,
StringConversion conv) |
Add named conversion.
|
void |
addImpliedNamespace(NamespaceDefinition def) |
Add namespace declaration to set defined at this level.
|
void |
addMapping(IMapping def) |
Add class mapping to set defined at this level.
|
void |
addNamedStructure(java.lang.String name,
IComponent comp) |
Add named structure component to set defined at this level.
|
void |
addNamespace(NamespaceDefinition def) |
Add namespace to set defined at this level.
|
private boolean |
checkDuplicateNamespace(NamespaceDefinition def) |
Check for duplicate namespace definition.
|
void |
generateCode(boolean verbose,
boolean force) |
Generate code.
|
private void |
genFillNamespaceIndexes(java.util.ArrayList nss,
MethodBuilder mb) |
Internal method to generate code to fill array with namespace indexes.
|
private void |
genFillNamespacePrefixes(java.util.ArrayList nss,
MethodBuilder mb) |
Internal method to generate code to fill array with namespace prefixes.
|
void |
genLoadNamespaces(MethodBuilder mb) |
Generate code for loading namespace index and URI arrays.
|
IMapping |
getClassMapping(java.lang.String name) |
Get mapping definition for class.
|
StringConversion |
getConversion(ClassFile clas) |
Get conversion definition for class.
|
int |
getDefaultIndex(boolean attr) |
Get the default namespace index for a contained name.
|
private NamespaceDefinition |
getDefaultNamespace(boolean attr) |
Get the default namespace for a contained name.
|
java.lang.String |
getDefaultURI(boolean attr) |
Get the default namespace URI for a contained name.
|
IMapping |
getMappingAtLevel(java.lang.String name) |
Get mapping definition for class if defined at this level.
|
java.util.ArrayList |
getMappings() |
Get mapping definitions at level.
|
StringConversion |
getNamedConversion(QName name) |
Get named conversion definition.
|
IComponent |
getNamedStructure(java.lang.String name) |
Get nested structure by name.
|
int |
getNamespaceIndex(java.lang.String uri,
boolean attr) |
Get namespace index for a given URI.
|
java.util.ArrayList |
getNamespaces() |
Get the namespaces defined in this context
|
StringConversion |
getSpecificConversion(java.lang.String name) |
Get specific conversion definition for type.
|
boolean |
hasNamespace() |
Check if one or more namespaces are defined in this context.
|
private void |
internalAddNamespace(NamespaceDefinition def) |
Add namespace to internal tables.
|
void |
linkMappings() |
Links extension mappings to their base mappings.
|
void |
print(int depth) |
|
void |
setConversion(StringConversion conv) |
Set specific conversion definition for type.
|
void |
setDefaultConversion(QName name,
StringConversion conv) |
Sets a conversion definition by both type and name.
|
void |
setLinkages() |
Set linkages between binding components.
|
void |
setNamedConversion(QName name,
StringConversion conv) |
Sets a named conversion definition.
|
private final IContainer m_container
private final DefinitionContext m_context
private NamespaceDefinition m_attributeDefault
private NamespaceDefinition m_elementDefault
private java.util.ArrayList m_namespaces
private java.util.Map m_uriMap
private java.util.Map m_overrideMap
private ArrayMap m_classMap
private java.util.ArrayList m_mappings
private java.util.Map m_convertMap
String conversions.private java.util.Map m_formatMap
String conversions.private java.util.Map m_namedStructureMap
public DefinitionContext(IContainer contain)
contain - containing binding definition componentprivate boolean checkDuplicateNamespace(NamespaceDefinition def)
def - private void internalAddNamespace(NamespaceDefinition def)
def - public void addNamespace(NamespaceDefinition def)
def - namespace definition to be added (duplicates ignored)public void addImpliedNamespace(NamespaceDefinition def)
def - namespace definition to be added (duplicates ignored)public void addMapping(IMapping def) throws JiBXException
def - mapping definition to be addedJiBXException - on mapping definition conflictpublic void addNamedStructure(java.lang.String name,
IComponent comp)
throws JiBXException
name - component name to be setcomp - named componentJiBXException - on mapping definition conflictprivate NamespaceDefinition getDefaultNamespace(boolean attr)
attr - flag for attribute namenull if nonepublic java.lang.String getDefaultURI(boolean attr)
attr - flag for attribute namenull if nonepublic int getDefaultIndex(boolean attr)
attr - flag for attribute namepublic int getNamespaceIndex(java.lang.String uri,
boolean attr)
throws JiBXException
uri - namespace URI to be foundattr - flag for attribute nameJiBXException - if URI not defined or not usablepublic IMapping getMappingAtLevel(java.lang.String name)
name - fully qualified class namenull if not definedpublic IMapping getClassMapping(java.lang.String name)
name - fully qualified class namenull if not definedpublic IComponent getNamedStructure(java.lang.String name) throws JiBXException
name - component name to be foundJiBXException - if name not definedpublic java.util.ArrayList getMappings()
null if none defined at levelpublic StringConversion getSpecificConversion(java.lang.String name)
name - fully qualified class name to be convertednull if not
foundpublic StringConversion getConversion(ClassFile clas)
clas - information for target conversion classpublic StringConversion getNamedConversion(QName name)
name - conversion name to be foundpublic void addConversion(QName name, StringConversion conv) throws JiBXException
name - format name for this conversionconv - conversion definition for classJiBXException - if duplicate conversion definitionpublic void setConversion(StringConversion conv) throws JiBXException
conv - conversion definition for classJiBXException - if duplicate conversion definitionpublic void setNamedConversion(QName name, StringConversion conv) throws JiBXException
name - format name for this conversionconv - conversion definition for classJiBXException - if duplicate conversion definitionpublic void setDefaultConversion(QName name, StringConversion conv) throws JiBXException
name - format name for this conversionconv - conversion definition for classJiBXException - if duplicate conversion definitionpublic boolean hasNamespace()
true if namespaces are defined, false
if notpublic java.util.ArrayList getNamespaces()
null if none)private void genFillNamespaceIndexes(java.util.ArrayList nss,
MethodBuilder mb)
nss - namespaces to be handledmb - method builder for generated codeprivate void genFillNamespacePrefixes(java.util.ArrayList nss,
MethodBuilder mb)
nss - namespaces to be handledmb - method builder for generated codepublic void genLoadNamespaces(MethodBuilder mb)
mb - method builder for generated codepublic void generateCode(boolean verbose,
boolean force)
throws JiBXException
verbose - flag for verbose outputforce - create marshaller/unmarshaller even for abstract non-base
mappings flagJiBXException - if error in transformationpublic void linkMappings()
throws JiBXException
JiBXException - if error in linkingpublic void setLinkages()
throws JiBXException
JiBXException - if error in configurationpublic void print(int depth)