reenabling some lines of code
[cdmlib.git] / cdmlib-services / src / main / java / eu / etaxonomy / cdm / api / service / ITaxonNodeService.java
1 // $Id$
2 /**
3 * Copyright (C) 2007 EDIT
4 * European Distributed Institute of Taxonomy
5 * http://www.e-taxonomy.eu
6 *
7 * The contents of this file are subject to the Mozilla Public License Version 1.1
8 * See LICENSE.TXT at the top of this package for the full license terms.
9 */
10
11 package eu.etaxonomy.cdm.api.service;
12
13 import java.util.List;
14 import java.util.UUID;
15
16 import eu.etaxonomy.cdm.model.reference.Reference;
17 import eu.etaxonomy.cdm.model.taxon.Synonym;
18 import eu.etaxonomy.cdm.model.taxon.SynonymRelationshipType;
19 import eu.etaxonomy.cdm.model.taxon.TaxonNode;
20
21
22 /**
23 * @author n.hoffmann
24 * @created Apr 9, 2010
25 * @version 1.0
26 */
27 public interface ITaxonNodeService extends IAnnotatableService<TaxonNode>{
28
29 /**
30 *
31 * @param uuid
32 */
33 @Deprecated // use findByUuid() instead; TODO will be removed in the next version
34 public TaxonNode getTaxonNodeByUuid(UUID uuid);
35
36 /**
37 *
38 * @param taxonNode
39 * @param propertyPaths
40 * @return
41 */
42 public List<TaxonNode> loadChildNodesOfTaxonNode(TaxonNode taxonNode, List<String> propertyPaths);
43
44 /**
45 * Changes the taxon associated with the given taxon node into a synonym of the new accepted taxon node.
46 * All data associated with the former taxon are moved to the newly accepted taxon.
47 *
48 * @param oldTaxonNode
49 * @param newAcceptedTaxonNode
50 * @param synonymRelationshipType
51 * @param citation
52 * @param citationMicroReference
53 * @return
54 */
55 public Synonym makeTaxonNodeASynonymOfAnotherTaxonNode(TaxonNode oldTaxonNode, TaxonNode newAcceptedTaxonNode, SynonymRelationshipType synonymRelationshipType, Reference citation, String citationMicroReference);
56 }