- // Halt akka traffic
- log.info("Halting Akka traffic...");
- for(ClusterActor actor : standbySite) {
- try {
- log.info("Halting Akka traffic for: " + actor.getNode());
- // Build JSON with activeSite actor.getNode() and actor.getAkkaPort();
- JSONObject akkaInput = new JSONObject();
- JSONObject inputBlock = new JSONObject();
- JSONArray votingStateArray = new JSONArray();
- JSONObject nodeInfo;
- for(ClusterActor node : activeSite) {
- nodeInfo = new JSONObject();
- nodeInfo.put("node", node.getNode());
- nodeInfo.put("port", node.getAkkaPort());
- votingStateArray.put(nodeInfo);
+ if(Boolean.parseBoolean(input.getIsolate())) {
+ log.info("Halting Akka traffic...");
+ for(ClusterActor actor : standbySite) {
+ try {
+ log.info("Halting Akka traffic for: " + actor.getNode());
+ // Build JSON with activeSite actor.getNode() and actor.getAkkaPort();
+ JSONObject akkaInput = new JSONObject();
+ JSONObject inputBlock = new JSONObject();
+ JSONArray votingStateArray = new JSONArray();
+ JSONObject nodeInfo;
+ for(ClusterActor node : activeSite) {
+ nodeInfo = new JSONObject();
+ nodeInfo.put("node", node.getNode());
+ nodeInfo.put("port", node.getAkkaPort());
+ votingStateArray.put(nodeInfo);
+ }
+ inputBlock.put("node-info", votingStateArray);
+ akkaInput.put("input", inputBlock);
+ getRequestContent(HTTP_PROTOCOL + actor.getNode() + ":" + port + "/restconf/operations/gr-toolkit:halt-akka-traffic", HttpMethod.Post, akkaInput.toString());
+ } catch(IOException e) {
+ log.error("Could not halt Akka traffic for: " + actor.getNode(), e);