[1/2] qpid-broker-j git commit: QPID-8110: [Broker-J] Add ability to check ERRORED state of entire configured object hierarchy

2018-02-26 Thread orudyy
Repository: qpid-broker-j
Updated Branches:
  refs/heads/7.0.x 7c69d1704 -> f57f6deb1


QPID-8110: [Broker-J] Add ability to check ERRORED state of entire configured 
object hierarchy

This closes #4
https://github.com/apache/qpid-broker-j/pull/4

(cherry picked from commit b720d7d1e81324441b8fbc2850ef19ca0fdf9bda)


Project: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/commit/3bbf01a0
Tree: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/tree/3bbf01a0
Diff: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/diff/3bbf01a0

Branch: refs/heads/7.0.x
Commit: 3bbf01a0b44192fd3e04264230ebc14e4abe3c7a
Parents: 7c69d17
Author: Alex Rudyy 
Authored: Fri Feb 23 15:58:12 2018 +
Committer: Alex Rudyy 
Committed: Mon Feb 26 16:38:56 2018 +

--
 .../org/apache/qpid/server/model/Broker.java|  4 +
 .../apache/qpid/server/model/BrokerImpl.java| 85 +++-
 .../qpid/server/model/DescendantType.java   | 26 ++
 3 files changed, 93 insertions(+), 22 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/3bbf01a0/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java
--
diff --git a/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java 
b/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java
index 6f7b74c..3bb26d4 100644
--- a/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java
+++ b/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java
@@ -54,6 +54,7 @@ public interface Broker> extends 
ConfiguredObject, EventL
 String CHANNEL_FLOW_CONTROL_ENFORCEMENT_TIMEOUT = 
"channel.flowControlEnforcementTimeout";
 String BROKER_FLOW_TO_DISK_THRESHOLD = "broker.flowToDiskThreshold";
 String BROKER_FAIL_STARTUP_WITH_ERRORED_CHILD = 
"broker.failStartupWithErroredChild";
+String BROKER_FAIL_STARTUP_WITH_ERRORED_CHILD_SCOPE = 
"broker.failStartupWithErroredChildScope";
 
 String BROKER_MSG_AUTH = "qpid.broker_msg_auth";
 
@@ -99,6 +100,9 @@ public interface Broker> extends 
ConfiguredObject, EventL
 @ManagedContextDefault(name = BROKER_FAIL_STARTUP_WITH_ERRORED_CHILD)
 boolean DEFAULT_BROKER_FAIL_STARTUP_WITH_ERRORED_CHILD = false;
 
+@ManagedContextDefault(name = BROKER_FAIL_STARTUP_WITH_ERRORED_CHILD_SCOPE)
+DescendantType DEFAULT_BROKER_FAIL_STARTUP_WITH_ERRORED_CHILD_SCOPE = 
DescendantType.IMMEDIATE;
+
 @ManagedContextDefault(name = BROKER_MSG_AUTH)
 boolean DEFAULT_BROKER_MSG_AUTH = false;
 

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/3bbf01a0/broker-core/src/main/java/org/apache/qpid/server/model/BrokerImpl.java
--
diff --git 
a/broker-core/src/main/java/org/apache/qpid/server/model/BrokerImpl.java 
b/broker-core/src/main/java/org/apache/qpid/server/model/BrokerImpl.java
index ad11a7b..42a83c1 100644
--- a/broker-core/src/main/java/org/apache/qpid/server/model/BrokerImpl.java
+++ b/broker-core/src/main/java/org/apache/qpid/server/model/BrokerImpl.java
@@ -27,6 +27,7 @@ import java.security.PrivilegedAction;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Collections;
+import java.util.EnumSet;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.LinkedList;
@@ -270,6 +271,28 @@ public class BrokerImpl extends 
AbstractContainer implements Broker<
 {
 throw new IllegalConfigurationException("Cannot change the model 
version");
 }
+
+if (changedAttributes.contains(CONTEXT))
+{
+@SuppressWarnings("unchecked")
+Map context = (Map) 
proxyForValidation.getAttribute(CONTEXT);
+if 
(context.containsKey(BROKER_FAIL_STARTUP_WITH_ERRORED_CHILD_SCOPE))
+{
+String value = 
context.get(BROKER_FAIL_STARTUP_WITH_ERRORED_CHILD_SCOPE);
+try
+{
+DescendantType.valueOf(value);
+}
+catch (Exception e)
+{
+throw new IllegalConfigurationException(String.format(
+"Unsupported value '%s' is specified for context 
variable '%s'. Please, change it to any of supported : %s",
+value,
+BROKER_FAIL_STARTUP_WITH_ERRORED_CHILD_SCOPE,
+EnumSet.allOf(DescendantType.class)));
+}
+}
+}
 }
 
 @Override
