CE-936 - add setting to useCamelCaseNames

This commit is contained in:
2024-03-12 11:47:21 -05:00
parent 2e1bf399f9
commit f448cff5dd

View File

@ -30,6 +30,7 @@ import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import com.kingsrook.qqq.backend.core.exceptions.QException; import com.kingsrook.qqq.backend.core.exceptions.QException;
import com.kingsrook.qqq.backend.core.instances.QInstanceEnricher;
import com.kingsrook.qqq.backend.core.logging.QLogger; import com.kingsrook.qqq.backend.core.logging.QLogger;
import com.kingsrook.qqq.backend.core.model.metadata.fields.QFieldMetaData; import com.kingsrook.qqq.backend.core.model.metadata.fields.QFieldMetaData;
import com.kingsrook.qqq.backend.core.model.metadata.fields.QFieldType; import com.kingsrook.qqq.backend.core.model.metadata.fields.QFieldType;
@ -44,6 +45,8 @@ public class RDBMSTableMetaDataBuilder
{ {
private static final QLogger LOG = QLogger.getLogger(RDBMSTableMetaDataBuilder.class); private static final QLogger LOG = QLogger.getLogger(RDBMSTableMetaDataBuilder.class);
private boolean useCamelCaseNames = true;
private static Map<String, QFieldType> typeMap = new HashMap<>(); private static Map<String, QFieldType> typeMap = new HashMap<>();
static static
@ -120,9 +123,11 @@ public class RDBMSTableMetaDataBuilder
continue; continue;
} }
QFieldMetaData fieldMetaData = new QFieldMetaData(columnName, type) String qqqFieldName = QInstanceEnricher.inferNameFromBackendName(columnName);
QFieldMetaData fieldMetaData = new QFieldMetaData(qqqFieldName, type)
// todo - what string? .withIsRequired(!isNullable) // todo - what string? .withIsRequired(!isNullable)
.withLabel(columnName); .withBackendName(columnName);
fieldMetaDataList.add(fieldMetaData); fieldMetaDataList.add(fieldMetaData);
@ -143,10 +148,11 @@ public class RDBMSTableMetaDataBuilder
throw (new QException("Could not find primary key in table: " + tableName)); throw (new QException("Could not find primary key in table: " + tableName));
} }
String qqqTableName = QInstanceEnricher.inferNameFromBackendName(tableName);
QTableMetaData tableMetaData = new QTableMetaData() QTableMetaData tableMetaData = new QTableMetaData()
.withBackendName(backendMetaData.getName()) .withBackendName(backendMetaData.getName())
.withName(tableName) .withName(qqqTableName)
.withLabel(tableName)
.withBackendDetails(new RDBMSTableBackendDetails().withTableName(tableName)) .withBackendDetails(new RDBMSTableBackendDetails().withTableName(tableName))
.withFields(fieldMetaDataList) .withFields(fieldMetaDataList)
.withPrimaryKeyField(primaryKey); .withPrimaryKeyField(primaryKey);
@ -159,4 +165,35 @@ public class RDBMSTableMetaDataBuilder
} }
} }
/*******************************************************************************
** Getter for useCamelCaseNames
*******************************************************************************/
public boolean getUseCamelCaseNames()
{
return (this.useCamelCaseNames);
}
/*******************************************************************************
** Setter for useCamelCaseNames
*******************************************************************************/
public void setUseCamelCaseNames(boolean useCamelCaseNames)
{
this.useCamelCaseNames = useCamelCaseNames;
}
/*******************************************************************************
** Fluent setter for useCamelCaseNames
*******************************************************************************/
public RDBMSTableMetaDataBuilder withUseCamelCaseNames(boolean useCamelCaseNames)
{
this.useCamelCaseNames = useCamelCaseNames;
return (this);
}
} }