From: a.babadshanjan Date: Mon, 11 May 2009 14:20:21 +0000 (+0000) Subject: (no commit message) X-Git-Tag: 3.0.3~2420 X-Git-Url: https://dev.e-taxonomy.eu/gitweb/cdmlib.git/commitdiff_plain/736dec88386a1178e304f118d7f34fff0fe5dce1 --- diff --git a/cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/taxon/TaxonDaoHibernateImpl.java b/cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/taxon/TaxonDaoHibernateImpl.java index b2749f5789..27ce8a1a2c 100644 --- a/cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/taxon/TaxonDaoHibernateImpl.java +++ b/cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/taxon/TaxonDaoHibernateImpl.java @@ -285,26 +285,26 @@ public class TaxonDaoHibernateImpl extends IdentifiableDaoBase implem } /** Sets the taxonomic parent to null. Does not handle taxonomic relationships. */ - private boolean nullifyTaxonomicParent(Taxon taxon) { - - try { - Method nullifyTaxonomicParent = taxon.getClass().getMethod("nullifyTaxonomicParent"); - nullifyTaxonomicParent.invoke(taxon); - } catch (NoSuchMethodException ex) { - logger.error("NoSuchMethod: " + ex.getMessage()); - return false; - } catch (IllegalArgumentException ex) { - logger.error("IllegalArgumentException: " + ex.getMessage()); - return false; - } catch (IllegalAccessException ex) { - logger.error("IllegalAccessException: " + ex.getMessage()); - return false; - } catch (InvocationTargetException ex) { - logger.error("IllegalAccessException: " + ex.getMessage()); - return false; - } - return true; - } +// private boolean nullifyTaxonomicParent(Taxon taxon) { +// +// try { +// Method nullifyTaxonomicParent = taxon.getClass().getMethod("nullifyTaxonomicParent"); +// nullifyTaxonomicParent.invoke(taxon); +// } catch (NoSuchMethodException ex) { +// logger.error("NoSuchMethod: " + ex.getMessage()); +// return false; +// } catch (IllegalArgumentException ex) { +// logger.error("IllegalArgumentException: " + ex.getMessage()); +// return false; +// } catch (IllegalAccessException ex) { +// logger.error("IllegalAccessException: " + ex.getMessage()); +// return false; +// } catch (InvocationTargetException ex) { +// logger.error("IllegalAccessException: " + ex.getMessage()); +// return false; +// } +// return true; +// } @Override public UUID delete(TaxonBase taxonBase) throws DataAccessException{ @@ -362,9 +362,6 @@ public class TaxonDaoHibernateImpl extends IdentifiableDaoBase implem TaxonRelationship relationFromThisTaxon = iterator.next(); iterator.remove(); - relationFromThisTaxon.setToTaxon(null); - relationFromThisTaxon.setFromTaxon(null); - // decrease children count of taxonomic parent by one if (relationFromThisTaxon.getType().equals(TaxonRelationshipType.TAXONOMICALLY_INCLUDED_IN())) { Taxon toTaxon = relationFromThisTaxon.getToTaxon(); // parent @@ -372,6 +369,8 @@ public class TaxonDaoHibernateImpl extends IdentifiableDaoBase implem toTaxon.setTaxonomicChildrenCount(toTaxon.getTaxonomicChildrenCount() - 1); } } + relationFromThisTaxon.setToTaxon(null); + relationFromThisTaxon.setFromTaxon(null); getSession().delete(relationFromThisTaxon); } @@ -379,17 +378,15 @@ public class TaxonDaoHibernateImpl extends IdentifiableDaoBase implem TaxonRelationship relationToThisTaxon = iterator.next(); iterator.remove(); - relationToThisTaxon.setFromTaxon(null); - relationToThisTaxon.setToTaxon(null); - // set parent cache of child to null if (relationToThisTaxon.getType().equals(TaxonRelationshipType.TAXONOMICALLY_INCLUDED_IN())) { Taxon fromTaxon = relationToThisTaxon.getFromTaxon(); // child if (fromTaxon != null) { fromTaxon.nullifyTaxonomicParent(); - //nullifyTaxonomicParent(fromTaxon); } } + relationToThisTaxon.setFromTaxon(null); + relationToThisTaxon.setToTaxon(null); getSession().delete(relationToThisTaxon); } @@ -420,7 +417,6 @@ public class TaxonDaoHibernateImpl extends IdentifiableDaoBase implem } taxon.nullifyTaxonomicParent(); - //nullifyTaxonomicParent(taxon); } else { //is Synonym Synonym synonym = (Synonym)taxonBase;