You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by ch...@apache.org on 2021/11/04 11:18:53 UTC
[pulsar] 05/14: [pulsar-admin] Modify exception of set-properties
for namespace (#12436)
This is an automated email from the ASF dual-hosted git repository.
chenhang pushed a commit to branch branch-2.8
in repository https://gitbox.apache.org/repos/asf/pulsar.git
commit dad0fd66da8c9a7be9a0fb238567e76ce11ed773
Author: Ruguo Yu <ji...@163.com>
AuthorDate: Mon Nov 1 16:03:58 2021 +0800
[pulsar-admin] Modify exception of set-properties for namespace (#12436)
when I execute ./pulsar-admin namespaces set-properties --properties a=a=b test/app1
we hope to display a readable prompt of set-properties for namespace when exception occurs.
Modifications
Change IllegalArgumentException to ParameterException
(cherry picked from commit cd9a65ee3c648443ee13f3248add1fd4e10cae89)
---
.../src/main/java/org/apache/pulsar/admin/cli/CmdNamespaces.java | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/CmdNamespaces.java b/pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/CmdNamespaces.java
index 44557bd..4c08bce 100644
--- a/pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/CmdNamespaces.java
+++ b/pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/CmdNamespaces.java
@@ -2195,15 +2195,18 @@ public class CmdNamespaces extends CmdBase {
String namespace = validateNamespace(params);
Map<String, String> map = new HashMap<>();
if (properties.size() == 0) {
- throw new IllegalArgumentException("Required at least one property for the namespace.");
+ throw new ParameterException(String.format("Required at least one property for the namespace, " +
+ "but found %d.", properties.size()));
}
for (String property : properties) {
if (!property.contains("=")) {
- throw new IllegalArgumentException("Invalid key value pair format.");
+ throw new ParameterException(String.format("Invalid key value pair '%s', " +
+ "valid format like 'a=a,b=b,c=c'.", property));
} else {
String[] keyValue = property.split("=");
if (keyValue.length != 2) {
- throw new IllegalArgumentException("Invalid key value pair format.");
+ throw new ParameterException(String.format("Invalid key value pair '%s', " +
+ "valid format like 'a=a,b=b,c=c'.", property));
}
map.put(keyValue[0], keyValue[1]);
}