public class SnakeYamlReaderGenerator extends AbstractSnakeYamlGenerator
Modifier and Type | Field and Description |
---|---|
private static java.lang.String |
LOCATION_VAR |
private java.lang.String |
locationField |
private ModelClass |
locationTracker |
private static java.lang.String |
SOURCE_PARAM |
private ModelClass |
sourceTracker |
private java.lang.String |
trackingArgs |
strictXmlAttributes
DEFAULT_DATE_FORMAT, domAsXpp3, useJava5
Constructor and Description |
---|
SnakeYamlReaderGenerator() |
Modifier and Type | Method and Description |
---|---|
private void |
addTrackingParameters(JMethod method) |
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 |
generateSnakeYamlReader() |
protected boolean |
isLocationTracking() |
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 |
writeAllClassesReaders(Model objectModel,
JClass jClass) |
private ModelField |
writeClassAttributesParser(java.util.List<ModelField> modelFields,
java.lang.String objectName,
boolean rootElement) |
private void |
writeClassParser(ModelClass modelClass,
JClass jClass,
boolean rootElement) |
private void |
writeClassReaders(ModelClass modelClass,
JClass jClass,
boolean rootElement) |
private void |
writeHelpers(JClass jClass) |
private void |
writeNewLocation(java.lang.String trackerVariable,
JSourceCode sc) |
private void |
writeNewSetLocation(ModelField field,
java.lang.String objectName,
java.lang.String trackerVariable,
JSourceCode sc) |
private void |
writeNewSetLocation(java.lang.String key,
java.lang.String objectName,
java.lang.String trackerVariable,
JSourceCode sc) |
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.
|
private void |
writeSetLocation(java.lang.String key,
java.lang.String objectName,
java.lang.String trackerVariable,
JSourceCode sc) |
getContentField, getFieldsForXml, getFileName, getValue, initialize, resolveTagName, resolveTagName, resolveTagName, writeDateParsingHelper
addModelImports, getClasses, getDefaultValue, getJavaDefaultValue, getPrefix, getValueChecker, initHeader, initHeader, isJavaEnabled, isRelevant, isTrackingSupport, newJSourceWriter, suppressAllWarnings
capitalise, contextualize, getBuildContext, getEncoding, getFieldsForClass, getGeneratedVersion, getHeader, getModel, getOutputDirectory, getParameter, getParameter, getParameter, isClassInModel, isCollection, isEmpty, isInnerAssociation, isMap, isPackageWithVersion, singular, uncapitalise
private static final java.lang.String SOURCE_PARAM
private static final java.lang.String LOCATION_VAR
private ModelClass locationTracker
private java.lang.String locationField
private ModelClass sourceTracker
private java.lang.String trackingArgs
protected boolean isLocationTracking()
public void generate(Model model, java.util.Properties parameters) throws ModelloException
ModelloException
private void writeClassReaders(ModelClass modelClass, JClass jClass, boolean rootElement)
private void generateSnakeYamlReader() throws ModelloException, java.io.IOException
ModelloException
java.io.IOException
private void writeClassParser(ModelClass modelClass, JClass jClass, boolean rootElement)
private ModelField writeClassAttributesParser(java.util.List<ModelField> modelFields, java.lang.String objectName, boolean rootElement)
private void processField(ModelField field, XmlFieldMetadata xmlFieldMetadata, boolean addElse, JSourceCode sc, java.lang.String objectName, JClass jClass)
field
- the field to processxmlFieldMetadata
- its XML metadataaddElse
- add an else
statement before generating a new if
sc
- the method source code to add toobjectName
- the object name in the sourcejClass
- the generated class source fileprivate void writeHelpers(JClass jClass)
private void addTrackingParameters(JMethod method)
private void writeNewSetLocation(ModelField field, java.lang.String objectName, java.lang.String trackerVariable, JSourceCode sc)
private void writeNewSetLocation(java.lang.String key, java.lang.String objectName, java.lang.String trackerVariable, JSourceCode sc)
private void writeNewLocation(java.lang.String trackerVariable, JSourceCode sc)
private void writeSetLocation(java.lang.String key, java.lang.String objectName, java.lang.String trackerVariable, JSourceCode sc)
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)
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