|
||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||
java.lang.Objectorg.jibx.binding.def.DefinitionContext
public class DefinitionContext
Nesting level for definitions in binding. This tracks namespace and mapping definitions that apply to all enclosed items.
| Field Summary | |
|---|---|
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 Summary | |
|---|---|
DefinitionContext(IContainer contain)
Constructor. |
|
| Method Summary | |
|---|---|
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. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
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
| Constructor Detail |
|---|
public DefinitionContext(IContainer contain)
contain - containing binding definition component| Method Detail |
|---|
private 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 added
JiBXException - on mapping definition conflict
public void addNamedStructure(java.lang.String name,
IComponent comp)
throws JiBXException
name - component name to be setcomp - named component
JiBXException - on mapping definition conflictprivate NamespaceDefinition getDefaultNamespace(boolean attr)
attr - flag for attribute name
null if nonepublic java.lang.String getDefaultURI(boolean attr)
attr - flag for attribute name
null if nonepublic int getDefaultIndex(boolean attr)
attr - flag for attribute name
public int getNamespaceIndex(java.lang.String uri,
boolean attr)
throws JiBXException
uri - namespace URI to be foundattr - flag for attribute name
JiBXException - if URI not defined or not usablepublic IMapping getMappingAtLevel(java.lang.String name)
name - fully qualified class name
null if not definedpublic IMapping getClassMapping(java.lang.String name)
name - fully qualified class name
null if not defined
public IComponent getNamedStructure(java.lang.String name)
throws JiBXException
name - component name to be found
JiBXException - 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 converted
null if not
foundpublic StringConversion getConversion(ClassFile clas)
clas - information for target conversion class
public StringConversion getNamedConversion(QName name)
name - conversion name to be found
public void addConversion(QName name,
StringConversion conv)
throws JiBXException
name - format name for this conversionconv - conversion definition for class
JiBXException - if duplicate conversion definition
public void setConversion(StringConversion conv)
throws JiBXException
conv - conversion definition for class
JiBXException - if duplicate conversion definition
public void setNamedConversion(QName name,
StringConversion conv)
throws JiBXException
name - format name for this conversionconv - conversion definition for class
JiBXException - if duplicate conversion definition
public void setDefaultConversion(QName name,
StringConversion conv)
throws JiBXException
name - format name for this conversionconv - conversion definition for class
JiBXException - 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 code
private 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 code
public void generateCode(boolean verbose,
boolean force)
throws JiBXException
verbose - flag for verbose outputforce - create marshaller/unmarshaller even for abstract non-base
mappings flag
JiBXException - if error in transformation
public void linkMappings()
throws JiBXException
JiBXException - if error in linking
public void setLinkages()
throws JiBXException
JiBXException - if error in configurationpublic void print(int depth)
|
||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||