1 package org.cateproject.service.format.reference;
2
3 import eu.etaxonomy.cdm.model.reference.Article;
4
5 public class ArticleFormatter extends NomenclaturalReferenceBaseFormatter<Article> {
6
7 public String getTitleCache(Article article) {
8 StringBuilder stringBuilder = formatStrictCitation(article);
9 if(article.getInJournal() != null) {
10 if(article.getInJournal().getStandardAbbreviation() != null) {
11 stringBuilder.append(" " + article.getInJournal().getStandardAbbreviation());
12 } else {
13 stringBuilder.append(" " + article.getInJournal().getTitle());
14 }
15 }
16 if(article.getVolume() != null || article.getSeries() != null) {
17 stringBuilder.append(",");
18
19 if(article.getVolume() != null) {
20 stringBuilder.append(" " + article.getVolume());
21 }
22
23 if(article.getSeries() != null) {
24 stringBuilder.append(" (" + article.getSeries() + ")");
25 }
26 }
27
28 if(article.getPages() != null) {
29 stringBuilder.append(", " + article.getPages());
30 }
31
32 stringBuilder.append(".");
33 return stringBuilder.toString();
34 }
35 }