summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKAPIL SINGAL <ks220y@att.com>2020-07-10 17:16:35 +0000
committerGerrit Code Review <gerrit@onap.org>2020-07-10 17:16:35 +0000
commit45ae292ebf90716eae15f48dbb03573f14fcee03 (patch)
tree7b5107f11b3ff0a0f0a44f782770cbd3459b4f56
parentc2e15234054650f9f46fc533cac95015935a86b0 (diff)
parent6f386e7a227b73d3c77786460e1e0a11fc8cd26a (diff)
Merge "Reformat sdnr websocketmanager2 to ONAP code style"
-rw-r--r--sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/Blueprint.java4
-rw-r--r--sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/WebSocketManager.java14
-rw-r--r--sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/WebSocketManagerProvider.java8
-rw-r--r--sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/WebSocketManagerSocket.java28
-rw-r--r--sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/utils/AkkaConfig.java167
-rw-r--r--sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/utils/UserScopes.java40
-rw-r--r--sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/websocket/SyncWebSocketClient.java172
-rw-r--r--sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/AkkaConfigTest.java19
-rw-r--r--sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/UserScopeTest.java14
-rw-r--r--sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/WebsockerProviderTest.java6
-rw-r--r--sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/WebsocketClientTest.java6
-rw-r--r--sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/WebsocketMessageTest.java13
-rw-r--r--sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/WebsocketServerConnectTest.java4
13 files changed, 252 insertions, 243 deletions
diff --git a/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/Blueprint.java b/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/Blueprint.java
index bd84043a2..7deefa940 100644
--- a/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/Blueprint.java
+++ b/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/Blueprint.java
@@ -1,4 +1,4 @@
-/*******************************************************************************
+/*
* ============LICENSE_START========================================================================
* ONAP : ccsdk feature sdnr wt
* =================================================================================================
@@ -14,7 +14,7 @@
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
* ============LICENSE_END==========================================================================
- ******************************************************************************/
+ */
package org.onap.ccsdk.features.sdnr.wt.websocketmanager2;
import org.opendaylight.mdsal.binding.api.RpcProviderService;
diff --git a/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/WebSocketManager.java b/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/WebSocketManager.java
index ea06ffcd3..1c4d924cb 100644
--- a/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/WebSocketManager.java
+++ b/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/WebSocketManager.java
@@ -1,4 +1,4 @@
-/*******************************************************************************
+/*
* ============LICENSE_START========================================================================
* ONAP : ccsdk feature sdnr wt
* =================================================================================================
@@ -14,7 +14,7 @@
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
* ============LICENSE_END==========================================================================
- ******************************************************************************/
+ */
package org.onap.ccsdk.features.sdnr.wt.websocketmanager2;
import com.google.common.util.concurrent.ListenableFuture;
@@ -37,9 +37,9 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.websocke
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.websocketmanager.rev150105.WebsocketEventOutput;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.websocketmanager.rev150105.WebsocketEventOutputBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.websocketmanager.rev150105.WebsocketmanagerService;
+import org.opendaylight.yangtools.yang.common.RpcError.ErrorType;
import org.opendaylight.yangtools.yang.common.RpcResult;
import org.opendaylight.yangtools.yang.common.RpcResultBuilder;
-import org.opendaylight.yangtools.yang.common.RpcError.ErrorType;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -54,9 +54,9 @@ public class WebSocketManager extends WebSocketServlet implements Websocketmanag
private final AkkaConfig akkaConfig;
/**
* timeout for websocket with no messages in ms
- */
+ */
//private static final long IDLE_TIMEOUT = 5 * 60 * 1000L;
- private static final long IDLE_TIMEOUT =0L;
+ private static final long IDLE_TIMEOUT = 0L;
private final ArrayList<URI> clusterNodeClients = new ArrayList<>();
@@ -142,12 +142,12 @@ public class WebSocketManager extends WebSocketServlet implements Websocketmanag
/**********************************************************
* Private functions
- */
+ */
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
if (req.getHeader("Upgrade") != null) {
- /* Accept upgrade request */
+ /* Accept upgrade request */
resp.setStatus(101);
resp.setHeader("Upgrade", "XYZP");
resp.setHeader("Connection", "Upgrade");
diff --git a/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/WebSocketManagerProvider.java b/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/WebSocketManagerProvider.java
index 881ee1a82..7e82b5e0f 100644
--- a/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/WebSocketManagerProvider.java
+++ b/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/WebSocketManagerProvider.java
@@ -1,4 +1,4 @@
-/*******************************************************************************
+/*
* ============LICENSE_START========================================================================
* ONAP : ccsdk feature sdnr wt
* =================================================================================================
@@ -14,7 +14,7 @@
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
* ============LICENSE_END==========================================================================
- ******************************************************************************/
+ */
package org.onap.ccsdk.features.sdnr.wt.websocketmanager2;
import com.google.common.util.concurrent.ListenableFuture;
@@ -107,8 +107,8 @@ public class WebSocketManagerProvider extends Blueprint implements Websocketmana
@Override
public ListenableFuture<RpcResult<WebsocketEventOutput>> websocketEvent(WebsocketEventInput input) {
if (wsServlet != null) {
- return wsServlet.websocketEvent(input);
- } else {
+ return wsServlet.websocketEvent(input);
+ } else {
RpcResultBuilder<WebsocketEventOutput> result = RpcResultBuilder.failed();
return result.withError(ErrorType.APPLICATION, "Not intialized").buildFuture();
}
diff --git a/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/WebSocketManagerSocket.java b/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/WebSocketManagerSocket.java
index 0fd2cae4e..70810a7ac 100644
--- a/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/WebSocketManagerSocket.java
+++ b/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/WebSocketManagerSocket.java
@@ -1,4 +1,4 @@
-/*******************************************************************************
+/*
* ============LICENSE_START========================================================================
* ONAP : ccsdk feature sdnr wt
* =================================================================================================
@@ -14,7 +14,7 @@
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
* ============LICENSE_END==========================================================================
- ******************************************************************************/
+ */
package org.onap.ccsdk.features.sdnr.wt.websocketmanager2;
import java.util.ArrayList;
@@ -50,15 +50,15 @@ public class WebSocketManagerSocket extends WebSocketAdapter {
/**
* list of all sessionids
- */
+ */
private static final List<String> sessionIds = new ArrayList<>();
/**
* map of sessionid <=> UserScopes
- */
+ */
private static final HashMap<String, UserScopes> userScopesList = new HashMap<>();
/**
* map of class.hashCode <=> class
- */
+ */
private static final HashMap<String, WebSocketManagerSocket> clientList = new HashMap<>();
private final String myUniqueSessionId;
@@ -88,7 +88,7 @@ public class WebSocketManagerSocket extends WebSocketAdapter {
@Override
public void onWebSocketText(String message) {
- LOG.info("{} has sent {}",this.getRemoteAdr(), message);
+ LOG.info("{} has sent {}", this.getRemoteAdr(), message);
if (!this.manageClientRequest(message)) {
this.manageClientRequest2(message);
}
@@ -130,10 +130,9 @@ public class WebSocketManagerSocket extends WebSocketAdapter {
/**
*
- * @param request is a json object
- * {"data":"scopes","scopes":["scope1","scope2",...]}
+ * @param request is a json object {"data":"scopes","scopes":["scope1","scope2",...]}
* @return if handled
- */
+ */
private boolean manageClientRequest(String request) {
boolean ret = false;
try {
@@ -160,7 +159,7 @@ public class WebSocketManagerSocket extends WebSocketAdapter {
/*
* broadcast message to all your clients
- */
+ */
private void manageClientRequest2(String request) {
try {
JSONObject o = new JSONObject(request);
@@ -180,7 +179,8 @@ public class WebSocketManagerSocket extends WebSocketAdapter {
LOG.warn("problem sending message: " + e.getMessage());
}
}
- public String getSessionId() {
+
+ public String getSessionId() {
return this.myUniqueSessionId;
}
@@ -209,12 +209,12 @@ public class WebSocketManagerSocket extends WebSocketAdapter {
}
}
}
+
public static void broadCast(String nodeName, String eventType, String xmlEvent) {
- if(clientList.size()>0) {
+ if (clientList.size() > 0) {
Set<Entry<String, WebSocketManagerSocket>> e = clientList.entrySet();
WebSocketManagerSocket s = e.iterator().next().getValue();
- if(s!=null)
- {
+ if (s != null) {
s.sendToAll(nodeName, eventType, xmlEvent);
}
}
diff --git a/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/utils/AkkaConfig.java b/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/utils/AkkaConfig.java
index 4381595a7..93a941d20 100644
--- a/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/utils/AkkaConfig.java
+++ b/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/utils/AkkaConfig.java
@@ -1,4 +1,4 @@
-/*******************************************************************************
+/*
* ============LICENSE_START========================================================================
* ONAP : ccsdk feature sdnr wt
* =================================================================================================
@@ -6,17 +6,19 @@
* =================================================================================================
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software distributed under the License
* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
* ============LICENSE_END==========================================================================
- ******************************************************************************/
+ */
package org.onap.ccsdk.features.sdnr.wt.websocketmanager2.utils;
+import com.typesafe.config.Config;
+import com.typesafe.config.ConfigFactory;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
@@ -26,42 +28,40 @@ import org.onap.ccsdk.features.sdnr.wt.websocketmanager2.WebSocketManager;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import com.typesafe.config.Config;
-import com.typesafe.config.ConfigFactory;
-
-public class AkkaConfig{
+public class AkkaConfig {
private static final Logger LOG = LoggerFactory.getLogger(WebSocketManager.class.getName());
- public static class ClusterNodeInfo
- {
+ public static class ClusterNodeInfo {
@Override
public String toString() {
return "ClusterNodeInfo [protocol=" + protocol + ", clusterName=" + clusterName + ", remoteAdr=" + remoteAdr
+ ", port=" + port + "]";
}
+
private final String protocol;
private final String clusterName;
private final String remoteAdr;
private final int port;
- public String getRemoteAddress() {return this.remoteAdr;}
- public ClusterNodeInfo(String s) throws Exception
- {
- final String regex ="([a-z.]*):\\/\\/([a-zA-Z0-9-]*)@([a-zA-Z0-9.-]*):([0-9]*)";
+ public String getRemoteAddress() {
+ return this.remoteAdr;
+ }
+
+ public ClusterNodeInfo(String s) throws Exception {
+ final String regex = "([a-z.]*):\\/\\/([a-zA-Z0-9-]*)@([a-zA-Z0-9.-]*):([0-9]*)";
final Pattern pattern = Pattern.compile(regex);
final Matcher matcher = pattern.matcher(s);
- if(!matcher.find()) {
+ if (!matcher.find()) {
throw new Exception("invalid seedNode format");
}
- this.protocol=matcher.group(1);
- this.clusterName=matcher.group(2);
- this.remoteAdr=matcher.group(3);
- this.port=Integer.parseInt(matcher.group(4));
+ this.protocol = matcher.group(1);
+ this.clusterName = matcher.group(2);
+ this.remoteAdr = matcher.group(3);
+ this.port = Integer.parseInt(matcher.group(4));
}
}
- public static class ClusterRoleInfo
- {
+ public static class ClusterRoleInfo {
@Override
public String toString() {
return "ClusterRoleInfo [Role=" + Role + ", Index=" + Index + "]";
@@ -69,58 +69,61 @@ public class AkkaConfig{
private final String Role;
private final int Index;
+
public ClusterRoleInfo(String s) throws Exception {
final String regex = "([a-z]*)-([0-9]*)";
final Pattern pattern = Pattern.compile(regex);
final Matcher matcher = pattern.matcher(s);
- if(!matcher.find()) {
+ if (!matcher.find()) {
throw new Exception("invalid role format");
}
- this.Role=matcher.group(1);
- this.Index=Integer.parseInt(matcher.group(2));
+ this.Role = matcher.group(1);
+ this.Index = Integer.parseInt(matcher.group(2));
}
}
- public static class ClusterConfig
- {
+ public static class ClusterConfig {
@Override
public String toString() {
return "ClusterConfig [seedNodes=" + seedNodes + ", roles=" + roles + "]";
}
+
private final List<ClusterNodeInfo> seedNodes;
private final List<ClusterRoleInfo> roles;
private final ClusterNodeInfo ismeInfo;
+
public ClusterConfig(Config o) throws Exception {
{
- this.seedNodes = new ArrayList<>();
- List<String> a= o.getStringList("seed-nodes");
- for(int i=0;i<a.size();i++)
- {
- ClusterNodeInfo info=new ClusterNodeInfo(a.get(i));
- this.seedNodes.add(info);
- }
- this.roles=new ArrayList<>();
- a=o.getStringList("roles");
- for(int i=0;i<a.size();i++)
- {
- ClusterRoleInfo s=new ClusterRoleInfo(a.get(i));
- this.roles.add(s);
- }
- int idx=this.roles.get(0).Index-1;
- if(idx>=0 && idx<this.seedNodes.size()) {
- this.ismeInfo=this.seedNodes.get(idx);
- } else {
- this.ismeInfo=null;
+ this.seedNodes = new ArrayList<>();
+ List<String> a = o.getStringList("seed-nodes");
+ for (int i = 0; i < a.size(); i++) {
+ ClusterNodeInfo info = new ClusterNodeInfo(a.get(i));
+ this.seedNodes.add(info);
+ }
+ this.roles = new ArrayList<>();
+ a = o.getStringList("roles");
+ for (int i = 0; i < a.size(); i++) {
+ ClusterRoleInfo s = new ClusterRoleInfo(a.get(i));
+ this.roles.add(s);
+ }
+ int idx = this.roles.get(0).Index - 1;
+ if (idx >= 0 && idx < this.seedNodes.size()) {
+ this.ismeInfo = this.seedNodes.get(idx);
+ } else {
+ this.ismeInfo = null;
+ }
}
+
}
- }
public boolean isCluster() {
- return this.seedNodes!=null?this.seedNodes.size()>1:false;
+ return this.seedNodes != null ? this.seedNodes.size() > 1 : false;
}
+
public boolean isMe(ClusterNodeInfo i) {
- return this.ismeInfo!=null?this.ismeInfo.equals(i):false;
+ return this.ismeInfo != null ? this.ismeInfo.equals(i) : false;
}
+
public List<ClusterNodeInfo> getSeedNodes() {
return this.seedNodes;
}
@@ -131,13 +134,17 @@ public class AkkaConfig{
private final String resourceFilename;
private final String fileContent;
private ClusterConfig cluserConfig;
- public ClusterConfig getClusterConfig() {return this.cluserConfig;}
- private AkkaConfig(File file,boolean isResource) {
- this.file=isResource?null:file;
- this.fileContent=null;
- this.resourceFilename=isResource?file.getName():null;
+ public ClusterConfig getClusterConfig() {
+ return this.cluserConfig;
}
+
+ private AkkaConfig(File file, boolean isResource) {
+ this.file = isResource ? null : file;
+ this.fileContent = null;
+ this.resourceFilename = isResource ? file.getName() : null;
+ }
+
private AkkaConfig(String fileContent) {
this.file = null;
this.fileContent = fileContent;
@@ -151,47 +158,45 @@ public class AkkaConfig{
}
private void loadFromFile() throws Exception {
- Config cfg=null;
- if(this.file!=null) {
- cfg=ConfigFactory.parseFile(this.file);
- } else if(this.fileContent!=null) {
- cfg=ConfigFactory.parseString(this.fileContent);
- } else if(this.resourceFilename!=null) {
- cfg=ConfigFactory.parseResources(this.getClass(), this.resourceFilename);
+ Config cfg = null;
+ if (this.file != null) {
+ cfg = ConfigFactory.parseFile(this.file);
+ } else if (this.fileContent != null) {
+ cfg = ConfigFactory.parseString(this.fileContent);
+ } else if (this.resourceFilename != null) {
+ cfg = ConfigFactory.parseResources(this.getClass(), this.resourceFilename);
}
- if(cfg!=null) {
- this.cluserConfig=new ClusterConfig(cfg.getConfig("odl-cluster-data").getConfig("akka").getConfig("cluster"));
- } else
- {
+ if (cfg != null) {
+ this.cluserConfig =
+ new ClusterConfig(cfg.getConfig("odl-cluster-data").getConfig("akka").getConfig("cluster"));
+ } else {
LOG.warn("unable to parse config file");
- this.cluserConfig=null;
+ this.cluserConfig = null;
}
}
- public boolean isCluster()
- {
- return this.cluserConfig!=null?this.cluserConfig.isCluster():false;
+ public boolean isCluster() {
+ return this.cluserConfig != null ? this.cluserConfig.isCluster() : false;
}
- public static AkkaConfig load() throws Exception
- {
+
+ public static AkkaConfig load() throws Exception {
return load(DEFAULT_FILENAME);
}
- public static AkkaConfig load(String filename) throws Exception
- {
- return load(filename,false);
+ public static AkkaConfig load(String filename) throws Exception {
+ return load(filename, false);
}
- public static AkkaConfig load(String filename,boolean isResource) throws Exception
- {
- AkkaConfig cfg=new AkkaConfig(new File(filename),isResource);
+
+ public static AkkaConfig load(String filename, boolean isResource) throws Exception {
+ AkkaConfig cfg = new AkkaConfig(new File(filename), isResource);
cfg.loadFromFile();
return cfg;
}
- public static AkkaConfig loadContent(String content) throws Exception
- {
- AkkaConfig cfg=new AkkaConfig(content);
+
+ public static AkkaConfig loadContent(String content) throws Exception {
+ AkkaConfig cfg = new AkkaConfig(content);
cfg.loadFromFile();
return cfg;
@@ -199,8 +204,4 @@ public class AkkaConfig{
-
-
-
-
}
diff --git a/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/utils/UserScopes.java b/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/utils/UserScopes.java
index 5dd503c73..c7772d8cb 100644
--- a/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/utils/UserScopes.java
+++ b/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/utils/UserScopes.java
@@ -1,4 +1,4 @@
-/*******************************************************************************
+/*
* ============LICENSE_START========================================================================
* ONAP : ccsdk feature sdnr wt
* =================================================================================================
@@ -14,33 +14,33 @@
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
* ============LICENSE_END==========================================================================
- ******************************************************************************/
+ */
package org.onap.ccsdk.features.sdnr.wt.websocketmanager2.utils;
import org.json.JSONArray;
public class UserScopes {
- private JSONArray scopes;
+ private JSONArray scopes;
- /**
- *
- * @param jsonArray array of Strings
- */
- public void setScopes(JSONArray jsonArray) {
- this.scopes = jsonArray;
- }
+ /**
+ *
+ * @param jsonArray array of Strings
+ */
+ public void setScopes(JSONArray jsonArray) {
+ this.scopes = jsonArray;
+ }
- public boolean hasScope(String scope) {
- if (this.scopes == null)
- return false;
- for (int i = 0, l = this.scopes.length(); i < l; i++) {
- if (this.scopes.get(i).toString().equals(scope)) {
- return true;
- }
- }
+ public boolean hasScope(String scope) {
+ if (this.scopes == null)
+ return false;
+ for (int i = 0, l = this.scopes.length(); i < l; i++) {
+ if (this.scopes.get(i).toString().equals(scope)) {
+ return true;
+ }
+ }
- return false;
- }
+ return false;
+ }
}
diff --git a/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/websocket/SyncWebSocketClient.java b/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/websocket/SyncWebSocketClient.java
index fb2384ee5..6512e7171 100644
--- a/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/websocket/SyncWebSocketClient.java
+++ b/sdnr/wt/websocketmanager2/provider/src/main/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/websocket/SyncWebSocketClient.java
@@ -1,4 +1,4 @@
-/*******************************************************************************
+/*
* ============LICENSE_START========================================================================
* ONAP : ccsdk feature sdnr wt
* =================================================================================================
@@ -14,7 +14,7 @@
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
* ============LICENSE_END==========================================================================
- ******************************************************************************/
+ */
package org.onap.ccsdk.features.sdnr.wt.websocketmanager2.websocket;
import java.net.URI;
@@ -29,87 +29,93 @@ import org.slf4j.LoggerFactory;
public class SyncWebSocketClient extends WebSocketClient {
- public interface WebsocketEventHandler{
- void onMessageReceived(String message);
- void onOpen(ServerHandshake arg0);
- void onClose(int arg0, String arg1, boolean arg2);
- void onError(Exception e);
- }
-
- private static final Logger LOG = LoggerFactory.getLogger(SyncWebSocketClient.class.getName());
- private String messageToSend;
- private final List<WebsocketEventHandler> handlers;
- public SyncWebSocketClient(URI serverUri) {
- super(serverUri);
- this.handlers = new ArrayList<WebsocketEventHandler>();
- }
-
- public SyncWebSocketClient(String uri) throws URISyntaxException {
- this(new URI(uri));
- }
- public void addEventHandler(WebsocketEventHandler h) {
- this.handlers.add(h);
- }
- public void removeEventHandler(WebsocketEventHandler h) {
- this.handlers.remove(h);
- }
-
- @Override
- public void onClose(int arg0, String arg1, boolean arg2) {
- LOG.debug("socket closed: {} {} {}", arg0, arg1, arg2);
- for(WebsocketEventHandler h:this.handlers) {
- h.onClose(arg0,arg1,arg2);
- }
- }
-
- @Override
- public void onError(Exception arg0) {
- LOG.warn("error on socket: {}", arg0.getMessage());
- for(WebsocketEventHandler h:this.handlers) {
- h.onError(arg0);
- }
- }
-
- @Override
- public void onMessage(String arg0) {
- LOG.debug("received message: {}", arg0);
- for(WebsocketEventHandler h:this.handlers) {
- h.onMessageReceived(arg0);
- }
- }
-
- @Override
- public void onOpen(ServerHandshake arg0) {
- LOG.debug("socket opened");
- if (this.messageToSend != null) {
- LOG.debug("try to send: " + this.messageToSend);
- this.send(this.messageToSend);
- this.messageToSend = null;
- }
- for(WebsocketEventHandler h:this.handlers) {
- h.onOpen(arg0);
- }
- }
-
- public void openAndSendAsync(String message) {
- this.messageToSend = message;
- this.connect();
- }
-
- public void openAndSendAndCloseSync(String message) {
- try {
- this.connectBlocking();
- } catch (InterruptedException e) {
- LOG.warn("problem connecting:" + e.getMessage());
- Thread.currentThread().interrupt();
- }
- this.send(message);
- try {
- this.closeBlocking();
- } catch (InterruptedException e) {
- LOG.warn("problem disconnecting:" + e.getMessage());
+ public interface WebsocketEventHandler {
+ void onMessageReceived(String message);
+
+ void onOpen(ServerHandshake arg0);
+
+ void onClose(int arg0, String arg1, boolean arg2);
+
+ void onError(Exception e);
+ }
+
+ private static final Logger LOG = LoggerFactory.getLogger(SyncWebSocketClient.class.getName());
+ private String messageToSend;
+ private final List<WebsocketEventHandler> handlers;
+
+ public SyncWebSocketClient(URI serverUri) {
+ super(serverUri);
+ this.handlers = new ArrayList<WebsocketEventHandler>();
+ }
+
+ public SyncWebSocketClient(String uri) throws URISyntaxException {
+ this(new URI(uri));
+ }
+
+ public void addEventHandler(WebsocketEventHandler h) {
+ this.handlers.add(h);
+ }
+
+ public void removeEventHandler(WebsocketEventHandler h) {
+ this.handlers.remove(h);
+ }
+
+ @Override
+ public void onClose(int arg0, String arg1, boolean arg2) {
+ LOG.debug("socket closed: {} {} {}", arg0, arg1, arg2);
+ for (WebsocketEventHandler h : this.handlers) {
+ h.onClose(arg0, arg1, arg2);
+ }
+ }
+
+ @Override
+ public void onError(Exception arg0) {
+ LOG.warn("error on socket: {}", arg0.getMessage());
+ for (WebsocketEventHandler h : this.handlers) {
+ h.onError(arg0);
+ }
+ }
+
+ @Override
+ public void onMessage(String arg0) {
+ LOG.debug("received message: {}", arg0);
+ for (WebsocketEventHandler h : this.handlers) {
+ h.onMessageReceived(arg0);
+ }
+ }
+
+ @Override
+ public void onOpen(ServerHandshake arg0) {
+ LOG.debug("socket opened");
+ if (this.messageToSend != null) {
+ LOG.debug("try to send: " + this.messageToSend);
+ this.send(this.messageToSend);
+ this.messageToSend = null;
+ }
+ for (WebsocketEventHandler h : this.handlers) {
+ h.onOpen(arg0);
+ }
+ }
+
+ public void openAndSendAsync(String message) {
+ this.messageToSend = message;
+ this.connect();
+ }
+
+ public void openAndSendAndCloseSync(String message) {
+ try {
+ this.connectBlocking();
+ } catch (InterruptedException e) {
+ LOG.warn("problem connecting:" + e.getMessage());
+ Thread.currentThread().interrupt();
+ }
+ this.send(message);
+ try {
+ this.closeBlocking();
+ } catch (InterruptedException e) {
+ LOG.warn("problem disconnecting:" + e.getMessage());
Thread.currentThread().interrupt();
- }
- }
+ }
+ }
}
diff --git a/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/AkkaConfigTest.java b/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/AkkaConfigTest.java
index 2460ca42f..486aaaccc 100644
--- a/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/AkkaConfigTest.java
+++ b/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/AkkaConfigTest.java
@@ -1,4 +1,4 @@
-/*******************************************************************************
+/*
* ============LICENSE_START========================================================================
* ONAP : ccsdk feature sdnr wt
* =================================================================================================
@@ -14,7 +14,7 @@
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
* ============LICENSE_END==========================================================================
- ******************************************************************************/
+ */
package org.onap.ccsdk.features.sdnr.wt.websocketmanager2.test;
import static org.junit.Assert.*;
@@ -34,7 +34,7 @@ public class AkkaConfigTest {
@Test
public void test() throws URISyntaxException, IOException {
- AkkaConfig config=null;
+ AkkaConfig config = null;
try {
//config = AkkaConfig.load("akka-singlenode.cfg", true);
config = AkkaConfig.loadContent(loadResourceContentAsString("akka-singlenode.cfg"));
@@ -42,25 +42,26 @@ public class AkkaConfigTest {
e.printStackTrace();
fail("error loading singlenode config");
}
- assertEquals("no singlenode config detected",false,config.isCluster());
- assertEquals("more than one node detected",1,config.getClusterConfig().getSeedNodes().size());
+ assertEquals("no singlenode config detected", false, config.isCluster());
+ assertEquals("more than one node detected", 1, config.getClusterConfig().getSeedNodes().size());
try {
config = AkkaConfig.loadContent(loadResourceContentAsString("akka-cluster.cfg"));
} catch (Exception e) {
fail("error loading cluster config");
}
- assertEquals("no cluster config detected",true,config.isCluster());
- assertTrue("only one node detected",config.getClusterConfig().getSeedNodes().size()>1);
+ assertEquals("no cluster config detected", true, config.isCluster());
+ assertTrue("only one node detected", config.getClusterConfig().getSeedNodes().size() > 1);
}
- public static String loadResourceContentAsString(String resourceName) throws URISyntaxException, FileNotFoundException, IOException {
+ public static String loadResourceContentAsString(String resourceName)
+ throws URISyntaxException, FileNotFoundException, IOException {
StringBuilder sb = new StringBuilder();
ClassLoader classLoader = AkkaConfigTest.class.getClassLoader();
File file = Paths.get(classLoader.getResource(resourceName).toURI()).toFile();
- try(BufferedReader br = new BufferedReader(new FileReader(file))) {
+ try (BufferedReader br = new BufferedReader(new FileReader(file))) {
String line = br.readLine();
while (line != null) {
diff --git a/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/UserScopeTest.java b/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/UserScopeTest.java
index 52eedb994..3f04ac09d 100644
--- a/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/UserScopeTest.java
+++ b/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/UserScopeTest.java
@@ -1,4 +1,4 @@
-/*******************************************************************************
+/*
* ============LICENSE_START========================================================================
* ONAP : ccsdk feature sdnr wt
* =================================================================================================
@@ -14,7 +14,7 @@
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
* ============LICENSE_END==========================================================================
- ******************************************************************************/
+ */
package org.onap.ccsdk.features.sdnr.wt.websocketmanager2.test;
import static org.junit.Assert.*;
@@ -25,15 +25,15 @@ import org.onap.ccsdk.features.sdnr.wt.websocketmanager2.utils.UserScopes;
public class UserScopeTest {
- private static final String SCOPE1 ="scope1";
- private static final String SCOPE2 ="scope2";
- private static final String SCOPE3 ="scope3";
- private static final String SCOPE4 ="scope4";
+ private static final String SCOPE1 = "scope1";
+ private static final String SCOPE2 = "scope2";
+ private static final String SCOPE3 = "scope3";
+ private static final String SCOPE4 = "scope4";
@Test
public void test() {
UserScopes scopes1 = new UserScopes();
- JSONArray json1=new JSONArray();
+ JSONArray json1 = new JSONArray();
json1.put(SCOPE1);
json1.put(SCOPE2);
json1.put(SCOPE3);
diff --git a/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/WebsockerProviderTest.java b/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/WebsockerProviderTest.java
index 57d79602b..d6f0bcf4c 100644
--- a/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/WebsockerProviderTest.java
+++ b/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/WebsockerProviderTest.java
@@ -1,4 +1,4 @@
-/*******************************************************************************
+/*
* ============LICENSE_START========================================================================
* ONAP : ccsdk feature sdnr wt
* =================================================================================================
@@ -14,7 +14,7 @@
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
* ============LICENSE_END==========================================================================
- ******************************************************************************/
+ */
package org.onap.ccsdk.features.sdnr.wt.websocketmanager2.test;
import static org.junit.Assert.*;
@@ -28,7 +28,7 @@ public class WebsockerProviderTest extends Mockito {
@Test
public void test() {
- RpcProviderService rpcProviderServiceMock = mock(RpcProviderService.class);
+ RpcProviderService rpcProviderServiceMock = mock(RpcProviderService.class);
HttpService httpService = mock(HttpService.class);
try (WebSocketManagerProvider provider = new WebSocketManagerProvider();) {
diff --git a/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/WebsocketClientTest.java b/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/WebsocketClientTest.java
index f56e1a686..df68ff3a2 100644
--- a/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/WebsocketClientTest.java
+++ b/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/WebsocketClientTest.java
@@ -1,4 +1,4 @@
-/*******************************************************************************
+/*
* ============LICENSE_START========================================================================
* ONAP : ccsdk feature sdnr wt
* =================================================================================================
@@ -14,7 +14,7 @@
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
* ============LICENSE_END==========================================================================
- ******************************************************************************/
+ */
package org.onap.ccsdk.features.sdnr.wt.websocketmanager2.test;
import static org.junit.Assert.*;
@@ -41,7 +41,7 @@ public class WebsocketClientTest extends Mockito {
client.close();
} catch (Exception e) {
e.printStackTrace();
- fail("Exception "+e.getMessage());
+ fail("Exception " + e.getMessage());
}
}
diff --git a/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/WebsocketMessageTest.java b/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/WebsocketMessageTest.java
index f769dd40d..0e4db163a 100644
--- a/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/WebsocketMessageTest.java
+++ b/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/WebsocketMessageTest.java
@@ -1,4 +1,4 @@
-/*******************************************************************************
+/*
* ============LICENSE_START========================================================================
* ONAP : ccsdk feature sdnr wt
* =================================================================================================
@@ -14,7 +14,7 @@
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
* ============LICENSE_END==========================================================================
- ******************************************************************************/
+ */
package org.onap.ccsdk.features.sdnr.wt.websocketmanager2.test;
import static org.junit.Assert.assertTrue;
@@ -30,7 +30,8 @@ public class WebsocketMessageTest {
private static final String MSG1 = "{\"data\":\"scopes\",\"scopes\":[\"scope1\"]}";
private static final String MSG2 = "{}";
- private static final String MSG3 = "{\""+WebSocketManagerSocket.KEY_NODENAME+":\"xy\","+WebSocketManagerSocket.KEY_EVENTTYPE+":\"zu\"}";
+ private static final String MSG3 = "{\"" + WebSocketManagerSocket.KEY_NODENAME + ":\"xy\","
+ + WebSocketManagerSocket.KEY_EVENTTYPE + ":\"zu\"}";
private static final String MSG4 = "{ Not correct messga}";
@Test
@@ -58,8 +59,8 @@ public class WebsocketMessageTest {
private String expected;
- public MyWebSocketManagerSocket() {
- }
+ public MyWebSocketManagerSocket() {}
+
void setExpected(String expected) {
this.expected = expected;
}
@@ -67,7 +68,7 @@ public class WebsocketMessageTest {
@Override
public void send(String msg) {
System.out.println(msg);
- assertTrue("Expected '"+expected+"' answer '"+msg+"'", msg.contains(expected));
+ assertTrue("Expected '" + expected + "' answer '" + msg + "'", msg.contains(expected));
}
}
diff --git a/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/WebsocketServerConnectTest.java b/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/WebsocketServerConnectTest.java
index e59c343f2..c9a96f5f3 100644
--- a/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/WebsocketServerConnectTest.java
+++ b/sdnr/wt/websocketmanager2/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/websocketmanager2/test/WebsocketServerConnectTest.java
@@ -1,4 +1,4 @@
-/*******************************************************************************
+/*
* ============LICENSE_START========================================================================
* ONAP : ccsdk feature sdnr wt
* =================================================================================================
@@ -14,7 +14,7 @@
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
* ============LICENSE_END==========================================================================
- ******************************************************************************/
+ */
package org.onap.ccsdk.features.sdnr.wt.websocketmanager2.test;
import static org.junit.Assert.assertEquals;