diff options
| author | Alex Rudyy <orudyy@apache.org> | 2015-03-10 22:26:52 +0000 |
|---|---|---|
| committer | Alex Rudyy <orudyy@apache.org> | 2015-03-10 22:26:52 +0000 |
| commit | 55826cdcf93afe3856313ce6197cf5ad18d5e945 (patch) | |
| tree | 9e10fb54e5e11910be86b60f982366398900df55 /qpid/java/broker-core/src | |
| parent | 0fcc28c303a9f3abfa8c85eb9f0a29039aa98df3 (diff) | |
| download | qpid-python-55826cdcf93afe3856313ce6197cf5ad18d5e945.tar.gz | |
QPID-6438: [Java Broker] Add support for POST method into REST interfaces in order to create configured objects via POST
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1665732 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/broker-core/src')
3 files changed, 12 insertions, 3 deletions
diff --git a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/PrincipalDatabaseAuthenticationManager.java b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/PrincipalDatabaseAuthenticationManager.java index d5f32a9d6d..0fb8938233 100644 --- a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/PrincipalDatabaseAuthenticationManager.java +++ b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/auth/manager/PrincipalDatabaseAuthenticationManager.java @@ -309,6 +309,10 @@ public abstract class PrincipalDatabaseAuthenticationManager<T extends Principal String username = (String) attributes.get("name"); String password = (String) attributes.get("password"); Principal p = new UsernamePrincipal(username); + if (_userMap.containsKey(p)) + { + throw new IllegalArgumentException("User '" + username + "' already exists"); + } boolean created = getPrincipalDatabase().createPrincipal(p, password.toCharArray()); if(created) diff --git a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractVirtualHost.java b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractVirtualHost.java index 95bd54424f..3680e476c7 100644 --- a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractVirtualHost.java +++ b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractVirtualHost.java @@ -669,7 +669,7 @@ public abstract class AbstractVirtualHost<X extends AbstractVirtualHost<X>> exte } catch (DuplicateNameException e) { - throw new QueueExistsException(getQueue(e.getName())); + throw new QueueExistsException(String.format("Queue with name '%s' already exists", e.getName()), getQueue(e.getName())); } } @@ -742,7 +742,7 @@ public abstract class AbstractVirtualHost<X extends AbstractVirtualHost<X>> exte } catch (DuplicateNameException e) { - throw new ExchangeExistsException(getExchange(e.getName())); + throw new ExchangeExistsException(String.format("Exchange with name '%s' already exists", e.getName()), getExchange(e.getName())); } } diff --git a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhost/ExchangeExistsException.java b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhost/ExchangeExistsException.java index 109bf85aef..fe988afe61 100644 --- a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhost/ExchangeExistsException.java +++ b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhost/ExchangeExistsException.java @@ -27,7 +27,12 @@ public class ExchangeExistsException extends RuntimeException public ExchangeExistsException(ExchangeImpl existing) { - super(existing.getName()); + this(existing.getName(), existing); + } + + public ExchangeExistsException(String message, ExchangeImpl existing) + { + super(message); _existing = existing; } |
