[16/32] geode git commit: GEODE-2950: Updated error messages
GEODE-2950: Updated error messages * Different error messages are displayed when validating region names versus indexes. * Added flexible enum allowing for expanded error messages and name validation. This closes #540 Project: http://git-wip-us.apache.org/repos/asf/geode/repo Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/5ab4a693 Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/5ab4a693 Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/5ab4a693 Branch: refs/heads/feature/GEODE-1279 Commit: 5ab4a69378c697fdf050048165e2945a4b028eb7 Parents: 0fe0a10 Author: David AnutaAuthored: Thu May 25 15:18:40 2017 -0700 Committer: nabarun Committed: Thu May 25 16:14:30 2017 -0700 -- .../lucene/internal/LuceneServiceImpl.java | 58 +++- .../functions/LuceneCreateIndexFunction.java| 7 ++- .../cli/LuceneIndexCommandsDUnitTest.java | 10 ++-- 3 files changed, 43 insertions(+), 32 deletions(-) -- http://git-wip-us.apache.org/repos/asf/geode/blob/5ab4a693/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java -- diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java index c0d6266..23b6925 100644 --- a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java +++ b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java @@ -128,34 +128,42 @@ public class LuceneServiceImpl implements InternalLuceneService { return getUniqueIndexName(indexName, regionPath) + regionSuffix; } - public static void validateCreateIndexCommandParams(String name, boolean isRegionPath) { -if (name == null) { - throw new IllegalArgumentException( - LocalizedStrings.LocalRegion_NAME_CANNOT_BE_NULL.toLocalizedString()); -} -if (name.isEmpty()) { - throw new IllegalArgumentException( - LocalizedStrings.LocalRegion_NAME_CANNOT_BE_EMPTY.toLocalizedString()); -} + public enum validateCommandParameters { +REGION_PATH, INDEX_NAME; -if (name.startsWith("__")) { - throw new IllegalArgumentException( - "Parameter names may not begin with a double-underscore: " + name); -} +public void validateName(String name) { + if (name == null) { +throw new IllegalArgumentException( + LocalizedStrings.LocalRegion_NAME_CANNOT_BE_NULL.toLocalizedString()); + } + if (name.isEmpty()) { +throw new IllegalArgumentException( + LocalizedStrings.LocalRegion_NAME_CANNOT_BE_EMPTY.toLocalizedString()); + } -final Pattern NAME_PATTERN; -if (isRegionPath) { - NAME_PATTERN = Pattern.compile("[aA-zZ0-9-_./]+"); -} else { - NAME_PATTERN = Pattern.compile("[aA-zZ0-9-_.]+"); -} + boolean iae = false; + String msg = + " names may only be alphanumeric, must not begin with double-underscores, but can contain hyphens"; + Matcher matcher = null; + switch (this) { +case REGION_PATH: + matcher = Pattern.compile("[aA-zZ0-9-_./]+").matcher(name); + msg = "Region" + msg + ", underscores, or forward slashes: "; + iae = name.startsWith("__") || !matcher.matches(); + break; +case INDEX_NAME: + matcher = Pattern.compile("[aA-zZ0-9-_.]+").matcher(name); + msg = "Index" + msg + " or underscores: "; + iae = name.startsWith("__") || !matcher.matches(); + break; +default: + throw new IllegalArgumentException("Illegal option for validateName function"); + } -// Ensure the region only contains valid characters -Matcher matcher = NAME_PATTERN.matcher(name); -if (!matcher.matches()) { - throw new IllegalArgumentException( - "Parameter names may only be alphanumeric, though they can contain hyphens or underscores: " - + name); + // Ensure the region only contains valid characters + if (iae) { +throw new IllegalArgumentException(msg + name); + } } } http://git-wip-us.apache.org/repos/asf/geode/blob/5ab4a693/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/cli/functions/LuceneCreateIndexFunction.java -- diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/cli/functions/LuceneCreateIndexFunction.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/cli/functions/LuceneCreateIndexFunction.java index 26ac0e2..d49f7f9 100644 ---
[10/43] geode git commit: GEODE-2950: Updated error messages
GEODE-2950: Updated error messages * Different error messages are displayed when validating region names versus indexes. * Added flexible enum allowing for expanded error messages and name validation. This closes #540 Project: http://git-wip-us.apache.org/repos/asf/geode/repo Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/5ab4a693 Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/5ab4a693 Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/5ab4a693 Branch: refs/heads/feature/GEODE-2632-17 Commit: 5ab4a69378c697fdf050048165e2945a4b028eb7 Parents: 0fe0a10 Author: David AnutaAuthored: Thu May 25 15:18:40 2017 -0700 Committer: nabarun Committed: Thu May 25 16:14:30 2017 -0700 -- .../lucene/internal/LuceneServiceImpl.java | 58 +++- .../functions/LuceneCreateIndexFunction.java| 7 ++- .../cli/LuceneIndexCommandsDUnitTest.java | 10 ++-- 3 files changed, 43 insertions(+), 32 deletions(-) -- http://git-wip-us.apache.org/repos/asf/geode/blob/5ab4a693/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java -- diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java index c0d6266..23b6925 100644 --- a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java +++ b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java @@ -128,34 +128,42 @@ public class LuceneServiceImpl implements InternalLuceneService { return getUniqueIndexName(indexName, regionPath) + regionSuffix; } - public static void validateCreateIndexCommandParams(String name, boolean isRegionPath) { -if (name == null) { - throw new IllegalArgumentException( - LocalizedStrings.LocalRegion_NAME_CANNOT_BE_NULL.toLocalizedString()); -} -if (name.isEmpty()) { - throw new IllegalArgumentException( - LocalizedStrings.LocalRegion_NAME_CANNOT_BE_EMPTY.toLocalizedString()); -} + public enum validateCommandParameters { +REGION_PATH, INDEX_NAME; -if (name.startsWith("__")) { - throw new IllegalArgumentException( - "Parameter names may not begin with a double-underscore: " + name); -} +public void validateName(String name) { + if (name == null) { +throw new IllegalArgumentException( + LocalizedStrings.LocalRegion_NAME_CANNOT_BE_NULL.toLocalizedString()); + } + if (name.isEmpty()) { +throw new IllegalArgumentException( + LocalizedStrings.LocalRegion_NAME_CANNOT_BE_EMPTY.toLocalizedString()); + } -final Pattern NAME_PATTERN; -if (isRegionPath) { - NAME_PATTERN = Pattern.compile("[aA-zZ0-9-_./]+"); -} else { - NAME_PATTERN = Pattern.compile("[aA-zZ0-9-_.]+"); -} + boolean iae = false; + String msg = + " names may only be alphanumeric, must not begin with double-underscores, but can contain hyphens"; + Matcher matcher = null; + switch (this) { +case REGION_PATH: + matcher = Pattern.compile("[aA-zZ0-9-_./]+").matcher(name); + msg = "Region" + msg + ", underscores, or forward slashes: "; + iae = name.startsWith("__") || !matcher.matches(); + break; +case INDEX_NAME: + matcher = Pattern.compile("[aA-zZ0-9-_.]+").matcher(name); + msg = "Index" + msg + " or underscores: "; + iae = name.startsWith("__") || !matcher.matches(); + break; +default: + throw new IllegalArgumentException("Illegal option for validateName function"); + } -// Ensure the region only contains valid characters -Matcher matcher = NAME_PATTERN.matcher(name); -if (!matcher.matches()) { - throw new IllegalArgumentException( - "Parameter names may only be alphanumeric, though they can contain hyphens or underscores: " - + name); + // Ensure the region only contains valid characters + if (iae) { +throw new IllegalArgumentException(msg + name); + } } } http://git-wip-us.apache.org/repos/asf/geode/blob/5ab4a693/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/cli/functions/LuceneCreateIndexFunction.java -- diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/cli/functions/LuceneCreateIndexFunction.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/cli/functions/LuceneCreateIndexFunction.java index 26ac0e2..d49f7f9 100644 ---
geode git commit: GEODE-2950: Updated error messages
Repository: geode Updated Branches: refs/heads/develop 0fe0a1061 -> 5ab4a6937 GEODE-2950: Updated error messages * Different error messages are displayed when validating region names versus indexes. * Added flexible enum allowing for expanded error messages and name validation. This closes #540 Project: http://git-wip-us.apache.org/repos/asf/geode/repo Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/5ab4a693 Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/5ab4a693 Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/5ab4a693 Branch: refs/heads/develop Commit: 5ab4a69378c697fdf050048165e2945a4b028eb7 Parents: 0fe0a10 Author: David AnutaAuthored: Thu May 25 15:18:40 2017 -0700 Committer: nabarun Committed: Thu May 25 16:14:30 2017 -0700 -- .../lucene/internal/LuceneServiceImpl.java | 58 +++- .../functions/LuceneCreateIndexFunction.java| 7 ++- .../cli/LuceneIndexCommandsDUnitTest.java | 10 ++-- 3 files changed, 43 insertions(+), 32 deletions(-) -- http://git-wip-us.apache.org/repos/asf/geode/blob/5ab4a693/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java -- diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java index c0d6266..23b6925 100644 --- a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java +++ b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java @@ -128,34 +128,42 @@ public class LuceneServiceImpl implements InternalLuceneService { return getUniqueIndexName(indexName, regionPath) + regionSuffix; } - public static void validateCreateIndexCommandParams(String name, boolean isRegionPath) { -if (name == null) { - throw new IllegalArgumentException( - LocalizedStrings.LocalRegion_NAME_CANNOT_BE_NULL.toLocalizedString()); -} -if (name.isEmpty()) { - throw new IllegalArgumentException( - LocalizedStrings.LocalRegion_NAME_CANNOT_BE_EMPTY.toLocalizedString()); -} + public enum validateCommandParameters { +REGION_PATH, INDEX_NAME; -if (name.startsWith("__")) { - throw new IllegalArgumentException( - "Parameter names may not begin with a double-underscore: " + name); -} +public void validateName(String name) { + if (name == null) { +throw new IllegalArgumentException( + LocalizedStrings.LocalRegion_NAME_CANNOT_BE_NULL.toLocalizedString()); + } + if (name.isEmpty()) { +throw new IllegalArgumentException( + LocalizedStrings.LocalRegion_NAME_CANNOT_BE_EMPTY.toLocalizedString()); + } -final Pattern NAME_PATTERN; -if (isRegionPath) { - NAME_PATTERN = Pattern.compile("[aA-zZ0-9-_./]+"); -} else { - NAME_PATTERN = Pattern.compile("[aA-zZ0-9-_.]+"); -} + boolean iae = false; + String msg = + " names may only be alphanumeric, must not begin with double-underscores, but can contain hyphens"; + Matcher matcher = null; + switch (this) { +case REGION_PATH: + matcher = Pattern.compile("[aA-zZ0-9-_./]+").matcher(name); + msg = "Region" + msg + ", underscores, or forward slashes: "; + iae = name.startsWith("__") || !matcher.matches(); + break; +case INDEX_NAME: + matcher = Pattern.compile("[aA-zZ0-9-_.]+").matcher(name); + msg = "Index" + msg + " or underscores: "; + iae = name.startsWith("__") || !matcher.matches(); + break; +default: + throw new IllegalArgumentException("Illegal option for validateName function"); + } -// Ensure the region only contains valid characters -Matcher matcher = NAME_PATTERN.matcher(name); -if (!matcher.matches()) { - throw new IllegalArgumentException( - "Parameter names may only be alphanumeric, though they can contain hyphens or underscores: " - + name); + // Ensure the region only contains valid characters + if (iae) { +throw new IllegalArgumentException(msg + name); + } } } http://git-wip-us.apache.org/repos/asf/geode/blob/5ab4a693/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/cli/functions/LuceneCreateIndexFunction.java -- diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/cli/functions/LuceneCreateIndexFunction.java