1 #ifndef INCLUDE_ORA_MAPPINGRULES_H
2 #define INCLUDE_ORA_MAPPINGRULES_H
38 static std::string
classId(
const std::string&
className,
const std::string& classVersion );
47 static std::string
scopedVariableName(
const std::string& variableName,
const std::string& scope );
56 static std::string
newNameForSchemaObject(
const std::string& initialName,
unsigned int index,
size_t maxLength,
char indexTrailer=0 );
64 static std::string
columnNameForVariable(
const std::string& variableName,
const std::string& scope,
bool forData=
true );
65 static std::string
columnNameForOID(
const std::string& variableName,
const std::string& scope,
unsigned int index );
67 static std::string
columnNameForRefId(
const std::string& variableName,
const std::string& scope );
73 static std::string
formatName(
const std::string& variableName,
size_t maxLength );
80 std::locale
const&
loc;
82 static std::string
nameForSchema(
const std::string& variableName );
84 static std::string
shortScopedName(
const std::string& scopedClassName,
size_t maxLength );
85 static std::string
nameFromTemplate(
const std::string templateClassName,
size_t maxLength );
static std::string columnNameForRefId(const std::string &variableName, const std::string &scope)
static std::string variableNameForArrayIndex(const std::string &arrayVariable, unsigned int index)
static std::string scopedVariableName(const std::string &variableName, const std::string &scope)
variable name manipulation
static std::string newMappingVersionForContainer(const std::string &containerName, int iteration)
mapping versions
static std::string variableNameForContainerKey()
static std::string variableNameForArrayColumn(unsigned int arrayIndex)
static std::string variableNameForContainerValue()
static std::string newNameForDepSchemaObject(const std::string &initialName, unsigned int index, size_t maxLength)
static const size_t MaxColumnsForInlineCArray
static std::string baseIdForClass(const std::string &className)
static std::string scopedVariableForSchemaObjects(const std::string &variableName, const std::string &scope)
static std::string shortScopedName(const std::string &scopedClassName, size_t maxLength)
static std::string columnNameForRefColumn()
static std::string columnNameForVariable(const std::string &variableName, const std::string &scope, bool forData=true)
char operator()(char c) const
static std::string mappingPropertyNameInDictionary()
class related parameters
ToUpper(const std::locale &l)
static std::string columnNameForPosition()
static std::string shortNameByUpperCase(const std::string &className, size_t maxLength)
static std::string sequenceNameForMapping()
static std::string defaultClassVersion(const std::string &className)
static std::string newMappingVersion(const std::string &itemName, int iteration, char versionTrailer)
static std::string columnNameForOID(const std::string &variableName, const std::string &scope, unsigned int index)
static std::string newNameForArraySchemaObject(const std::string &initialName, unsigned int index, size_t maxLength)
static bool isMappedToBlob(const std::string &mappingProperty)
static std::string columnNameForId()
static std::string classVersionFromId(const std::string &classId)
static std::pair< bool, std::string > classNameFromBaseId(const std::string &classId)
static std::string columnNameForRefMetadata(const std::string &variableName, const std::string &scope)
static const size_t MaxColumnsPerTable
static std::string nameFromTemplate(const std::string templateClassName, size_t maxLength)
static std::string baseClassVersion()
static std::string columnNameForNamedReference(const std::string &variableName, const std::string &scope)
static const size_t ClassNameLengthForSchema
size parameters for table creation
static std::string nameForSchema(const std::string &variableName)
static std::string classId(const std::string &className, const std::string &classVersion)
static std::string sequenceNameForContainer(const std::string &containerName)
static std::string tableNameForItem(const std::string &itemName)
schema object naming
static const size_t MaxColumnNameLength
static std::string sequenceNameForContainerId()
sequence names
static std::string newMappingVersionForDependentClass(const std::string &containerName, const std::string &className, int iteration)
static std::string sequenceNameForDependentClass(const std::string &containerName, const std::string &className)
static std::string classVersionPropertyNameInDictionary()
static const size_t MaxTableNameLength
static std::string newNameForSchemaObject(const std::string &initialName, unsigned int index, size_t maxLength, char indexTrailer=0)
functions for new schema object name generation
static std::string formatName(const std::string &variableName, size_t maxLength)
formatting for variable names to schema object names
static std::string fkNameForIdentity(const std::string &tableName, int index=0)
std::string className(const T &t)