Class QInstanceEnricher
java.lang.Object
com.kingsrook.qqq.backend.core.instances.QInstanceEnricher
As part of helping a QInstance be created and/or validated, apply some default
transformations to it, such as populating missing labels based on names.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic void
static void
addLabelMapping
(String from, String to) static void
void
defineTableBulkInsert
(QInstance qInstance, QTableMetaData table, String processName) static void
discoverAndAddPluginsInPackage
(String packageName) scan the classpath for classes in the specified package name which implement the QInstanceEnricherPluginInterface - any found get addedvoid
enrich()
void
enrichField
(QFieldMetaData field) void
fieldNameToLabel
(QFieldMetaData field) boolean
Getter for configAddDynamicDefaultValuesToFieldsNamedCreateDateAndModifyDateboolean
Getter for configRemoveIdFromNameWhenCreatingPossibleValueFieldLabelsstatic String
inferBackendName
(String fieldName) Do a default mapping from a camelCase field name to an underscore_style name for a backend.static String
inferNameFromBackendName
(String backendName) Do a default mapping from an underscore_style field name to a camelCase name.static String
nameToLabel
(String name) static void
static void
removeLabelMapping
(String from) void
setConfigAddDynamicDefaultValuesToFieldsNamedCreateDateAndModifyDate
(boolean configAddDynamicDefaultValuesToFieldsNamedCreateDateAndModifyDate) Setter for configAddDynamicDefaultValuesToFieldsNamedCreateDateAndModifyDatevoid
setConfigRemoveIdFromNameWhenCreatingPossibleValueFieldLabels
(boolean configRemoveIdFromNameWhenCreatingPossibleValueFieldLabels) Setter for configRemoveIdFromNameWhenCreatingPossibleValueFieldLabelsstatic void
setInferredFieldBackendNames
(QTableMetaData tableMetaData) for all fields in a table, set their backendName, using the default "inference" logic seeinferBackendName(String)
withConfigAddDynamicDefaultValuesToFieldsNamedCreateDateAndModifyDate
(boolean configAddDynamicDefaultValuesToFieldsNamedCreateDateAndModifyDate) Fluent setter for configAddDynamicDefaultValuesToFieldsNamedCreateDateAndModifyDatewithConfigRemoveIdFromNameWhenCreatingPossibleValueFieldLabels
(boolean configRemoveIdFromNameWhenCreatingPossibleValueFieldLabels) Fluent setter for configRemoveIdFromNameWhenCreatingPossibleValueFieldLabels
-
Constructor Details
-
QInstanceEnricher
-
-
Method Details
-
enrich
public void enrich() -
enrichField
-
fieldNameToLabel
-
nameToLabel
-
defineTableBulkInsert
-
setInferredFieldBackendNames
for all fields in a table, set their backendName, using the default "inference" logic seeinferBackendName(String)
-
inferBackendName
Do a default mapping from a camelCase field name to an underscore_style name for a backend. Examples:- wordAnotherWordMoreWords -> word_another_word_more_words
- lUlUlUl -> l_ul_ul_ul
- StartsUpper -> starts_upper
- TLAFirst -> tla_first
- wordThenTLAInMiddle -> word_then_tla_in_middle
- endWithTLA -> end_with_tla
- TLAAndAnotherTLA -> tla_and_another_tla
-
inferNameFromBackendName
Do a default mapping from an underscore_style field name to a camelCase name. Examples:- word_another_word_more_words -> wordAnotherWordMoreWords
- l_ul_ul_ul -> lUlUlUl
- tla_first -> tlaFirst
- word_then_tla_in_middle -> wordThenTlaInMiddle
- end_with_tla -> endWithTla
- tla_and_another_tla -> tlaAndAnotherTla
- ALL_CAPS -> allCaps
-
addEnricherPlugin
-
removeAllEnricherPlugins
public static void removeAllEnricherPlugins() -
discoverAndAddPluginsInPackage
scan the classpath for classes in the specified package name which implement the QInstanceEnricherPluginInterface - any found get added- Throws:
QException
-
getJoinGraph
-
addLabelMapping
-
removeLabelMapping
-
clearLabelMappings
public static void clearLabelMappings() -
getConfigRemoveIdFromNameWhenCreatingPossibleValueFieldLabels
public boolean getConfigRemoveIdFromNameWhenCreatingPossibleValueFieldLabels()Getter for configRemoveIdFromNameWhenCreatingPossibleValueFieldLabels -
setConfigRemoveIdFromNameWhenCreatingPossibleValueFieldLabels
public void setConfigRemoveIdFromNameWhenCreatingPossibleValueFieldLabels(boolean configRemoveIdFromNameWhenCreatingPossibleValueFieldLabels) Setter for configRemoveIdFromNameWhenCreatingPossibleValueFieldLabels -
withConfigRemoveIdFromNameWhenCreatingPossibleValueFieldLabels
public QInstanceEnricher withConfigRemoveIdFromNameWhenCreatingPossibleValueFieldLabels(boolean configRemoveIdFromNameWhenCreatingPossibleValueFieldLabels) Fluent setter for configRemoveIdFromNameWhenCreatingPossibleValueFieldLabels -
getConfigAddDynamicDefaultValuesToFieldsNamedCreateDateAndModifyDate
public boolean getConfigAddDynamicDefaultValuesToFieldsNamedCreateDateAndModifyDate()Getter for configAddDynamicDefaultValuesToFieldsNamedCreateDateAndModifyDate -
setConfigAddDynamicDefaultValuesToFieldsNamedCreateDateAndModifyDate
public void setConfigAddDynamicDefaultValuesToFieldsNamedCreateDateAndModifyDate(boolean configAddDynamicDefaultValuesToFieldsNamedCreateDateAndModifyDate) Setter for configAddDynamicDefaultValuesToFieldsNamedCreateDateAndModifyDate -
withConfigAddDynamicDefaultValuesToFieldsNamedCreateDateAndModifyDate
public QInstanceEnricher withConfigAddDynamicDefaultValuesToFieldsNamedCreateDateAndModifyDate(boolean configAddDynamicDefaultValuesToFieldsNamedCreateDateAndModifyDate) Fluent setter for configAddDynamicDefaultValuesToFieldsNamedCreateDateAndModifyDate
-