@@ -359,38 +382,32 @@ public class BrokerImpl extends 
AbstractContainer implements Broker<
 
 private void performActivation()
 {
-

qpid-broker-j git commit: QPID-8110: [Broker-J] Add ability to check ERRORED state of entire configured object hierarchy

2018-02-23 Thread orudyy
Repository: qpid-broker-j
Updated Branches:
  refs/heads/master 0a26d40f3 -> b720d7d1e


QPID-8110: [Broker-J] Add ability to check ERRORED state of entire configured 
object hierarchy

This closes #4
https://github.com/apache/qpid-broker-j/pull/4


Project: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/commit/b720d7d1
Tree: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/tree/b720d7d1
Diff: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/diff/b720d7d1

Branch: refs/heads/master
Commit: b720d7d1e81324441b8fbc2850ef19ca0fdf9bda
Parents: 0a26d40
Author: Alex Rudyy 
Authored: Fri Feb 23 15:58:12 2018 +
Committer: Alex Rudyy 
Committed: Fri Feb 23 15:58:12 2018 +

--
 .../org/apache/qpid/server/model/Broker.java|  4 +
 .../apache/qpid/server/model/BrokerImpl.java| 85 +++-
 .../qpid/server/model/DescendantType.java   | 26 ++
 3 files changed, 93 insertions(+), 22 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/b720d7d1/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java
--
diff --git a/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java 
b/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java
index 6f7b74c..3bb26d4 100644
--- a/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java
+++ b/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java
@@ -54,6 +54,7 @@ public interface Broker> extends 
ConfiguredObject, EventL
 String CHANNEL_FLOW_CONTROL_ENFORCEMENT_TIMEOUT = 
"channel.flowControlEnforcementTimeout";
 String BROKER_FLOW_TO_DISK_THRESHOLD = "broker.flowToDiskThreshold";
 String BROKER_FAIL_STARTUP_WITH_ERRORED_CHILD = 
"broker.failStartupWithErroredChild";
+String BROKER_FAIL_STARTUP_WITH_ERRORED_CHILD_SCOPE = 
"broker.failStartupWithErroredChildScope";
 
 String BROKER_MSG_AUTH = "qpid.broker_msg_auth";
 
@@ -99,6 +100,9 @@ public interface Broker> extends 
ConfiguredObject, EventL
 @ManagedContextDefault(name = BROKER_FAIL_STARTUP_WITH_ERRORED_CHILD)
 boolean DEFAULT_BROKER_FAIL_STARTUP_WITH_ERRORED_CHILD = false;
 
+@ManagedContextDefault(name = BROKER_FAIL_STARTUP_WITH_ERRORED_CHILD_SCOPE)
+DescendantType DEFAULT_BROKER_FAIL_STARTUP_WITH_ERRORED_CHILD_SCOPE = 
DescendantType.IMMEDIATE;
+
 @ManagedContextDefault(name = BROKER_MSG_AUTH)
 boolean DEFAULT_BROKER_MSG_AUTH = false;
 

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/b720d7d1/broker-core/src/main/java/org/apache/qpid/server/model/BrokerImpl.java
--
diff --git 
a/broker-core/src/main/java/org/apache/qpid/server/model/BrokerImpl.java 
b/broker-core/src/main/java/org/apache/qpid/server/model/BrokerImpl.java
index 7119d00..62c71b9 100644
--- a/broker-core/src/main/java/org/apache/qpid/server/model/BrokerImpl.java
+++ b/broker-core/src/main/java/org/apache/qpid/server/model/BrokerImpl.java
@@ -27,6 +27,7 @@ import java.security.PrivilegedAction;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Collections;
+import java.util.EnumSet;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.LinkedList;
@@ -273,6 +274,28 @@ public class BrokerImpl extends 
AbstractContainer implements Broker<
 {
 throw new IllegalConfigurationException("Cannot change the model 
version");
 }
+
+if (changedAttributes.contains(CONTEXT))
+{
+@SuppressWarnings("unchecked")
+Map context = (Map) 
proxyForValidation.getAttribute(CONTEXT);
+if 
(context.containsKey(BROKER_FAIL_STARTUP_WITH_ERRORED_CHILD_SCOPE))
+{
+String value = 
context.get(BROKER_FAIL_STARTUP_WITH_ERRORED_CHILD_SCOPE);
+try
+{
+DescendantType.valueOf(value);
+}
+catch (Exception e)
+{
+throw new IllegalConfigurationException(String.format(
+"Unsupported value '%s' is specified for context 
variable '%s'. Please, change it to any of supported : %s",
+value,
+BROKER_FAIL_STARTUP_WITH_ERRORED_CHILD_SCOPE,
+EnumSet.allOf(DescendantType.class)));
+}
+}
+}
 }
 
 @Override
@@ -362,38 +385,32 @@ public class BrokerImpl extends 
AbstractContainer implements Broker<
 
 private void performActivation()
 {
-boolean hasBrokerAnyErroredChildren = false;
+final