Class SnakeYamlReaderGenerator
- 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.snakeyaml.AbstractSnakeYamlGenerator
-
- org.codehaus.modello.plugin.snakeyaml.SnakeYamlReaderGenerator
-
- All Implemented Interfaces:
ModelloGenerator,org.codehaus.plexus.logging.LogEnabled,org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable
- Direct Known Subclasses:
SnakeYamlExtendedReaderGenerator
public class SnakeYamlReaderGenerator extends AbstractSnakeYamlGenerator
-
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.StringLOCATION_VARprivate java.lang.StringlocationFieldprivate ModelClasslocationTrackerprivate static java.lang.StringSOURCE_PARAMprivate ModelClasssourceTrackerprivate java.lang.StringtrackingArgs-
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 SnakeYamlReaderGenerator()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidaddTrackingParameters(JMethod method)private JMethodconvertNumericalType(java.lang.String methodName, JType returnType, java.lang.String expression, java.lang.String typeDesc)voidgenerate(Model model, java.util.Properties parameters)private voidgenerateSnakeYamlReader()protected booleanisLocationTracking()private voidprocessField(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 voidwriteAllClassesParser(Model objectModel, JClass jClass)private voidwriteAllClassesReaders(Model objectModel, JClass jClass)private ModelFieldwriteClassAttributesParser(java.util.List<ModelField> modelFields, java.lang.String objectName, boolean rootElement)private voidwriteClassParser(ModelClass modelClass, JClass jClass, boolean rootElement)private voidwriteClassReaders(ModelClass modelClass, JClass jClass, boolean rootElement)private voidwriteHelpers(JClass jClass)private voidwriteNewLocation(java.lang.String trackerVariable, JSourceCode sc)private voidwriteNewSetLocation(java.lang.String key, java.lang.String objectName, java.lang.String trackerVariable, JSourceCode sc)private voidwriteNewSetLocation(ModelField field, java.lang.String objectName, java.lang.String trackerVariable, JSourceCode sc)private voidwritePrimitiveField(ModelField field, java.lang.String type, java.lang.String objectName, java.lang.String locatorName, java.lang.String locationKey, java.lang.String setterName, JSourceCode sc, boolean wrappedItem)Write code to set a primitive field with a value got from the parser, with appropriate default value, trimming and required check logic.private voidwriteSetLocation(java.lang.String key, java.lang.String objectName, java.lang.String trackerVariable, JSourceCode sc)-
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
-
-
-
-
Field Detail
-
SOURCE_PARAM
private static final java.lang.String SOURCE_PARAM
- See Also:
- Constant Field Values
-
LOCATION_VAR
private static final java.lang.String LOCATION_VAR
- See Also:
- Constant Field Values
-
locationTracker
private ModelClass locationTracker
-
locationField
private java.lang.String locationField
-
sourceTracker
private ModelClass sourceTracker
-
trackingArgs
private java.lang.String trackingArgs
-
-
Method Detail
-
isLocationTracking
protected boolean isLocationTracking()
-
generate
public void generate(Model model, java.util.Properties parameters) throws ModelloException
- Throws:
ModelloException
-
writeClassReaders
private void writeClassReaders(ModelClass modelClass, JClass jClass, boolean rootElement)
-
generateSnakeYamlReader
private void generateSnakeYamlReader() throws ModelloException, java.io.IOException- Throws:
ModelloExceptionjava.io.IOException
-
writeClassParser
private void writeClassParser(ModelClass modelClass, JClass jClass, boolean rootElement)
-
writeClassAttributesParser
private ModelField writeClassAttributesParser(java.util.List<ModelField> modelFields, java.lang.String objectName, 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 anelsestatement before generating a newifsc- the method source code to add toobjectName- the object name in the sourcejClass- the generated class source file
-
writeHelpers
private void writeHelpers(JClass jClass)
-
addTrackingParameters
private void addTrackingParameters(JMethod method)
-
writeNewSetLocation
private void writeNewSetLocation(ModelField field, java.lang.String objectName, java.lang.String trackerVariable, JSourceCode sc)
-
writeNewSetLocation
private void writeNewSetLocation(java.lang.String key, java.lang.String objectName, java.lang.String trackerVariable, JSourceCode sc)
-
writeNewLocation
private void writeNewLocation(java.lang.String trackerVariable, JSourceCode sc)
-
writeSetLocation
private void writeSetLocation(java.lang.String key, java.lang.String objectName, java.lang.String trackerVariable, JSourceCode sc)
-
writePrimitiveField
private void writePrimitiveField(ModelField field, java.lang.String type, java.lang.String objectName, java.lang.String locatorName, java.lang.String locationKey, java.lang.String setterName, JSourceCode sc, boolean wrappedItem)
Write code to set a primitive field with a value got from the parser, with appropriate default value, trimming and required check logic.- Parameters:
field- the model field to set (either XML attribute or element)type- the type of the value read from XMLobjectName- the object name in sourcesetterName- the setter method namesc- the source code to add to
-
-