/* * */ package org.smartly.packages.mongo.impl.i18n; import org.smartly.packages.mongo.impl.MongoObject; import org.smartly.packages.mongo.impl.util.MongoUtils; import java.util.List; /** * Translations have a compount key: * collection + entityid + field + lang, i.e. "users-12234-name-it_IT" * * @author angelo.geminiani */ public class MongoTranslation extends MongoObject { // ------------------------------------------------------------------------ // Constants // ------------------------------------------------------------------------ public static final String FIELD_NAME = "fieldname"; public static final String FIELD_ID = "entityid"; // VALUE // public static final String KEYWORDS = "keywords"; // ------------------------------------------------------------------------ // Constructor // ------------------------------------------------------------------------ public MongoTranslation(final Object entityId, final String field) { super.setId(getCompoundId(entityId, field)); this.setEntityId(entityId.toString()); this.setFieldName(field); } @Override public boolean equals(Object obj) { if (obj == null) { return false; } if (getClass() != obj.getClass()) { return false; } final MongoTranslation other = (MongoTranslation) obj; if ((this.getId() == null) ? (other.getId() != null) : !this.getId().equals(other.getId())) { return false; } return true; } @Override public int hashCode() { int hash = 7; hash = 89 * hash + (this.getId() != null ? this.getId().hashCode() : 0); return hash; } // ------------------------------------------------------------------------ // p u b l i c // ------------------------------------------------------------------------ public final Object getValue() { return MongoUtils.get(this, VALUE); } public final String getValueAsString() { return MongoUtils.getString(this, VALUE); } public final List getValueAsList() { return MongoUtils.getList(this, VALUE); } public final void setValue(final Object value) { if (null != value) { super.put(VALUE, value); } } public final String getKeywords() { return MongoUtils.getString(this, KEYWORDS); } public final void setKeywords(final String value) { if (null != value) { super.put(KEYWORDS, value); } } public final String getEntityId() { return MongoUtils.getString(this, FIELD_ID); } public final void setEntityId(final String value) { if (null != value) { super.put(FIELD_ID, value); } } public final String getFieldName() { return MongoUtils.getString(this, FIELD_NAME); } public final void setFieldName(final String value) { if (null != value) { super.put(FIELD_NAME, value); } } // ------------------------------------------------------------------------ // S T A T I C // ------------------------------------------------------------------------ public static String getCompoundId(final Object entityId, final String field) { return MongoUtils.concatId(entityId, field); } }