Repository: incubator-juneau Updated Branches: refs/heads/master f53a0afbd -> 7b391d05b
Allow config file to contain simple comma-delimited lists. Project: http://git-wip-us.apache.org/repos/asf/incubator-juneau/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-juneau/commit/7b391d05 Tree: http://git-wip-us.apache.org/repos/asf/incubator-juneau/tree/7b391d05 Diff: http://git-wip-us.apache.org/repos/asf/incubator-juneau/diff/7b391d05 Branch: refs/heads/master Commit: 7b391d05b679796c3516b6d244d1305bc6cfb69d Parents: f53a0af Author: JamesBognar <[email protected]> Authored: Sun Sep 24 14:24:54 2017 -0400 Committer: JamesBognar <[email protected]> Committed: Sun Sep 24 14:24:54 2017 -0400 ---------------------------------------------------------------------- .../main/java/org/apache/juneau/ini/ConfigFileImpl.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/7b391d05/juneau-core/juneau-config/src/main/java/org/apache/juneau/ini/ConfigFileImpl.java ---------------------------------------------------------------------- diff --git a/juneau-core/juneau-config/src/main/java/org/apache/juneau/ini/ConfigFileImpl.java b/juneau-core/juneau-config/src/main/java/org/apache/juneau/ini/ConfigFileImpl.java index 5986ebc..94b78f1 100644 --- a/juneau-core/juneau-config/src/main/java/org/apache/juneau/ini/ConfigFileImpl.java +++ b/juneau-core/juneau-config/src/main/java/org/apache/juneau/ini/ConfigFileImpl.java @@ -245,7 +245,9 @@ public final class ConfigFileImpl extends ConfigFile { return (T)pBeanSession.convertToType(s, (Class<?>)type); char s1 = firstNonWhitespaceChar(s); - if (s1 != '[' && s1 != '{' && ! "null".equals(s)) + if (isArray(type) && s1 != '[') + s = '[' + s + ']'; + else if (s1 != '[' && s1 != '{' && ! "null".equals(s)) s = '\'' + s + '\''; if (parser == null) @@ -261,6 +263,13 @@ public final class ConfigFileImpl extends ConfigFile { return (c == String.class || c.isPrimitive() || c.isAssignableFrom(Number.class) || c == Boolean.class || c.isEnum()); } + private static boolean isArray(Type t) { + if (! (t instanceof Class)) + return false; + Class<?> c = (Class<?>)t; + return (c.isArray()); + } + //-------------------------------------------------------------------------------- // Map methods
