1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.commons.validator;
18
19 import java.io.Serializable;
20
21 /***
22 * An alternative message can be associated with a <code>Field</code>
23 * and a pluggable validator instead of using the default message
24 * stored in the <code>ValidatorAction</code> (aka pluggable validator).
25 * Instances of this class are configured with a <msg> xml element.
26 *
27 * @version $Revision: 478334 $ $Date: 2006-11-22 21:31:54 +0000 (Wed, 22 Nov 2006) $
28 */
29 public class Msg implements Cloneable, Serializable {
30
31 /***
32 * The resource bundle name that this Msg's <code>key</code> should be
33 * resolved in (optional).
34 * @since Validator 1.1
35 */
36 protected String bundle = null;
37
38 /***
39 * The key or value of the argument.
40 */
41 protected String key = null;
42
43 /***
44 * The name dependency that this argument goes with (optional).
45 */
46 protected String name = null;
47
48 /***
49 * Whether or not the key is a message resource (optional). Defaults to
50 * true. If it is 'true', the value will try to be resolved as a message
51 * resource.
52 * @since Validator 1.1.4
53 */
54 protected boolean resource = true;
55
56 /***
57 * Returns the resource bundle name.
58 * @return The bundle name.
59 * @since Validator 1.1
60 */
61 public String getBundle() {
62 return this.bundle;
63 }
64
65 /***
66 * Sets the resource bundle name.
67 * @param bundle The new bundle name.
68 * @since Validator 1.1
69 */
70 public void setBundle(String bundle) {
71 this.bundle = bundle;
72 }
73
74 /***
75 * Gets the name of the dependency.
76 * @return The dependency name.
77 */
78 public String getName() {
79 return name;
80 }
81
82 /***
83 * Sets the name of the dependency.
84 * @param name The dependency name.
85 */
86 public void setName(String name) {
87 this.name = name;
88 }
89
90 /***
91 * Gets the key/value.
92 * @return The message key/value.
93 */
94 public String getKey() {
95 return key;
96 }
97
98 /***
99 * Sets the key/value.
100 * @param key The message key/value.
101 */
102 public void setKey(String key) {
103 this.key = key;
104 }
105
106 /***
107 * Tests whether or not the key is a resource key or literal value.
108 * @return <code>true</code> if key is a resource key.
109 * @since Validator 1.1.4
110 */
111 public boolean isResource() {
112 return this.resource;
113 }
114
115 /***
116 * Sets whether or not the key is a resource.
117 * @param resource If true indicates the key is a resource.
118 * @since Validator 1.1.4
119 */
120 public void setResource(boolean resource) {
121 this.resource = resource;
122 }
123
124 /***
125 * Creates and returns a copy of this object.
126 * @return A copy of the Msg.
127 */
128 public Object clone() {
129 try {
130 return super.clone();
131
132 } catch(CloneNotSupportedException e) {
133 throw new RuntimeException(e.toString());
134 }
135 }
136
137 /***
138 * Returns a string representation of the object.
139 * @return Msg String representation.
140 */
141 public String toString() {
142 StringBuffer results = new StringBuffer();
143
144 results.append("Msg: name=");
145 results.append(name);
146 results.append(" key=");
147 results.append(key);
148 results.append(" resource=");
149 results.append(resource);
150 results.append(" bundle=");
151 results.append(bundle);
152 results.append("\n");
153
154 return results.toString();
155 }
156
157 }