minor
[cdmlib.git] / cdmlib-model / src / main / java / eu / etaxonomy / cdm / model / common / PersistentMultiLanguageText.java
1 package eu.etaxonomy.cdm.model.common;
2
3 import java.util.List;
4
5 import org.hibernate.collection.PersistentMap;
6 import org.hibernate.engine.SessionImplementor;
7
8 public class PersistentMultiLanguageText extends PersistentMap implements IMultiLanguageText {
9
10 public PersistentMultiLanguageText(SessionImplementor sessionImplementor, MultilanguageText collection) {
11 super(sessionImplementor, collection);
12 }
13
14 public PersistentMultiLanguageText() {
15 super();
16 }
17
18 public LanguageString add(LanguageString languageString) {
19 if (languageString == null){
20 return null;
21 }else{
22 return (LanguageString)super.put(languageString.getLanguage(), languageString);
23 }
24 }
25
26 public LanguageString getPreferredLanguageString(List<Language> languages) {
27 LanguageString languageString = null;
28 for (Language language : languages) {
29 languageString = (LanguageString)super.get(language);
30 if(languageString != null){
31 return languageString;
32 }
33 }
34 return (LanguageString)super.get(Language.DEFAULT());
35 }
36
37 public String getText(Language language) {
38 LanguageString languageString = (LanguageString)super.get(language);
39 if (languageString != null){
40 return languageString.getText();
41 }else {
42 return null;
43 }
44 }
45 }