diff options
author | Andrew John Hughes <gnu_andrew@member.fsf.org> | 2007-04-07 11:19:08 +0000 |
---|---|---|
committer | Andrew John Hughes <gnu_andrew@member.fsf.org> | 2007-04-07 11:19:08 +0000 |
commit | 9784b45540e7cd94fb382eb10a0e24573797e2f3 (patch) | |
tree | eda74c9a70b04481491b021b0f85a1983571e6d7 | |
parent | 8d519a36a6c541b1d1d46b4a8773059aabd5ab2b (diff) | |
download | classpath-9784b45540e7cd94fb382eb10a0e24573797e2f3.tar.gz |
2007-04-07 Andrew John Hughes <gnu_andrew@member.fsf.org>
* javax/management/ObjectName.java:
(checkComponents()): Separate value and
key illegal characters to allow value wildcards.
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | javax/management/ObjectName.java | 15 |
2 files changed, 14 insertions, 7 deletions
@@ -1,5 +1,11 @@ 2007-04-07 Andrew John Hughes <gnu_andrew@member.fsf.org> + * javax/management/ObjectName.java: + (checkComponents()): Separate value and + key illegal characters to allow value wildcards. + +2007-04-07 Andrew John Hughes <gnu_andrew@member.fsf.org> + * javax/management/ObjectName.java (parse(String)): Fix parsing where the wildcard is juxtaposed between other pairs. diff --git a/javax/management/ObjectName.java b/javax/management/ObjectName.java index f41740469..421b85a35 100644 --- a/javax/management/ObjectName.java +++ b/javax/management/ObjectName.java @@ -282,16 +282,17 @@ public class ObjectName if (domain.indexOf('\n') != -1) throw new MalformedObjectNameException("The domain includes a newline " + "character."); - char[] chars = new char[] { ':', ',', '*', '?', '=' }; + char[] keychars = new char[] { ':', ',', '*', '?', '=' }; + char[] valchars = new char[] { ':', ',', '=' }; Iterator i = properties.entrySet().iterator(); while (i.hasNext()) { Map.Entry entry = (Map.Entry) i.next(); String key = (String) entry.getKey(); - for (int a = 0; a < chars.length; ++a) - if (key.indexOf(chars[a]) != -1) + for (int a = 0; a < keychars.length; ++a) + if (key.indexOf(keychars[a]) != -1) throw new MalformedObjectNameException("A key contains a '" + - chars[a] + "' " + + keychars[a] + "' " + "character."); String value = (String) entry.getValue(); int quote = value.indexOf('"'); @@ -312,10 +313,10 @@ public class ObjectName "a '\"' character."); else { - for (int a = 0; a < chars.length; ++a) - if (value.indexOf(chars[a]) != -1) + for (int a = 0; a < valchars.length; ++a) + if (value.indexOf(valchars[a]) != -1) throw new MalformedObjectNameException("A value contains " + - "a '" + chars[a] + "' " + + "a '" + valchars[a] + "' " + "character."); } } |