Package org.nuiton.topia.templates
Class EntityHibernateMappingGenerator
java.lang.Object
org.nuiton.eugene.Template<M>
org.nuiton.eugene.AbstractGenerator<org.nuiton.eugene.models.object.ObjectModel>
org.nuiton.eugene.models.object.ObjectModelGenerator
org.nuiton.topia.templates.EntityHibernateMappingGenerator
- All Implemented Interfaces:
org.nuiton.eugene.TemplateConfiguration
@Component(role=org.nuiton.eugene.Template.class,
hint="org.nuiton.topia.templates.EntityHibernateMappingGenerator")
public class EntityHibernateMappingGenerator
extends org.nuiton.eugene.models.object.ObjectModelGenerator
- Author:
- Benjamin Poussin - poussin@codelutin.com
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringprotected TopiaTemplateHelperprotected final TopiaHibernateTagValuesFields inherited from class org.nuiton.eugene.AbstractGenerator
parentFields inherited from class org.nuiton.eugene.Template
configuration, excludeTemplates, generatedPackages, model, resourcesHelperFields inherited from interface org.nuiton.eugene.TemplateConfiguration
PROP_CLASS_LOADER, PROP_DEFAULT_PACKAGE, PROP_ENCODING, PROP_EXCLUDE_TEMPLATES, PROP_GENERATED_PACKAGES, PROP_LAST_MODIFIED_SOURCE, PROP_OVERWRITE, PROP_VERBOSE, PROP_WRITER_REPORT -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanfileFoundInClassPath(org.nuiton.eugene.models.object.ObjectModelClass input) protected voidgenerateAttributes(Writer output, org.nuiton.topia.templates.EntityHibernateMappingGenerator.ClassContext classContext, List<org.nuiton.eugene.models.object.ObjectModelAttribute> attributes, String prefix) protected voidgenerateDatabaseObjects(Writer output, org.nuiton.topia.templates.EntityHibernateMappingGenerator.ClassContext classContext, List<org.nuiton.eugene.models.object.ObjectModelAttribute> attributes) voidgenerateFromClass(Writer output, org.nuiton.eugene.models.object.ObjectModelClass input) protected voidgenerateHibernateMany(Writer output, org.nuiton.topia.templates.EntityHibernateMappingGenerator.ClassContext classContext, org.nuiton.eugene.models.object.ObjectModelAttribute attr, String prefix) protected voidgenerateHibernateManyToMany(Writer output, org.nuiton.topia.templates.EntityHibernateMappingGenerator.ClassContext classContext, org.nuiton.eugene.models.object.ObjectModelAttribute attr, String prefix) protected voidgenerateHibernateManyToOne(Writer output, org.nuiton.topia.templates.EntityHibernateMappingGenerator.ClassContext classContext, org.nuiton.eugene.models.object.ObjectModelAttribute attr, boolean isUnique, String prefix) protected voidgenerateHibernateManyToOne(Writer output, org.nuiton.topia.templates.EntityHibernateMappingGenerator.ClassContext classContext, org.nuiton.eugene.models.object.ObjectModelAttribute attr, String prefix) protected voidgenerateHibernateOneToMany(Writer output, org.nuiton.topia.templates.EntityHibernateMappingGenerator.ClassContext classContext, org.nuiton.eugene.models.object.ObjectModelAttribute attr, String prefix) protected voidgenerateHibernateOneToOne(Writer output, org.nuiton.topia.templates.EntityHibernateMappingGenerator.ClassContext classContext, org.nuiton.eugene.models.object.ObjectModelAttribute attr, String prefix) protected voidgenerateHibernateProperty(Writer output, org.nuiton.topia.templates.EntityHibernateMappingGenerator.ClassContext classContext, org.nuiton.eugene.models.object.ObjectModelAttribute attr, String prefix) getFilenameForClass(org.nuiton.eugene.models.object.ObjectModelClass clazz) protected StringgetName(org.nuiton.eugene.models.object.ObjectModelAttribute attr) protected StringgetName(org.nuiton.eugene.models.object.ObjectModelAttribute attr, boolean isAssoc) protected StringgetType(org.nuiton.eugene.models.object.ObjectModelPackage aPackage, org.nuiton.eugene.models.object.ObjectModelClass clazz, org.nuiton.eugene.models.object.ObjectModelAttribute attr) protected StringgetType(org.nuiton.eugene.models.object.ObjectModelPackage aPackage, org.nuiton.eugene.models.object.ObjectModelClass clazz, org.nuiton.eugene.models.object.ObjectModelAttribute attr, boolean isAssoc) protected StringgetType(org.nuiton.topia.templates.EntityHibernateMappingGenerator.ClassContext clazzContext, org.nuiton.eugene.models.object.ObjectModelAttribute attr) Methods inherited from class org.nuiton.eugene.models.object.ObjectModelGenerator
applyTemplate, canGenerateElement, generateFromClassifier, generateFromElement, generateFromEnum, generateFromEnumeration, generateFromInterface, generateFromModel, getFilenameForClassifier, getFilenameForEnumeration, getFilenameForInterface, getFilenameForModel, getFilenameForPackageMethods inherited from class org.nuiton.eugene.AbstractGenerator
canGeneratePackage, getDestinationFile, getEncoding, getLastModifiedSource, getProperty, getProperty, getWriter, isNewerThanSource, isOverwrite, setParent, writeMethods inherited from class org.nuiton.eugene.Template
getClassLoader, getConfiguration, getExcludeTemplates, getGeneratedPackages, getModel, getOverwrite, getProperties, getResourcesHelper, getWriterReport, isVerbose, setConfiguration, setProperty
-
Field Details
-
HIBERNATE_ATTRIBUTE_LAZY
- See Also:
-
HIBERNATE_ATTRIBUTE_FETCH
- See Also:
-
HIBERNATE_ATTRIBUTE_NOT_NULL
- See Also:
-
HIBERNATE_ATTRIBUTE_SCHEMA
- See Also:
-
HIBERNATE_ATTRIBUTE_PROXY
- See Also:
-
HIBERNATE_ATTRIBUTE_INDEX
- See Also:
-
HIBERNATE_ATTRIBUTE_UNIQUE
- See Also:
-
HIBERNATE_ATTRIBUTE_LENGTH
- See Also:
-
HIBERNATE_ATTRIBUTE_ORDER_BY
- See Also:
-
HIBERNATE_ATTRIBUTE_CASCADE
- See Also:
-
HIBERNATE_ATTRIBUTE_INVERSE
- See Also:
-
HIBERNATE_ATTRIBUTE_TABLE
- See Also:
-
HIBERNATE_ATTRIBUTE_DISCRIMINATOR_VALUE
- See Also:
-
HIBERNATE_ATTRIBUTE_FOREIGN_KEY
- See Also:
-
templateHelper
-
topiaHibernateTagValues
-
-
Constructor Details
-
EntityHibernateMappingGenerator
public EntityHibernateMappingGenerator()
-
-
Method Details
-
getFilenameForClass
- Overrides:
getFilenameForClassin classorg.nuiton.eugene.models.object.ObjectModelGenerator
-
generateFromClass
public void generateFromClass(Writer output, org.nuiton.eugene.models.object.ObjectModelClass input) throws IOException - Overrides:
generateFromClassin classorg.nuiton.eugene.models.object.ObjectModelGenerator- Throws:
IOException
-
generateDatabaseObjects
protected void generateDatabaseObjects(Writer output, org.nuiton.topia.templates.EntityHibernateMappingGenerator.ClassContext classContext, List<org.nuiton.eugene.models.object.ObjectModelAttribute> attributes) throws IOException - Throws:
IOException
-
generateAttributes
protected void generateAttributes(Writer output, org.nuiton.topia.templates.EntityHibernateMappingGenerator.ClassContext classContext, List<org.nuiton.eugene.models.object.ObjectModelAttribute> attributes, String prefix) throws IOException - Throws:
IOException
-
getName
-
getName
protected String getName(org.nuiton.eugene.models.object.ObjectModelAttribute attr, boolean isAssoc) -
getType
protected String getType(org.nuiton.topia.templates.EntityHibernateMappingGenerator.ClassContext clazzContext, org.nuiton.eugene.models.object.ObjectModelAttribute attr) -
getType
protected String getType(org.nuiton.eugene.models.object.ObjectModelPackage aPackage, org.nuiton.eugene.models.object.ObjectModelClass clazz, org.nuiton.eugene.models.object.ObjectModelAttribute attr) -
getType
protected String getType(org.nuiton.eugene.models.object.ObjectModelPackage aPackage, org.nuiton.eugene.models.object.ObjectModelClass clazz, org.nuiton.eugene.models.object.ObjectModelAttribute attr, boolean isAssoc) -
generateHibernateProperty
protected void generateHibernateProperty(Writer output, org.nuiton.topia.templates.EntityHibernateMappingGenerator.ClassContext classContext, org.nuiton.eugene.models.object.ObjectModelAttribute attr, String prefix) throws IOException - Throws:
IOException
-
generateHibernateOneToOne
protected void generateHibernateOneToOne(Writer output, org.nuiton.topia.templates.EntityHibernateMappingGenerator.ClassContext classContext, org.nuiton.eugene.models.object.ObjectModelAttribute attr, String prefix) throws IOException - Throws:
IOException
-
generateHibernateOneToMany
protected void generateHibernateOneToMany(Writer output, org.nuiton.topia.templates.EntityHibernateMappingGenerator.ClassContext classContext, org.nuiton.eugene.models.object.ObjectModelAttribute attr, String prefix) throws IOException - Throws:
IOException
-
generateHibernateMany
protected void generateHibernateMany(Writer output, org.nuiton.topia.templates.EntityHibernateMappingGenerator.ClassContext classContext, org.nuiton.eugene.models.object.ObjectModelAttribute attr, String prefix) throws IOException - Throws:
IOException
-
generateHibernateManyToOne
protected void generateHibernateManyToOne(Writer output, org.nuiton.topia.templates.EntityHibernateMappingGenerator.ClassContext classContext, org.nuiton.eugene.models.object.ObjectModelAttribute attr, String prefix) throws IOException - Throws:
IOException
-
generateHibernateManyToOne
protected void generateHibernateManyToOne(Writer output, org.nuiton.topia.templates.EntityHibernateMappingGenerator.ClassContext classContext, org.nuiton.eugene.models.object.ObjectModelAttribute attr, boolean isUnique, String prefix) throws IOException - Throws:
IOException
-
generateHibernateManyToMany
protected void generateHibernateManyToMany(Writer output, org.nuiton.topia.templates.EntityHibernateMappingGenerator.ClassContext classContext, org.nuiton.eugene.models.object.ObjectModelAttribute attr, String prefix) throws IOException - Throws:
IOException
-
fileFoundInClassPath
protected boolean fileFoundInClassPath(org.nuiton.eugene.models.object.ObjectModelClass input)
-