* Copyright (C) 2017 AT&T Intellectual Property. All rights
* reserved.
* ================================================================================
+ * Modifications Copyright (C) 2019 IBM.
+ * ================================================================================
* 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
* limitations under the License.
* ============LICENSE_END=========================================================
*/
-
+/**
+ * @author Rich Tabedzki
+ *
+ */
package org.onap.ccsdk.sli.adaptors.aai;
-
import java.io.BufferedReader;
import java.io.ByteArrayInputStream;
import java.io.File;
import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
import org.onap.ccsdk.sli.core.sli.SvcLogicException;
import org.onap.ccsdk.sli.core.sli.SvcLogicResource;
-import org.onap.aai.inventory.v14.GenericVnf;
-import org.onap.aai.inventory.v14.PhysicalLink;
-import org.onap.aai.inventory.v14.ResultData;
-import org.onap.aai.inventory.v14.SearchResults;
-import org.onap.aai.inventory.v14.Vserver;
+import org.onap.aai.inventory.v21.GenericVnf;
+import org.onap.aai.inventory.v21.PhysicalLink;
+import org.onap.aai.inventory.v21.ResultData;
+import org.onap.aai.inventory.v21.SearchResults;
+import org.onap.aai.inventory.v21.Vserver;
+import org.onap.logging.ref.slf4j.ONAPLogConstants;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.slf4j.MDC;
import com.fasterxml.jackson.databind.introspect.JacksonAnnotationIntrospector;
import com.fasterxml.jackson.databind.type.TypeFactory;
import com.fasterxml.jackson.module.jaxb.JaxbAnnotationIntrospector;
-import com.sun.jersey.api.client.config.DefaultClientConfig;
-import com.sun.jersey.client.urlconnection.HTTPSProperties;
public class AAIService extends AAIDeclarations implements AAIClient, SvcLogicResource {
private final String targetUri;
private final String networkVserverPath;
- private final String svc_inst_qry_path;
+ private final String svc_inst_query_path;
private final String ubb_notify_path;
private final String selflinkAvpn;
this(getProperties(url));
}
- private static Properties getProperties(URL url) {
- Properties properties = new Properties();
- try {
- properties.load(url.openStream());
- } catch (IOException exc) {
- LOG.error("getProperties", exc);
- }
- return properties;
- }
-
public AAIService(Properties props) {
LOG.info("Entered AAIService.ctor");
networkVserverPath =props.getProperty(NETWORK_VSERVER_PATH);
props.getProperty(SVC_INSTANCE_PATH);
- svc_inst_qry_path = props.getProperty(SVC_INST_QRY_PATH);
+ svc_inst_query_path = props.getProperty(SVC_INST_QRY_PATH);
props.getProperty(PARAM_SERVICE_TYPE, "service-type");
- props.getProperty(P_INTERFACE_PATH);
-
props.getProperty(VNF_IMAGE_QUERY_PATH);
ubb_notify_path = props.getProperty(UBB_NOTIFY_PATH);
}
if(keystorePath != null && keystorePassword != null && (new File(keystorePath)).exists()) {
- DefaultClientConfig config = new DefaultClientConfig();
+ //DefaultClientConfig config = new DefaultClientConfig();
//both jersey and HttpURLConnection can use this
SSLContext ctx = null;
try {
LOG.error("AAIResource", ex);
}
- ctx.init(kmf.getKeyManagers(), null, null);
- config.getProperties().put(HTTPSProperties.PROPERTY_HTTPS_PROPERTIES, new HTTPSProperties( new HostnameVerifier() {
- @Override
- public boolean verify( String s, SSLSession sslSession ) {
- return ignoreCertificateHostError;
- }
- }, ctx));
+ if(null!=kmf) {
+ ctx.init(kmf.getKeyManagers(), null, null);
+ }
+ /*
+ * config.getProperties().put(HTTPSProperties.PROPERTY_HTTPS_PROPERTIES, new
+ * HTTPSProperties( new HostnameVerifier() {
+ *
+ * @Override public boolean verify( String s, SSLSession sslSession ) { return
+ * ignoreCertificateHostError; } }, ctx));
+ */
CTX = ctx;
LOG.debug("SSLContext created");
methodsField.set(null, methods);
} catch (SecurityException | IllegalArgumentException | IllegalAccessException | NoSuchFieldException e) {
- e.printStackTrace();
+ LOG.error("Exception occured", e);
}
}
+ private static Properties getProperties(URL url) {
+ Properties properties = new Properties();
+ try {
+ properties.load(url.openStream());
+ } catch (IOException exc) {
+ LOG.error("getProperties", exc);
+ }
+ return properties;
+ }
+
public void setExecutor(AAIExecutorInterface executor) {
this.executor = executor;
}
String mlId = ml.getRequestID();
if(mlId != null && !mlId.isEmpty()) {
LOG.debug(String.format("MetricLogger requestId = %s", mlId));
- con.setRequestProperty(MetricLogger.REQUEST_ID, mlId);
+ con.setRequestProperty(ONAPLogConstants.MDCs.REQUEST_ID, mlId);
} else {
LOG.debug("MetricLogger requestId is null");
}
InputStream inputStream = null;
try {
- String path = svc_inst_qry_path;
+ String path = svc_inst_query_path;
path = path.replace("{svc-instance-id}", encodeQuery(svc_instance_id));
String request_url = targetUri+path;
try {
inputStream.close();
} catch(Exception exc) {
+ LOG.warn("Error closing Inputstream", exc);
}
}
}
try {
inputStream.close();
} catch(Exception exc) {
-
+ LOG.warn("Error closing InputStream", exc);
}
}
}
if(inputStream != null)
inputStream.close();
} catch (Exception exc) {
-
+ LOG.warn("Error closing Input stream", exc);
}
}
}
try {
inputStream.close();
} catch(Exception exc) {
-
+ LOG.warn("Error closing Input stream", exc);
}
}
}
try {
inputStream.close();
} catch(Exception exc) {
-
+ LOG.warn("Error closing Input stream", exc);
}
}
}
try {
u = new URL(url);
} catch (MalformedURLException e) {
+ LOG.warn("MalformedURLException", e);
return false;
}
try {
u.toURI();
} catch (URISyntaxException e) {
+ LOG.warn("URISyntaxException", e);
return false;
}
try {
u = new URI(url);
} catch (URISyntaxException e) {
+ LOG.warn("URISyntaxException", e);
return false;
}
}
- protected boolean deleteList(URL httpReqUrl, String json_text) throws AAIServiceException {
+ protected boolean deleteList(URL httpReqUrl, String jsonText) throws AAIServiceException {
if(httpReqUrl == null) {
throw new NullPointerException();
}
// SSLSocketFactory sockFact = CTX.getSocketFactory();
// con.setSSLSocketFactory( sockFact );
- if (json_text != null) {
+ if (jsonText != null) {
OutputStreamWriter osw = new OutputStreamWriter(con.getOutputStream());
- osw.write(json_text);
+ osw.write(jsonText);
osw.flush();
osw.close();
}
LOGwriteFirstTrace("DELETE", httpReqUrl.toString());
- LOGwriteDateTrace("data", json_text);
+ LOGwriteDateTrace("data", jsonText);
// Check for errors
int responseCode = con.getResponseCode();
case "custom-query":
case "formatted-query":
case "generic-query":
- case "named-query":
case "nodes-query":
case "linterface":
case "l2-bridge-sbg":
case "custom-query":
case "formatted-query":
case "generic-query":
- case "named-query":
case "nodes-query":
case "linterface":
case "l2-bridge-sbg":
case "custom-query":
case "formatted-query":
case "generic-query":
- case "named-query":
case "nodes-query":
case "linterface":
case "l2-bridge-sbg":
case "custom-query":
case "formatted-query":
case "generic-query":
- case "named-query":
case "nodes-query":
case "linterface":
case "l2-bridge-sbg":