-
- All Known Implementing Classes:
AbstractGeneratorStrategy
,DefaultGeneratorStrategy
,JPrefixGeneratorStrategy
,JVMArgsGeneratorStrategy
,KeepNamesGeneratorStrategy
,MatcherStrategy
public interface GeneratorStrategy
A strategy for naming various artefacts generated fromDefinition
's- Author:
- Lukas Eder
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
GeneratorStrategy.Mode
The "mode" by which an artefact should be named
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description File
getFile(String fileName)
File
getFile(Definition definition)
File
getFile(Definition definition, GeneratorStrategy.Mode mode)
String
getFileHeader(Definition definition)
String
getFileHeader(Definition definition, GeneratorStrategy.Mode mode)
String
getFileName(Definition definition)
String
getFileName(Definition definition, GeneratorStrategy.Mode mode)
File
getFileRoot()
String
getFullJavaClassName(Definition definition)
String
getFullJavaClassName(Definition definition, GeneratorStrategy.Mode mode)
This is the same as callinggetFullJavaClassName(definition, Mode.DEFAULT)
String
getFullJavaIdentifier(Definition definition)
This is applied to definitions that can result in reference static and instance members.List<String>
getFullJavaIdentifiers(Collection<? extends Definition> definitions)
List<String>
getFullJavaIdentifiers(Definition... definitions)
File
getGlobalReferencesFile(Definition container, Class<? extends Definition> objectType)
String
getGlobalReferencesFileHeader(Definition container, Class<? extends Definition> objectType)
String
getGlobalReferencesFileName(Definition container, Class<? extends Definition> objectType)
String
getGlobalReferencesFullJavaClassName(Definition container, Class<? extends Definition> objectType)
String
getGlobalReferencesJavaClassExtends(Definition container, Class<? extends Definition> objectType)
List<String>
getGlobalReferencesJavaClassImplements(Definition container, Class<? extends Definition> objectType)
String
getGlobalReferencesJavaClassName(Definition container, Class<? extends Definition> objectType)
String
getGlobalReferencesJavaPackageName(Definition container, Class<? extends Definition> objectType)
boolean
getInstanceFields()
Whether fields are instance fields (as opposed to static fields)boolean
getJavaBeansGettersAndSetters()
Whether getters and setters should be generated JavaBeans style (or jOOQ style).String
getJavaClassExtends(Definition definition)
This is the same as callinggetJavaClassExtends(definition, Mode.DEFAULT)
String
getJavaClassExtends(Definition definition, GeneratorStrategy.Mode mode)
List<String>
getJavaClassImplements(Definition definition)
This is the same as callinggetJavaClassImplements(definition, Mode.DEFAULT)
List<String>
getJavaClassImplements(Definition definition, GeneratorStrategy.Mode mode)
String
getJavaClassName(Definition definition)
This is the same as callinggetJavaClassName(definition, Mode.DEFAULT)
String
getJavaClassName(Definition definition, GeneratorStrategy.Mode mode)
String
getJavaEnumLiteral(EnumDefinition definition, String literal)
This is applied to enum literals of a givenEnumDefinition
.List<String>
getJavaEnumLiterals(EnumDefinition definition, String... literals)
List<String>
getJavaEnumLiterals(EnumDefinition definition, Collection<? extends String> literals)
String
getJavaGetterName(Definition definition)
This is applied to definitions that can result in getters of a container.String
getJavaGetterName(Definition definition, GeneratorStrategy.Mode mode)
This is applied to definitions that can result in getters of a container.String
getJavaIdentifier(Definition definition)
This is applied to definitions that can result in reference static and instance members.List<String>
getJavaIdentifiers(Collection<? extends Definition> definitions)
List<String>
getJavaIdentifiers(Definition... definitions)
String
getJavaMemberName(Definition definition)
The "java member name" is applied where a definition is used as a member (for POJOs) or as a method argument (for setters).String
getJavaMemberName(Definition definition, GeneratorStrategy.Mode mode)
The "java member name" is applied where a definition is used as a member (for POJOs) or as a method argument (for setters).String
getJavaMethodName(Definition definition)
This is applied to definitions that can result in methods.String
getJavaMethodName(Definition definition, GeneratorStrategy.Mode mode)
This is applied to definitions that can result in methods.String
getJavaPackageName(Definition definition)
This is the same as callinggetJavaPackageName(definition, Mode.DEFAULT)
String
getJavaPackageName(Definition definition, GeneratorStrategy.Mode mode)
String
getJavaSetterName(Definition definition)
This is applied to definitions that can result in setters of a container.String
getJavaSetterName(Definition definition, GeneratorStrategy.Mode mode)
This is applied to definitions that can result in setters of a container.String
getOverloadSuffix(Definition definition, GeneratorStrategy.Mode mode, String overloadIndex)
String
getTargetDirectory()
The target directoryLanguage
getTargetLanguage()
Locale
getTargetLocale()
String
getTargetPackage()
void
setInstanceFields(boolean instanceFields)
Whether fields are instance fields (as opposed to static fields)void
setJavaBeansGettersAndSetters(boolean javaBeansGettersAndSetters)
Whether getters and setters should be generated JavaBeans style (or jOOQ style).void
setTargetDirectory(String directory)
Initialise the target directoryvoid
setTargetLanguage(Language targetLanguage)
Initialise the target languagevoid
setTargetLocale(Locale targetLocale)
Initialise the target localevoid
setTargetPackage(String packageName)
Initialise the target package name
-
-
-
Method Detail
-
getTargetDirectory
String getTargetDirectory()
The target directory
-
setTargetDirectory
void setTargetDirectory(String directory)
Initialise the target directory
-
getTargetPackage
String getTargetPackage()
- Returns:
- Get the target package for the current configuration
-
setTargetPackage
void setTargetPackage(String packageName)
Initialise the target package name
-
getTargetLocale
Locale getTargetLocale()
- Returns:
- Get the target locale for the current configuration
-
setTargetLocale
void setTargetLocale(Locale targetLocale)
Initialise the target locale
-
getTargetLanguage
Language getTargetLanguage()
- Returns:
- Get the target language for the current configuration
-
setTargetLanguage
void setTargetLanguage(Language targetLanguage)
Initialise the target language
-
setInstanceFields
void setInstanceFields(boolean instanceFields)
Whether fields are instance fields (as opposed to static fields)
-
getInstanceFields
boolean getInstanceFields()
Whether fields are instance fields (as opposed to static fields)
-
setJavaBeansGettersAndSetters
void setJavaBeansGettersAndSetters(boolean javaBeansGettersAndSetters)
Whether getters and setters should be generated JavaBeans style (or jOOQ style).
-
getJavaBeansGettersAndSetters
boolean getJavaBeansGettersAndSetters()
Whether getters and setters should be generated JavaBeans style (or jOOQ style).
-
getJavaEnumLiteral
String getJavaEnumLiteral(EnumDefinition definition, String literal)
This is applied to enum literals of a givenEnumDefinition
.- Returns:
- The Java identifier representing this enum literal, e.g. [OK]
-
getJavaEnumLiterals
List<String> getJavaEnumLiterals(EnumDefinition definition, Collection<? extends String> literals)
-
getJavaEnumLiterals
List<String> getJavaEnumLiterals(EnumDefinition definition, String... literals)
-
getJavaIdentifier
String getJavaIdentifier(Definition definition)
This is applied to definitions that can result in reference static and instance members. For instance, the reference instance of aTableDefinition
is a java identifier- Returns:
- The Java identifier representing this object, e.g. [my_table]
-
getJavaIdentifiers
List<String> getJavaIdentifiers(Collection<? extends Definition> definitions)
- See Also:
getJavaIdentifier(Definition)
-
getJavaIdentifiers
List<String> getJavaIdentifiers(Definition... definitions)
- See Also:
getJavaIdentifier(Definition)
-
getFullJavaIdentifier
String getFullJavaIdentifier(Definition definition)
This is applied to definitions that can result in reference static and instance members. For instance, the reference instance of aTableDefinition
is a java identifier- Returns:
- The Java identifier representing this object, e.g. [my_table]
-
getFullJavaIdentifiers
List<String> getFullJavaIdentifiers(Collection<? extends Definition> definitions)
- See Also:
getFullJavaIdentifier(Definition)
-
getFullJavaIdentifiers
List<String> getFullJavaIdentifiers(Definition... definitions)
- See Also:
getFullJavaIdentifier(Definition)
-
getJavaSetterName
String getJavaSetterName(Definition definition)
This is applied to definitions that can result in setters of a container. For example, the definition could be aColumnDefinition
, the container aTableDefinition
. Then this would apply to records and POJOs. Also, the definition could be anAttributeDefinition
and the container aUDTDefinition
This is the same as calling
getJavaSetterName(definition, Mode.DEFAULT)
- Returns:
- The Java setter method name representing this object, e.g. [setMyTable]
-
getJavaSetterName
String getJavaSetterName(Definition definition, GeneratorStrategy.Mode mode)
This is applied to definitions that can result in setters of a container. For example, the definition could be aColumnDefinition
, the container aTableDefinition
. Then this would apply to records and POJOs. Also, the definition could be anAttributeDefinition
and the container aUDTDefinition
- Returns:
- The Java setter method name representing this object, e.g. [setMyTable]
-
getJavaGetterName
String getJavaGetterName(Definition definition)
This is applied to definitions that can result in getters of a container. For example, the definition could be aColumnDefinition
, the container aTableDefinition
. Then this would apply to records and POJOs. Also, the definition could be anAttributeDefinition
and the container aUDTDefinition
This is the same as calling
getJavaGetterName(definition, Mode.DEFAULT)
- Returns:
- The Java getter method name representing this object, e.g. [getMyTable]
-
getJavaGetterName
String getJavaGetterName(Definition definition, GeneratorStrategy.Mode mode)
This is applied to definitions that can result in getters of a container. For example, the definition could be aColumnDefinition
, the container aTableDefinition
. Then this would apply to records and POJOs. Also, the definition could be anAttributeDefinition
and the container aUDTDefinition
- Returns:
- The Java getter method name representing this object, e.g. [getMyTable]
-
getJavaMethodName
String getJavaMethodName(Definition definition)
This is applied to definitions that can result in methods. For example, the definition could be aRoutineDefinition
This is the same as calling
getJavaMethodName(definition, Mode.DEFAULT)
- Returns:
- The Java method name representing this object, e.g. [myFunction]
-
getJavaMethodName
String getJavaMethodName(Definition definition, GeneratorStrategy.Mode mode)
This is applied to definitions that can result in methods. For example, the definition could be aRoutineDefinition
- Returns:
- The Java method name representing this object, e.g. [myFunction]
-
getGlobalReferencesJavaClassExtends
String getGlobalReferencesJavaClassExtends(Definition container, Class<? extends Definition> objectType)
- Returns:
- The super class name of the global references class for a given
definition type, e.g. [com.example.AbstractPojo]. If this returns
null
or an empty string, then no super class is extended.
-
getJavaClassExtends
String getJavaClassExtends(Definition definition)
This is the same as callinggetJavaClassExtends(definition, Mode.DEFAULT)
- Returns:
- The super class name of the Java class representing this object,
e.g. [com.example.AbstractPojo]. If this returns
null
or an empty string, then no super class is extended.
-
getJavaClassExtends
String getJavaClassExtends(Definition definition, GeneratorStrategy.Mode mode)
- Returns:
- The super class name of the Java class representing this object,
e.g. [com.example.AbstractPojo]. If this returns
null
or an empty string, then no super class is extended.
-
getGlobalReferencesJavaClassImplements
List<String> getGlobalReferencesJavaClassImplements(Definition container, Class<? extends Definition> objectType)
- Returns:
- The implemented interface names of the global references class
for a given definition type, e.g. [com.example.Pojo]. If this
returns
null
or an empty list, then no interfaces are implemented.
-
getJavaClassImplements
List<String> getJavaClassImplements(Definition definition)
This is the same as callinggetJavaClassImplements(definition, Mode.DEFAULT)
- Returns:
- The implemented interface names of the Java class name
representing this object, e.g. [com.example.Pojo] If this returns
null
or an empty list, then no interfaces are implemented.
-
getJavaClassImplements
List<String> getJavaClassImplements(Definition definition, GeneratorStrategy.Mode mode)
- Returns:
- The implemented interface names of the Java class name
representing this object, e.g. [com.example.Pojo]. If this
returns
null
or an empty list, then no interfaces are implemented.
-
getGlobalReferencesJavaClassName
String getGlobalReferencesJavaClassName(Definition container, Class<? extends Definition> objectType)
- Returns:
- The Java class name of the global references class for a given definition type, e.g. [MyTableSuffix]
-
getJavaClassName
String getJavaClassName(Definition definition)
This is the same as callinggetJavaClassName(definition, Mode.DEFAULT)
- Returns:
- The Java class name representing this object, e.g. [MyTable]
-
getJavaClassName
String getJavaClassName(Definition definition, GeneratorStrategy.Mode mode)
- Returns:
- The Java class name representing this object, e.g. [MyTableSuffix]
-
getGlobalReferencesJavaPackageName
String getGlobalReferencesJavaPackageName(Definition container, Class<? extends Definition> objectType)
- Returns:
- The Java package name of the global references class for a given definition type, e.g. [org.jooq.generated]
-
getJavaPackageName
String getJavaPackageName(Definition definition)
This is the same as callinggetJavaPackageName(definition, Mode.DEFAULT)
- Returns:
- The Java package name of this object, e.g. [org.jooq.generated]
-
getJavaPackageName
String getJavaPackageName(Definition definition, GeneratorStrategy.Mode mode)
- Returns:
- The Java package name of this object, e.g. [org.jooq.generated]
-
getJavaMemberName
String getJavaMemberName(Definition definition)
The "java member name" is applied where a definition is used as a member (for POJOs) or as a method argument (for setters). Example definitions are This is the same as callinggetJavaMemberName(definition, Mode.DEFAULT)
- Returns:
- The Java class name representing this object, starting with a lower case character, e.g. [myTable]
-
getJavaMemberName
String getJavaMemberName(Definition definition, GeneratorStrategy.Mode mode)
The "java member name" is applied where a definition is used as a member (for POJOs) or as a method argument (for setters). Example definitions are- Returns:
- The Java class name representing this object, starting with a lower case character, e.g. [myTableSuffix]
-
getGlobalReferencesFullJavaClassName
String getGlobalReferencesFullJavaClassName(Definition container, Class<? extends Definition> objectType)
- Returns:
- The full Java class name of the global references class for a given definition type, e.g. [org.jooq.generated.MyTable]
-
getFullJavaClassName
String getFullJavaClassName(Definition definition)
- Returns:
- The full Java class name representing this object, e.g. [org.jooq.generated.MyTable]
-
getFullJavaClassName
String getFullJavaClassName(Definition definition, GeneratorStrategy.Mode mode)
This is the same as callinggetFullJavaClassName(definition, Mode.DEFAULT)
- Returns:
- The full Java class name representing this object, e.g. [org.jooq.generated.MyTable][suffix]
-
getGlobalReferencesFileName
String getGlobalReferencesFileName(Definition container, Class<? extends Definition> objectType)
- Returns:
- The Java class file name of the global references class for a given definition type, e.g. [MyTable.java]
-
getFileName
String getFileName(Definition definition)
- Returns:
- The Java class file name representing this object, e.g. [MyTable.java]
-
getFileName
String getFileName(Definition definition, GeneratorStrategy.Mode mode)
- Returns:
- The Java class file name representing this object, e.g. [MyTableSuffix.java]
-
getFileRoot
File getFileRoot()
- Returns:
- The directory containing all Java objects, e.g. [C:\org\jooq\generated]
-
getGlobalReferencesFile
File getGlobalReferencesFile(Definition container, Class<? extends Definition> objectType)
- Returns:
- The Java class file name of the global references class for a given definition type, e.g. [C:\org\jooq\generated\MyTable.java]
-
getFile
File getFile(Definition definition)
- Returns:
- The Java class file name representing this object, e.g. [C:\org\jooq\generated\MyTable.java]
-
getFile
File getFile(Definition definition, GeneratorStrategy.Mode mode)
- Returns:
- The Java class file name representing this object, e.g. [C:\org\jooq\generated\MyTableSuffix.java]
-
getFile
File getFile(String fileName)
- Returns:
- The Java class file name representing this object, e.g. [C:\org\jooq\generated\fileName]
-
getGlobalReferencesFileHeader
String getGlobalReferencesFileHeader(Definition container, Class<? extends Definition> objectType)
- Returns:
- The Java class file header of the global references class for a
given definition type, e.g.
This file is generated by jOOQ.
-
getFileHeader
String getFileHeader(Definition definition)
- Returns:
- The Java class file header, e.g.
This file is generated by jOOQ.
-
getFileHeader
String getFileHeader(Definition definition, GeneratorStrategy.Mode mode)
- Returns:
- The Java class file header, e.g.
This file is generated by jOOQ.
-
getOverloadSuffix
String getOverloadSuffix(Definition definition, GeneratorStrategy.Mode mode, String overloadIndex)
- Returns:
- The overload suffix to be applied when generating overloaded
routine artefacts, e.g.
"_OverloadIndex_" + overloadIndex
-
-