public void sendReqTunnel() { for (Tunnel tunnel : this.tunnels) { JSONObject reuqest = new JSONObject(); reuqest.put("Type", "ReqTunnel"); JSONObject payload = new JSONObject(); String reqId = UUID.randomUUID().toString() .toLowerCase().replace("-", "") .substring(0, 16); mappingMap.put(reqId, tunnel); payload.put("ReqId", reqId); payload.put("Protocol", tunnel.getProto()); if (tunnel.getProto().equals("tcp")) { payload.put("RemotePort", tunnel.getRemotePort()); } else { payload.put("Subdomain", tunnel.getSubDomain()); payload.put("HttpAuth", tunnel.getHttpAuth()); payload.put("Hostname", tunnel.getHostname()); } reuqest.put("Payload", payload); sendMessage(reuqest.toJSONString()); } }