|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||
java.lang.Objectorg.jooq.util.DefaultGenerator
public class DefaultGenerator
A default implementation for code generation.
Replace this code with your own logic, if you need your database schema represented in a different way.
Note that you can also extend this class to generate POJO's or other stuff entirely independent of jOOQ.
| Field Summary | |
|---|---|
protected org.jooq.util.GeneratorStrategyWrapper |
strategy
|
| Constructor Summary | |
|---|---|
DefaultGenerator()
|
|
| Method Summary | |
|---|---|
protected void |
close()
|
protected void |
empty(File file)
If file is a directory, recursively empty its children. |
void |
generate(Database db)
Do the code generation |
protected void |
generate(SchemaDefinition schema)
|
protected void |
generateArray(SchemaDefinition schema,
ArrayDefinition array)
|
protected void |
generateArrays(SchemaDefinition schema)
|
protected void |
generateDao(TableDefinition table)
|
boolean |
generateDaos()
Whether DAO's should be generated in addition to pojos |
protected void |
generateDaos(SchemaDefinition schema)
|
boolean |
generateDeprecated()
Whether deprecated code should be generated |
protected void |
generateEnum(EnumDefinition e)
|
protected void |
generateEnums(SchemaDefinition schema)
|
protected void |
generateFetchFK(GenerationWriter out,
ColumnDefinition column,
ForeignKeyDefinition foreignKey)
|
protected void |
generateForeignKey(GenerationWriter out,
int INITIALISER_SIZE,
int foreignKeyCounter,
ForeignKeyDefinition foreignKey)
|
protected void |
generateForeignKeySuppressHidingWarning(GenerationWriter out,
ForeignKeyDefinition foreignKey)
|
boolean |
generateGeneratedAnnotation()
Whether the Generated annotation should be generated |
protected void |
generateIdentity(GenerationWriter out,
int INITIALISER_SIZE,
int identityCounter,
IdentityDefinition identity)
|
boolean |
generateInstanceFields()
Whether instance fields should be generated (as opposed to static fields) |
protected void |
generateInterface(TableDefinition table)
|
boolean |
generateInterfaces()
Whether interfaces should be generated to be implemented by records and POJO's |
protected void |
generateInterfaces(SchemaDefinition schema)
|
boolean |
generateJPAAnnotations()
Whether POJO's and records should be annotated with JPA annotations |
protected void |
generateMasterTable(MasterDataTableDefinition table)
|
protected void |
generateMasterTables(SchemaDefinition schema)
|
protected void |
generateNavigateMethods(GenerationWriter out,
ColumnDefinition column)
|
boolean |
generateNavigationMethods()
Whether foreign key navigation methods should be generated |
protected void |
generatePackage(SchemaDefinition schema,
PackageDefinition pkg)
|
protected void |
generatePackages(SchemaDefinition schema)
|
protected void |
generatePojo(TableDefinition table)
|
boolean |
generatePojos()
Whether POJO's should be generated in addition to records |
protected void |
generatePojos(SchemaDefinition schema)
|
protected void |
generateRecord(TableDefinition table)
|
boolean |
generateRecords()
Whether TableRecords should be generated in addition to tables |
protected void |
generateRecords(SchemaDefinition schema)
|
boolean |
generateRelations()
Whether foreign key relations should be resolved |
protected void |
generateRelations(SchemaDefinition schema,
File targetSchemaDir)
|
protected void |
generateRoutine(SchemaDefinition schema,
GenerationWriter outR,
RoutineDefinition routine)
|
protected void |
generateRoutines(SchemaDefinition schema,
File targetSchemaDir)
|
protected void |
generateSchema(SchemaDefinition schema)
|
protected void |
generateSequences(SchemaDefinition schema,
File targetSchemaDir)
|
protected void |
generateTable(SchemaDefinition schema,
TableDefinition table)
|
protected void |
generateTableReference(GenerationWriter out,
TableDefinition table)
|
protected void |
generateTableReferences(SchemaDefinition schema,
File targetSchemaDir)
Generating central static table access |
protected void |
generateTables(SchemaDefinition schema)
|
protected void |
generateUDT(SchemaDefinition schema,
UDTDefinition udt)
|
protected void |
generateUDTRecord(UDTDefinition udt)
|
protected void |
generateUDTRecords(SchemaDefinition schema)
Generating UDT record classes |
protected void |
generateUDTReference(GenerationWriter out,
UDTDefinition udt)
|
protected void |
generateUDTReferences(SchemaDefinition schema,
File targetSchemaDir)
Generating central static udt access |
protected void |
generateUDTRoutines(SchemaDefinition schema)
|
protected void |
generateUDTs(SchemaDefinition schema)
|
protected void |
generateUniqueKey(GenerationWriter out,
int INITIALISER_SIZE,
int uniqueKeyCounter,
UniqueKeyDefinition uniqueKey)
|
protected void |
generateUniqueKeySuppressHidingWarning(GenerationWriter out,
UniqueKeyDefinition uniqueKey)
|
boolean |
generateValidationAnnotations()
Whether POJO's and records should be annotated with JSR-303 validation annotations |
protected String |
getJavaType(DataTypeDefinition type)
|
protected String |
getJavaTypeReference(Database db,
DataTypeDefinition type)
|
protected String |
getSimpleJavaType(DataTypeDefinition type)
|
GeneratorStrategy |
getStrategy()
Get this generator's underlying naming strategy |
String |
getTargetDirectory()
The target directory |
String |
getTargetPackage()
|
protected String |
getType(Database db,
SchemaDefinition schema,
String t,
int p,
int s,
String u,
String defaultType)
|
protected String |
getTypeReference(Database db,
SchemaDefinition schema,
String t,
int p,
int s,
String u)
|
protected boolean |
match(DataTypeDefinition type1,
DataTypeDefinition type2)
|
protected void |
printClassJavadoc(GenerationWriter out,
Definition definition)
|
protected void |
printClassJavadoc(GenerationWriter out,
String comment)
|
protected void |
printClassJavadoc(GenerationWriter out,
String comment,
String deprecation)
|
protected void |
printColumnDefinition(GenerationWriter out,
TypedElementDefinition<?> column,
Definition type,
Class<?> declaredMemberClass)
|
protected void |
printColumnJPAAnnotation(GenerationWriter out,
ColumnDefinition column)
|
protected void |
printColumnValidationAnnotation(GenerationWriter out,
ColumnDefinition column)
|
protected void |
printConvenienceMethodFunction(GenerationWriter out,
RoutineDefinition function,
boolean instance)
|
protected void |
printConvenienceMethodFunctionAsField(GenerationWriter out,
RoutineDefinition function,
boolean parametersAsField)
|
protected void |
printConvenienceMethodProcedure(GenerationWriter out,
RoutineDefinition procedure,
boolean instance)
|
protected void |
printDeprecation(GenerationWriter out,
String deprecation)
|
protected void |
printExtends(GenerationWriter out,
Definition definition,
GeneratorStrategy.Mode mode)
|
protected void |
printExtendsNumberType(GenerationWriter out,
DataTypeDefinition type)
|
protected void |
printFetchMethod(GenerationWriter out,
ColumnDefinition column,
ForeignKeyDefinition foreignKey,
TableDefinition referenced)
|
protected void |
printFieldJavaDoc(GenerationWriter out,
TypedElementDefinition<?> element)
|
protected void |
printFieldJavaDoc(GenerationWriter out,
TypedElementDefinition<?> element,
String deprecation)
|
protected void |
printFKSetter(GenerationWriter out,
ColumnDefinition column,
ForeignKeyDefinition foreignKey,
TableDefinition referencedTable)
|
protected void |
printGetter(GenerationWriter out,
TypedElementDefinition<?> element,
boolean printBody)
|
protected void |
printGetterAndSetter(GenerationWriter out,
TypedElementDefinition<?> element)
|
protected void |
printGetterAndSetter(GenerationWriter out,
TypedElementDefinition<?> element,
boolean printBody)
|
protected void |
printHeader(GenerationWriter out,
Definition definition)
|
protected void |
printHeader(GenerationWriter out,
Definition definition,
GeneratorStrategy.Mode mode)
|
protected void |
printImplements(GenerationWriter out,
Definition definition,
GeneratorStrategy.Mode mode,
String... forcedInterfaces)
|
protected void |
printJavadoc(GenerationWriter out,
String doc)
|
protected void |
printJavadocParagraph(GenerationWriter out,
String comment,
String indent)
This method is used to add line breaks in lengthy javadocs |
protected void |
printNoFurtherInstancesAllowedJavadoc(GenerationWriter out)
|
protected void |
printNumberType(GenerationWriter out,
DataTypeDefinition type)
|
protected void |
printNumberType(GenerationWriter out,
DataTypeDefinition type,
String prefix)
|
protected void |
printOverride(GenerationWriter out)
|
protected void |
printParameter(GenerationWriter out,
ParameterDefinition parameter,
Definition proc)
|
protected void |
printPrivateConstructor(GenerationWriter out,
String javaClassName)
|
protected void |
printRecordTypeMethod(Definition definition,
GenerationWriter out)
|
protected void |
printRoutine(SchemaDefinition schema,
RoutineDefinition routine)
|
protected void |
printSetter(GenerationWriter out,
TypedElementDefinition<?> element,
boolean printBody)
|
protected void |
printSingletonInstance(Definition definition,
GenerationWriter out)
|
protected void |
printSingletonReference(GenerationWriter out,
Definition definition)
|
protected void |
printTableColumn(GenerationWriter out,
ColumnDefinition column,
Definition table)
|
protected void |
printTableJPAAnnotation(GenerationWriter out,
TableDefinition table)
|
protected void |
printThrowsDataAccessException(GenerationWriter out)
|
protected void |
printUDTColumn(GenerationWriter out,
AttributeDefinition attribute,
Definition table)
|
protected void |
registerInSchema(List<? extends Definition> definitions,
Class<?> type,
boolean isGeneric)
|
void |
setGenerateDaos(boolean generateDaos)
Whether DAO's should be generated in addition to pojos |
void |
setGenerateDeprecated(boolean generateDeprecated)
Whether deprecated code should be generated |
void |
setGenerateGeneratedAnnotation(boolean generateGeneratedAnnotation)
Whether the Generated annotation should be generated |
void |
setGenerateInstanceFields(boolean generateInstanceFields)
Whether instance fields should be generated (as opposed to static fields) |
void |
setGenerateInterfaces(boolean generateInterfaces)
Whether interfaces should be generated to be implemented by records and POJO's |
void |
setGenerateJPAAnnotations(boolean generateJPAAnnotations)
Whether POJO's and records should be annotated with JPA annotations |
void |
setGenerateNavigationMethods(boolean generateNavigationMethods)
Whether foreign key navigation methods should be generated |
void |
setGeneratePojos(boolean generatePojos)
Whether POJO's should be generated in addition to records |
void |
setGenerateRecords(boolean generateRecords)
Whether TableRecords should be generated in addition to tables |
void |
setGenerateRelations(boolean generateRelations)
Whether foreign key relations should be resolved |
void |
setGenerateValidationAnnotations(boolean generateValidationAnnotations)
Whether POJO's and records should be annotated with JSR-303 validation annotations |
void |
setStrategy(GeneratorStrategy strategy)
Set a naming strategy to this generator |
void |
setTargetDirectory(String directory)
Initialise the target directory |
void |
setTargetPackage(String packageName)
Initialise the target package name |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected org.jooq.util.GeneratorStrategyWrapper strategy
| Constructor Detail |
|---|
public DefaultGenerator()
| Method Detail |
|---|
public void generate(Database db)
Generator
protected void generate(SchemaDefinition schema)
protected void generateRelations(SchemaDefinition schema,
File targetSchemaDir)
protected void generateIdentity(GenerationWriter out,
int INITIALISER_SIZE,
int identityCounter,
IdentityDefinition identity)
protected void generateUniqueKey(GenerationWriter out,
int INITIALISER_SIZE,
int uniqueKeyCounter,
UniqueKeyDefinition uniqueKey)
protected void generateUniqueKeySuppressHidingWarning(GenerationWriter out,
UniqueKeyDefinition uniqueKey)
protected void generateForeignKey(GenerationWriter out,
int INITIALISER_SIZE,
int foreignKeyCounter,
ForeignKeyDefinition foreignKey)
protected void generateForeignKeySuppressHidingWarning(GenerationWriter out,
ForeignKeyDefinition foreignKey)
protected void generateRecords(SchemaDefinition schema)
protected void generateRecord(TableDefinition table)
protected void generateInterfaces(SchemaDefinition schema)
protected void generateInterface(TableDefinition table)
protected void generateUDTs(SchemaDefinition schema)
protected void generateUDT(SchemaDefinition schema,
UDTDefinition udt)
protected void generateUDTRecords(SchemaDefinition schema)
protected void generateUDTRecord(UDTDefinition udt)
protected void generateUDTRoutines(SchemaDefinition schema)
protected void generateUDTReferences(SchemaDefinition schema,
File targetSchemaDir)
protected void generateUDTReference(GenerationWriter out,
UDTDefinition udt)
protected void generateArrays(SchemaDefinition schema)
protected void generateArray(SchemaDefinition schema,
ArrayDefinition array)
protected void generateEnums(SchemaDefinition schema)
protected void generateEnum(EnumDefinition e)
protected void generateRoutines(SchemaDefinition schema,
File targetSchemaDir)
protected void generateRoutine(SchemaDefinition schema,
GenerationWriter outR,
RoutineDefinition routine)
protected void generatePackages(SchemaDefinition schema)
protected void generatePackage(SchemaDefinition schema,
PackageDefinition pkg)
protected void close()
protected void generateTableReferences(SchemaDefinition schema,
File targetSchemaDir)
protected void generateTableReference(GenerationWriter out,
TableDefinition table)
protected void generateDaos(SchemaDefinition schema)
protected void generateDao(TableDefinition table)
protected void generatePojos(SchemaDefinition schema)
protected void generatePojo(TableDefinition table)
protected void generateTables(SchemaDefinition schema)
protected void generateTable(SchemaDefinition schema,
TableDefinition table)
protected void generateMasterTables(SchemaDefinition schema)
protected void generateMasterTable(MasterDataTableDefinition table)
protected void generateSequences(SchemaDefinition schema,
File targetSchemaDir)
protected void generateSchema(SchemaDefinition schema)
protected void printExtends(GenerationWriter out,
Definition definition,
GeneratorStrategy.Mode mode)
protected void printImplements(GenerationWriter out,
Definition definition,
GeneratorStrategy.Mode mode,
String... forcedInterfaces)
protected void printTableJPAAnnotation(GenerationWriter out,
TableDefinition table)
protected void printColumnJPAAnnotation(GenerationWriter out,
ColumnDefinition column)
protected void printColumnValidationAnnotation(GenerationWriter out,
ColumnDefinition column)
protected void registerInSchema(List<? extends Definition> definitions,
Class<?> type,
boolean isGeneric)
protected void printRoutine(SchemaDefinition schema,
RoutineDefinition routine)
protected void printConvenienceMethodFunctionAsField(GenerationWriter out,
RoutineDefinition function,
boolean parametersAsField)
protected void printConvenienceMethodFunction(GenerationWriter out,
RoutineDefinition function,
boolean instance)
protected void printThrowsDataAccessException(GenerationWriter out)
protected void printPrivateConstructor(GenerationWriter out,
String javaClassName)
protected void printConvenienceMethodProcedure(GenerationWriter out,
RoutineDefinition procedure,
boolean instance)
protected void printRecordTypeMethod(Definition definition,
GenerationWriter out)
protected void printSingletonInstance(Definition definition,
GenerationWriter out)
protected void printSingletonReference(GenerationWriter out,
Definition definition)
protected void printOverride(GenerationWriter out)
protected void empty(File file)
protected void printGetterAndSetter(GenerationWriter out,
TypedElementDefinition<?> element)
protected void printGetterAndSetter(GenerationWriter out,
TypedElementDefinition<?> element,
boolean printBody)
protected void printSetter(GenerationWriter out,
TypedElementDefinition<?> element,
boolean printBody)
protected void printGetter(GenerationWriter out,
TypedElementDefinition<?> element,
boolean printBody)
protected void generateNavigateMethods(GenerationWriter out,
ColumnDefinition column)
protected void generateFetchFK(GenerationWriter out,
ColumnDefinition column,
ForeignKeyDefinition foreignKey)
protected void printFKSetter(GenerationWriter out,
ColumnDefinition column,
ForeignKeyDefinition foreignKey,
TableDefinition referencedTable)
protected void printFetchMethod(GenerationWriter out,
ColumnDefinition column,
ForeignKeyDefinition foreignKey,
TableDefinition referenced)
protected void printUDTColumn(GenerationWriter out,
AttributeDefinition attribute,
Definition table)
protected void printTableColumn(GenerationWriter out,
ColumnDefinition column,
Definition table)
protected void printParameter(GenerationWriter out,
ParameterDefinition parameter,
Definition proc)
protected void printColumnDefinition(GenerationWriter out,
TypedElementDefinition<?> column,
Definition type,
Class<?> declaredMemberClass)
protected void printFieldJavaDoc(GenerationWriter out,
TypedElementDefinition<?> element)
protected void printFieldJavaDoc(GenerationWriter out,
TypedElementDefinition<?> element,
String deprecation)
protected void printDeprecation(GenerationWriter out,
String deprecation)
protected void printNoFurtherInstancesAllowedJavadoc(GenerationWriter out)
protected void printJavadoc(GenerationWriter out,
String doc)
protected void printClassJavadoc(GenerationWriter out,
Definition definition)
protected void printClassJavadoc(GenerationWriter out,
String comment)
protected void printClassJavadoc(GenerationWriter out,
String comment,
String deprecation)
protected void printJavadocParagraph(GenerationWriter out,
String comment,
String indent)
protected void printHeader(GenerationWriter out,
Definition definition)
protected void printHeader(GenerationWriter out,
Definition definition,
GeneratorStrategy.Mode mode)
protected void printExtendsNumberType(GenerationWriter out,
DataTypeDefinition type)
protected void printNumberType(GenerationWriter out,
DataTypeDefinition type)
protected void printNumberType(GenerationWriter out,
DataTypeDefinition type,
String prefix)
protected String getSimpleJavaType(DataTypeDefinition type)
protected String getJavaTypeReference(Database db,
DataTypeDefinition type)
protected String getJavaType(DataTypeDefinition type)
protected String getType(Database db,
SchemaDefinition schema,
String t,
int p,
int s,
String u,
String defaultType)
protected String getTypeReference(Database db,
SchemaDefinition schema,
String t,
int p,
int s,
String u)
protected boolean match(DataTypeDefinition type1,
DataTypeDefinition type2)
public void setStrategy(GeneratorStrategy strategy)
Generator
setStrategy in interface Generatorpublic GeneratorStrategy getStrategy()
Generator
getStrategy in interface Generatorpublic boolean generateDeprecated()
Generator
generateDeprecated in interface Generatorpublic void setGenerateDeprecated(boolean generateDeprecated)
Generator
setGenerateDeprecated in interface Generatorpublic boolean generateRelations()
Generator
generateRelations in interface Generatorpublic void setGenerateRelations(boolean generateRelations)
Generator
setGenerateRelations in interface Generatorpublic boolean generateInstanceFields()
Generator
generateInstanceFields in interface Generatorpublic boolean generateNavigationMethods()
Generator
generateNavigationMethods in interface Generatorpublic void setGenerateNavigationMethods(boolean generateNavigationMethods)
Generator
setGenerateNavigationMethods in interface Generatorpublic void setGenerateInstanceFields(boolean generateInstanceFields)
Generator
setGenerateInstanceFields in interface Generatorpublic boolean generateGeneratedAnnotation()
GeneratorGenerated annotation should be generated
generateGeneratedAnnotation in interface Generatorpublic void setGenerateGeneratedAnnotation(boolean generateGeneratedAnnotation)
GeneratorGenerated annotation should be generated
setGenerateGeneratedAnnotation in interface Generatorpublic boolean generateRecords()
Generator
generateRecords in interface Generatorpublic void setGenerateRecords(boolean generateRecords)
Generator
setGenerateRecords in interface Generatorpublic boolean generatePojos()
Generator
generatePojos in interface Generatorpublic void setGeneratePojos(boolean generatePojos)
Generator
setGeneratePojos in interface Generatorpublic boolean generateInterfaces()
Generator
generateInterfaces in interface Generatorpublic void setGenerateInterfaces(boolean generateInterfaces)
Generator
setGenerateInterfaces in interface Generatorpublic boolean generateDaos()
Generator
generateDaos in interface Generatorpublic void setGenerateDaos(boolean generateDaos)
Generator
setGenerateDaos in interface Generatorpublic boolean generateJPAAnnotations()
Generator
generateJPAAnnotations in interface Generatorpublic void setGenerateJPAAnnotations(boolean generateJPAAnnotations)
Generator
setGenerateJPAAnnotations in interface Generatorpublic boolean generateValidationAnnotations()
Generator
generateValidationAnnotations in interface Generatorpublic void setGenerateValidationAnnotations(boolean generateValidationAnnotations)
Generator
setGenerateValidationAnnotations in interface Generatorpublic void setTargetDirectory(String directory)
Generator
setTargetDirectory in interface Generatorpublic String getTargetDirectory()
Generator
getTargetDirectory in interface Generatorpublic void setTargetPackage(String packageName)
Generator
setTargetPackage in interface Generatorpublic String getTargetPackage()
getTargetPackage in interface Generator
|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||