Revision 7a74af02
Added by Andreas Müller about 5 years ago
cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/EnumeratedTermVoc.java | ||
---|---|---|
112 | 112 |
//******************* DELEGATE CLASS NETHODS ************************ |
113 | 113 |
|
114 | 114 |
|
115 |
public static <S extends IEnumTerm<?>> IEnumTerm addTerm(Class<? extends IEnumTerm<?>> clazz, S term, UUID uuid, String defaultString, String key, S parent){ |
|
115 |
public static <S extends IEnumTerm<?>> IEnumTerm<?> addTerm(Class<? extends IEnumTerm<?>> clazz, S term, UUID uuid, String defaultString, String key, S parent){
|
|
116 | 116 |
if (vocsMap.get(clazz) == null){ |
117 |
vocsMap.put(clazz, new EnumeratedTermVoc()); |
|
117 |
vocsMap.put(clazz, new EnumeratedTermVoc<>());
|
|
118 | 118 |
} |
119 |
IEnumTerm myTerm = vocsMap.get(clazz).add(term, uuid, defaultString, key, parent); |
|
119 |
IEnumTerm<?> myTerm = vocsMap.get(clazz).add(term, uuid, defaultString, key, parent);
|
|
120 | 120 |
return myTerm; |
121 | 121 |
} |
122 | 122 |
|
... | ... | |
183 | 183 |
return (EnumeratedTermVoc<R>)vocsMap.get(clazz); |
184 | 184 |
} |
185 | 185 |
|
186 |
|
|
187 |
|
|
188 |
|
|
189 |
|
|
190 | 186 |
} |
cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/media/ExternalLink.java | ||
---|---|---|
89 | 89 |
@OneToMany(fetch = FetchType.LAZY, orphanRemoval=true) |
90 | 90 |
@MapKeyJoinColumn(name="description_mapkey_id") |
91 | 91 |
@Cascade({CascadeType.SAVE_UPDATE,CascadeType.MERGE, CascadeType.DELETE }) |
92 |
// @JoinTable(name = "ExternalLink_LanguageString") |
|
93 | 92 |
private Map<Language,LanguageString> description = new HashMap<>(); |
94 | 93 |
|
95 | 94 |
// the exptected size, mostly relevant for Files, can be null |
cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/IndexAdder.java | ||
---|---|---|
24 | 24 |
* @see {@link UsernameConstraintUpdater} |
25 | 25 |
* @author a.mueller |
26 | 26 |
* @since 2016-10-18 |
27 |
* |
|
28 | 27 |
*/ |
29 | 28 |
public class IndexAdder extends SchemaUpdaterStepBase { |
30 | 29 |
private static final Logger logger = Logger.getLogger(IndexAdder.class); |
... | ... | |
83 | 82 |
} |
84 | 83 |
|
85 | 84 |
private String getCreateQuery(ICdmDataSource datasource, CaseType caseType, String tableName, String constraintName, String columnName) { |
86 |
DatabaseTypeEnum type = datasource.getDatabaseType();
|
|
87 |
// String indexName = "_UniqueKey";
|
|
88 |
String updateQuery;
|
|
89 |
if (type.equals(DatabaseTypeEnum.MySQL)){
|
|
90 |
//Maybe MySQL also works with the below syntax. Did not check yet.
|
|
91 |
updateQuery = "ALTER TABLE @@"+ tableName + "@@ ADD INDEX " + constraintName + " ("+columnName+ makeLength()+");";
|
|
92 |
}else if (type.equals(DatabaseTypeEnum.H2) || type.equals(DatabaseTypeEnum.PostgreSQL) || type.equals(DatabaseTypeEnum.SqlServer2005)){
|
|
93 |
updateQuery = "CREATE INDEX " + constraintName + " ON "+tableName+"(" + columnName + ")";
|
|
94 |
}else{
|
|
95 |
throw new IllegalArgumentException("Datasource type not supported yet: " + type.getName());
|
|
96 |
}
|
|
97 |
// updateQuery = updateQuery.replace("@indexName", indexName);
|
|
98 |
updateQuery = caseType.replaceTableNames(updateQuery);
|
|
99 |
return updateQuery;
|
|
85 |
DatabaseTypeEnum type = datasource.getDatabaseType(); |
|
86 |
// String indexName = "_UniqueKey"; |
|
87 |
String updateQuery; |
|
88 |
if (type.equals(DatabaseTypeEnum.MySQL)){ |
|
89 |
//Maybe MySQL also works with the below syntax. Did not check yet. |
|
90 |
updateQuery = "ALTER TABLE @@"+ tableName + "@@ ADD INDEX " + constraintName + " ("+columnName+ makeLength()+");"; |
|
91 |
}else if (type.equals(DatabaseTypeEnum.H2) || type.equals(DatabaseTypeEnum.PostgreSQL) || type.equals(DatabaseTypeEnum.SqlServer2005)){ |
|
92 |
updateQuery = "CREATE INDEX " + constraintName + " ON "+tableName+"(" + columnName + ")"; |
|
93 |
}else{ |
|
94 |
throw new IllegalArgumentException("Datasource type not supported yet: " + type.getName()); |
|
95 |
} |
|
96 |
// updateQuery = updateQuery.replace("@indexName", indexName); |
|
97 |
updateQuery = caseType.replaceTableNames(updateQuery); |
|
98 |
return updateQuery; |
|
100 | 99 |
} |
101 | 100 |
|
102 | 101 |
/** |
Also available in: Unified diff
cleanup