-// $Id$
/**
* Copyright (C) 2009 EDIT
* European Distributed Institute of Taxonomy
import eu.etaxonomy.cdm.common.monitor.IProgressMonitor;
import eu.etaxonomy.cdm.database.ICdmDataSource;
import eu.etaxonomy.cdm.database.update.CaseType;
-import eu.etaxonomy.cdm.database.update.ITermUpdaterStep;
+import eu.etaxonomy.cdm.database.update.SchemaUpdateResult;
import eu.etaxonomy.cdm.database.update.SchemaUpdaterStepBase;
import eu.etaxonomy.cdm.model.agent.AgentBase;
import eu.etaxonomy.cdm.model.agent.Institution;
import eu.etaxonomy.cdm.model.common.Annotation;
import eu.etaxonomy.cdm.model.common.AnnotationType;
import eu.etaxonomy.cdm.model.common.Credit;
-import eu.etaxonomy.cdm.model.common.DefinedTermBase;
import eu.etaxonomy.cdm.model.common.EventBase;
import eu.etaxonomy.cdm.model.common.ExtensionType;
import eu.etaxonomy.cdm.model.common.IdentifiableEntity;
import eu.etaxonomy.cdm.model.common.LanguageString;
import eu.etaxonomy.cdm.model.common.LanguageStringBase;
import eu.etaxonomy.cdm.model.common.MarkerType;
-import eu.etaxonomy.cdm.model.common.OrderedTerm;
-import eu.etaxonomy.cdm.model.common.OrderedTermBase;
-import eu.etaxonomy.cdm.model.common.OrderedTermVocabulary;
import eu.etaxonomy.cdm.model.common.ReferencedEntityBase;
import eu.etaxonomy.cdm.model.common.RelationshipBase;
import eu.etaxonomy.cdm.model.common.RelationshipTermBase;
-import eu.etaxonomy.cdm.model.common.Representation;
-import eu.etaxonomy.cdm.model.common.TermVocabulary;
import eu.etaxonomy.cdm.model.description.CategoricalData;
import eu.etaxonomy.cdm.model.description.CommonTaxonName;
import eu.etaxonomy.cdm.model.description.DescriptionElementSource;
import eu.etaxonomy.cdm.model.description.Distribution;
import eu.etaxonomy.cdm.model.description.Feature;
-import eu.etaxonomy.cdm.model.description.FeatureTree;
import eu.etaxonomy.cdm.model.description.IndividualsAssociation;
import eu.etaxonomy.cdm.model.description.MeasurementUnit;
import eu.etaxonomy.cdm.model.description.MediaKey;
import eu.etaxonomy.cdm.model.description.TaxonNameDescription;
import eu.etaxonomy.cdm.model.description.TextData;
import eu.etaxonomy.cdm.model.description.TextFormat;
-import eu.etaxonomy.cdm.model.description.WorkingSet;
+import eu.etaxonomy.cdm.model.description.DescriptiveDataSet;
import eu.etaxonomy.cdm.model.location.Country;
import eu.etaxonomy.cdm.model.location.NamedArea;
import eu.etaxonomy.cdm.model.location.NamedAreaLevel;
import eu.etaxonomy.cdm.model.molecular.Primer;
import eu.etaxonomy.cdm.model.molecular.Sequence;
import eu.etaxonomy.cdm.model.molecular.SingleRead;
-import eu.etaxonomy.cdm.model.name.BacterialName;
-import eu.etaxonomy.cdm.model.name.BotanicalName;
-import eu.etaxonomy.cdm.model.name.CultivarPlantName;
import eu.etaxonomy.cdm.model.name.HomotypicalGroup;
import eu.etaxonomy.cdm.model.name.HybridRelationship;
import eu.etaxonomy.cdm.model.name.HybridRelationshipType;
import eu.etaxonomy.cdm.model.name.NameTypeDesignationStatus;
import eu.etaxonomy.cdm.model.name.NomenclaturalStatus;
import eu.etaxonomy.cdm.model.name.NomenclaturalStatusType;
-import eu.etaxonomy.cdm.model.name.NonViralName;
import eu.etaxonomy.cdm.model.name.Rank;
import eu.etaxonomy.cdm.model.name.SpecimenTypeDesignation;
import eu.etaxonomy.cdm.model.name.SpecimenTypeDesignationStatus;
+import eu.etaxonomy.cdm.model.name.TaxonName;
import eu.etaxonomy.cdm.model.name.TypeDesignationStatusBase;
-import eu.etaxonomy.cdm.model.name.ViralName;
-import eu.etaxonomy.cdm.model.name.ZoologicalName;
import eu.etaxonomy.cdm.model.occurrence.Collection;
import eu.etaxonomy.cdm.model.occurrence.DerivationEvent;
import eu.etaxonomy.cdm.model.occurrence.DerivationEventType;
import eu.etaxonomy.cdm.model.taxon.TaxonNodeAgentRelation;
import eu.etaxonomy.cdm.model.taxon.TaxonRelationship;
import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;
+import eu.etaxonomy.cdm.model.term.DefinedTermBase;
+import eu.etaxonomy.cdm.model.term.FeatureTree;
+import eu.etaxonomy.cdm.model.term.OrderedTerm;
+import eu.etaxonomy.cdm.model.term.OrderedTermBase;
+import eu.etaxonomy.cdm.model.term.OrderedTermVocabulary;
+import eu.etaxonomy.cdm.model.term.Representation;
+import eu.etaxonomy.cdm.model.term.TermVocabulary;
/**
* Not needed anymore as long as we gave up bidirectionality #5743
*
* @author a.mueller
- * @date 25.04.2016
+ * @since 25.04.2016
*/
-public class ReferencedObjTypeUpdater extends SchemaUpdaterStepBase<ReferencedObjTypeUpdater> implements ITermUpdaterStep{
+public class ReferencedObjTypeUpdater extends SchemaUpdaterStepBase{
private static final Logger logger = Logger.getLogger(ReferencedObjTypeUpdater.class);
private static final String stepName = "Update referenced obj_type";
super(stepName);
}
- @Override
- public Integer invoke(ICdmDataSource datasource, IProgressMonitor monitor, CaseType caseType) throws SQLException {
+ @Override
+ public void invoke(ICdmDataSource datasource, IProgressMonitor monitor,
+ CaseType caseType, SchemaUpdateResult result) throws SQLException {
//TODO should better be read from eu.etaxonomy.cdm.model.common.package-info @AnyMetaDef
try {
TaxonNameDescription.class,
TextData.class,
TextFormat.class,
- WorkingSet.class,
+ DescriptiveDataSet.class,
Country.class,
NamedArea.class,
NamedAreaLevel.class,
Primer.class,
Sequence.class,
SingleRead.class,
- BacterialName.class,
- BotanicalName.class,
- CultivarPlantName.class,
+// BacterialName.class,
+// BotanicalName.class,
+// CultivarPlantName.class,
HomotypicalGroup.class,
HybridRelationship.class,
HybridRelationshipType.class,
NameTypeDesignation.class,
NomenclaturalStatus.class,
NomenclaturalStatusType.class,
- NonViralName.class,
+// NonViralName.class,
Rank.class,
SpecimenTypeDesignationStatus.class,
SpecimenTypeDesignation.class,
- ViralName.class,
- ZoologicalName.class,
+// ViralName.class,
+// ZoologicalName.class,
+ TaxonName.class,
Collection.class,
DerivationEvent.class,
DerivationEventType.class,
updateSingleClass(datasource, monitor, caseType, annotatableClass);
}
- return 0;
+ return;
} catch (Exception e) {
- monitor.warning(e.getMessage(), e);
- logger.warn(e.getMessage());
- return null;
+ String message = e.getMessage();
+ monitor.warning(message, e);
+ logger.warn(message);
+ result.addException(e, message, this, "invoke");
+ return;
}
}
if (tableName.equals("Rights")){
tableName = "RightsInfo";
}
+ if (tableName.equals("TaxonName")){
+ tableName = "TaxonNameBase";
+ }
+
String casedTable = caseType.transformTo(table);
String mnTable = caseType.transformTo(tableName + "_" + table);
return sql.replace("@table", casedTable)
}
}
- private static Map<Class, Class> specificClasses = new HashMap<Class, Class>();
+ private static Map<Class, Class> specificClasses = new HashMap<>();
static{
specificClasses.put(TeamOrPersonBase.class, AgentBase.class);
specificClasses.put(TermVocabulary.class, TermVocabulary.class);
specificClasses.put(Rights.class, Rights.class);
specificClasses.put(RelationshipTermBase.class, DefinedTermBase.class);
-
-
-
}
}