devided TimePeriod and TimePeriodParser #3617
[cdmlib.git] / cdmlib-model / src / main / java / eu / etaxonomy / cdm / strategy / cache / name / NameCacheStrategyBase.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 java.util.List;
12 import java.util.UUID;
13
14 import org.apache.log4j.Logger;
15
16 import eu.etaxonomy.cdm.model.name.TaxonNameBase;
17 import eu.etaxonomy.cdm.strategy.StrategyBase;
18 import eu.etaxonomy.cdm.strategy.cache.HTMLTagRules;
19 import eu.etaxonomy.cdm.strategy.cache.TaggedText;
20
21 /**
22 * @author AM
23 *
24 */
25 public abstract class NameCacheStrategyBase<T extends TaxonNameBase> extends StrategyBase implements INameCacheStrategy<T> {
26 @SuppressWarnings("unused")
27 private static final Logger logger = Logger.getLogger(NameCacheStrategyBase.class);
28
29 final static UUID uuid = UUID.fromString("817ae5b5-3ac2-414b-a134-a9ae86cba040");
30
31 /**
32 * Constructor
33 */
34 public NameCacheStrategyBase() {
35 super();
36 }
37
38
39 /**
40 * Generates and returns the title cache of the given name.
41 * The title cache in general includes the name and the authorship and year for some types of names.
42 *
43 * @see eu.etaxonomy.cdm.strategy.INameCacheStrategy#getTitleCache(eu.etaxonomy.cdm.model.common.CdmBase)
44 * @see eu.etaxonomy.cdm.strategy.cache.common.IIdentifiableEntityCacheStrategy#getTitleCache(eu.etaxonomy.cdm.model.common.IdentifiableEntity)
45 */
46 public abstract String getTitleCache(T name);
47
48
49 /* (non-Javadoc)
50 * @see eu.etaxonomy.cdm.strategy.cache.name.INameCacheStrategy#getTitleCache(eu.etaxonomy.cdm.model.name.TaxonNameBase, eu.etaxonomy.cdm.strategy.cache.HTMLTagRules)
51 */
52 public abstract String getTitleCache(T name, HTMLTagRules rules);
53
54
55 /* (non-Javadoc)
56 * @see eu.etaxonomy.cdm.strategy.cache.name.INameCacheStrategy#getFullTitleCache(eu.etaxonomy.cdm.model.name.TaxonNameBase)
57 */
58 public abstract String getFullTitleCache(T name);
59
60 /* (non-Javadoc)
61 * @see eu.etaxonomy.cdm.strategy.cache.name.INameCacheStrategy#getFullTitleCache(eu.etaxonomy.cdm.model.name.TaxonNameBase, eu.etaxonomy.cdm.strategy.cache.HTMLTagRules)
62 */
63 public abstract String getFullTitleCache(T name, HTMLTagRules rules);
64
65 /* (non-Javadoc)
66 * @see eu.etaxonomy.cdm.strategy.cache.name.INameCacheStrategy#getTaggedTitle(eu.etaxonomy.cdm.model.name.TaxonNameBase)
67 */
68 public abstract List<TaggedText> getTaggedTitle(T taxonNameBase);
69
70 /* (non-Javadoc)
71 * @see eu.etaxonomy.cdm.strategy.cache.name.INameCacheStrategy#getTaggedFullTitle(eu.etaxonomy.cdm.model.name.TaxonNameBase)
72 */
73 public abstract List<TaggedText> getTaggedFullTitle(T taxonNameBase);
74
75 }