bugfix in NonViralNameDefaultCacheStrategy for trailing whitespace #621
[cdmlib.git] / cdmlib-model / src / main / java / eu / etaxonomy / cdm / strategy / cache / name / INonViralNameCacheStrategy.java
1 /**
2 * Copyright (C) 2007 EDIT
3 * European Distributed Institute of Taxonomy
4 * http://www.e-taxonomy.eu
5 *
6 * The contents of this file are subject to the Mozilla Public License Version 1.1
7 * See LICENSE.TXT at the top of this package for the full license terms.
8 */
9 package eu.etaxonomy.cdm.strategy.cache.name;
10
11 import eu.etaxonomy.cdm.model.name.NonViralName;
12
13 /**
14 * A name cache rendering strategy for all TaxonNameBase subclasses.
15 * Different TaxonNameBase subclasses could have different strategies.
16 * @author a.mueller
17 *
18 * @param <T> The concrete TaxonName class this strategy applies for
19 */
20 public interface INonViralNameCacheStrategy<T extends NonViralName> extends INameCacheStrategy<T> {
21
22 /**
23 * returns the last epithet of the name (i.e. uninomial if generic or above, infrageneric epithet if infrageneric,
24 * specific epithet if species and infraspecific epithet if infraspecific, possibly with other information (e.g. ranks
25 * in infraspecific names, indications of hybrid status etc)).
26 *
27 * This is suitable for rendering the name in context of the name which taxonomically includes it i.e. taxonomic hierarchies or
28 * checklists organised into a hierarchy where the initial epithets are removed for brevity
29 *
30 * @param object
31 * @return
32 */
33 public String getLastEpithet(T taxonNameBase);
34
35 /**
36 * returns the composed scientific taxon name string without authors nor year
37 * @param object
38 * @return
39 */
40 public String getNameCache(T taxonNameBase);
41
42 /**
43 * returns the composed author string
44 * @param object
45 * @return
46 */
47 public String getAuthorshipCache(T nonViralName);
48
49 }