X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Fjvcard%2FTypeInfo.java;h=c5b812cc89939ae556f3b62f48bb7c234ce6ac11;hb=e4444b0bc462544629d9e7e7ab62b96a4d9cab10;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..c5b812c 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