Project

General

Profile

Download (2.3 KB) Statistics
| Branch: | Tag: | Revision:
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.TaggedText;
19

    
20
/**
21
 * @author AM
22
 *
23
 */
24
public abstract class NameCacheStrategyBase<T extends TaxonNameBase> extends StrategyBase implements INameCacheStrategy<T> {
25
	@SuppressWarnings("unused")
26
	private static final Logger logger = Logger.getLogger(NameCacheStrategyBase.class);
27

    
28
	final static UUID uuid = UUID.fromString("817ae5b5-3ac2-414b-a134-a9ae86cba040");
29

    
30
	/**
31
	 * Constructor
32
	 */
33
	public NameCacheStrategyBase() {
34
		super();
35
	}
36
	
37

    
38
	/**
39
	 * Generates and returns the title cache of the given name.
40
	 * The title cache in general includes the name and the authorship and year for some types of names.
41
	 *
42
	 * @see eu.etaxonomy.cdm.strategy.INameCacheStrategy#getTitleCache(eu.etaxonomy.cdm.model.common.CdmBase)
43
	 * @see eu.etaxonomy.cdm.strategy.cache.common.IIdentifiableEntityCacheStrategy#getTitleCache(eu.etaxonomy.cdm.model.common.IdentifiableEntity)
44
	 */
45
	public abstract String getTitleCache(T name);
46

    
47
	/* (non-Javadoc)
48
	 * @see eu.etaxonomy.cdm.strategy.cache.name.INameCacheStrategy#getFullTitleCache(eu.etaxonomy.cdm.model.name.TaxonNameBase)
49
	 */
50
	public abstract String getFullTitleCache(T name);
51

    
52
	/* (non-Javadoc)
53
	 * @see eu.etaxonomy.cdm.strategy.cache.name.INameCacheStrategy#getTaggedName(eu.etaxonomy.cdm.model.name.TaxonNameBase)
54
	 */
55
	public abstract List<Object> getTaggedName(T taxonNameBase);
56

    
57
	/* (non-Javadoc)
58
	 * @see eu.etaxonomy.cdm.strategy.cache.name.INameCacheStrategy#getTaggedTitle(eu.etaxonomy.cdm.model.name.TaxonNameBase)
59
	 */
60
	public abstract List<TaggedText> getTaggedTitle(T taxonNameBase);
61

    
62
	/* (non-Javadoc)
63
	 * @see eu.etaxonomy.cdm.strategy.cache.name.INameCacheStrategy#getTaggedFullTitle(eu.etaxonomy.cdm.model.name.TaxonNameBase)
64
	 */
65
	public abstract List<TaggedText> getTaggedFullTitle(T taxonNameBase);
66

    
67
}
(6-6/8)