X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Fjvcard%2FTypeInfo.java;h=847cc25189a65ee1e58291fce5d7813193b11e83;hb=08fbe0fb5e86bc7f1bec0a0b9e2d06290a70b212;hp=26314fa48a016603a9b3d9066a8d6d59f13a2c90;hpb=78e4af97505df331618f9c13dd5d98440d364764;p=jvcard.git diff --git a/src/be/nikiroo/jvcard/TypeInfo.java b/src/be/nikiroo/jvcard/TypeInfo.java index 26314fa..847cc25 100644 --- a/src/be/nikiroo/jvcard/TypeInfo.java +++ b/src/be/nikiroo/jvcard/TypeInfo.java @@ -1,58 +1,57 @@ package be.nikiroo.jvcard; -public class TypeInfo { +/** + * This class describes a type, that is, a key-value pair. + * + * @author niki + * + */ +@SuppressWarnings("rawtypes") +public class TypeInfo extends BaseClass { private String name; private String value; - private Data parent; - private boolean dirty; + /** + * Create a new {@link TypeInfo}. + * + * @param name + * the name of this {@link TypeInfo} (MUST NOT be NULL) + * @param value + * its value (MUST NOT be NULL) + */ + @SuppressWarnings("unchecked") public TypeInfo(String name, String value) { - this.name = name; - this.value = value; - } - - public String getName() { - return name; - } + super(null); - public String getValue() { - return value; + this.name = name.toUpperCase(); + this.value = value.toString(); // crash NOW if null } /** - * Check if this {@link TypeInfo} has unsaved changes. + * Return the name. * - * @return TRUE if it has + * @return the name */ - public boolean isDirty() { - return dirty; + public String getName() { + return name; } /** - * Notify that this element has unsaved changes, and notify its parent of - * the same if any. + * Return the value. + * + * @return the value */ - protected void setDirty() { - this.dirty = true; - if (this.parent != null) - this.parent.setDirty(); + public String getValue() { + return value; } - /** - * Notify this element and all its descendants that it is in pristine - * state (as opposed to dirty). - */ - void setPristine() { - dirty = false; + @Override + public String getId() { + return "" + name; } - /** - * Set the parent of this {@link TypeInfo}. - * - * @param parent - * the new parent - */ - void setParent(Data parent) { - this.parent = parent; + @Override + public String getState() { + return ("" + name + value).replace(' ', '_'); } -} \ No newline at end of file +}