From ecdf5839b8c1c17b0b774466627c7ee10e83e764 Mon Sep 17 00:00:00 2001 From: “shentao” Date: Sun, 18 Sep 2016 19:17:29 +0800 Subject: modify common module MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: Id2553bbffe2a3aea2e944c0a8fcec771b5ccf277 Signed-off-by: “shentao” --- openo-portal/pom.xml | 5 + openo-portal/portal-common/pom.xml | 32 +- .../portal-common/src/main/webapp/WEB-INF/web.xml | 21 ++ .../gui/servicegateway/activator/Activator.java | 172 +++++----- .../gso/gui/servicegateway/constant/Constant.java | 330 +++++++++---------- .../gui/servicegateway/exception/ErrorCode.java | 150 ++++----- .../roa/impl/ServiceGatewayRoaModuleImpl.java | 212 ++++++------ .../service/impl/ServiceGatewayImpl.java | 266 +++++++-------- .../service/inf/IServiceGateway.java | 110 +++---- .../servicegateway/util/http/ResponseUtils.java | 350 ++++++++++---------- .../roa/impl/ServiceGatewayRoaModuleImplTest.java | 366 ++++++++++----------- .../service/impl/ServiceGatewayImplTest.java | 144 ++++---- 12 files changed, 1098 insertions(+), 1060 deletions(-) create mode 100644 openo-portal/portal-common/src/main/webapp/WEB-INF/web.xml diff --git a/openo-portal/pom.xml b/openo-portal/pom.xml index 20585b1b..e6dbf7b3 100644 --- a/openo-portal/pom.xml +++ b/openo-portal/pom.xml @@ -27,4 +27,9 @@ openo-portal pom portal + + + portal-package + portal-common + diff --git a/openo-portal/portal-common/pom.xml b/openo-portal/portal-common/pom.xml index 81092077..ba32aaad 100644 --- a/openo-portal/portal-common/pom.xml +++ b/openo-portal/portal-common/pom.xml @@ -17,15 +17,27 @@ --> - 4.0.0 - - org.openo.gso.gui - openo-portal - 1.0.0-SNAPSHOT - - + + org.openo.gso.gui + openo-portal + 1.0.0-SNAPSHOT + + - common - 1.0.0-SNAPSHOT - pom + 4.0.0 + portal-common + 1.0.0-SNAPSHOT + war + + + + + org.apache.maven.plugins + maven-war-plugin + + false + + + + diff --git a/openo-portal/portal-common/src/main/webapp/WEB-INF/web.xml b/openo-portal/portal-common/src/main/webapp/WEB-INF/web.xml new file mode 100644 index 00000000..7c099597 --- /dev/null +++ b/openo-portal/portal-common/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,21 @@ + + + + OPEN-O Web Common Module + diff --git a/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/activator/Activator.java b/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/activator/Activator.java index 2f539e7e..0055931d 100644 --- a/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/activator/Activator.java +++ b/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/activator/Activator.java @@ -1,86 +1,86 @@ -/* - * Copyright (c) 2016, Huawei Technologies Co., Ltd. - * - * 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.openo.gso.gui.servicegateway.activator; - -import java.io.File; - -import org.apache.commons.lang3.StringUtils; -import org.openo.baseservice.util.impl.SystemEnvVariablesFactory; -import org.openo.gso.gui.servicegateway.constant.Constant; -import org.openo.gso.gui.servicegateway.util.register.RegisterUtil; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -/** - * Service Start
- * - * @author - * @since GSO 0.5, 2016-8-10 - */ -public class Activator { - - private static final Logger LOGGER = LoggerFactory.getLogger(Activator.class); - - - /** - * start operation by spring
- * - * @param context - * service context - * @author - * @since GSO 0.5, 2016-8-10 - */ - public void start() { - // register restful to M-Bus when starting service - registerService(); - } - - /** - * register the service to M-Bus
- * - * @author - * @since GSO 0.5, 2016-8-10 - */ - private void registerService() { - // get the jsonString form the service file - String root = SystemEnvVariablesFactory.getInstance().getAppRoot(); - String serviceFilePath = root + File.separator + Constant.FILE_PATH_ETC + File.separator - + Constant.FILE_PATH_REGISTER + File.separator + Constant.FILE_PATH_JSON; - String jsonInfo = RegisterUtil.readFile(serviceFilePath); - - // check the jsonInfo - if(StringUtils.isEmpty(jsonInfo)) { - LOGGER.error("ServiceGateway ReadFile fail: jsonInfo is null. the serviceFilePath=" + serviceFilePath); - return; - } - - // register service by the jsonInfo - RegisterUtil.registerService(jsonInfo); - } - - /** - * stop operation by spring
- * - * @param context - * service context - * @author - * @since GSO 0.5, 2016-8-10 - */ - public void stop() { - // no operation - } -} +/* + * Copyright (c) 2016, Huawei Technologies Co., Ltd. + * + * 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.openo.gso.gui.servicegateway.activator; + +import java.io.File; + +import org.apache.commons.lang3.StringUtils; +import org.openo.baseservice.util.impl.SystemEnvVariablesFactory; +import org.openo.gso.gui.servicegateway.constant.Constant; +import org.openo.gso.gui.servicegateway.util.register.RegisterUtil; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * Service Start
+ * + * @author + * @since GSO 0.5, 2016-8-10 + */ +public class Activator { + + private static final Logger LOGGER = LoggerFactory.getLogger(Activator.class); + + + /** + * start operation by spring
+ * + * @param context + * service context + * @author + * @since GSO 0.5, 2016-8-10 + */ + public void start() { + // register restful to M-Bus when starting service + registerService(); + } + + /** + * register the service to M-Bus
+ * + * @author + * @since GSO 0.5, 2016-8-10 + */ + private void registerService() { + // get the jsonString form the service file + String root = SystemEnvVariablesFactory.getInstance().getAppRoot(); + String serviceFilePath = root + File.separator + Constant.FILE_PATH_ETC + File.separator + + Constant.FILE_PATH_REGISTER + File.separator + Constant.FILE_PATH_JSON; + String jsonInfo = RegisterUtil.readFile(serviceFilePath); + + // check the jsonInfo + if(StringUtils.isEmpty(jsonInfo)) { + LOGGER.error("ServiceGateway ReadFile fail: jsonInfo is null. the serviceFilePath=" + serviceFilePath); + return; + } + + // register service by the jsonInfo + RegisterUtil.registerService(jsonInfo); + } + + /** + * stop operation by spring
+ * + * @param context + * service context + * @author + * @since GSO 0.5, 2016-8-10 + */ + public void stop() { + // no operation + } +} diff --git a/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/constant/Constant.java b/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/constant/Constant.java index 58b0b227..2e35b5a8 100644 --- a/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/constant/Constant.java +++ b/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/constant/Constant.java @@ -1,165 +1,165 @@ -/* - * Copyright (c) 2016, Huawei Technologies Co., Ltd. - * - * 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.openo.gso.gui.servicegateway.constant; - -/** - * Constant definition.
- *

- *

- * - * @author - * @version GSO 0.5 2016/8/22 - */ -public class Constant { - - /** - * Service instance ID. - */ - public static final String SERVICE_INDENTIFY = "service"; - - /** - * Service instance ID. - */ - public static final String SERVICE_INSTANCE_ID = "serviceId"; - - /** - * Service package ID. - */ - public static final String SERVICE_DEF_ID = "serviceDefId"; - - /** - * Service gateway URL. - */ - public static final String SERVICE_GATEWAY_URI = "gatewayUri"; - - - /** - * Create workflow name. - */ - public static final String WORK_FLOW_PLAN_CREATE = "create"; - - /** - * Delete workflow name. - */ - public static final String WORK_FLOW_PLAN_DELETE = "delete"; - - /** - * filed in wso2 body. - */ - public static final String WSO_PROCESSID = "processId"; - - /** - * filed in wso2 body. - */ - public static final String WSO_PARAMS = "params"; - - /** - * Response result; - */ - public static final String RESPONSE_RESULT = "result"; - - /** - * Response status. - */ - public static final String RESPONSE_STATUS = "status"; - - /** - * Response status description. - */ - public static final String RESPONSE_STATUS_DESCRIPTION = "statusDescription"; - - /** - * Error code of response. - */ - public static final String RESPONSE_ERRORCODE = "errorCode"; - - /** - * Operations success. - */ - public static final String RESPONSE_STATUS_SUCCESS = "success"; - - /** - * Operation failed. - */ - public static final String RESPONSE_STATUS_FAIL = "fail"; - - /** - * ID of instance. - */ - public static final String NS_INSTANCE_ID = "nsInstanceId"; - - /** - * service identify. - */ - public static final String SERVICE_ID = "serviceId"; - - /** - * job Id - */ - public static final String JOB_ID = "jobId"; - - /** - * service file Path:etc - */ - public static final String FILE_PATH_ETC = "etc"; - - /** - * service file Path:register - */ - public static final String FILE_PATH_REGISTER = "register"; - - /** - * service file Path:file name - */ - public static final String FILE_PATH_JSON = "service.json"; - - /** - * the head type for Restful - */ - public static final String HEAD_ERMAP_TYPE = "Content-Type"; - - /** - * the head value for Restful - */ - public static final String HEAD_ERMAP_VALUE = "application/json;charset=UTF-8"; - - /** - * the URL for Register service to the M-service Bus - */ - public static final String M_BUS_REGISTER_URL = "/openoapi/microservices/v1/services"; - - /** - * the IP key for the service file - */ - public static final String SERVICE_KEY_IP = "getInputIP"; - - /** - * constant:0 - */ - public static final int ZERO = 0; - - /** - * Constructor
- *

- *

- * - * @since GSO 0.5 - */ - private Constant() { - - } -} +/* + * Copyright (c) 2016, Huawei Technologies Co., Ltd. + * + * 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.openo.gso.gui.servicegateway.constant; + +/** + * Constant definition.
+ *

+ *

+ * + * @author + * @version GSO 0.5 2016/8/22 + */ +public class Constant { + + /** + * Service instance ID. + */ + public static final String SERVICE_INDENTIFY = "service"; + + /** + * Service instance ID. + */ + public static final String SERVICE_INSTANCE_ID = "serviceId"; + + /** + * Service package ID. + */ + public static final String SERVICE_DEF_ID = "serviceDefId"; + + /** + * Service gateway URL. + */ + public static final String SERVICE_GATEWAY_URI = "gatewayUri"; + + + /** + * Create workflow name. + */ + public static final String WORK_FLOW_PLAN_CREATE = "create"; + + /** + * Delete workflow name. + */ + public static final String WORK_FLOW_PLAN_DELETE = "delete"; + + /** + * filed in wso2 body. + */ + public static final String WSO_PROCESSID = "processId"; + + /** + * filed in wso2 body. + */ + public static final String WSO_PARAMS = "params"; + + /** + * Response result; + */ + public static final String RESPONSE_RESULT = "result"; + + /** + * Response status. + */ + public static final String RESPONSE_STATUS = "status"; + + /** + * Response status description. + */ + public static final String RESPONSE_STATUS_DESCRIPTION = "statusDescription"; + + /** + * Error code of response. + */ + public static final String RESPONSE_ERRORCODE = "errorCode"; + + /** + * Operations success. + */ + public static final String RESPONSE_STATUS_SUCCESS = "success"; + + /** + * Operation failed. + */ + public static final String RESPONSE_STATUS_FAIL = "fail"; + + /** + * ID of instance. + */ + public static final String NS_INSTANCE_ID = "nsInstanceId"; + + /** + * service identify. + */ + public static final String SERVICE_ID = "serviceId"; + + /** + * job Id + */ + public static final String JOB_ID = "jobId"; + + /** + * service file Path:etc + */ + public static final String FILE_PATH_ETC = "etc"; + + /** + * service file Path:register + */ + public static final String FILE_PATH_REGISTER = "register"; + + /** + * service file Path:file name + */ + public static final String FILE_PATH_JSON = "service.json"; + + /** + * the head type for Restful + */ + public static final String HEAD_ERMAP_TYPE = "Content-Type"; + + /** + * the head value for Restful + */ + public static final String HEAD_ERMAP_VALUE = "application/json;charset=UTF-8"; + + /** + * the URL for Register service to the M-service Bus + */ + public static final String M_BUS_REGISTER_URL = "/openoapi/microservices/v1/services"; + + /** + * the IP key for the service file + */ + public static final String SERVICE_KEY_IP = "getInputIP"; + + /** + * constant:0 + */ + public static final int ZERO = 0; + + /** + * Constructor
+ *

+ *

+ * + * @since GSO 0.5 + */ + private Constant() { + + } +} diff --git a/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/exception/ErrorCode.java b/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/exception/ErrorCode.java index 1a94e70d..d3519a05 100644 --- a/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/exception/ErrorCode.java +++ b/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/exception/ErrorCode.java @@ -1,75 +1,75 @@ -/* - * Copyright (c) 2016, Huawei Technologies Co., Ltd. - * - * 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.openo.gso.gui.servicegateway.exception; - -/** - * Constant Class.
- *

- * Define constant for recording error. - *

- * - * @author - * @version GSO 0.5 2016/8/4 - */ -public class ErrorCode { - - /** - * Fail to operate database. - */ - public static final String SVCMGR_OPER_MYSQL_DB_ERROR = "servicemgr.mysql.oper_mysql_db_error"; - - /** - * Parameter is wrong. - */ - public static final String SVCMGR_SERVICEMGR_BAD_PARAM = "servicemgr.bad_param"; - - /** - * Operation is failure. - */ - public static final String SVCMGR_SERVICEMGR_FAIL_OPERATION = "servicemgr.fail.operation"; - - /** - * Package is being deleted. - */ - public static final String SVCMGR_PACKAGE_BEING_DELETED = "servicemgr.package.beingDelete"; - - /** - * operation fail - */ - public static final int FAIL = 3; - - /** - * operation partial success - */ - public static final int PARTIAL_SUCCESS = 1; - - /** - * operation success - */ - public static final int SUCCESS = 0; - - /** - * Constructor
- *

- *

- * - * @since GSO 0.5 - */ - private ErrorCode() { - - } -} +/* + * Copyright (c) 2016, Huawei Technologies Co., Ltd. + * + * 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.openo.gso.gui.servicegateway.exception; + +/** + * Constant Class.
+ *

+ * Define constant for recording error. + *

+ * + * @author + * @version GSO 0.5 2016/8/4 + */ +public class ErrorCode { + + /** + * Fail to operate database. + */ + public static final String SVCMGR_OPER_MYSQL_DB_ERROR = "servicemgr.mysql.oper_mysql_db_error"; + + /** + * Parameter is wrong. + */ + public static final String SVCMGR_SERVICEMGR_BAD_PARAM = "servicemgr.bad_param"; + + /** + * Operation is failure. + */ + public static final String SVCMGR_SERVICEMGR_FAIL_OPERATION = "servicemgr.fail.operation"; + + /** + * Package is being deleted. + */ + public static final String SVCMGR_PACKAGE_BEING_DELETED = "servicemgr.package.beingDelete"; + + /** + * operation fail + */ + public static final int FAIL = 3; + + /** + * operation partial success + */ + public static final int PARTIAL_SUCCESS = 1; + + /** + * operation success + */ + public static final int SUCCESS = 0; + + /** + * Constructor
+ *

+ *

+ * + * @since GSO 0.5 + */ + private ErrorCode() { + + } +} diff --git a/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/roa/impl/ServiceGatewayRoaModuleImpl.java b/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/roa/impl/ServiceGatewayRoaModuleImpl.java index 7480bdc4..492d75fe 100644 --- a/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/roa/impl/ServiceGatewayRoaModuleImpl.java +++ b/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/roa/impl/ServiceGatewayRoaModuleImpl.java @@ -1,106 +1,106 @@ -/* - * Copyright (c) 2016, Huawei Technologies Co., Ltd. - * - * 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.openo.gso.gui.servicegateway.roa.impl; - -import java.util.Map; - -import javax.servlet.http.HttpServletRequest; -import javax.ws.rs.core.Response; - -import org.openo.baseservice.remoteservice.exception.ServiceException; -import org.openo.baseservice.util.RestUtils; -import org.openo.gso.gui.servicegateway.constant.Constant; -import org.openo.gso.gui.servicegateway.exception.HttpCode; -import org.openo.gso.gui.servicegateway.roa.inf.IServiceGatewayRoaModule; -import org.openo.gso.gui.servicegateway.service.impl.ServiceGatewayImpl; -import org.openo.gso.gui.servicegateway.service.inf.IServiceGateway; -import org.openo.gso.gui.servicegateway.util.http.ResponseUtils; -import org.openo.gso.gui.servicegateway.util.validate.ValidateUtil; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -/** - * Implement class for restful interface.
- *

- *

- * - * @author - * @version GSO 0.5 2016/8/4 - */ -public class ServiceGatewayRoaModuleImpl implements IServiceGatewayRoaModule { - - /** - * Log server. - */ - private static final Logger LOGGER = LoggerFactory.getLogger(ServiceGatewayRoaModuleImpl.class); - - /** - * Service manager. - */ - private IServiceGateway serviceGateway = new ServiceGatewayImpl(); - - /** - * Create service instance.
- * - * @param servletReq http request - * @return response - * @throws ServiceException when operate database or parameter is wrong. - * @since GSO 0.5 - */ - @Override - public Response createService(HttpServletRequest servletReq) { - Map operateStatus = null; - Map result = null; - String serviceId = null; - try { - // 1. Check validation - String reqContent = RestUtils.getRequestBody(servletReq); - ValidateUtil.assertStringNotNull(reqContent); - - // 2. Create service - serviceId = serviceGateway.createService(reqContent, servletReq); - } catch(ServiceException exception) { - LOGGER.error("Fail to create service instance."); - operateStatus = ResponseUtils.setOperateStatus(Constant.RESPONSE_STATUS_FAIL, exception, - String.valueOf(exception.getHttpCode())); - result = ResponseUtils.setResult(serviceId, operateStatus); - - return Response.accepted().entity(result).build(); - } - - operateStatus = ResponseUtils.setOperateStatus(Constant.RESPONSE_STATUS_SUCCESS, null, - String.valueOf(HttpCode.RESPOND_OK)); - result = ResponseUtils.setResult(serviceId, operateStatus); - - return Response.accepted().entity(result).build(); - } - - /** - * Delete service instance.
- * - * @param serviceId service instance id - * @param servletReq http request - * @return response - * @throws ServiceException when operate database or parameter is wrong. - * @since GSO 0.5 - */ - @Override - public Response deleteService(String serviceId, HttpServletRequest servletReq) { - - return null; - } -} +/* + * Copyright (c) 2016, Huawei Technologies Co., Ltd. + * + * 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.openo.gso.gui.servicegateway.roa.impl; + +import java.util.Map; + +import javax.servlet.http.HttpServletRequest; +import javax.ws.rs.core.Response; + +import org.openo.baseservice.remoteservice.exception.ServiceException; +import org.openo.baseservice.util.RestUtils; +import org.openo.gso.gui.servicegateway.constant.Constant; +import org.openo.gso.gui.servicegateway.exception.HttpCode; +import org.openo.gso.gui.servicegateway.roa.inf.IServiceGatewayRoaModule; +import org.openo.gso.gui.servicegateway.service.impl.ServiceGatewayImpl; +import org.openo.gso.gui.servicegateway.service.inf.IServiceGateway; +import org.openo.gso.gui.servicegateway.util.http.ResponseUtils; +import org.openo.gso.gui.servicegateway.util.validate.ValidateUtil; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * Implement class for restful interface.
+ *

+ *

+ * + * @author + * @version GSO 0.5 2016/8/4 + */ +public class ServiceGatewayRoaModuleImpl implements IServiceGatewayRoaModule { + + /** + * Log server. + */ + private static final Logger LOGGER = LoggerFactory.getLogger(ServiceGatewayRoaModuleImpl.class); + + /** + * Service manager. + */ + private IServiceGateway serviceGateway = new ServiceGatewayImpl(); + + /** + * Create service instance.
+ * + * @param servletReq http request + * @return response + * @throws ServiceException when operate database or parameter is wrong. + * @since GSO 0.5 + */ + @Override + public Response createService(HttpServletRequest servletReq) { + Map operateStatus = null; + Map result = null; + String serviceId = null; + try { + // 1. Check validation + String reqContent = RestUtils.getRequestBody(servletReq); + ValidateUtil.assertStringNotNull(reqContent); + + // 2. Create service + serviceId = serviceGateway.createService(reqContent, servletReq); + } catch(ServiceException exception) { + LOGGER.error("Fail to create service instance."); + operateStatus = ResponseUtils.setOperateStatus(Constant.RESPONSE_STATUS_FAIL, exception, + String.valueOf(exception.getHttpCode())); + result = ResponseUtils.setResult(serviceId, operateStatus); + + return Response.accepted().entity(result).build(); + } + + operateStatus = ResponseUtils.setOperateStatus(Constant.RESPONSE_STATUS_SUCCESS, null, + String.valueOf(HttpCode.RESPOND_OK)); + result = ResponseUtils.setResult(serviceId, operateStatus); + + return Response.accepted().entity(result).build(); + } + + /** + * Delete service instance.
+ * + * @param serviceId service instance id + * @param servletReq http request + * @return response + * @throws ServiceException when operate database or parameter is wrong. + * @since GSO 0.5 + */ + @Override + public Response deleteService(String serviceId, HttpServletRequest servletReq) { + + return null; + } +} diff --git a/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/service/impl/ServiceGatewayImpl.java b/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/service/impl/ServiceGatewayImpl.java index e2200d4d..70162529 100644 --- a/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/service/impl/ServiceGatewayImpl.java +++ b/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/service/impl/ServiceGatewayImpl.java @@ -1,133 +1,133 @@ -/* - * Copyright (c) 2016, Huawei Technologies Co., Ltd. - * - * 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.openo.gso.gui.servicegateway.service.impl; - -import java.util.Map; - -import javax.servlet.http.HttpServletRequest; - -import org.apache.commons.lang.StringUtils; -import org.openo.baseservice.remoteservice.exception.ServiceException; -import org.openo.baseservice.roa.util.restclient.RestfulFactory; -import org.openo.baseservice.roa.util.restclient.RestfulParametes; -import org.openo.baseservice.roa.util.restclient.RestfulResponse; -import org.openo.gso.gui.servicegateway.constant.Constant; -import org.openo.gso.gui.servicegateway.service.inf.IServiceGateway; -import org.openo.gso.gui.servicegateway.util.json.JsonUtil; -import org.openo.gso.gui.servicegateway.util.validate.ValidateUtil; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -/** - * ServiceGateway service class.
- *

- *

- * - * @author - * @version GSO 0.5 2016/8/4 - */ -public class ServiceGatewayImpl implements IServiceGateway { - - /** - * Log service. - */ - private static final Logger LOGGER = LoggerFactory.getLogger(ServiceGatewayImpl.class); - - - /** - * Create service instance.
- * - * @param reqContent content of request - * @param httpRequest http request - * @throws ServiceException when operate DB or parameter is wrong. - * @since GSO 0.5 - */ - @SuppressWarnings("unchecked") - @Override - public String createService(String reqContent, HttpServletRequest httpRequest) throws ServiceException { - // check the value - if(StringUtils.isEmpty(reqContent)) - { - LOGGER.error("ServiceGatewayImpl createService reqContent is null."); - return null; - } - - // Parse request - Map requestBody = JsonUtil.unMarshal(reqContent, Map.class); - Map service = (Map)requestBody.get(Constant.SERVICE_INDENTIFY); - if(null == service) - { - service = requestBody; - } - ValidateUtil.assertObjectNotNull(requestBody); - - // Validate data - String gatewayUri = (String)service.get(Constant.SERVICE_GATEWAY_URI); - ValidateUtil.assertStringNotNull(gatewayUri); - service.remove(Constant.SERVICE_GATEWAY_URI); - - // call the restful - String id = null; - try { - RestfulResponse restfulRsp = RestfulFactory.getRestInstance("http").post(gatewayUri, - getRestfulParameters(JsonUtil.marshal(requestBody))); - if (null != restfulRsp) { - // Record the result of registration - // (201:success;415:Invalid Parameter;500:Internal Server Error) - LOGGER.info("restful call result:", restfulRsp.getStatus()); - id = restfulRsp.getRespHeaderStr(Constant.SERVICE_ID); - id = (null == id) ? restfulRsp.getRespHeaderStr(Constant.NS_INSTANCE_ID) : id; - id = (null == id) ? restfulRsp.getRespHeaderStr(Constant.JOB_ID) : id; - } - } catch(ServiceException e) { - LOGGER.error("service gateway create restful call result:", e); - throw e; - } - - return id; - } - - /** - * get the parameters for restful
- * - * @author - * @param bodyData - * Json Body - * @return the RestfulParametes Instance - * @since GSO 0.5, 2016-8-9 - */ - private static RestfulParametes getRestfulParameters(final String bodyData) { - RestfulParametes param = new RestfulParametes(); - param.putHttpContextHeader(Constant.HEAD_ERMAP_TYPE, Constant.HEAD_ERMAP_VALUE); - param.setRawData(bodyData); - return param; - } - - /** - * Delete service instances.
- * - * @param serviceId service instance ID - * @param httpRequest http request - * @throws ServiceException operate DB or parameter is wrong. - * @since GSO 0.5 - */ - @Override - public void deleteService(String serviceId, HttpServletRequest httpRequest) throws ServiceException { - - } - -} +/* + * Copyright (c) 2016, Huawei Technologies Co., Ltd. + * + * 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.openo.gso.gui.servicegateway.service.impl; + +import java.util.Map; + +import javax.servlet.http.HttpServletRequest; + +import org.apache.commons.lang.StringUtils; +import org.openo.baseservice.remoteservice.exception.ServiceException; +import org.openo.baseservice.roa.util.restclient.RestfulFactory; +import org.openo.baseservice.roa.util.restclient.RestfulParametes; +import org.openo.baseservice.roa.util.restclient.RestfulResponse; +import org.openo.gso.gui.servicegateway.constant.Constant; +import org.openo.gso.gui.servicegateway.service.inf.IServiceGateway; +import org.openo.gso.gui.servicegateway.util.json.JsonUtil; +import org.openo.gso.gui.servicegateway.util.validate.ValidateUtil; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * ServiceGateway service class.
+ *

+ *

+ * + * @author + * @version GSO 0.5 2016/8/4 + */ +public class ServiceGatewayImpl implements IServiceGateway { + + /** + * Log service. + */ + private static final Logger LOGGER = LoggerFactory.getLogger(ServiceGatewayImpl.class); + + + /** + * Create service instance.
+ * + * @param reqContent content of request + * @param httpRequest http request + * @throws ServiceException when operate DB or parameter is wrong. + * @since GSO 0.5 + */ + @SuppressWarnings("unchecked") + @Override + public String createService(String reqContent, HttpServletRequest httpRequest) throws ServiceException { + // check the value + if(StringUtils.isEmpty(reqContent)) + { + LOGGER.error("ServiceGatewayImpl createService reqContent is null."); + return null; + } + + // Parse request + Map requestBody = JsonUtil.unMarshal(reqContent, Map.class); + Map service = (Map)requestBody.get(Constant.SERVICE_INDENTIFY); + if(null == service) + { + service = requestBody; + } + ValidateUtil.assertObjectNotNull(requestBody); + + // Validate data + String gatewayUri = (String)service.get(Constant.SERVICE_GATEWAY_URI); + ValidateUtil.assertStringNotNull(gatewayUri); + service.remove(Constant.SERVICE_GATEWAY_URI); + + // call the restful + String id = null; + try { + RestfulResponse restfulRsp = RestfulFactory.getRestInstance("http").post(gatewayUri, + getRestfulParameters(JsonUtil.marshal(requestBody))); + if (null != restfulRsp) { + // Record the result of registration + // (201:success;415:Invalid Parameter;500:Internal Server Error) + LOGGER.info("restful call result:", restfulRsp.getStatus()); + id = restfulRsp.getRespHeaderStr(Constant.SERVICE_ID); + id = (null == id) ? restfulRsp.getRespHeaderStr(Constant.NS_INSTANCE_ID) : id; + id = (null == id) ? restfulRsp.getRespHeaderStr(Constant.JOB_ID) : id; + } + } catch(ServiceException e) { + LOGGER.error("service gateway create restful call result:", e); + throw e; + } + + return id; + } + + /** + * get the parameters for restful
+ * + * @author + * @param bodyData + * Json Body + * @return the RestfulParametes Instance + * @since GSO 0.5, 2016-8-9 + */ + private static RestfulParametes getRestfulParameters(final String bodyData) { + RestfulParametes param = new RestfulParametes(); + param.putHttpContextHeader(Constant.HEAD_ERMAP_TYPE, Constant.HEAD_ERMAP_VALUE); + param.setRawData(bodyData); + return param; + } + + /** + * Delete service instances.
+ * + * @param serviceId service instance ID + * @param httpRequest http request + * @throws ServiceException operate DB or parameter is wrong. + * @since GSO 0.5 + */ + @Override + public void deleteService(String serviceId, HttpServletRequest httpRequest) throws ServiceException { + + } + +} diff --git a/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/service/inf/IServiceGateway.java b/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/service/inf/IServiceGateway.java index f9ecb748..9e18cb13 100644 --- a/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/service/inf/IServiceGateway.java +++ b/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/service/inf/IServiceGateway.java @@ -1,55 +1,55 @@ -/* - * Copyright (c) 2016, Huawei Technologies Co., Ltd. - * - * 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.openo.gso.gui.servicegateway.service.inf; - - -import javax.servlet.http.HttpServletRequest; - -import org.openo.baseservice.remoteservice.exception.ServiceException; - -/** - * Interface to operate service.
- *

- *

- * - * @author - * @version GSO 0.5 2016/8/4 - */ -public interface IServiceGateway { - - /** - * Create service instance.
- * - * @param reqContent content of request - * @param httpRequest http request - * @return service instance - * @throws ServiceException when operate DB or parameter is wrong. - * @since GSO 0.5 - */ - String createService(String reqContent, HttpServletRequest httpRequest) throws ServiceException; - - /** - * Delete service instances.
- * - * @param serviceId service instance ID - * @param httpRequest http request - * @throws ServiceException operate DB or parameter is wrong. - * @since GSO 0.5 - */ - void deleteService(String serviceId, HttpServletRequest httpRequest) throws ServiceException; - -} +/* + * Copyright (c) 2016, Huawei Technologies Co., Ltd. + * + * 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.openo.gso.gui.servicegateway.service.inf; + + +import javax.servlet.http.HttpServletRequest; + +import org.openo.baseservice.remoteservice.exception.ServiceException; + +/** + * Interface to operate service.
+ *

+ *

+ * + * @author + * @version GSO 0.5 2016/8/4 + */ +public interface IServiceGateway { + + /** + * Create service instance.
+ * + * @param reqContent content of request + * @param httpRequest http request + * @return service instance + * @throws ServiceException when operate DB or parameter is wrong. + * @since GSO 0.5 + */ + String createService(String reqContent, HttpServletRequest httpRequest) throws ServiceException; + + /** + * Delete service instances.
+ * + * @param serviceId service instance ID + * @param httpRequest http request + * @throws ServiceException operate DB or parameter is wrong. + * @since GSO 0.5 + */ + void deleteService(String serviceId, HttpServletRequest httpRequest) throws ServiceException; + +} diff --git a/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/util/http/ResponseUtils.java b/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/util/http/ResponseUtils.java index 7780e6e5..05d4f0f9 100644 --- a/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/util/http/ResponseUtils.java +++ b/servicegateway/service/src/main/java/org/openo/gso/gui/servicegateway/util/http/ResponseUtils.java @@ -1,175 +1,175 @@ -/* - * Copyright (c) 2016, Huawei Technologies Co., Ltd. - * - * 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.openo.gso.gui.servicegateway.util.http; - -import java.util.HashMap; -import java.util.LinkedList; -import java.util.List; -import java.util.Map; - -import org.codehaus.jackson.type.TypeReference; -import org.openo.baseservice.remoteservice.exception.ExceptionArgs; -import org.openo.baseservice.remoteservice.exception.ServiceException; -import org.openo.baseservice.roa.util.restclient.RestfulResponse; -import org.openo.gso.gui.servicegateway.constant.Constant; -import org.openo.gso.gui.servicegateway.exception.ErrorCode; -import org.openo.gso.gui.servicegateway.exception.HttpCode; -import org.openo.gso.gui.servicegateway.util.json.JsonUtil; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -/** - * Interface to deal response result.
- *

- *

- * - * @author - * @version GSO 0.5 2016/9/1 - */ -public class ResponseUtils { - - /** - * Log server - */ - private static final Logger LOGGER = LoggerFactory.getLogger(ResponseUtils.class); - - /** - * Constructor
- *

- *

- * - * @since GSO 0.5 - */ - private ResponseUtils() { - } - - /** - * Check whether there is exception.
- *

- * If fail, throw the exception. - *

- * - * @param response rest response - * @param function function name - * @throws ServiceException when the result of rest request is failure. - * @since GSO 0.5 - */ - public static void checkResonseAndThrowException(RestfulResponse response, String function) - throws ServiceException { - if(!HttpCode.isSucess(response.getStatus())) { - ServiceException roaExceptionInfo = null; - try { - roaExceptionInfo = JsonUtil.unMarshal(response.getResponseContent(), ServiceException.class); - } catch(ServiceException e) { - LOGGER.error("transfer the response json string has some error: {}", e); - - ExceptionArgs args = new ExceptionArgs(); - args.setDescArgs(new String[] {"Fail to " + function}); - - throw new ServiceException(ServiceException.DEFAULT_ID, response.getStatus(), args); - } - - throw roaExceptionInfo; - } - } - - /** - * Parse data to assigned type model.
- * - * @param request restful request - * @param key key - * @param type type - * @return model data - * @throws ServiceException when transfer failed - * @since SDNO 0.5 - */ - @SuppressWarnings("unchecked") - public static List getDataModelFromRsp(String request, String key, Class type) throws ServiceException { - //ValidateUtil.assertStringNotNull(request); - Map requestMap = JsonUtil.unMarshal(request, Map.class); - Object data = requestMap.get(key); - List dataModelList = new LinkedList(); - if(data instanceof List) { - for(Object model : (List)data) { - if(!(model instanceof Map)) { - LOGGER.error("The format of response content is wrong! Not Map."); - throw new ServiceException(ErrorCode.SVCMGR_SERVICEMGR_BAD_PARAM, - "The format of response content is wrong."); - } - - dataModelList.add(JsonUtil.unMarshal(JsonUtil.marshal(model), type)); - } - } - - return dataModelList; - } - - /** - * Parse data to assigned type model.
- * - * @param request restful request - * @param type type - * @return model data - * @throws ServiceException when transfer failed - * @since SDNO 0.5 - */ - public static T getDataModelFromRspList(String request, TypeReference type) throws ServiceException { - //ValidateUtil.assertStringNotNull(request); - return JsonUtil.unMarshal(request, type); - } - - /** - * Set operation result.
- * - * @param status status fail or success - * @param exception operation exception information - * @param errorCode error code - * @return result in form of map - * @since GSO 0.5 - */ - public static Map setOperateStatus(String status, ServiceException exception, String errorCode) { - Map result = new HashMap(); - result.put(Constant.RESPONSE_STATUS, status); - if(null == exception) { - result.put(Constant.RESPONSE_STATUS_DESCRIPTION, status); - } else { - if((null != exception.getExceptionArgs()) && (null != exception.getExceptionArgs().getDescArgs())) { - result.put(Constant.RESPONSE_STATUS_DESCRIPTION, exception.getExceptionArgs().getDescArgs().toString()); - } - } - result.put(Constant.RESPONSE_ERRORCODE, errorCode); - - return result; - } - - /** - * Assemble operation result.
- * - * @param objectId instance ID - * @param operateCode operation result - * @return Response result - * @since GSO 0.5 - */ - public static Map setResult(String objectId, Object operateCode) { - Map result = new HashMap(); - result.put(Constant.RESPONSE_RESULT, operateCode); - String serviceId = (null != objectId) ? objectId : null; - result.put(Constant.SERVICE_INSTANCE_ID, serviceId); - - return result; - } -} +/* + * Copyright (c) 2016, Huawei Technologies Co., Ltd. + * + * 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.openo.gso.gui.servicegateway.util.http; + +import java.util.HashMap; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; + +import org.codehaus.jackson.type.TypeReference; +import org.openo.baseservice.remoteservice.exception.ExceptionArgs; +import org.openo.baseservice.remoteservice.exception.ServiceException; +import org.openo.baseservice.roa.util.restclient.RestfulResponse; +import org.openo.gso.gui.servicegateway.constant.Constant; +import org.openo.gso.gui.servicegateway.exception.ErrorCode; +import org.openo.gso.gui.servicegateway.exception.HttpCode; +import org.openo.gso.gui.servicegateway.util.json.JsonUtil; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * Interface to deal response result.
+ *

+ *

+ * + * @author + * @version GSO 0.5 2016/9/1 + */ +public class ResponseUtils { + + /** + * Log server + */ + private static final Logger LOGGER = LoggerFactory.getLogger(ResponseUtils.class); + + /** + * Constructor
+ *

+ *

+ * + * @since GSO 0.5 + */ + private ResponseUtils() { + } + + /** + * Check whether there is exception.
+ *

+ * If fail, throw the exception. + *

+ * + * @param response rest response + * @param function function name + * @throws ServiceException when the result of rest request is failure. + * @since GSO 0.5 + */ + public static void checkResonseAndThrowException(RestfulResponse response, String function) + throws ServiceException { + if(!HttpCode.isSucess(response.getStatus())) { + ServiceException roaExceptionInfo = null; + try { + roaExceptionInfo = JsonUtil.unMarshal(response.getResponseContent(), ServiceException.class); + } catch(ServiceException e) { + LOGGER.error("transfer the response json string has some error: {}", e); + + ExceptionArgs args = new ExceptionArgs(); + args.setDescArgs(new String[] {"Fail to " + function}); + + throw new ServiceException(ServiceException.DEFAULT_ID, response.getStatus(), args); + } + + throw roaExceptionInfo; + } + } + + /** + * Parse data to assigned type model.
+ * + * @param request restful request + * @param key key + * @param type type + * @return model data + * @throws ServiceException when transfer failed + * @since SDNO 0.5 + */ + @SuppressWarnings("unchecked") + public static List getDataModelFromRsp(String request, String key, Class type) throws ServiceException { + //ValidateUtil.assertStringNotNull(request); + Map requestMap = JsonUtil.unMarshal(request, Map.class); + Object data = requestMap.get(key); + List dataModelList = new LinkedList(); + if(data instanceof List) { + for(Object model : (List)data) { + if(!(model instanceof Map)) { + LOGGER.error("The format of response content is wrong! Not Map."); + throw new ServiceException(ErrorCode.SVCMGR_SERVICEMGR_BAD_PARAM, + "The format of response content is wrong."); + } + + dataModelList.add(JsonUtil.unMarshal(JsonUtil.marshal(model), type)); + } + } + + return dataModelList; + } + + /** + * Parse data to assigned type model.
+ * + * @param request restful request + * @param type type + * @return model data + * @throws ServiceException when transfer failed + * @since SDNO 0.5 + */ + public static T getDataModelFromRspList(String request, TypeReference type) throws ServiceException { + //ValidateUtil.assertStringNotNull(request); + return JsonUtil.unMarshal(request, type); + } + + /** + * Set operation result.
+ * + * @param status status fail or success + * @param exception operation exception information + * @param errorCode error code + * @return result in form of map + * @since GSO 0.5 + */ + public static Map setOperateStatus(String status, ServiceException exception, String errorCode) { + Map result = new HashMap(); + result.put(Constant.RESPONSE_STATUS, status); + if(null == exception) { + result.put(Constant.RESPONSE_STATUS_DESCRIPTION, status); + } else { + if((null != exception.getExceptionArgs()) && (null != exception.getExceptionArgs().getDescArgs())) { + result.put(Constant.RESPONSE_STATUS_DESCRIPTION, exception.getExceptionArgs().getDescArgs().toString()); + } + } + result.put(Constant.RESPONSE_ERRORCODE, errorCode); + + return result; + } + + /** + * Assemble operation result.
+ * + * @param objectId instance ID + * @param operateCode operation result + * @return Response result + * @since GSO 0.5 + */ + public static Map setResult(String objectId, Object operateCode) { + Map result = new HashMap(); + result.put(Constant.RESPONSE_RESULT, operateCode); + String serviceId = (null != objectId) ? objectId : null; + result.put(Constant.SERVICE_INSTANCE_ID, serviceId); + + return result; + } +} diff --git a/servicegateway/service/src/test/java/org/openo/gso/gui/servicegateway/roa/impl/ServiceGatewayRoaModuleImplTest.java b/servicegateway/service/src/test/java/org/openo/gso/gui/servicegateway/roa/impl/ServiceGatewayRoaModuleImplTest.java index fabe83d7..adbcd757 100644 --- a/servicegateway/service/src/test/java/org/openo/gso/gui/servicegateway/roa/impl/ServiceGatewayRoaModuleImplTest.java +++ b/servicegateway/service/src/test/java/org/openo/gso/gui/servicegateway/roa/impl/ServiceGatewayRoaModuleImplTest.java @@ -1,183 +1,183 @@ -/* - * Copyright (c) 2016, Huawei Technologies Co., Ltd. - * - * 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.openo.gso.gui.servicegateway.roa.impl; - -import java.io.File; -import java.io.FileInputStream; -import java.io.IOException; -import java.sql.SQLException; - -import javax.servlet.http.HttpServletRequest; - -import org.apache.commons.io.IOUtils; -import org.apache.commons.lang.StringUtils; -import org.junit.After; -import org.junit.Assert; -import org.junit.Before; -import org.junit.Test; -import org.openo.baseservice.remoteservice.exception.ServiceException; -import org.openo.baseservice.roa.util.restclient.RestfulResponse; -import org.openo.baseservice.util.RestUtils; -import org.openo.gso.gui.servicegateway.exception.HttpCode; -import org.openo.gso.gui.servicegateway.service.impl.ServiceGatewayImpl; -import org.openo.gso.gui.servicegateway.util.http.HttpUtil; - -import mockit.Mock; -import mockit.MockUp; - -/** - * Test ServicemgrRoaModuleImpl class.
- *

- *

- * - * @author - * @version GSO 0.5 2016/8/3 - */ -public class ServiceGatewayRoaModuleImplTest { - - /** - * File path - */ - private static final String FILE_PATH = "src/test/resources/json/"; - - /** - * Service ROA. - */ - ServiceGatewayRoaModuleImpl serviceRoa = new ServiceGatewayRoaModuleImpl(); - - /** - * Service manager. - */ - ServiceGatewayImpl serviceManager = new ServiceGatewayImpl(); - - - /** - * Http request. - */ - HttpServletRequest httpRequest; - - /** - * Rest response. - */ - RestfulResponse responseSuccess; - - /** - * Before executing UT, start sql.
- * - * @since GSO 0.5 - */ - @Before - public void start() throws IOException, SQLException { - responseSuccess = new RestfulResponse(); - responseSuccess.setStatus(HttpCode.RESPOND_OK); - } - - - - /** - * After executing UT, close session
- * - * @since GSO 0.5 - */ - @After - public void stop() { - - } - - /** - * Test create service.
- * - * @throws ServiceException when fail to operate database or parameter is wrong. - * @since GSO 0.5 - */ - @Test - public void testCreateService() throws ServiceException { - // mock request body - mockGetRequestBody(FILE_PATH + "createServiceInstance.json"); - - mockPost(responseSuccess); - - serviceRoa.createService(httpRequest); - } - - /** - * Test delete service.
- * - * @throws ServiceException when fail to operate database or parameter is wrong. - * @since GSO 0.5 - */ - @Test - public void testDeleteService() throws ServiceException { - serviceRoa.deleteService("1", httpRequest); - } - - /** - * Mock to get request body.
- * - * @param file json file path. - * @since GSO 0.5 - */ - private void mockGetRequestBody(final String file) { - new MockUp() { - - @Mock - public String getRequestBody(HttpServletRequest request) { - return getJsonString(file); - } - }; - } - - /** - * Mock rest request for post.
- * - * @param response rest response - * @since GSO 0.5 - */ - private void mockPost(final RestfulResponse response) { - new MockUp() { - - @Mock - public RestfulResponse post(final String url, Object sendObj, HttpServletRequest httpRequest) { - return response; - } - }; - } - - /** - * Get json string from file.
- * - * @param file the path of file - * @return json string - * @throws IOException when fail to read - * @since GSO 0.5 - */ - private String getJsonString(final String file) { - if(StringUtils.isEmpty(file)) { - return ""; - } - - String json = null; - try { - FileInputStream fileStream = new FileInputStream(new File(file)); - json = IOUtils.toString(fileStream); - } catch(Exception e) { - Assert.fail(e.getMessage()); - } - - return json; - } -} +/* + * Copyright (c) 2016, Huawei Technologies Co., Ltd. + * + * 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.openo.gso.gui.servicegateway.roa.impl; + +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.sql.SQLException; + +import javax.servlet.http.HttpServletRequest; + +import org.apache.commons.io.IOUtils; +import org.apache.commons.lang.StringUtils; +import org.junit.After; +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; +import org.openo.baseservice.remoteservice.exception.ServiceException; +import org.openo.baseservice.roa.util.restclient.RestfulResponse; +import org.openo.baseservice.util.RestUtils; +import org.openo.gso.gui.servicegateway.exception.HttpCode; +import org.openo.gso.gui.servicegateway.service.impl.ServiceGatewayImpl; +import org.openo.gso.gui.servicegateway.util.http.HttpUtil; + +import mockit.Mock; +import mockit.MockUp; + +/** + * Test ServicemgrRoaModuleImpl class.
+ *

+ *

+ * + * @author + * @version GSO 0.5 2016/8/3 + */ +public class ServiceGatewayRoaModuleImplTest { + + /** + * File path + */ + private static final String FILE_PATH = "src/test/resources/json/"; + + /** + * Service ROA. + */ + ServiceGatewayRoaModuleImpl serviceRoa = new ServiceGatewayRoaModuleImpl(); + + /** + * Service manager. + */ + ServiceGatewayImpl serviceManager = new ServiceGatewayImpl(); + + + /** + * Http request. + */ + HttpServletRequest httpRequest; + + /** + * Rest response. + */ + RestfulResponse responseSuccess; + + /** + * Before executing UT, start sql.
+ * + * @since GSO 0.5 + */ + @Before + public void start() throws IOException, SQLException { + responseSuccess = new RestfulResponse(); + responseSuccess.setStatus(HttpCode.RESPOND_OK); + } + + + + /** + * After executing UT, close session
+ * + * @since GSO 0.5 + */ + @After + public void stop() { + + } + + /** + * Test create service.
+ * + * @throws ServiceException when fail to operate database or parameter is wrong. + * @since GSO 0.5 + */ + @Test + public void testCreateService() throws ServiceException { + // mock request body + mockGetRequestBody(FILE_PATH + "createServiceInstance.json"); + + mockPost(responseSuccess); + + serviceRoa.createService(httpRequest); + } + + /** + * Test delete service.
+ * + * @throws ServiceException when fail to operate database or parameter is wrong. + * @since GSO 0.5 + */ + @Test + public void testDeleteService() throws ServiceException { + serviceRoa.deleteService("1", httpRequest); + } + + /** + * Mock to get request body.
+ * + * @param file json file path. + * @since GSO 0.5 + */ + private void mockGetRequestBody(final String file) { + new MockUp() { + + @Mock + public String getRequestBody(HttpServletRequest request) { + return getJsonString(file); + } + }; + } + + /** + * Mock rest request for post.
+ * + * @param response rest response + * @since GSO 0.5 + */ + private void mockPost(final RestfulResponse response) { + new MockUp() { + + @Mock + public RestfulResponse post(final String url, Object sendObj, HttpServletRequest httpRequest) { + return response; + } + }; + } + + /** + * Get json string from file.
+ * + * @param file the path of file + * @return json string + * @throws IOException when fail to read + * @since GSO 0.5 + */ + private String getJsonString(final String file) { + if(StringUtils.isEmpty(file)) { + return ""; + } + + String json = null; + try { + FileInputStream fileStream = new FileInputStream(new File(file)); + json = IOUtils.toString(fileStream); + } catch(Exception e) { + Assert.fail(e.getMessage()); + } + + return json; + } +} diff --git a/servicegateway/service/src/test/java/org/openo/gso/gui/servicegateway/service/impl/ServiceGatewayImplTest.java b/servicegateway/service/src/test/java/org/openo/gso/gui/servicegateway/service/impl/ServiceGatewayImplTest.java index bf2efa02..fddebe00 100644 --- a/servicegateway/service/src/test/java/org/openo/gso/gui/servicegateway/service/impl/ServiceGatewayImplTest.java +++ b/servicegateway/service/src/test/java/org/openo/gso/gui/servicegateway/service/impl/ServiceGatewayImplTest.java @@ -1,72 +1,72 @@ -/* - * Copyright (c) 2016, Huawei Technologies Co., Ltd. - * - * 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.openo.gso.gui.servicegateway.service.impl; - - -import javax.servlet.http.HttpServletRequest; - -import org.junit.Before; -import org.junit.Test; -import org.openo.baseservice.remoteservice.exception.ServiceException; - -/** - * Test ServiceGatewayImpl Class.
- *

- *

- * - * @author - * @version GSO 0.5 2016/8/3 - */ -public class ServiceGatewayImplTest { - - /** - * Service manager. - */ - ServiceGatewayImpl serviceManager = new ServiceGatewayImpl(); - - /** - * Http request. - */ - HttpServletRequest httpRequest; - - @Before - public void start() { - } - - /** - * Invalid parameter.
- * - * @throws ServiceException when parameter is wrong. - * @since GSO 0.5 - */ - @Test(expected = ServiceException.class) - public void testCreateServiceFail() throws ServiceException { - serviceManager.createService(null, httpRequest); - } - - /** - * Invalid parameter.
- * - * @throws ServiceException when parameter is wrong. - * @since GSO 0.5 - */ - @Test(expected = ServiceException.class) - public void testDeleteServiceFail() throws ServiceException { - serviceManager.deleteService(null, httpRequest); - } - -} +/* + * Copyright (c) 2016, Huawei Technologies Co., Ltd. + * + * 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.openo.gso.gui.servicegateway.service.impl; + + +import javax.servlet.http.HttpServletRequest; + +import org.junit.Before; +import org.junit.Test; +import org.openo.baseservice.remoteservice.exception.ServiceException; + +/** + * Test ServiceGatewayImpl Class.
+ *

+ *

+ * + * @author + * @version GSO 0.5 2016/8/3 + */ +public class ServiceGatewayImplTest { + + /** + * Service manager. + */ + ServiceGatewayImpl serviceManager = new ServiceGatewayImpl(); + + /** + * Http request. + */ + HttpServletRequest httpRequest; + + @Before + public void start() { + } + + /** + * Invalid parameter.
+ * + * @throws ServiceException when parameter is wrong. + * @since GSO 0.5 + */ + @Test(expected = ServiceException.class) + public void testCreateServiceFail() throws ServiceException { + serviceManager.createService(null, httpRequest); + } + + /** + * Invalid parameter.
+ * + * @throws ServiceException when parameter is wrong. + * @since GSO 0.5 + */ + @Test(expected = ServiceException.class) + public void testDeleteServiceFail() throws ServiceException { + serviceManager.deleteService(null, httpRequest); + } + +} -- cgit 1.2.3-korg