Revision 30178240
Added by Andreas Müller almost 11 years ago
cdmlib-model/src/main/resources/terms/InstitutionType.csv | ||
---|---|---|
1 | 1 |
"29ad808b-3126-4274-be81-4561e7afc76f",,"Institution Type","Institution Type","IT","0" |
2 |
"bea94a6c-472b-421c-abc1-52f797c51dbf",,"institution_type_dummy","itdummy","i","itd", |
|
2 |
"9b2726b3-ea93-4b99-baea-2eeb4e9c99b5",,"Botanical Garden","Botanical Garden","BG" |
|
3 |
"d19163be-fb60-4c5f-9db8-8ac50f743e22",,"Natural History Museum","Natural History Museum","NHM" |
|
4 |
"8b67ae90-4d84-481e-9f77-4d5eccfcf828",,"University","University","UNI" |
cdmlib-model/src/main/resources/terms/PreservationMethod.csv | ||
---|---|---|
1 |
"a7dc20c9-e6b3-459e-8f05-8d6d8fceb465",,"Preservation Method","Preservation Method","PRM","1" |
|
2 |
"3edc2633-365b-4a9b-bc3a-f3f85f59dbdf",,"preservation_method_dummy","pmdummy","pmd", |
|
1 |
"a7dc20c9-e6b3-459e-8f05-8d6d8fceb465",,"Preservation Method","Preservation Method","PRM","1" |
cdmlib-model/src/main/resources/terms/State.csv | ||
---|---|---|
1 |
"ceb65a53-c6cf-42bb-862f-daca7f2fc11d",,"State","State","STA","1" |
|
2 |
"881b9c80-626d-47a6-b308-a63ee5f4178f",,"state_dummy","stdummy","std", |
|
1 |
"ceb65a53-c6cf-42bb-862f-daca7f2fc11d",,"State","State","STA","1" |
cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/SingleTermRemover.java | ||
---|---|---|
69 | 69 |
} |
70 | 70 |
|
71 | 71 |
//check if in use |
72 |
if (! checkTermInUse(datasource, monitor, id)){
|
|
72 |
if (checkTermInUse(datasource, monitor, id)){ |
|
73 | 73 |
return 0; |
74 | 74 |
} |
75 | 75 |
|
... | ... | |
83 | 83 |
|
84 | 84 |
//get representation ids |
85 | 85 |
List<Integer> repIDs = new ArrayList<Integer>(); |
86 |
getRepIds(datasource, id, repIDs, "representations_id", "DefinedTermBase_Representation"); |
|
86 |
getRepIds(datasource, id, repIDs, "representations_id", "DefinedTermBase_Representation" );
|
|
87 | 87 |
getRepIds(datasource, id, repIDs, "inverserepresentations_id", "RelationshipTermBase_inverseRepresentation"); |
88 | 88 |
|
89 | 89 |
//remove MN table |
... | ... | |
105 | 105 |
|
106 | 106 |
private void getRepIds(ICdmDataSource datasource, int id, |
107 | 107 |
List<Integer> repIDs, String mnRepresentationIdAttr, String mnTableName) throws SQLException { |
108 |
String sql = " SELECT DISTINCT %s as repId FROM %s WHERE @mnTermIdName = %d";
|
|
108 |
String sql = " SELECT DISTINCT %s as repId FROM %s WHERE DefinedTermBase_id = %d";
|
|
109 | 109 |
sql = String.format(sql, mnRepresentationIdAttr, mnTableName, id); |
110 | 110 |
ResultSet rs = datasource.executeQuery(sql); |
111 | 111 |
while (rs.next()){ |
... | ... | |
119 | 119 |
private boolean checkTermInUse(ICdmDataSource datasource, IProgressMonitor monitor, int id) throws SQLException { |
120 | 120 |
for (String query : checkUsedQueries){ |
121 | 121 |
query = String.format(query, id); |
122 |
Integer i = (Integer)datasource.getSingleValue(query);
|
|
123 |
if (i != null && i>0){
|
|
122 |
Number i = (Number)datasource.getSingleValue(query);
|
|
123 |
if (i != null && (Long)i > 0.0){
|
|
124 | 124 |
return true; |
125 | 125 |
} |
126 | 126 |
} |
cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/v31_33/SchemaUpdater_31_33.java | ||
---|---|---|
1456 | 1456 |
" WHERE dtb.uuid = '881b9c80-626d-47a6-b308-a63ee5f4178f' "; |
1457 | 1457 |
step = SimpleSchemaUpdaterStep.NewNonAuditedInstance(stepName, query); |
1458 | 1458 |
stepList.add(step); |
1459 |
|
|
1460 |
stepName = "Update idInVocabulary for dummy stage"; |
|
1461 |
query = " UPDATE DefinedTermBase dtb " + |
|
1462 |
" SET dtb.idinvocabulary = 'sgd' " + |
|
1463 |
" WHERE dtb.uuid = '48f8e8a7-a2ac-4974-9ce8-6944afc5095e' "; |
|
1464 |
step = SimpleSchemaUpdaterStep.NewNonAuditedInstance(stepName, query); |
|
1465 |
stepList.add(step); |
|
1466 |
|
|
1467 |
stepName = "Update idInVocabulary for dummy modifier"; |
|
1468 |
query = " UPDATE DefinedTermBase dtb " + |
|
1469 |
" SET dtb.idinvocabulary = 'md' " + |
|
1470 |
" WHERE dtb.uuid = 'efc38dad-205c-4028-ad9d-ae509a14b37a' "; |
|
1471 |
step = SimpleSchemaUpdaterStep.NewNonAuditedInstance(stepName, query); |
|
1472 |
stepList.add(step); |
|
1473 |
|
|
1474 |
//Remove state dummy |
|
1475 |
stepName = "Remove state dummy if possible"; |
|
1476 |
uuid = "881b9c80-626d-47a6-b308-a63ee5f4178f"; |
|
1477 |
String checkUsed = " SELECT count(*) as n FROM StateData sd " + |
|
1478 |
" WHERE sd.state_id = %d "; |
|
1479 |
step = SingleTermRemover.NewInstance(stepName, uuid, checkUsed); |
|
1480 |
stepList.add(step); |
|
1459 | 1481 |
|
1460 |
//Reomve institution type dummy |
|
1461 |
//TODO seems not to work |
|
1482 |
//Remove institution type dummy |
|
1462 | 1483 |
stepName = "Remove institution type dummy term"; |
1463 |
uuid = "29ad808b-3126-4274-be81-4561e7afc76f";
|
|
1464 |
String checkUsed = " SELECT count(*) as n FROM AgentBase_DefinedTermBase MN " +
|
|
1484 |
uuid = "bea94a6c-472b-421c-abc1-52f797c51dbf";
|
|
1485 |
checkUsed = " SELECT count(*) as n FROM AgentBase_DefinedTermBase MN " + |
|
1465 | 1486 |
" WHERE MN.types_id = %d "; |
1466 | 1487 |
step = SingleTermRemover.NewInstance(stepName, uuid, checkUsed); |
1467 | 1488 |
stepList.add(step); |
1489 |
|
|
1490 |
//Remove scope dummy |
|
1491 |
stepName = "Remove scope dummy term"; |
|
1492 |
uuid = "2ace7f1f-4ce6-47e1-8a65-e3f6b724876c"; |
|
1493 |
checkUsed = " SELECT count(*) as n FROM DescriptionBase_Scope MN " + |
|
1494 |
" WHERE MN.scopes_id = %d "; |
|
1495 |
step = SingleTermRemover.NewInstance(stepName, uuid, checkUsed); |
|
1496 |
stepList.add(step); |
|
1497 |
|
|
1498 |
//Remove stage dummy |
|
1499 |
stepName = "Remove stage dummy term"; |
|
1500 |
uuid = "48f8e8a7-a2ac-4974-9ce8-6944afc5095e"; |
|
1501 |
checkUsed = " SELECT count(*) as n FROM DescriptionBase_Scope MN " + |
|
1502 |
" WHERE MN.scopes_id = %d "; |
|
1503 |
String checkUsed2 = " SELECT count(*) as n FROM SpecimenOrObservationBase osb " + |
|
1504 |
" WHERE osb.lifestage_id = %d "; |
|
1505 |
step = SingleTermRemover.NewInstance(stepName, uuid, checkUsed) |
|
1506 |
.addCheckUsedQuery(checkUsed2); |
|
1507 |
stepList.add(step); |
|
1508 |
|
|
1509 |
//Remove text format dummy |
|
1510 |
stepName = "Remove text format dummy if possible"; |
|
1511 |
uuid = "5d095782-d99c-46bc-a158-edb2e47c9b63"; |
|
1512 |
checkUsed = " SELECT count(*) as n FROM DescriptionElementBase deb " + |
|
1513 |
" WHERE deb.format_id = %d "; |
|
1514 |
step = SingleTermRemover.NewInstance(stepName, uuid, checkUsed); |
|
1515 |
stepList.add(step); |
|
1516 |
|
|
1517 |
//Remove modifier dummy |
|
1518 |
stepName = "Remove modifier dummy if possible"; |
|
1519 |
uuid = "efc38dad-205c-4028-ad9d-ae509a14b37a"; |
|
1520 |
checkUsed = " SELECT count(*) as n FROM DescriptionElementBase_Modifier MN " + |
|
1521 |
" WHERE MN.modifiers_id = %d "; |
|
1522 |
checkUsed2 = " SELECT count(*) as n FROM StateData_DefinedTermBase MN " + |
|
1523 |
" WHERE MN.modifiers_id = %d "; |
|
1524 |
String checkUsed3 = " SELECT count(*) as n FROM StatisticalMeasurementValue_DefinedTermBase MN " + |
|
1525 |
" WHERE MN.modifiers_id = %d "; |
|
1526 |
step = SingleTermRemover.NewInstance(stepName, uuid, checkUsed) |
|
1527 |
.addCheckUsedQuery(checkUsed2) |
|
1528 |
.addCheckUsedQuery(checkUsed3); |
|
1529 |
stepList.add(step); |
|
1530 |
|
|
1531 |
//Remove text preservation method dummy |
|
1532 |
stepName = "Remove preservation method dummy if possible"; |
|
1533 |
uuid = "3edc2633-365b-4a9b-bc3a-f3f85f59dbdf"; |
|
1534 |
checkUsed = " SELECT count(*) as n FROM SpecimenOrObservationBase osb " + |
|
1535 |
" WHERE osb.preservation_id = %d "; |
|
1536 |
step = SingleTermRemover.NewInstance(stepName, uuid, checkUsed); |
|
1537 |
stepList.add(step); |
|
1538 |
|
|
1539 |
|
|
1468 | 1540 |
|
1469 | 1541 |
//Split WaterbodyOrCountry Vocabulary #3700 |
1470 | 1542 |
stepName = "Create Waterbody vocabulary"; |
Also available in: Unified diff
remove dummy terms with update script #3706