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 voidstatic voidaddLabelMapping(String from, String to) static voidvoiddefineTableBulkEditWithFile(QInstance qInstance, QTableMetaData table, String processName) voiddefineTableBulkInsert(QInstance qInstance, QTableMetaData table, String processName) static voiddiscoverAndAddPluginsInPackage(String packageName) scan the classpath for classes in the specified package name which implement the QInstanceEnricherPluginInterface - any found get addedvoidenrich()voidenrichField(QFieldMetaData field) voidfieldNameToLabel(QFieldMetaData field) booleanGetter for configAddDynamicDefaultValuesToFieldsNamedCreateDateAndModifyDatebooleanGetter for configRemoveIdFromNameWhenCreatingPossibleValueFieldLabelsstatic ListingHash<Class<?>, QInstanceEnricherPluginInterface<?>> Getter for enricherPluginsstatic StringinferBackendName(String fieldName) Do a default mapping from a camelCase field name to an underscore_style name for a backend.static StringinferNameFromBackendName(String backendName) Do a default mapping from an underscore_style field name to a camelCase name.static StringnameToLabel(String name) static voidstatic voidremoveLabelMapping(String from) voidsetConfigAddDynamicDefaultValuesToFieldsNamedCreateDateAndModifyDate(boolean configAddDynamicDefaultValuesToFieldsNamedCreateDateAndModifyDate) Setter for configAddDynamicDefaultValuesToFieldsNamedCreateDateAndModifyDatevoidsetConfigRemoveIdFromNameWhenCreatingPossibleValueFieldLabels(boolean configRemoveIdFromNameWhenCreatingPossibleValueFieldLabels) Setter for configRemoveIdFromNameWhenCreatingPossibleValueFieldLabelsstatic voidsetInferredFieldBackendNames(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
-
defineTableBulkEditWithFile
public void defineTableBulkEditWithFile(QInstance qInstance, QTableMetaData table, String processName) -
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() -
getEnricherPlugins
Getter for enricherPlugins -
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
-