import org.apache.http.impl.client.HttpClientBuilder;
import org.apache.http.util.EntityUtils;
import org.openecomp.mso.adapters.vfc.model.RestfulResponse;
-import org.openecomp.mso.logger.MessageEnum;
import org.openecomp.mso.logger.MsoAlarmLogger;
-import org.openecomp.mso.logger.MsoLogger;
import org.openecomp.mso.properties.MsoPropertiesException;
import org.openecomp.mso.properties.MsoPropertiesFactory;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
/**
* <br>
/**
* Log service
*/
- private static final MsoLogger LOGGER = MsoLogger.getMsoLogger(MsoLogger.Catalog.RA);
+ private static final Logger LOGGER = LoggerFactory.getLogger(RestfulUtil.class);
private static final MsoAlarmLogger ALARMLOGGER = new MsoAlarmLogger();
- private static final int DEFAULT_TIME_OUT = 60;
+ private static final int DEFAULT_TIME_OUT = 60000;
+
+ private static final String ONAP_IP = "ONAP_IP";
+
+ private static final String DEFAULT_MSB_IP = "127.0.0.1";
+
+ private static final String DEFAULT_MSB_PORT = "80";
private static final MsoPropertiesFactory msoPropertiesFactory = new MsoPropertiesFactory();
public static String getMsbHost() {
- String msbIp = "10.229.32.131";
- String msbPort = "8090";
+ String msbPort = DEFAULT_MSB_PORT;
+ // MSB_IP will be set as ONAP_IP environment parameter in install flow.
+ String msbIp = System.getenv().get(ONAP_IP);
try {
- msbIp = msoPropertiesFactory.getMsoJavaProperties("MSO_PROP_TOPOLOGY").getProperty("msb-ip",
- "10.229.32.131");
- msbPort = msoPropertiesFactory.getMsoJavaProperties("MSO_PROP_TOPOLOGY").getProperty("msb-port", "8099");
-
+ // if ONAP IP is not set. get it from config file.
+ if(null == msbIp || msbIp.isEmpty()) {
+ msbIp = msoPropertiesFactory.getMsoJavaProperties("MSO_PROP_TOPOLOGY").getProperty("msb-ip", DEFAULT_MSB_IP);
+ msbPort = msoPropertiesFactory.getMsoJavaProperties("MSO_PROP_TOPOLOGY").getProperty("msb-port", DEFAULT_MSB_PORT);
+ }
} catch(MsoPropertiesException e) {
- LOGGER.error(MessageEnum.RA_NS_EXC, "VFC", "", MsoLogger.ErrorCode.AvailabilityError,
- "Get msb properties failed");
- e.printStackTrace();
+ LOGGER.error("Get msb properties failed",e);
}
return "http://" + msbIp + ":" + msbPort;
}
public static RestfulResponse send(String url, String methodType, String content) {
String msbUrl = getMsbHost() + url;
- LOGGER.info(MessageEnum.RA_NS_EXC, msbUrl, "VFC", "");
- LOGGER.debug("VFC Request Body:\n" + content);
+ LOGGER.info("Begin to sent message " + methodType +": " + msbUrl);
HttpRequestBase method = null;
HttpResponse httpResponse = null;
HttpClient client = HttpClientBuilder.create().build();
- if("POST".equals(methodType.toUpperCase())) {
+ if("POST".equalsIgnoreCase(methodType)) {
HttpPost httpPost = new HttpPost(msbUrl);
httpPost.setConfig(requestConfig);
httpPost.setEntity(new StringEntity(content, ContentType.APPLICATION_JSON));
method = httpPost;
- } else if("PUT".equals(methodType.toUpperCase())) {
+ } else if("PUT".equalsIgnoreCase(methodType)) {
HttpPut httpPut = new HttpPut(msbUrl);
httpPut.setConfig(requestConfig);
httpPut.setEntity(new StringEntity(content, ContentType.APPLICATION_JSON));
method = httpPut;
- } else if("GET".equals(methodType.toUpperCase())) {
+ } else if("GET".equalsIgnoreCase(methodType)) {
HttpGet httpGet = new HttpGet(msbUrl);
httpGet.setConfig(requestConfig);
method = httpGet;
- } else if("DELETE".equals(methodType.toUpperCase())) {
+ } else if("DELETE".equalsIgnoreCase(methodType)) {
HttpDelete httpDelete = new HttpDelete(msbUrl);
httpDelete.setConfig(requestConfig);
method = httpDelete;
}
method = null;
-
- LOGGER.info(MessageEnum.RA_RESPONSE_FROM_SDNC, responseContent, "VFC", "");
return createResponse(statusCode, responseContent);
- } catch(SocketTimeoutException e) {
- String errMsg = "Request to VFC timed out";
- logError(errMsg, e);
- return createResponse(HttpURLConnection.HTTP_CLIENT_TIMEOUT, errMsg);
-
- } catch(ConnectTimeoutException e) {
+ } catch(SocketTimeoutException | ConnectTimeoutException e) {
String errMsg = "Request to VFC timed out";
logError(errMsg, e);
return createResponse(HttpURLConnection.HTTP_CLIENT_TIMEOUT, errMsg);
}
private static void logError(String errMsg, Throwable t) {
- LOGGER.error(MessageEnum.RA_NS_EXC, "VFC", "", MsoLogger.ErrorCode.AvailabilityError, errMsg, t);
+ LOGGER.error(errMsg, t);
ALARMLOGGER.sendAlarm("MsoInternalError", MsoAlarmLogger.CRITICAL, errMsg);
}
private static void logError(String errMsg) {
- LOGGER.error(MessageEnum.RA_NS_EXC, "VFC", "", MsoLogger.ErrorCode.AvailabilityError, errMsg);
+ LOGGER.error(errMsg);
ALARMLOGGER.sendAlarm("MsoInternalError", MsoAlarmLogger.CRITICAL, errMsg);
}
return rsp;
}
- /**
- * @param request
- * @return
- */
- // public static String getRequestBody(HttpServletRequest request) {
- // String body = null;
- // StringBuilder stringBuilder = new StringBuilder();
- // BufferedReader bufferedReader = null;
- // try {
- // InputStream inputStream = request.getInputStream();
- // if (inputStream != null) {
- // bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
- // char[] charBuffer = new char[128];
- // int bytesRead = -1;
- // while ((bytesRead = bufferedReader.read(charBuffer)) > 0)
- // stringBuilder.append(charBuffer, 0, bytesRead);
- // }
- // } catch (IOException ex) {
- // LOGGER.error(MessageEnum.RA_NS_EXC, "VFC", "", MsoLogger.ErrorCode.AvailabilityError,
- // "read inputStream buffer catch exception:", ex);
- // } finally {
- // if (bufferedReader != null) {
- // try {
- // bufferedReader.close();
- // } catch (IOException ex) {
- // LOGGER.error(MessageEnum.RA_NS_EXC, "VFC", "", MsoLogger.ErrorCode.AvailabilityError,
- // "close buffer catch exception:", ex);
- // }
- // }
- // }
- //
- // body = stringBuilder.toString();
- // return body;
- // }
-
}