* @author niki
*
*/
-@SuppressWarnings("rawtypes")
-public class TypeInfo extends BaseClass {
+public class TypeInfo extends BaseClass<TypeInfo> {
private String name;
private String value;
- @SuppressWarnings("unchecked")
+ /**
+ * Create a new {@link TypeInfo}.
+ *
+ * @param name
+ * the name of this {@link TypeInfo} (<b>MUST NOT</b> be NULL)
+ * @param value
+ * its value (<b>MUST NOT</b> be NULL)
+ */
public TypeInfo(String name, String value) {
super(null);
- this.name = name;
- this.value = value;
+ this.name = name.toUpperCase();
+ this.value = escape(value.toString()); // crash NOW if null
}
+ /**
+ * Return the name.
+ *
+ * @return the name
+ */
public String getName() {
return name;
}
+ /**
+ * Return the value.
+ *
+ * @return the value
+ */
public String getValue() {
+ return unescape(value);
+ }
+
+ /**
+ * Return the RAW value
+ *
+ * @return the RAW value
+ */
+ public String getRawValue() {
return value;
}
@Override
public String getState() {
- return "" + name + value;
+ return ("" + name + value).replace(' ', '_');
}
-}
\ No newline at end of file
+}