VCard format: correctly co/decode escaped values
[jvcard.git] / src / be / nikiroo / jvcard / TypeInfo.java
index c5b812cc89939ae556f3b62f48bb7c234ce6ac11..c172996bdb64e939a1718787ac48111a3e4aa87c 100644 (file)
@@ -6,8 +6,7 @@ package be.nikiroo.jvcard;
  * @author niki
  *
  */
-@SuppressWarnings("rawtypes")
-public class TypeInfo extends BaseClass {
+public class TypeInfo extends BaseClass<TypeInfo> {
        private String name;
        private String value;
 
@@ -19,12 +18,11 @@ public class TypeInfo extends BaseClass {
         * @param value
         *            its value (<b>MUST NOT</b> be NULL)
         */
-       @SuppressWarnings("unchecked")
        public TypeInfo(String name, String value) {
                super(null);
 
                this.name = name.toUpperCase();
-               this.value = value.toString(); // crash NOW if null
+               this.value = escape(value.toString()); // crash NOW if null
        }
 
        /**
@@ -42,6 +40,15 @@ public class TypeInfo extends BaseClass {
         * @return the value
         */
        public String getValue() {
+               return unescape(value);
+       }
+
+       /**
+        * Return the RAW value
+        * 
+        * @return the RAW value
+        */
+       public String getRawValue() {
                return value;
        }
 
@@ -54,4 +61,4 @@ public class TypeInfo extends BaseClass {
        public String getState() {
                return ("" + name + value).replace(' ', '_');
        }
-}
\ No newline at end of file
+}