Class Dom4jReaderGenerator
- java.lang.Object
-
- org.codehaus.plexus.logging.AbstractLogEnabled
-
- org.codehaus.modello.plugin.AbstractModelloGenerator
-
- org.codehaus.modello.plugin.java.AbstractJavaModelloGenerator
-
- org.codehaus.modello.plugins.xml.AbstractXmlJavaGenerator
-
- org.codehaus.modello.plugin.dom4j.Dom4jReaderGenerator
-
- All Implemented Interfaces:
ModelloGenerator
,org.codehaus.plexus.logging.LogEnabled
,org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable
public class Dom4jReaderGenerator extends AbstractXmlJavaGenerator
Generator that reads a model using dom4j. TODO: chunks are lifted from xpp3, including the tests. Can we abstract it in some way?
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
requiresDomSupport
-
Fields inherited from class org.codehaus.modello.plugins.xml.AbstractXmlJavaGenerator
strictXmlAttributes
-
Fields inherited from class org.codehaus.modello.plugin.java.AbstractJavaModelloGenerator
DEFAULT_DATE_FORMAT, domAsXpp3, useJava5
-
-
Constructor Summary
Constructors Constructor Description Dom4jReaderGenerator()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private JMethod
convertNumericalType(java.lang.String methodName, JType returnType, java.lang.String expression, java.lang.String typeDesc)
void
generate(Model model, java.util.Properties parameters)
private void
generateDom4jReader()
private void
processField(ModelField field, XmlFieldMetadata xmlFieldMetadata, boolean addElse, JSourceCode sc, java.lang.String objectName, JClass jClass)
Generate code to process a field represented as an XML element.private void
writeAllClassesParser(Model objectModel, JClass jClass)
private void
writeClassParser(ModelClass modelClass, JClass jClass, boolean rootElement)
private void
writeDomHelpers(JClass jClass)
private void
writeHelpers(JClass jClass)
private void
writePrimitiveField(ModelField field, java.lang.String type, java.lang.String objectName, java.lang.String setterName, JSourceCode sc, JClass jClass, java.lang.String parentElementName, java.lang.String childElementName)
-
Methods inherited from class org.codehaus.modello.plugins.xml.AbstractXmlJavaGenerator
getContentField, getFieldsForXml, getFileName, getValue, initialize, resolveTagName, resolveTagName, resolveTagName, writeDateParsingHelper
-
Methods inherited from class org.codehaus.modello.plugin.java.AbstractJavaModelloGenerator
addModelImport, addModelImports, getClasses, getDefaultValue, getJavaDefaultValue, getPrefix, getValueChecker, initHeader, initHeader, isJavaEnabled, isRelevant, isTrackingSupport, newJSourceWriter, suppressAllWarnings
-
Methods inherited from class org.codehaus.modello.plugin.AbstractModelloGenerator
capitalise, contextualize, getBuildContext, getEncoding, getFieldsForClass, getGeneratedVersion, getHeader, getModel, getOutputDirectory, getParameter, getParameter, getParameter, isClassInModel, isCollection, isEmpty, isInnerAssociation, isMap, isPackageWithVersion, singular, uncapitalise
-
-
-
-
Method Detail
-
generate
public void generate(Model model, java.util.Properties parameters) throws ModelloException
- Throws:
ModelloException
-
generateDom4jReader
private void generateDom4jReader() throws ModelloException, java.io.IOException
- Throws:
ModelloException
java.io.IOException
-
writeClassParser
private void writeClassParser(ModelClass modelClass, JClass jClass, boolean rootElement)
-
processField
private void processField(ModelField field, XmlFieldMetadata xmlFieldMetadata, boolean addElse, JSourceCode sc, java.lang.String objectName, JClass jClass)
Generate code to process a field represented as an XML element.- Parameters:
field
- the field to processxmlFieldMetadata
- its XML metadataaddElse
- add anelse
statement before generating a newif
sc
- the method source code to add toobjectName
- the object name in the sourcejClass
- the generated class source file
-
writePrimitiveField
private void writePrimitiveField(ModelField field, java.lang.String type, java.lang.String objectName, java.lang.String setterName, JSourceCode sc, JClass jClass, java.lang.String parentElementName, java.lang.String childElementName)
-
writeHelpers
private void writeHelpers(JClass jClass)
-
writeDomHelpers
private void writeDomHelpers(JClass jClass)
-
-