001package org.andromda.metafacades.uml; 002 003/** 004 * Stores the metafacade namespace properties used throughout the UML metafacades. 005 * 006 * @author Chad Brandon 007 * @author Bob Fields 008 */ 009public class UMLMetafacadeProperties 010{ 011 /** 012 * Stores the property containing the URI to the language mappings file. 013 */ 014 public static final String LANGUAGE_MAPPINGS_URI = "languageMappingsUri"; 015 016 /** 017 * This property controls whether or not to produce templating parameters 018 * where possible. 019 */ 020 public static final String ENABLE_TEMPLATING = "enableTemplating"; 021 022 /** 023 * Stores the property defining the default schema name for entity tables. 024 */ 025 public static final String SCHEMA_NAME = "schemaName"; 026 027 /** 028 * Stores the property defining the prefix for entity table names. 029 */ 030 public static final String TABLE_NAME_PREFIX = "tableNamePrefix"; 031 032 /** 033 * Stores the property defining the prefix for entity table column names. 034 */ 035 public static final String COLUMN_NAME_PREFIX = "columnNamePrefix"; 036 037 /** 038 * Stores the property defining the suffix for entity table column names. 039 */ 040 public static final String COLUMN_NAME_SUFFIX = "columnNameSuffix"; 041 042 /** 043 * Stores the property containing the URI to the SQL mappings file. 044 */ 045 public static final String SQL_MAPPINGS_URI = "sqlMappingsUri"; 046 047 /** 048 * Stores the property containing the URI to the JDBC mappings file. 049 */ 050 public static final String JDBC_MAPPINGS_URI = "jdbcMappingsUri"; 051 052 /** 053 * Stores the property containing the URI to the Wrapper mappings file. 054 */ 055 public static final String WRAPPER_MAPPINGS_URI = "wrapperMappingsUri"; 056 057 /** 058 * Allows the pluralization of association end names (when the multiplicity is greater than one) to be turned 059 * on/off. 060 */ 061 public static final String PLURALIZE_ASSOCIATION_END_NAMES = "pluralizeAssociationEndNames"; 062 063 /** 064 * Allows the pluralization of operation parameter names (when the multiplicity is greater than one) to be turned 065 * on/off. 066 */ 067 public static final String PLURALIZE_ATTRIBUTE_NAMES = "pluralizeAttributeNames"; 068 069 /** 070 * Allows the pluralization of attribute names (when the multiplicity is greater than one) to be turned 071 * on/off. 072 */ 073 public static final String PLURALIZE_PARAMETER_NAMES = "pluralizeParameterNames"; 074 075 /** 076 * The default suffix to use for foreign keys. 077 */ 078 public static final String FOREIGN_KEY_SUFFIX = "foreignKeySuffix"; 079 080 /** 081 * The default suffix to use for foreign keys. 082 */ 083 public static final String CONSTRAINT_SUFFIX = "constraintSuffix"; 084 085 /** 086 * The mask to apply to role names 087 * @see NameMasker#mask(String, String) 088 */ 089 public static final String ROLE_NAME_MASK = "roleNameMask"; 090 091 /** 092 * The mask to apply to any model element names 093 * @see NameMasker#mask(String, String) 094 */ 095 public static final String MODEL_ELEMENT_NAME_MASK = "modelElementNameMask"; 096 097 /** 098 * The mask to apply to any classifier names 099 * @see NameMasker#mask(String, String) 100 */ 101 public static final String CLASSIFIER_NAME_MASK = "classifierNameMask"; 102 103 /** 104 * The mask to apply to any of the classifier property names 105 * @see NameMasker#mask(String, String) 106 */ 107 public static final String CLASSIFIER_PROPERTY_NAME_MASK = "classifierPropertyNameMask"; 108 109 /** 110 * The mask to apply to any operation names 111 * @see NameMasker#mask(String, String) 112 */ 113 public static final String OPERATION_NAME_MASK = "operationNameMask"; 114 115 /** 116 * The mask to apply to any parameter names 117 * @see NameMasker#mask(String, String) 118 */ 119 public static final String PARAMETER_NAME_MASK = "parameterNameMask"; 120 121 /** 122 * The mask to apply to enumeration literal names 123 * @see NameMasker#mask(String, String) 124 */ 125 public static final String ENUMERATION_LITERAL_NAME_MASK = "enumerationLiteralNameMask"; 126 127 /** 128 * The mask to apply to the enumeration literal name 129 * @see NameMasker#mask(String, String) 130 */ 131 public static final String ENUMERATION_NAME_MASK = "enumerationNameMask"; 132 133 /** 134 * The mask to apply to the entity name 135 * @see NameMasker#mask(String, String) 136 */ 137 public static final String ENTITY_NAME_MASK = "entityNameMask"; 138 139 /** 140 * The mask to apply to the entity property (attributes and association) names 141 * @see NameMasker#mask(String, String) 142 */ 143 public static final String ENTITY_PROPERTY_NAME_MASK = "entityPropertyNameMask"; 144 145 /** 146 * The maximum length a SQL name can be before its truncated. 147 */ 148 public static final String MAX_SQL_NAME_LENGTH = "maxSqlNameLength"; 149 150 /** 151 * The method to be used to ensure name length. 152 * Supported values: truncate or removeVowels. Default = truncate 153 */ 154 public static final String SHORTEN_SQL_NAMES_METHOD = "shortenSqlNamesMethod"; 155 public static final String SHORTEN_SQL_NAMES_METHOD_TRUNCATE = "truncate"; 156 public static final String SHORTEN_SQL_NAMES_METHOD_REMOVE_VOWELS = "removeVowels"; 157 158 /** 159 * Whether or not to allow default identifiers for modeled entities. 160 */ 161 public static final String ALLOW_DEFAULT_IDENTITIFIERS = "allowDefaultIdentifiers"; 162 163 /** 164 * The pattern used to construct the name entity default identifiers (if enabled). 165 */ 166 public static final String DEFAULT_IDENTIFIER_PATTERN = "defaultIdentifierPattern"; 167 168 /** 169 * The type to given default identifiers. 170 */ 171 public static final String DEFAULT_IDENTIFIER_TYPE = "defaultIdentifierType"; 172 173 /** 174 * The visibility to apply to default identifiers. 175 */ 176 public static final String DEFAULT_IDENTIFIER_VISIBILITY = "defaultIdentifierVisibility"; 177 178 /** 179 * The suffix to add to the composite identifier type name. 180 */ 181 public static final String COMPOSITE_IDENTIFIER_TYPE_NAME_SUFIX = "compositeIdentifierTypeNameSuffix"; 182 183 /** 184 * The suffix to add to the composite identifier name. 185 */ 186 public static final String COMPOSITE_IDENTIFIER_NAME_SUFIX = "compositeIdentifierNameSuffix"; 187 188 /** 189 * Are manageable tables resolved by default when referenced ? 190 */ 191 public static final String PROPERTY_DEFAULT_RESOLVEABLE = "defaultResolveable"; 192 193 /** 194 * Stores the default upper limit for lists. 195 */ 196 public static final String PROPERTY_DEFAULT_MAX_LIST_SIZE = "defaultMaximumListSize"; 197 198 /** 199 * Stores the default number of records shown per page. 200 */ 201 public static final String PROPERTY_DEFAULT_PAGE_SIZE = "defaultPageSize"; 202 203 /** 204 * The separator used for packages and element names when constructing fully qualified names. 205 */ 206 public static final String NAMESPACE_SEPARATOR = "namespaceSeparator"; 207 208 /** 209 * The name given to model elements without a name. 210 */ 211 public static final String UNDEFINED_NAME = "undefinedName"; 212 213 /** 214 * Stores the suffix given to array type names. 215 */ 216 public static final String ARRAY_NAME_SUFFIX = "arrayNameSuffix"; 217 218 /** 219 * Whether or not to enable manageable entities for the currently running cartridge. 220 */ 221 public static final String ENABLE_MANAGEABLE_ENTITIES = "enableManageableEntities"; 222 223 /** 224 * The namespace property used to denote the name of the subpackage create for 225 * manageable entities. 226 */ 227 public static final String MANAGEABLE_PACKAGE_NAME_SUFFIX = "manageablePackageSuffix"; 228 229 /** 230 * Stores the boolean flag indicating whether or not we should use arrays instead of collections with associations 231 * of type many (where appropriate). 232 */ 233 public static final String USE_ARRAYS_FOR_MULTIPLICITIES_OF_TYPE_MANY = "useArraysForMultiplicitiesOfTypeMany"; 234 235 /** 236 * The separator for relation names between associations. 237 */ 238 public static final String RELATION_NAME_SEPARATOR = "relationNameSeparator"; 239 240 /** 241 * The separator to use when constructing SQL names. 242 */ 243 public static final String SQL_NAME_SEPARATOR = "sqlNameSeparator"; 244 245 /** 246 * The pattern used for constructing operations that handle precondition constraints. 247 */ 248 public static final String PRECONDITION_NAME_PATTERN = "preconditionNamePattern"; 249 250 /** 251 * The pattern used for constructing operations that handle postcondition constraints. 252 */ 253 public static final String POSTCONDITION_NAME_PATTERN = "postconditionNamePattern"; 254 255 /** 256 * The namespace property used to identify the pattern used to construct the backend CRUD service's accessor. 257 */ 258 public static final String MANAGEABLE_SERVICE_ACCESSOR_PATTERN = "manageableServiceAccessorPattern"; 259 260 /** 261 * The namespace property used to define the default multiplicity of 262 * an attribute or association end (when one isn't modeled). 263 */ 264 public static final String DEFAULT_MULTIPLICITY = "defaultMultiplicity"; 265 266 /** 267 * Denotes whether or not the id needs to be displayed when managing an entity, or whether this 268 * should be transparent for the user. 269 */ 270 public static final String MANAGEABLE_ID_DISPLAY_STRATEGY = "manageableIdDisplayStrategy"; 271 272 /** 273 * Indicates whether enumerations must be generated using a Java 5 type-safe enum or a 274 * traditional enumeration-pattern class. 275 */ 276 public static final String TYPE_SAFE_ENUMS_ENABLED = "typeSafeEnumsEnabled"; 277 278 /** 279 * Value indicating work to do in source code. Default=TODO 280 */ 281 public static final String TODO_TAG = "toDoTag"; 282 283 /** 284 * Value indicating missing documentation in model elements. Default=false, do not insert todo tags. 285 */ 286 public static final String TODO_FOR_MISSING_DOCUMENTATION = "toDoForMissingDocumentation"; 287}