diff options
| author | Andrew MacBean <macbean@apache.org> | 2014-09-11 14:30:42 +0000 |
|---|---|---|
| committer | Andrew MacBean <macbean@apache.org> | 2014-09-11 14:30:42 +0000 |
| commit | ddeca4d5acc43889e39253d16323c198475b6f66 (patch) | |
| tree | ec6fe60096be73248fde6114985bed7a739107c8 /qpid/java/bdbstore/src/main | |
| parent | 747d385998637bb73218ec716b713a207e9c6c12 (diff) | |
| download | qpid-python-ddeca4d5acc43889e39253d16323c198475b6f66.tar.gz | |
QPID-6092: [Java Broker] Editing permitted node list to be allowed when VHN is master or in STOPPED/ERRORED state. Server (1/2)
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1624299 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/bdbstore/src/main')
| -rw-r--r-- | qpid/java/bdbstore/src/main/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHAVirtualHostNodeImpl.java | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHAVirtualHostNodeImpl.java b/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHAVirtualHostNodeImpl.java index 604a79f4e3..e6109954c0 100644 --- a/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHAVirtualHostNodeImpl.java +++ b/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHAVirtualHostNodeImpl.java @@ -763,7 +763,11 @@ public class BDBHAVirtualHostNodeImpl extends AbstractVirtualHostNode<BDBHAVirtu private void validatePermittedNodes(List<String> proposedPermittedNodes) { - if (proposedPermittedNodes == null || proposedPermittedNodes.isEmpty()) + if (getRemoteReplicationNodes().size() > 0 && getRole() != NodeRole.MASTER && !(getState() == State.STOPPED || getState() == State.ERRORED)) + { + throw new IllegalArgumentException(String.format("Attribute '%s' can only be set on '%s' node or node in '%s' or '%s' state", PERMITTED_NODES, NodeRole.MASTER, State.STOPPED, State.ERRORED)); + } + else if (proposedPermittedNodes == null || proposedPermittedNodes.isEmpty()) { throw new IllegalArgumentException(String.format("Attribute '%s' is mandatory and must be set", PERMITTED_NODES)); } |
