|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jibx.binding.SchemaGenerator
Binding generator. This loads the specified input classes and processes them to generate a default binding definition.
Field Summary | |
private static java.lang.String |
CURRENT_VERSION
Generator version. |
private org.jibx.binding.model.IClassLocator |
m_classLocator
Locator for finding classes referenced by binding. |
private org.w3c.dom.Document |
m_document
Document used for all schema definitions. |
private java.lang.String |
m_indentSequence
Indentation sequence per level of nesting. |
private boolean |
m_isAttributeQualified
Use qualified attributes default in schema flag. |
private boolean |
m_isElementQualified
Use qualified elements default in schema flag. |
private java.util.HashMap |
m_schemaMap
Map from namespaces to schemas. |
private org.jibx.binding.util.ObjectStack |
m_structureStack
Stack of structure definitions in progress (used to detect cycles). |
private boolean |
m_verbose
Show verbose output flag. |
private static java.util.HashMap |
s_objectTypeMap
Set of object types mapped to schema types. |
private static java.util.HashMap |
s_primitiveTypeMap
Set of primitive types mapped to schema types. |
static java.lang.String |
XML_URI
Fixed XML namespace. |
static java.lang.String |
XMLNS_URI
Fixed XML namespace namespace. |
private static java.lang.String |
XSD_URI
Schema namespace URI. |
Constructor Summary | |
SchemaGenerator(java.util.ArrayList paths)
Constructor with only paths supplied. |
|
SchemaGenerator(boolean verbose,
boolean equal,
boolean aqual,
java.util.ArrayList paths)
Constructor with settings specified. |
Method Summary | |
private org.w3c.dom.Element |
addChildElement(org.w3c.dom.Element parent,
java.lang.String name)
Add child element with appropriate indentation. |
private void |
addComment(org.w3c.dom.Element parent,
java.lang.String text)
Add comment with appropriate indentation. |
private void |
defineEmptyStructureComponent(org.jibx.binding.model.StructureElementBase comp,
org.w3c.dom.Element egroup,
org.w3c.dom.Element agroup)
Process a structure component (structure or collection element) with no name and no child components. |
private void |
defineList(java.util.ArrayList comps,
org.w3c.dom.Element egroup,
org.w3c.dom.Element agroup,
boolean mult)
Create the schema definition list for a binding component list. |
private org.w3c.dom.Element |
defineNestedStructure(org.jibx.binding.model.ContainerElementBase container,
org.w3c.dom.Element parent)
Create the schema definition for a nested structure. |
private void |
defineStructureComponent(org.jibx.binding.model.StructureElementBase comp,
org.w3c.dom.Element egroup,
org.w3c.dom.Element agroup,
boolean mult)
Process a structure component (structure or collection element) within a list of child components. |
void |
generate(org.jibx.binding.model.BindingElement binding)
Process a binding definition for schema generation. |
private void |
generateSchema(org.jibx.binding.model.BindingElement binding)
Generate a schema from a binding using supplied classpaths. |
org.jibx.binding.model.DefinitionContext |
getDefinitions()
Get innermost containing definition context. |
org.w3c.dom.Element[] |
getSchemas()
Get array of generated schemas. |
private void |
indentForClose(org.w3c.dom.Element parent)
Generate indentation to proper depth for current item. |
static void |
main(java.lang.String[] args)
Main method for running compiler as application. |
void |
setAttributeQualified(boolean qual)
Set control flag for attribute qualified default schema. |
void |
setElementQualified(boolean qual)
Set control flag for element qualified default schema. |
void |
setVerbose(boolean verbose)
Set control flag for verbose processing reports. |
private java.lang.String |
simpleClassName(java.lang.String cname)
Get simple class name. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
private static java.lang.String CURRENT_VERSION
private static final java.lang.String XSD_URI
public static final java.lang.String XML_URI
public static final java.lang.String XMLNS_URI
private static java.util.HashMap s_objectTypeMap
private static java.util.HashMap s_primitiveTypeMap
private boolean m_verbose
private boolean m_isElementQualified
private boolean m_isAttributeQualified
private java.lang.String m_indentSequence
private java.util.HashMap m_schemaMap
private org.jibx.binding.model.IClassLocator m_classLocator
private org.w3c.dom.Document m_document
private org.jibx.binding.util.ObjectStack m_structureStack
Constructor Detail |
public SchemaGenerator(java.util.ArrayList paths)
paths
- class paths to be checked for classes referenced by bindingspublic SchemaGenerator(boolean verbose, boolean equal, boolean aqual, java.util.ArrayList paths)
verbose
- report binding details and resultsequal
- use element form default qualified flagaqual
- use attribute form default qualified flagpaths
- class paths to be checked for classes referenced by bindingsMethod Detail |
public void setVerbose(boolean verbose)
verbose
- report verbose information in processing bindings flagpublic void setElementQualified(boolean qual)
qual
- element qualified default schemas flagpublic void setAttributeQualified(boolean qual)
qual
- attribute qualified default schemas flagpublic org.w3c.dom.Element[] getSchemas()
private void indentForClose(org.w3c.dom.Element parent)
parent
- element to contain indented child itemprivate void addComment(org.w3c.dom.Element parent, java.lang.String text)
parent
- element to contain indented child itemtext
- comment textprivate org.w3c.dom.Element addChildElement(org.w3c.dom.Element parent, java.lang.String name)
parent
- element to contain indented child itemname
- child element namepublic org.jibx.binding.model.DefinitionContext getDefinitions()
private void defineEmptyStructureComponent(org.jibx.binding.model.StructureElementBase comp, org.w3c.dom.Element egroup, org.w3c.dom.Element agroup)
comp
- structure component to be processedegroup
- schema element to contain element definitionsagroup
- schema element to contain attribute definitionsprivate void defineStructureComponent(org.jibx.binding.model.StructureElementBase comp, org.w3c.dom.Element egroup, org.w3c.dom.Element agroup, boolean mult)
comp
- structure component to be processedegroup
- schema element to contain element definitionsagroup
- schema element to contain attribute definitionsmult
- allow any number of occurrences of components flagprivate void defineList(java.util.ArrayList comps, org.w3c.dom.Element egroup, org.w3c.dom.Element agroup, boolean mult)
comps
- binding component listegroup
- schema element to contain element definitionsagroup
- schema element to contain attribute definitionsmult
- allow any number of occurrences of components flagprivate org.w3c.dom.Element defineNestedStructure(org.jibx.binding.model.ContainerElementBase container, org.w3c.dom.Element parent)
container
- binding definition element containing nested structureparent
- schema element to hold the definition
private void generateSchema(org.jibx.binding.model.BindingElement binding)
binding
- root element of bindingpublic void generate(org.jibx.binding.model.BindingElement binding) throws JiBXException
binding
- root element of binding
JiBXException
- if error in generating the schemaprivate java.lang.String simpleClassName(java.lang.String cname)
cname
- class name with full package specification
public static void main(java.lang.String[] args)
args
- command line arguments
|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |