package fr.openwide.core.basicapp.core.business.common.model;
import javax.persistence.Embedded;
import javax.persistence.MappedSuperclass;
import org.bindgen.Bindable;
import org.hibernate.search.annotations.IndexedEmbedded;
import com.querydsl.core.annotations.QueryInit;
import fr.openwide.core.basicapp.core.business.common.model.embeddable.LocalizedText;
import fr.openwide.core.jpa.more.business.generic.model.GenericLocalizedGenericListItem;
@MappedSuperclass
@Bindable
public class LocalizedGenericListItem<E extends LocalizedGenericListItem<?>> extends
GenericLocalizedGenericListItem<E, LocalizedText> {
private static final long serialVersionUID = 3133040383005390191L;
@Embedded
@IndexedEmbedded
@QueryInit("*")
private LocalizedText label;
public LocalizedGenericListItem() {
this(new LocalizedText());
}
public LocalizedGenericListItem(LocalizedText localizedLabel) {
setLabel(localizedLabel);
}
@Override
public LocalizedText getLabel() {
if (label == null) {
label = new LocalizedText();
}
return label;
}
@Override
public void setLabel(LocalizedText label) {
this.label = label == null ? null : new LocalizedText(label);
}
}