diff options
author | TATTAVARADA <statta@research.att.com> | 2017-04-27 07:53:18 -0400 |
---|---|---|
committer | st782s <statta@research.att.com> | 2017-04-27 08:31:27 -0400 |
commit | 6beb446925c967aca92f5513adf36c5db77c00d6 (patch) | |
tree | 9392057ed0739de2445c5b2a2a8bee6dcdacbcf7 /ecomp-sdk/thirdparty/src/main/java/org/openecomp/portalsdk/core/onboarding/rest/RestWebServiceClient.java | |
parent | 246b225194e3e8dc1926294de591a94fd9787fa7 (diff) |
[PORTAL-7] Rebase
This rebasing includes common libraries and common overlays projects
abstraction of components
Change-Id: Ia1efa4deacdc5701e6205104ac021a6c80ed60ba
Signed-off-by: st782s <statta@research.att.com>
Diffstat (limited to 'ecomp-sdk/thirdparty/src/main/java/org/openecomp/portalsdk/core/onboarding/rest/RestWebServiceClient.java')
-rw-r--r-- | ecomp-sdk/thirdparty/src/main/java/org/openecomp/portalsdk/core/onboarding/rest/RestWebServiceClient.java | 178 |
1 files changed, 0 insertions, 178 deletions
diff --git a/ecomp-sdk/thirdparty/src/main/java/org/openecomp/portalsdk/core/onboarding/rest/RestWebServiceClient.java b/ecomp-sdk/thirdparty/src/main/java/org/openecomp/portalsdk/core/onboarding/rest/RestWebServiceClient.java deleted file mode 100644 index fc5ce872..00000000 --- a/ecomp-sdk/thirdparty/src/main/java/org/openecomp/portalsdk/core/onboarding/rest/RestWebServiceClient.java +++ /dev/null @@ -1,178 +0,0 @@ -/*- - * ================================================================================ - * eCOMP Portal SDK - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property - * ================================================================================ - * 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.openecomp.portalsdk.core.onboarding.rest; - -import java.io.BufferedReader; -import java.io.IOException; -import java.io.InputStreamReader; -import java.net.HttpURLConnection; -import java.net.URL; -import java.util.UUID; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.openecomp.portalsdk.core.onboarding.crossapi.PortalApiConstants; -import org.openecomp.portalsdk.core.onboarding.crossapi.PortalApiProperties; - -public class RestWebServiceClient { - - private final Log logger = LogFactory.getLog(RestWebServiceClient.class); - - /** - * Singleton instance - */ - private static RestWebServiceClient instance = null; - - /** - * Constructor is private. Clients should obtain an instance via - * getInstance(). - */ - private RestWebServiceClient() { - } - - /** - * Gets the static instance of RestWebServiceClient; creates it if - * necessary. Synchronized to be thread safe. - * - * @return Static instance of RestWebServiceClient. - */ - public static synchronized RestWebServiceClient getInstance() { - if (instance == null) - instance = new RestWebServiceClient(); - return instance; - } - - /** - * Convenience method that fetches the URL for the Portal REST API endpoint - * and the application UEB key, then calls - * {@link #get(String, String, String, String, String, String, String)} to - * access the Portal's REST endpoint. - * - * @param restPath - * Partial path of the endpoint; e.g., "/specialRestService" - * @param userId - * userId for the user originating the request - * @param appName - * Application Name for logging. - * @param requestId - * 128-bit UUID value to uniquely identify the transaction. - * @param appUserName - * REST API user name for Portal to authenticate the request - * @param appPassword - * REST API password (in the clear, not encrypted) for Portal to - * authenticate the request - * @return Content from REST endpoint - * @throws Exception - * on any failure - */ - public String getPortalContent(String restPath, String userId, String appName, String requestId, String appUserName, - String appPassword) throws Exception { - String restURL = PortalApiProperties.getProperty(PortalApiConstants.ECOMP_REST_URL); - if (restURL == null) { - // should never happen - String msg = "getPortalContent: failed to get property " + PortalApiConstants.ECOMP_REST_URL; - logger.error(msg); - throw new Exception(msg); - } - String appUebKey = PortalApiProperties.getProperty(PortalApiConstants.UEB_APP_KEY); - if (appUebKey == null) { - // should never happen - String msg = "getPortalContent: failed to get property " + PortalApiConstants.UEB_APP_KEY; - logger.error(msg); - throw new Exception(msg); - } - final String restEndpointUrl = restURL + restPath; - return get(restEndpointUrl, userId, appName, requestId, appUebKey, appUserName, appPassword); - } - - /** - * Makes a call to a Portal REST API using the specified URL and parameters. - * - * @param url - * Complete URL of the REST endpoint. - * @param loginId - * User that it should be fetching the data - * @param appName - * Application name for logging; if null or empty, defaulted to - * Unknown. - * @param requestId - * 128-bit UUID value to uniquely identify the transaction; if - * null or empty, one is generated. - * @param appUebKey - * Unique key for the application, used by Portal to authenticate - * the request - * @param appUserName - * REST API user name, used by Portal to authenticate the request - * @param appPassword - * REST API password, used by Portal to authenticate the request - * @return Content from REST endpoint - * @throws Exception - * On any failure; e.g., unknown host. - */ - public String get(String url, String loginId, String appName, String requestId, String appUebKey, - String appUserName, String appPassword) throws Exception { - - logger.debug("RestWebServiceClient.get (" + url + ") operation is started."); - if (appName == null || appName.trim().length() == 0) - appName = "Unknown"; - if (requestId == null || requestId.trim().length() == 0) - requestId = UUID.randomUUID().toString(); - - URL obj = new URL(url); - // Create the connection object - HttpURLConnection con = (HttpURLConnection) obj.openConnection(); - con.setRequestMethod("GET"); - con.setConnectTimeout(3000); - con.setReadTimeout(8000); - - // add request header - con.setRequestProperty("uebkey", appUebKey); - con.setRequestProperty("username", appUserName); - con.setRequestProperty("password", appPassword); - con.setRequestProperty("LoginId", loginId); - con.setRequestProperty("user-agent", appName); - con.setRequestProperty("X-ECOMP-RequestID", requestId); - - int responseCode = con.getResponseCode(); - logger.debug("get: received response code '" + responseCode + "' while getting the '" + url + "' for user: " - + loginId); - - StringBuffer sb = new StringBuffer(); - BufferedReader in = null; - try { - in = new BufferedReader(new InputStreamReader(con.getInputStream(), "UTF-8")); - String inputLine = null; - while ((inputLine = in.readLine()) != null) - sb.append(inputLine); - } finally { - try { - if (in != null) - in.close(); - } catch (IOException ex) { - logger.error("get: failed to close reader", ex); - } - } - - final String response = sb.toString(); - if (logger.isDebugEnabled()) - logger.debug("get: url " + url + " yielded " + response); - return response; - } -} |