Revision 9db62d49
Added by Andreas Müller almost 8 years ago
cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/reference/Reference.java | ||
---|---|---|
53 | 53 |
import eu.etaxonomy.cdm.model.common.TimePeriod; |
54 | 54 |
import eu.etaxonomy.cdm.model.media.IdentifiableMediaEntity; |
55 | 55 |
import eu.etaxonomy.cdm.model.name.TaxonNameBase; |
56 |
import eu.etaxonomy.cdm.strategy.cache.reference.ArticleDefaultCacheStrategy; |
|
57 |
import eu.etaxonomy.cdm.strategy.cache.reference.BookDefaultCacheStrategy; |
|
58 |
import eu.etaxonomy.cdm.strategy.cache.reference.BookSectionDefaultCacheStrategy; |
|
59 |
import eu.etaxonomy.cdm.strategy.cache.reference.GenericDefaultCacheStrategy; |
|
60 | 56 |
import eu.etaxonomy.cdm.strategy.cache.reference.INomenclaturalReferenceCacheStrategy; |
61 |
import eu.etaxonomy.cdm.strategy.cache.reference.IReferenceBaseCacheStrategy; |
|
62 |
import eu.etaxonomy.cdm.strategy.cache.reference.JournalDefaultCacheStrategy; |
|
63 |
import eu.etaxonomy.cdm.strategy.cache.reference.ReferenceDefaultCacheStrategy; |
|
57 |
import eu.etaxonomy.cdm.strategy.cache.reference.IReferenceCacheStrategy; |
|
58 |
import eu.etaxonomy.cdm.strategy.cache.reference.NewDefaultReferenceCacheStrategy; |
|
59 |
import eu.etaxonomy.cdm.strategy.cache.reference.old.ArticleDefaultCacheStrategy; |
|
60 |
import eu.etaxonomy.cdm.strategy.cache.reference.old.BookDefaultCacheStrategy; |
|
61 |
import eu.etaxonomy.cdm.strategy.cache.reference.old.BookSectionDefaultCacheStrategy; |
|
62 |
import eu.etaxonomy.cdm.strategy.cache.reference.old.GenericDefaultCacheStrategy; |
|
63 |
import eu.etaxonomy.cdm.strategy.cache.reference.old.JournalDefaultCacheStrategy; |
|
64 |
import eu.etaxonomy.cdm.strategy.cache.reference.old.ReferenceDefaultCacheStrategy; |
|
64 | 65 |
import eu.etaxonomy.cdm.strategy.match.Match; |
65 | 66 |
import eu.etaxonomy.cdm.strategy.match.MatchMode; |
66 | 67 |
import eu.etaxonomy.cdm.strategy.merge.Merge; |
... | ... | |
123 | 124 |
@NoRecursiveInReference(groups=Level3.class) //may become Level1 in future # |
124 | 125 |
public class Reference |
125 | 126 |
// <S extends IReferenceBaseCacheStrategy> |
126 |
extends IdentifiableMediaEntity<IReferenceBaseCacheStrategy>
|
|
127 |
extends IdentifiableMediaEntity<IReferenceCacheStrategy> |
|
127 | 128 |
implements INomenclaturalReference, IArticle, IBook, IPatent, IDatabase, IJournal, IBookSection,ICdDvd,IGeneric,IInProceedings, IProceedings, IPrintSeries, IReport, IThesis,IWebPage, IPersonalCommunication, IReference, Cloneable { |
128 | 129 |
|
129 | 130 |
private static final long serialVersionUID = -2034764545042691295L; |
... | ... | |
337 | 338 |
} |
338 | 339 |
|
339 | 340 |
protected Reference(ReferenceType type) { |
340 |
if (type == null){ |
|
341 |
super(); |
|
342 |
if (type == null){ |
|
341 | 343 |
this.type = ReferenceType.Generic; |
342 | 344 |
} else{ |
343 | 345 |
this.type = type; |
344 | 346 |
} |
347 |
this.setCacheStrategy(NewDefaultReferenceCacheStrategy.NewInstance()); |
|
345 | 348 |
} |
346 | 349 |
|
347 | 350 |
@Override |
... | ... | |
567 | 570 |
this.type = type; |
568 | 571 |
} |
569 | 572 |
this.setCacheStrategy(type.getCacheStrategy()); |
570 |
|
|
571 | 573 |
} |
572 |
|
|
573 |
/** |
|
574 |
* @return the type |
|
575 |
*/ |
|
576 | 574 |
@Override |
577 | 575 |
public ReferenceType getType() { |
578 | 576 |
return type; |
... | ... | |
740 | 738 |
|
741 | 739 |
public String generateAbbrevTitle() { |
742 | 740 |
rectifyCacheStrategy(); //TODO needed, is called by getCacheStrategy already |
743 |
return getCacheStrategy().getAbbrevTitleCache(this);
|
|
741 |
return getCacheStrategy().getFullAbbrevTitleString(this);
|
|
744 | 742 |
} |
745 | 743 |
|
746 | 744 |
/** |
... | ... | |
1021 | 1019 |
//*************************** CACHE STRATEGIES ******************************/ |
1022 | 1020 |
|
1023 | 1021 |
@Override |
1024 |
public IReferenceBaseCacheStrategy getCacheStrategy() {
|
|
1022 |
public IReferenceCacheStrategy getCacheStrategy() { |
|
1025 | 1023 |
rectifyCacheStrategy(); |
1026 | 1024 |
return this.cacheStrategy; |
1027 | 1025 |
} |
... | ... | |
1042 | 1040 |
|
1043 | 1041 |
|
1044 | 1042 |
@Override |
1045 |
public void setCacheStrategy(IReferenceBaseCacheStrategy iReferenceBaseCacheStrategy) {
|
|
1043 |
public void setCacheStrategy(IReferenceCacheStrategy iReferenceBaseCacheStrategy) { |
|
1046 | 1044 |
this.cacheStrategy = iReferenceBaseCacheStrategy; |
1047 | 1045 |
|
1048 | 1046 |
} |
Also available in: Unified diff
Implement single cache strategy for references #5833