X-Git-Url: https://dev.e-taxonomy.eu/gitweb/cdmlib.git/blobdiff_plain/572ce758bbf57499b872988682b89f4e3ce7b17c..cd84b7b4fdd3757136f0c0fd87c3d402e69f8513:/cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/LanguageString.java diff --git a/cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/LanguageString.java b/cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/LanguageString.java index f771959ca1..edb4570fea 100644 --- a/cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/LanguageString.java +++ b/cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/LanguageString.java @@ -9,64 +9,70 @@ package eu.etaxonomy.cdm.model.common; +import javax.persistence.Entity; +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlRootElement; +import javax.xml.bind.annotation.XmlType; import org.apache.log4j.Logger; -import org.hibernate.annotations.Cascade; -import org.hibernate.annotations.CascadeType; - -import java.util.*; -import javax.persistence.*; +import org.hibernate.envers.Audited; +import org.hibernate.search.annotations.Indexed; /** + * This class is an instantiatable class for the base class {@link LanguageStringBase}. + * No further functionality is added. * @author m.doering * @version 1.0 * @created 08-Nov-2007 13:06:32 */ -@MappedSuperclass -public class LanguageString extends VersionableEntity{ - static Logger logger = Logger.getLogger(LanguageString.class); - protected String text; - private Language language; +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "LanguageString") +@XmlRootElement(name = "LanguageString") +@Entity +@Indexed(index = "eu.etaxonomy.cdm.model.common.LanguageString") +@Audited +public class LanguageString extends LanguageStringBase implements Cloneable { + private static final long serialVersionUID = -1502298496073201104L; + @SuppressWarnings("unused") + private static final Logger logger = Logger.getLogger(LanguageString.class); - public LanguageString() { - super(); + public static LanguageString NewInstance(String text, Language language){ + return new LanguageString(text, language); } - public LanguageString(String text, Language lang) { - this.setLanguage(lang); - this.setText(text); - } - - - @ManyToOne - //@Cascade({CascadeType.SAVE_UPDATE}) - public Language getLanguage(){ - return this.language; + + protected LanguageString() { + super(); } - public void setLanguage(Language language){ - this.language = language; + + protected LanguageString(String text, Language language) { + super(text, language); } - public String getText(){ - return this.text; - } - protected void setText(String text) { - this.text = text; + /* (non-Javadoc) + * @see eu.etaxonomy.cdm.model.common.CdmBase#toString() + */ + @Override + public String toString() { + if (text == null){ + return super.toString() + "null"; + }else{ + String languagePart = ""; + if (this.language != null){ + languagePart = "(" + this.language.toString() + ")"; + } + if (text.length() > 20){ + return text.substring(0, 20) + "..." + languagePart; + }else{ + return text + languagePart; + } + } } - @Transient - public String getLanguageLabel(){ - return this.language.getRepresentation(Language.DEFAULT()).getLabel(); - } - @Transient - public String getLanguageLabel(Language lang){ - return this.language.getRepresentation(lang).getLabel(); - } - @Transient - public String getLanguageText(){ - return this.language.getRepresentation(Language.DEFAULT()).getLabel(); - } - @Transient - public String getLanguageText(Language lang){ - return this.language.getRepresentation(lang).getLabel(); + @Override + public Object clone() throws CloneNotSupportedException { + LanguageString result = (LanguageString)super.clone(); + return result; } + } \ No newline at end of file