Can we change getMessageObject() to getMessage() ? Most everything in
Java is an object so it's redundant. Also, getMsgs() doesn't read very
well; what about getMessages() ? It would be good to add @since javadoc
tags so people don't assume this functionality was there from the
beginning.
David
--- [EMAIL PROTECTED] wrote:
> niallp 2004/11/11 04:18:25
>
> Modified: validator/src/share/org/apache/commons/validator
> Field.java
> Msg.java
> Log:
> Bug 29452 Enable Field/Msg to support all DTD attributes, based on
> patch submitted by Rich Wertz
>
> Changed Field to add getMsgObject(key) and getMsgs() methods
> Changed Msg to add resource property and getter/setter
>
> Revision Changes Path
> 1.34 +24 -10
>
jakarta-commons/validator/src/share/org/apache/commons/validator/Field.java
>
> Index: Field.java
> ===================================================================
> RCS file:
>
/home/cvs/jakarta-commons/validator/src/share/org/apache/commons/validator/Field.java,v
> retrieving revision 1.33
> retrieving revision 1.34
> diff -u -r1.33 -r1.34
> --- Field.java 8 Jun 2004 17:17:44 -0000 1.33
> +++ Field.java 11 Nov 2004 12:18:25 -0000 1.34
> @@ -207,14 +207,30 @@
> * Add a <code>Msg</code> to the <code>Field</code>.
> */
> public void addMsg(Msg msg) {
> - hMsgs.put(msg.getName(), msg.getKey());
> + hMsgs.put(msg.getName(), msg);
> }
>
> /**
> * Retrieve a message value.
> */
> public String getMsg(String key) {
> - return (String) hMsgs.get(key);
> + Msg msg = getMsgObject(key);
> + return (msg == null) ? null : msg.getKey();
> + }
> +
> + /**
> + * Retrieve a message object.
> + */
> + public Msg getMsgObject(String key) {
> + return (Msg)hMsgs.get(key);
> + }
> +
> + /**
> + * The <code>Field</code>'s messages are returned as an
> + * unmodifiable <code>Map</code>.
> + */
> + public Map getMsgs() {
> + return Collections.unmodifiableMap(hMsgs);
> }
>
> /**
> @@ -469,11 +485,9 @@
> String varKey = TOKEN_START + TOKEN_VAR;
> // Process Messages
> if (key != null && !key.startsWith(varKey)) {
> - for (Iterator i = hMsgs.keySet().iterator();
> i.hasNext();) {
> - String msgKey = (String) i.next();
> - String value = this.getMsg(msgKey);
> -
> - hMsgs.put(msgKey, ValidatorUtils.replace(value, key,
> replaceValue));
> + for (Iterator i = hMsgs.values().iterator();
> i.hasNext();) {
> + Msg msg = (Msg) i.next();
> + msg.setKey(ValidatorUtils.replace(msg.getKey(), key,
> replaceValue));
> }
> }
>
>
>
>
> 1.13 +30 -3
>
jakarta-commons/validator/src/share/org/apache/commons/validator/Msg.java
>
> Index: Msg.java
> ===================================================================
> RCS file:
>
/home/cvs/jakarta-commons/validator/src/share/org/apache/commons/validator/Msg.java,v
> retrieving revision 1.12
> retrieving revision 1.13
> diff -u -r1.12 -r1.13
> --- Msg.java 21 Feb 2004 17:10:29 -0000 1.12
> +++ Msg.java 11 Nov 2004 12:18:25 -0000 1.13
> @@ -49,6 +49,13 @@
> protected String name = null;
>
> /**
> + * Whether or not the key is a message resource (optional).
> Defaults to
> + * true. If it is 'true', the value will try to be resolved as a
> message
> + * resource.
> + */
> + protected boolean resource = true;
> +
> + /**
> * Returns the resource bundle name.
> * @since Validator 1.1
> */
> @@ -94,6 +101,22 @@
> }
>
> /**
> + * Tests whether or not the key is a resource key or literal
> value.
> + * @return <code>true</code> if key is a resource key.
> + */
> + public boolean isResource() {
> + return this.resource;
> + }
> +
> + /**
> + * Sets whether or not the key is a resource.
> + * @param resource If true indicates the key is a resource.
> + */
> + public void setResource(boolean resource) {
> + this.resource = resource;
> + }
> +
> + /**
> * Creates and returns a copy of this object.
> */
> public Object clone() {
> @@ -115,6 +138,10 @@
> results.append(name);
> results.append(" key=");
> results.append(key);
> + results.append(" resource=");
> + results.append(resource);
> + results.append(" bundle=");
> + results.append(bundle);
> results.append("\n");
>
> return results.toString();
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]