diff options
author | 2017-05-07 14:58:24 -0400 | |
---|---|---|
committer | 2017-05-07 14:58:24 -0400 | |
commit | 3982f4f67314ec37fd9b22ae54049958af777c1b (patch) | |
tree | 72111b7c13ee7529cce1ea4c8d83c89fdd164450 /vid/src/main/java/org/openecomp/aai/util | |
parent | 00e0d25933699f9e39c3f0b86c983165a1e3e330 (diff) |
[VID-6] Initial rebase push
Change-Id: I9077be9663754d9b22f77c6a7b3109b361b39346
Signed-off-by: jimmydot <jf2512@att.com>
Diffstat (limited to 'vid/src/main/java/org/openecomp/aai/util')
4 files changed, 0 insertions, 547 deletions
diff --git a/vid/src/main/java/org/openecomp/aai/util/AAIProperties.java b/vid/src/main/java/org/openecomp/aai/util/AAIProperties.java deleted file mode 100644 index c6ec5e17..00000000 --- a/vid/src/main/java/org/openecomp/aai/util/AAIProperties.java +++ /dev/null @@ -1,64 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * VID - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * 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.openecomp.aai.util; - -import org.openecomp.portalsdk.core.util.SystemProperties; - -/** - * The Class AAIProperties. - */ -public class AAIProperties extends SystemProperties { - - /** The Constant AAI_SERVER_URL_BASE. */ - //VID Specific - public static final String AAI_SERVER_URL_BASE = "aai.server.url.base"; - - /** The Constant AAI_SERVER_URL. */ - public static final String AAI_SERVER_URL = "aai.server.url"; - - /** The Constant AAI_OLDSERVER_URL_BASE. */ - public static final String AAI_OLDSERVER_URL_BASE = "aai.oldserver.url.base"; - - /** The Constant AAI_OLDSERVER_URL. */ - public static final String AAI_OLDSERVER_URL = "aai.oldserver.url"; - - /** The Constant AAI_TRUSTSTORE_FILENAME. */ - public static final String AAI_TRUSTSTORE_FILENAME = "aai.truststore.filename"; - - /** The Constant AAI_TRUSTSTORE_PASSWD_X. */ - public static final String AAI_TRUSTSTORE_PASSWD_X = "aai.truststore.passwd.x"; - - /** The Constant AAI_KEYSTORE_FILENAME. */ - public static final String AAI_KEYSTORE_FILENAME = "aai.keystore.filename"; - - /** The Constant AAI_KEYSTORE_PASSWD_X. */ - public static final String AAI_KEYSTORE_PASSWD_X = "aai.keystore.passwd.x"; - - /** The Constant AAI_VID_USERNAME. */ - public static final String AAI_VID_USERNAME = "aai.vid.username"; - - /** The Constant AAI_VID_PASSWD_X. */ - public static final String AAI_VID_PASSWD_X = "aai.vid.passwd.x"; - - /** The Constant FILESEPARTOR. */ - public static final String FILESEPARTOR = (System.getProperty("file.separator") == null) ? "/" : System.getProperty("file.separator"); - -} diff --git a/vid/src/main/java/org/openecomp/aai/util/AAIRestInterface.java b/vid/src/main/java/org/openecomp/aai/util/AAIRestInterface.java deleted file mode 100644 index ce61fdc7..00000000 --- a/vid/src/main/java/org/openecomp/aai/util/AAIRestInterface.java +++ /dev/null @@ -1,300 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * VID - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * 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.openecomp.aai.util; - -import java.io.UnsupportedEncodingException; -import java.net.MalformedURLException; -import java.net.URI; -import java.net.URISyntaxException; -import java.net.URL; -import java.net.URLEncoder; -import java.security.KeyManagementException; -import java.text.DateFormat; -import java.text.SimpleDateFormat; -import java.util.Base64; -import java.util.Date; -import java.util.UUID; - -import javax.ws.rs.client.Client; -import javax.ws.rs.client.Entity; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; - -import org.openecomp.portalsdk.core.logging.logic.EELFLoggerDelegate; -import org.openecomp.portalsdk.core.util.SystemProperties; -import org.openecomp.vid.encryption.EncryptedPropValue; - -/** - * The Class AAIRestInterface. - */ -public class AAIRestInterface { - - /** The logger. */ - EELFLoggerDelegate logger = EELFLoggerDelegate.getLogger(AAIRestInterface.class); - - /** The Constant dateFormat. */ - final static DateFormat dateFormat = new SimpleDateFormat("HH:mm:ss:SSSS"); - - /** The client. */ - private static Client client = null; - - /** The rest srvr base URL. */ - private String restSrvrBaseURL; - - /** The certificate path. */ - public String certificatePath = ""; - - /** - * Instantiates a new AAI rest interface. - * - * @param certPath the cert path - */ - public AAIRestInterface(String certPath) - { - certificatePath = certPath; - } - - /** - * Encode URL. - * - * @param nodeKey the node key - * @return the string - * @throws UnsupportedEncodingException the unsupported encoding exception - */ - public String encodeURL (String nodeKey) throws UnsupportedEncodingException { - return URLEncoder.encode(nodeKey, "UTF-8").replaceAll("\\+", "%20"); - } - - /** - * Inits the rest client. - */ - private void initRestClient() - { - String methodName = "initRestClient"; - - if (client == null) { - try { - client = HttpsAuthClient.getClient(certificatePath); - } - catch (KeyManagementException e){ - logger.info(EELFLoggerDelegate.errorLogger, dateFormat.format(new Date()) + "<== KeyManagementException in " + methodName + e.toString()); - logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== KeyManagementException in " + methodName + e.toString()); - } catch (Exception e) { - logger.info(EELFLoggerDelegate.errorLogger, dateFormat.format(new Date()) + "<== Exception in REST call to DB in initRestClient" + e.toString()); - logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== Exception in REST call to DB : " + e.toString()); - } - } - } - - /** - * Sets the rest srvr base URL. - * - * @param baseURL the base URL - */ - public void SetRestSrvrBaseURL(String baseURL) - { - if (baseURL == null) - { - logger.info(EELFLoggerDelegate.errorLogger, dateFormat.format(new Date()) + "<== REST Server base URL cannot be null."); - logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== REST Server base URL cannot be null."); - } - - restSrvrBaseURL = baseURL; - } - - /** - * Gets the rest srvr base URL. - * - * @return the rest srvr base URL - */ - public String getRestSrvrBaseURL() - { - return restSrvrBaseURL; - } - - - /** - * Rest get. - * - * @param fromAppId the from app id - * @param transId the trans id - * @param requestUri the request uri - * @param xml the xml - * @return the string - */ - public String RestGet(String fromAppId, String transId, String requestUri, boolean xml) throws UnsupportedEncodingException { - String methodName = "RestGet"; - - String responseType = "application/json"; - if (xml) - responseType = "application/xml"; - - initRestClient(); - - String url = ""; - logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start"); - - url = SystemProperties.getProperty(AAIProperties.AAI_SERVER_URL) + requestUri; - - try { - // what is the point of this, just to check syntax?? - URL urlObj= new URL(url); - URI uri = new URI(urlObj.getProtocol(), urlObj.getUserInfo(), urlObj.getHost(), urlObj.getPort(), urlObj.getPath(), urlObj.getQuery(), urlObj.getRef()); - url = uri.toASCIIString(); - } catch (URISyntaxException | MalformedURLException e) { - logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " bad URL"); - return null; - } - logger.debug(dateFormat.format(new Date()) + "<== " + url + " for the get REST API"); - - String vidUsername = SystemProperties.getProperty(AAIProperties.AAI_VID_USERNAME); - String vidPassword = EncryptedPropValue.decryptTriple(SystemProperties.getProperty(AAIProperties.AAI_VID_PASSWD_X)); - String encodeThis = vidUsername + ":" + vidPassword; - - final Response cres = client.target(url) - .request() - .accept(responseType) - .header("X-TransactionId", transId) - .header("X-FromAppId", fromAppId) - .header("Authorization", "Basic " + Base64.getEncoder().encodeToString(encodeThis.getBytes("utf-8"))) - .header("Content-Type", "application/json") - .get(); - - if (cres.getStatus() == 200) { - logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " REST api GET was successful!"); - logger.info(EELFLoggerDelegate.errorLogger, dateFormat.format(new Date()) + "<== " + methodName + " REST api GET was successful!"); - } else { - logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName +" with status="+cres.getStatus()+", url="+url); - } - - return cres.readEntity(String.class); - } - - - /** - * Delete. - * - * @param sourceID the source ID - * @param transId the trans id - * @param path the path - * @return true, if successful - */ - public boolean Delete(String sourceID, String transId, String path) throws UnsupportedEncodingException { - String methodName = "Delete"; - String url=""; - transId += ":" + UUID.randomUUID().toString(); - logger.debug(dateFormat.format(new Date()) + "<== " + methodName + " start"); - - initRestClient(); - String request = "{}"; - url = SystemProperties.getProperty(AAIProperties.AAI_SERVER_URL) + path; - - String vidUsername = SystemProperties.getProperty(AAIProperties.AAI_VID_USERNAME); - String vidPassword = EncryptedPropValue.decryptTriple(SystemProperties.getProperty(AAIProperties.AAI_VID_PASSWD_X)); - String encodeThis = vidUsername + ":" + vidPassword; - - final Response cres = client.target(url) - .request() - .accept("application/json") - .header("X-TransactionId", transId) - .header("X-FromAppId", sourceID) - .header("Authorization", "Basic " + Base64.getEncoder().encodeToString(encodeThis.getBytes("utf-8"))) - //.entity(request) - .delete(); - - if (cres.getStatus() == 404) { // resource not found - String msg = "Resource does not exist...: " + cres.getStatus() - + ":" + cres.readEntity(String.class); - logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + msg); - return false; - } else if (cres.getStatus() == 200 || cres.getStatus() == 204){ - logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + "Resource " + url + " deleted"); - return true; - } else { - String msg = "Deleting Resource failed: " + cres.getStatus() - + ":" + cres.readEntity(String.class); - logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + msg); - } - - return false; - } - - - /** - * Rest post. - * - * @param fromAppId the from app id - * @param transId the trans id - * @param path the path - * @param payload the payload - * @param xml the xml - * @return the string - */ - public String RestPost(String fromAppId, String transId, String path, String payload, boolean xml) throws UnsupportedEncodingException { - String methodName = "RestPost"; - String url=""; - transId = UUID.randomUUID().toString(); - logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " start"); - - try { - - String responseType = "application/json"; - if (xml) - responseType = "application/xml"; - - initRestClient(); - - url = SystemProperties.getProperty(AAIProperties.AAI_SERVER_URL_BASE) + path; - - String vidUsername = SystemProperties.getProperty(AAIProperties.AAI_VID_USERNAME); - String vidPassword = EncryptedPropValue.decryptTriple(SystemProperties.getProperty(AAIProperties.AAI_VID_PASSWD_X)); - String encodeThis = vidUsername + ":" + vidPassword; - - final Response cres = client.target(url) - .request() - .accept(responseType) - .header("X-TransactionId", transId) - .header("X-FromAppId", fromAppId) - .header("Authorization", "Basic " + Base64.getEncoder().encodeToString(encodeThis.getBytes("utf-8"))) - .post(Entity.entity(payload, MediaType.APPLICATION_JSON)); - - int statuscode = cres.getStatus(); - if ( statuscode >= 200 && statuscode <= 299 ) { - logger.info(EELFLoggerDelegate.errorLogger, dateFormat.format(new Date()) + "<== " + methodName + " REST api POST was successful!"); - logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " REST api POST was successful!"); - return cres.readEntity(String.class); - } else { - logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " with status="+statuscode+", url="+url + ", msg=" + cres.readEntity(String.class)); - return null; - } - - } catch (Exception e) - { - logger.debug(EELFLoggerDelegate.debugLogger, dateFormat.format(new Date()) + "<== " + methodName + " with url="+url+ ", Exception: " + e.toString()); - - } - - return null; - } - - - -} diff --git a/vid/src/main/java/org/openecomp/aai/util/CustomJacksonJaxBJsonProvider.java b/vid/src/main/java/org/openecomp/aai/util/CustomJacksonJaxBJsonProvider.java deleted file mode 100644 index 12e96b8d..00000000 --- a/vid/src/main/java/org/openecomp/aai/util/CustomJacksonJaxBJsonProvider.java +++ /dev/null @@ -1,72 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * VID - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * 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.openecomp.aai.util; - -import javax.ws.rs.ext.Provider; - -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.databind.DeserializationFeature; -import com.fasterxml.jackson.databind.ObjectMapper; -import com.fasterxml.jackson.databind.SerializationFeature; -import com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider; -import com.fasterxml.jackson.module.jaxb.JaxbAnnotationModule; - -/** - * The Class CustomJacksonJaxBJsonProvider. - */ -@Provider -public class CustomJacksonJaxBJsonProvider extends JacksonJaxbJsonProvider { - - /** The common mapper. */ - private static ObjectMapper commonMapper = null; - - /** - * Instantiates a new custom jackson jax B json provider. - */ - public CustomJacksonJaxBJsonProvider() { - if (commonMapper == null) { - ObjectMapper mapper = new ObjectMapper(); - - mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL); - - mapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false); - mapper.configure(SerializationFeature.INDENT_OUTPUT, false); - mapper.configure(SerializationFeature.WRAP_ROOT_VALUE, false); - - mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); - mapper.configure(DeserializationFeature.UNWRAP_ROOT_VALUE, false); - - mapper.registerModule(new JaxbAnnotationModule()); - - commonMapper = mapper; - } - super.setMapper(commonMapper); - } - - /** - * Gets the mapper. - * - * @return the mapper - */ - public ObjectMapper getMapper() { - return commonMapper; - } -} diff --git a/vid/src/main/java/org/openecomp/aai/util/HttpsAuthClient.java b/vid/src/main/java/org/openecomp/aai/util/HttpsAuthClient.java deleted file mode 100644 index dec0b801..00000000 --- a/vid/src/main/java/org/openecomp/aai/util/HttpsAuthClient.java +++ /dev/null @@ -1,111 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * VID - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * 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.openecomp.aai.util; - -import java.io.FileInputStream; -import java.security.KeyManagementException; -import java.security.KeyStore; - -import javax.net.ssl.HostnameVerifier; -import javax.net.ssl.HttpsURLConnection; -import javax.net.ssl.KeyManagerFactory; -import javax.net.ssl.SSLContext; -import javax.net.ssl.SSLSession; -import javax.ws.rs.client.Client; -import javax.ws.rs.client.ClientBuilder; - -import org.openecomp.vid.encryption.EncryptedPropValue; - -import org.openecomp.portalsdk.core.util.SystemProperties; - -/** - * The Class HttpsAuthClient. - */ -public class HttpsAuthClient{ - - /** - * Gets the client. - * - * @param certFilePath the cert file path - * @return the client - * @throws KeyManagementException the key management exception - */ - public static Client getClient(String certFilePath) throws KeyManagementException { - - //config.getFeatures().put(JSONConfiguration.FEATURE_POJO_MAPPING, Boolean.TRUE); - //config.getClasses().add(org.openecomp.aai.util.CustomJacksonJaxBJsonProvider.class); - - try { - String truststore_path = certFilePath + AAIProperties.FILESEPARTOR + SystemProperties.getProperty(AAIProperties.AAI_TRUSTSTORE_FILENAME); - String truststore_password = SystemProperties.getProperty(AAIProperties.AAI_TRUSTSTORE_PASSWD_X); - String decrypted_truststore_password = EncryptedPropValue.decryptTriple(truststore_password); -// String keystore_path = certFilePath + AAIProperties.FILESEPARTOR + SystemProperties.getProperty(AAIProperties.AAI_KEYSTORE_FILENAME); -// String keystore_password = SystemProperties.getProperty(AAIProperties.AAI_KEYSTORE_PASSWD_X); -// String decrypted_keystore_password = EncryptedPropValue.decryptTriple(keystore_password); - - - - - System.setProperty("javax.net.ssl.trustStore", truststore_path); - System.setProperty("javax.net.ssl.trustStorePassword", decrypted_truststore_password); - HttpsURLConnection.setDefaultHostnameVerifier( new HostnameVerifier(){ - public boolean verify(String string,SSLSession ssls) { - return true; - } - }); - -// final SSLContext ctx = SSLContext.getInstance("TLS"); -// KeyManagerFactory kmf = null; -// try { -// kmf = KeyManagerFactory.getInstance("SunX509"); -// FileInputStream fin = new FileInputStream(keystore_path); -// KeyStore ks = KeyStore.getInstance("PKCS12"); -// char[] pwd = decrypted_keystore_password.toCharArray(); -// ks.load(fin, pwd); -// kmf.init(ks, pwd); -// } catch (Exception e) { -// System.out.println("Error setting up kmf: exiting"); -// e.printStackTrace(); -// System.exit(1); -// } -// -// ctx.init(kmf.getKeyManagers(), null, null); - - return ClientBuilder.newBuilder() - .hostnameVerifier(new HostnameVerifier() { - @Override - public boolean verify( String s, SSLSession sslSession ) { - return true; - } - }).build() - .register(org.openecomp.aai.util.CustomJacksonJaxBJsonProvider.class); - - } catch (Exception e) { - System.out.println("Error setting up config: exiting"); - e.printStackTrace(); - System.exit(1); - return null; - } - } - - - -} |