Revision 6bb1be80
Added by Katja Luther about 6 years ago
cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/common/CdmGenericDaoImpl.java | ||
---|---|---|
488 | 488 |
@Override |
489 | 489 |
public <T extends CdmBase> void merge(T cdmBase1, T cdmBase2, IMergeStrategy mergeStrategy) throws MergeException { |
490 | 490 |
SessionImpl session = (SessionImpl) getSession(); |
491 |
if (cdmBase1 == null){ |
|
492 |
throw new MergeException("The merge target is already deleted in DB."); |
|
493 |
} |
|
494 |
if (cdmBase2 == null){ |
|
495 |
throw new MergeException("The merge candidate is already deleted in DB."); |
|
496 |
} |
|
491 |
|
|
497 | 492 |
DeduplicationHelper helper = new DeduplicationHelper(session, this); |
498 | 493 |
helper.merge(cdmBase1, cdmBase2, mergeStrategy); |
499 | 494 |
} |
cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/dao/hibernate/common/CdmGenericDaoImplTest.java | ||
---|---|---|
603 | 603 |
Assert.assertEquals("Taxon description must have article1 as source", taxDesc.getSources().iterator().next().getCitation(),article1); |
604 | 604 |
|
605 | 605 |
//test exceptions |
606 |
testMergeExceptions(name1, name2, taxon1, zooName1); |
|
606 |
try{ |
|
607 |
testMergeExceptions(name1, name2, taxon1, zooName1); |
|
608 |
Assert.fail(); |
|
609 |
}catch(MergeException e){ |
|
610 |
|
|
611 |
} |
|
607 | 612 |
|
608 | 613 |
|
609 | 614 |
//FIXME TO BE IMPLEMENTED |
Also available in: Unified diff
revert null check in merge