jDoc, possible leak on crash, new depth option
[jvcard.git] / src / be / nikiroo / jvcard / TypeInfo.java
1 package be.nikiroo.jvcard;
2
3 /**
4 * This class describes a type, that is, a key-value pair.
5 *
6 * @author niki
7 */
8 public class TypeInfo extends BaseClass<TypeInfo> {
9 private String name;
10 private String value;
11
12 /**
13 * Create a new {@link TypeInfo}.
14 *
15 * @param name
16 * the name of this {@link TypeInfo} (<b>MUST NOT</b> be NULL)
17 * @param value
18 * its value (<b>MUST NOT</b> be NULL)
19 */
20 public TypeInfo(String name, String value) {
21 super(null);
22
23 this.name = name.toUpperCase();
24 this.value = escape(value.toString()); // crash NOW if null
25 }
26
27 /**
28 * Return the name.
29 *
30 * @return the name
31 */
32 public String getName() {
33 return name;
34 }
35
36 /**
37 * Return the value.
38 *
39 * @return the value
40 */
41 public String getValue() {
42 return unescape(value);
43 }
44
45 /**
46 * Return the RAW value
47 *
48 * @return the RAW value
49 */
50 public String getRawValue() {
51 return value;
52 }
53
54 @Override
55 public String getId() {
56 return "" + name;
57 }
58
59 @Override
60 public String getState() {
61 return ("" + name + value).replace(' ', '_');
62 }
63 }