public class JavaModelloGenerator extends AbstractJavaModelloGenerator
| Modifier and Type | Field and Description |
|---|---|
private java.util.Collection<java.lang.String> |
immutableTypes |
DEFAULT_DATE_FORMAT, domAsXpp3, useJava5| Constructor and Description |
|---|
JavaModelloGenerator() |
| Modifier and Type | Method and Description |
|---|---|
private void |
addParameter(JMethodSignature jMethod,
java.lang.String type,
java.lang.String name,
java.lang.String comment) |
private void |
appendEntryMethod(java.lang.String type,
java.lang.String method,
java.lang.StringBuilder target,
ModelAssociation modelAssociation) |
private java.lang.String |
appendPeriod(java.lang.String string)
Utility method that adds a period to the end of a string, if the last non-whitespace character of the string is
not a punctuation mark or an end-tag.
|
private void |
createAdder(ModelAssociation modelAssociation,
JClass jClass) |
private void |
createAdder(ModelAssociation modelAssociation,
JClass jClass,
boolean isBuilderMethod) |
private void |
createAssociation(JClass jClass,
ModelAssociation modelAssociation,
JSourceCode jConstructorSource) |
private void |
createBreakAssociation(JClass jClass,
ModelAssociation modelAssociation) |
private void |
createBuilderAssociation(JClass jClass,
ModelAssociation modelAssociation) |
private void |
createBuilderField(JClass jClass,
ModelField modelField) |
private void |
createClassCastAssertion(JSourceCode sc,
ModelAssociation modelAssociation,
java.lang.String crudModifier) |
private void |
createCreateAssociation(JClass jClass,
ModelAssociation modelAssociation) |
private void |
createField(JClass jClass,
ModelField modelField) |
private JField |
createField(ModelField modelField) |
private JMethod |
createGetter(JField field,
ModelField modelField) |
private java.lang.String |
createHashCodeForField(ModelField identifier) |
private void |
createInstanceAndSetProperties(ModelClass modelClass,
JConstructor constructor,
JSourceCode sc) |
private void |
createSetBuilderAssociationToInstance(java.util.Set<java.lang.String> ctorArgs,
ModelAssociation modelAssociation,
JSourceCode sc) |
private boolean |
createSetBuilderFieldToInstance(java.util.Set<java.lang.String> ctorArgs,
ModelField modelField,
JSourceCode sc) |
private JMethod |
createSetter(JField field,
ModelField modelField) |
private JMethod |
createSetter(JField field,
ModelField modelField,
boolean isBuilderMethod) |
void |
generate(Model model,
java.util.Properties parameters) |
private void |
generateBuilder(ModelClass modelClass,
JClass builderClass,
JConstructor outherClassConstructor) |
private JMethod[] |
generateClone(ModelClass modelClass,
ModelClass locationClass) |
private JMethod |
generateEquals(ModelClass modelClass) |
private JMethod |
generateHashCode(ModelClass modelClass) |
private void |
generateInterface(ModelInterface modelInterface) |
private void |
generateJava() |
private void |
generateLocationBean(JClass jClass,
ModelClass locationClass,
ModelClass sourceClass) |
private java.lang.String |
generateLocationTracker(Model objectModel,
ModelClass locationClass) |
private void |
generateLocationTracking(JClass jClass,
ModelClass modelClass,
ModelClass locationClass) |
private void |
generateStaticCreator(ModelClass modelClass,
JClass jClass,
JConstructor constructor) |
private JMethod |
generateToString(ModelClass modelClass,
boolean onlyIdentifierFields) |
private java.lang.String |
getCloneHook(ModelClass modelClass) |
private java.lang.String |
getCloneMode(ModelAssociation modelAssociation,
java.lang.String cloneModeClass) |
private java.lang.String |
getCloneMode(ModelClass modelClass) |
private JType |
getComponentType(ModelAssociation modelAssociation,
JavaAssociationMetadata javaAssociationMetadata) |
private java.lang.String |
getDefaultValue(ModelAssociation modelAssociation,
JType componentType) |
private JType |
getDesiredType(ModelField modelField,
boolean useTo) |
private JavaAssociationMetadata |
getJavaAssociationMetadata(ModelAssociation modelAssociation) |
private boolean |
isBidirectionalAssociation(ModelAssociation association) |
addModelImport, addModelImports, getClasses, getDefaultValue, getJavaDefaultValue, getPrefix, getValueChecker, initHeader, initHeader, initialize, isJavaEnabled, isRelevant, isTrackingSupport, newJSourceWriter, suppressAllWarningscapitalise, contextualize, getBuildContext, getEncoding, getFieldsForClass, getGeneratedVersion, getHeader, getModel, getOutputDirectory, getParameter, getParameter, getParameter, isClassInModel, isCollection, isEmpty, isInnerAssociation, isMap, isPackageWithVersion, singular, uncapitalisepublic void generate(Model model, java.util.Properties parameters) throws ModelloException
ModelloExceptionprivate void generateJava()
throws ModelloException,
java.io.IOException
ModelloExceptionjava.io.IOExceptionprivate void generateInterface(ModelInterface modelInterface) throws ModelloException, java.io.IOException
ModelloExceptionjava.io.IOExceptionprivate JMethod generateEquals(ModelClass modelClass)
private JMethod generateToString(ModelClass modelClass, boolean onlyIdentifierFields)
private JMethod generateHashCode(ModelClass modelClass)
private JMethod[] generateClone(ModelClass modelClass, ModelClass locationClass) throws ModelloException
ModelloExceptionprivate java.lang.String getCloneMode(ModelClass modelClass) throws ModelloException
ModelloExceptionprivate java.lang.String getCloneMode(ModelAssociation modelAssociation, java.lang.String cloneModeClass) throws ModelloException
ModelloExceptionprivate java.lang.String getCloneHook(ModelClass modelClass) throws ModelloException
ModelloExceptionprivate java.lang.String generateLocationTracker(Model objectModel, ModelClass locationClass) throws ModelloException, java.io.IOException
ModelloExceptionjava.io.IOExceptionprivate void generateLocationTracking(JClass jClass, ModelClass modelClass, ModelClass locationClass) throws ModelloException
ModelloExceptionprivate void generateLocationBean(JClass jClass, ModelClass locationClass, ModelClass sourceClass) throws ModelloException
ModelloExceptionprivate java.lang.String appendPeriod(java.lang.String string)
string - The string to work withprivate java.lang.String createHashCodeForField(ModelField identifier)
private JField createField(ModelField modelField) throws ModelloException
ModelloExceptionprivate void createField(JClass jClass, ModelField modelField) throws ModelloException
ModelloExceptionprivate JMethod createGetter(JField field, ModelField modelField)
private JMethod createSetter(JField field, ModelField modelField) throws ModelloException
ModelloExceptionprivate JMethod createSetter(JField field, ModelField modelField, boolean isBuilderMethod) throws ModelloException
ModelloExceptionprivate void createClassCastAssertion(JSourceCode sc, ModelAssociation modelAssociation, java.lang.String crudModifier) throws ModelloException
ModelloExceptionprivate void createAssociation(JClass jClass, ModelAssociation modelAssociation, JSourceCode jConstructorSource) throws ModelloException
ModelloExceptionprivate java.lang.String getDefaultValue(ModelAssociation modelAssociation, JType componentType)
private JavaAssociationMetadata getJavaAssociationMetadata(ModelAssociation modelAssociation) throws ModelloException
ModelloExceptionprivate JType getComponentType(ModelAssociation modelAssociation, JavaAssociationMetadata javaAssociationMetadata)
private void createCreateAssociation(JClass jClass, ModelAssociation modelAssociation)
private void createBreakAssociation(JClass jClass, ModelAssociation modelAssociation)
private void createAdder(ModelAssociation modelAssociation, JClass jClass) throws ModelloException
ModelloExceptionprivate void createAdder(ModelAssociation modelAssociation, JClass jClass, boolean isBuilderMethod) throws ModelloException
ModelloExceptionprivate boolean isBidirectionalAssociation(ModelAssociation association)
private JType getDesiredType(ModelField modelField, boolean useTo) throws ModelloException
ModelloExceptionprivate void addParameter(JMethodSignature jMethod, java.lang.String type, java.lang.String name, java.lang.String comment)
private void generateBuilder(ModelClass modelClass, JClass builderClass, JConstructor outherClassConstructor) throws ModelloException
ModelloExceptionprivate void createInstanceAndSetProperties(ModelClass modelClass, JConstructor constructor, JSourceCode sc) throws ModelloException
ModelloExceptionprivate void createBuilderField(JClass jClass, ModelField modelField) throws ModelloException
ModelloExceptionprivate boolean createSetBuilderFieldToInstance(java.util.Set<java.lang.String> ctorArgs,
ModelField modelField,
JSourceCode sc)
throws ModelloException
ModelloExceptionprivate void createBuilderAssociation(JClass jClass, ModelAssociation modelAssociation) throws ModelloException
ModelloExceptionprivate void createSetBuilderAssociationToInstance(java.util.Set<java.lang.String> ctorArgs,
ModelAssociation modelAssociation,
JSourceCode sc)
throws ModelloException
ModelloExceptionprivate void appendEntryMethod(java.lang.String type,
java.lang.String method,
java.lang.StringBuilder target,
ModelAssociation modelAssociation)
private void generateStaticCreator(ModelClass modelClass, JClass jClass, JConstructor constructor) throws ModelloException
ModelloException