summaryrefslogtreecommitdiffstats
path: root/sms-client/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'sms-client/src/main')
-rw-r--r--sms-client/src/main/example/SmsClientExample.java118
-rw-r--r--sms-client/src/main/java/org/onap/aaf/sms/SmsClient.java256
-rw-r--r--sms-client/src/main/java/org/onap/aaf/sms/SmsInterface.java90
-rw-r--r--sms-client/src/main/java/org/onap/aaf/sms/SmsResponse.java57
4 files changed, 0 insertions, 521 deletions
diff --git a/sms-client/src/main/example/SmsClientExample.java b/sms-client/src/main/example/SmsClientExample.java
deleted file mode 100644
index dc0e776..0000000
--- a/sms-client/src/main/example/SmsClientExample.java
+++ /dev/null
@@ -1,118 +0,0 @@
-/*
- * Copyright 2018 Intel Corporation, Inc
- *
- * 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.
- */
-
-import java.io.FileInputStream;
-import java.lang.Boolean;
-import java.lang.Integer;
-import java.net.URL;
-import javax.net.ssl.HttpsURLConnection;
-import javax.net.ssl.KeyManagerFactory;
-import javax.net.ssl.SSLContext;
-import javax.net.ssl.SSLSessionContext;
-import javax.net.ssl.SSLSocketFactory;
-import javax.net.ssl.TrustManagerFactory;
-import java.security.KeyStore;
-import java.security.Provider;
-import java.security.SecureRandom;
-import java.security.Security;
-import java.util.HashMap;
-import java.util.Map;
-import org.onap.aaf.sms.SmsClient;
-import org.onap.aaf.sms.SmsResponse;
-
-public class SmsClientExample {
- public static void main(String[] args) throws Exception {
- // Set up the Sun PKCS 11 provider
- Provider p = Security.getProvider("SunPKCS11-pkcs11Test");
- if (p==null) {
- throw new RuntimeException("could not get security provider");
- }
-
- // Load the key store
- char[] pin = "45789654".toCharArray();
- KeyStore keyStore = KeyStore.getInstance("PKCS11", p);
- keyStore.load(null, pin);
-
- // Load the CA certificate
- FileInputStream tst = new FileInputStream("/ca.jks");
- KeyStore trustStore = KeyStore.getInstance("JKS");
- trustStore.load(tst, pin);
-
- KeyManagerFactory keyManagerFactory =
- KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm());
- //Add to keystore to key manager
- keyManagerFactory.init(keyStore, pin);
-
- TrustManagerFactory trustManagerFactory =
- TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm());
- trustManagerFactory.init(trustStore);
-
- //Create the context
- SSLContext context = SSLContext.getInstance("TLS");
- context.init(keyManagerFactory.getKeyManagers(),
- trustManagerFactory.getTrustManagers(), new SecureRandom());
- //Create a socket factory
- SSLSocketFactory ssf = context.getSocketFactory();
- SSLSessionContext sessCtx = context.getServerSessionContext();
- SmsClient sms = new SmsClient("onap.mydomain.com", 10443, ssf);
- SmsResponse resp1 = sms.createDomain("onap.new.test.sms0");
- if ( resp1.getSuccess() ) {
- System.out.println(resp1.getResponse());
- System.out.println(resp1.getResponseCode());
- }
- Map<String, Object> m1 = new HashMap<String, Object>();
- m1.put("passwd", "gax6ChD0yft");
- SmsResponse resp2 = sms.storeSecret("onap.new.test.sms0", "testsec", m1);
- if ( resp2.getSuccess() ) {
- System.out.println(resp2.getResponse());
- System.out.println(resp2.getResponseCode());
- }
- Map<String, Object> m2 = new HashMap<String, Object>();
- m2.put("username", "dbuser");
- m2.put("isadmin", new Boolean(true));
- m2.put("age", new Integer(40));
- m2.put("secretkey", "asjdhkuhioeukadfjsadnfkjhsdukfhaskdjhfasdf");
- m2.put("token", "2139084553458973452349230849234234908234342");
- SmsResponse resp3 = sms.storeSecret("onap.new.test.sms0","credentials", m2);
- if ( resp3.getSuccess() ) {
- System.out.println(resp3.getResponse());
- System.out.println(resp3.getResponseCode());
- }
- SmsResponse resp4 = sms.getSecretNames("onap.new.test.sms0");
- if ( resp4.getSuccess() ) {
- System.out.println(resp4.getResponse());
- System.out.println(resp4.getResponseCode());
- }
- SmsResponse resp5= sms.getSecret("onap.new.test.sms0", "testsec");
- if ( resp5.getSuccess() ) {
- System.out.println(resp5.getResponse());
- System.out.println(resp5.getResponseCode());
- }
- SmsResponse resp6= sms.getSecret("onap.new.test.sms0", "credentials");
- if ( resp6.getSuccess() ) {
- Boolean b = (Boolean)resp6.getResponse().get("isadmin");
- if ( b )
- System.out.println("Age=" + (Integer)resp6.getResponse().get("age"));
- System.out.println(resp6.getResponse());
- System.out.println(resp6.getResponseCode());
- }
- SmsResponse resp7=sms.deleteDomain("onap.new.test.sms0");
- if ( resp7.getSuccess() ) {
- System.out.println(resp7.getResponse());
- System.out.println(resp7.getResponseCode());
- }
- }
-}
diff --git a/sms-client/src/main/java/org/onap/aaf/sms/SmsClient.java b/sms-client/src/main/java/org/onap/aaf/sms/SmsClient.java
deleted file mode 100644
index 17a9f16..0000000
--- a/sms-client/src/main/java/org/onap/aaf/sms/SmsClient.java
+++ /dev/null
@@ -1,256 +0,0 @@
-/*
- * Copyright 2018 Intel Corporation, Inc
- *
- * 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.
- */
-
-package org.onap.aaf.sms;
-
-import javax.net.ssl.SSLSocketFactory;
-import java.net.URL;
-import javax.net.ssl.HttpsURLConnection;
-import org.onap.aaf.sms.SmsResponse;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.io.InputStreamReader;
-import java.io.BufferedReader;
-import java.io.OutputStreamWriter;
-import java.util.Map;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.ArrayList;
-import org.json.JSONArray;
-import org.json.JSONException;
-import org.json.JSONObject;
-
-public class SmsClient implements SmsInterface {
-
- private String baset;
- private SSLSocketFactory ssf;
-
- public SmsClient(String host, int port, SSLSocketFactory s) {
- baset = "https://"+ host + ":" + port + "/v1/sms";
- ssf = s;
- }
- public SmsClient(String host, int port, String version, SSLSocketFactory s) {
- baset = "https://"+ host + ":" + port + "/" + version + "/sms";
- ssf = s;
- }
-
- private Map<String, Object> getSubmap(Map<String, Object> raw, String k) {
- Object v = raw.get(k);
- if ( v != null ) {
- Map<String, Object> r = (Map<String, Object>)v;
- return(r);
- }
- else {
- return(null);
- }
- }
-
- private List<Object> jsontolist(JSONArray a) throws JSONException {
- List<Object> l = new ArrayList<Object>();
- for(int i=0;i<a.length();i++) {
- Object v = a.get(i);
- if ( v instanceof JSONArray ) {
- v = jsontolist((JSONArray) v);
- } else if (v instanceof JSONObject) {
- v = jsontomap((JSONObject) v);
- }
- l.add(v);
- }
- return(l);
- }
-
- private Map<String, Object> jsontomap(JSONObject j) throws JSONException {
- Map<String, Object> m = new HashMap<String, Object>();
-
- Iterator<?> ks = j.keys();
- while( ks.hasNext() ) {
- String k = (String)ks.next();
- Object v = j.get(k);
-
- if ( v instanceof JSONArray ) {
- v = jsontolist((JSONArray) v);
- } else if ( v instanceof JSONObject ) {
- v = jsontomap((JSONObject) v);
- }
- m.put(k, v);
- }
- return(m);
- }
-
- protected Map<String, Object> strtomap(String r) throws JSONException {
- JSONObject jobj = null;
-
- jobj = new JSONObject(r);
- return(jsontomap(jobj));
-
- }
- protected SmsResponse execute(String reqtype, String t, String ins, boolean input, boolean output) {
-
- HttpsURLConnection conn;
- int errorcode = -1;
- SmsResponse resp = new SmsResponse();
-
- try {
- URL url = new URL(t);
- conn = (HttpsURLConnection)url.openConnection();
- conn.setSSLSocketFactory(ssf);
- conn.setRequestMethod(reqtype);
- conn.setDoOutput(true);
- conn.setDoInput(true);
- conn.setRequestProperty("Content-Type", "application/json");
- conn.setRequestProperty("Accept", "application/json");
-
- if ( input ) {
- OutputStream out = conn.getOutputStream();
- OutputStreamWriter wr = new OutputStreamWriter(out);
- wr.write(ins);
- wr.flush();
- wr.close();
- }
- errorcode = conn.getResponseCode();
- if ( output && errorcode > 0 ) {
- InputStream inputstream = conn.getInputStream();
- InputStreamReader inputstreamreader = new InputStreamReader(inputstream);
- BufferedReader bufferedreader = new BufferedReader(inputstreamreader);
-
- String response;
- String save = "";
- while ((response = bufferedreader.readLine()) != null) {
- save = save + response;
- }
- if ( !save.isEmpty() ) {
- if ( errorcode/100 == 2 ) {
- resp.setResponse(strtomap(save));
- } else {
- resp.setErrorMessage(save);
- }
- }
- }
- } catch ( Exception e ) {
- e.printStackTrace();
- resp.setResponseCode(errorcode);
- return(resp);
- }
- resp.setResponseCode(errorcode);
- return resp;
- }
- @Override
- public SmsResponse createDomain(String dname) {
-
- String t = baset + "/domain";
- String input = "{\"name\":\"" + dname + "\"}";
-
- SmsResponse resp = execute("POST", t, input, true, true);
- int errcode = resp.getResponseCode();
-
- if ( errcode > 0 && errcode/100 == 2 )
- resp.setSuccess(true);
- else
- resp.setSuccess(false);
-
- return(resp);
- }
- @Override
- public SmsResponse deleteDomain(String dname) {
-
- String t = baset + "/domain/" + dname;
-
- SmsResponse resp = execute("DELETE", t, null, false, true);
- int errcode = resp.getResponseCode();
-
- if ( errcode > 0 && errcode/100 == 2 )
- resp.setSuccess(true);
- else
- resp.setSuccess(false);
-
- return(resp);
- }
- @Override
- public SmsResponse storeSecret(String dname, String sname, Map<String, Object> values) {
-
- String t = baset + "/domain/" + dname + "/secret";
- Map<String, Object> cm = new HashMap<String, Object>();
- cm.put("name", sname);
- cm.put("values", values);
- JSONObject jobj = new JSONObject(cm);
-
- SmsResponse resp = execute("POST", t, jobj.toString(), true, false);
- int errcode = resp.getResponseCode();
-
- if ( errcode > 0 && errcode/100 == 2 )
- resp.setSuccess(true);
- else
- resp.setSuccess(false);
-
- return(resp);
- }
- @Override
- public SmsResponse getSecretNames(String dname) {
-
- String t = baset + "/domain/" + dname + "/secret";
-
- SmsResponse resp = execute("GET", t, null, false, true);
- int errcode = resp.getResponseCode();
-
- if ( errcode > 0 && errcode/100 == 2 )
- resp.setSuccess(true);
- else
- resp.setSuccess(false);
-
- return(resp);
- }
- @Override
- public SmsResponse getSecret(String dname, String sname) {
-
- String t = baset + "/domain/" + dname + "/secret/" + sname;
-
- SmsResponse resp = execute("GET", t, null, false, true);
- int errcode = resp.getResponseCode();
-
- if ( errcode > 0 && errcode/100 == 2 ) {
- Map<String, Object> m = getSubmap(resp.getResponse(), "values");
- if ( m != null ) {
- resp.setSuccess(true);
- resp.setResponse(m);
- }
- else {
- resp.setSuccess(false);
- }
- }
- else {
- resp.setSuccess(false);
- }
-
- return(resp);
-
- }
- @Override
- public SmsResponse deleteSecret(String dname, String sname) {
-
- String t = baset + "/domain/" + dname + "/secret/" + sname;
-
- SmsResponse resp = execute("DELETE", t, null, false, true);
- int errcode = resp.getResponseCode();
-
- if ( errcode > 0 && errcode/100 == 2 )
- resp.setSuccess(true);
- else
- resp.setSuccess(false);
-
- return(resp);
- }
-}
diff --git a/sms-client/src/main/java/org/onap/aaf/sms/SmsInterface.java b/sms-client/src/main/java/org/onap/aaf/sms/SmsInterface.java
deleted file mode 100644
index 31875d7..0000000
--- a/sms-client/src/main/java/org/onap/aaf/sms/SmsInterface.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * Copyright 2018 Intel Corporation, Inc
- *
- * 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.
- */
-
-package org.onap.aaf.sms;
-
-import org.onap.aaf.sms.SmsResponse;
-import java.util.Map;
-
-public interface SmsInterface {
- /*
- Inputs dname - domain name
- Output - name and uuid
- Return SmsResponse object
- success or failure
- response code if connection succeeded, otherwise -1
- response string if expected.
- */
- public SmsResponse createDomain(String dname);
-
- /*
- Inputs dname - domain name
- Output - none
- Return SmsResponse object
- success or failure
- response code if connection succeeded, otherwise -1
- response string if expected.
-
- */
- public SmsResponse deleteDomain(String dname);
-
- /*
- Inputs dname - domain name
- Output - list of secret names
- Return SmsResponse object
- success or failure
- response code if connection succeeded, otherwise -1
- response string if expected.
-
- */
- public SmsResponse getSecretNames(String dname);
-
- /*
- Inputs dname - domain name
- sname - secret name
- values - list of key value pairs
- Output - none
- Return SmsResponse object
- success or failure
- response code if connection succeeded, otherwise -1
- response string if expected.
-
- */
- public SmsResponse storeSecret(String dname, String sname, Map<String, Object> values);
-
- /*
- Inputs dname - domain name
- sname - secret name
- Output values - list of value pairs
- Return SmsResponse object
- success or failure
- response code if connection succeeded, otherwise -1
- response string if expected.
-
- */
- public SmsResponse getSecret(String dname, String sname);
-
- /*
- Inputs dname - domain name
- sname - secret name
- Output - none
- Return SmsResponse object
- success or failure
- response code if connection succeeded, otherwise -1
- response string if expected.
- */
- public SmsResponse deleteSecret(String dname, String sname);
-}
diff --git a/sms-client/src/main/java/org/onap/aaf/sms/SmsResponse.java b/sms-client/src/main/java/org/onap/aaf/sms/SmsResponse.java
deleted file mode 100644
index b7a9980..0000000
--- a/sms-client/src/main/java/org/onap/aaf/sms/SmsResponse.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Copyright 2018 Intel Corporation, Inc
- *
- * 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.
- */
-
-package org.onap.aaf.sms;
-
-import java.util.Map;
-
-public class SmsResponse {
- private boolean success;
- private int responseCode;
- private String errorMessage;
- private Map<String, Object> response;
-
- public SmsResponse() {
- success = false;
- responseCode = -1;
- errorMessage = "";
- response = null;
- }
- public void setResponseCode(int code) {
- responseCode = code;
- }
- public void setResponse(Map<String, Object> res) {
- response = res;
- }
- public void setSuccess(boolean val) {
- success = val;
- }
- public int getResponseCode() {
- return responseCode;
- }
- public void setErrorMessage(String em) {
- errorMessage = em;
- }
- public String getErrorMessage() {
- return errorMessage;
- }
- public Map<String, Object> getResponse() {
- return response;
- }
- public boolean getSuccess() {
- return success;
- }
-}