From 6f01a8756fe38c0d6565c369005142adda4b9b57 Mon Sep 17 00:00:00 2001 From: “shentao” Date: Thu, 26 Jan 2017 16:19:00 +0800 Subject: rebuild GUI structure(only changed modules' name) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Issue-id : CLIENT-14 Change-Id: Ie4fa30f1a51393576fbdc68e12d810565cbf06eb Signed-off-by: “shentao” --- integration/pom.xml | 230 +++++++++++++++++++++ .../org/openo/portal/bean/MsbRegisterBean.java | 80 +++++++ .../org/openo/portal/bean/ServiceNodeBean.java | 48 +++++ .../java/org/openo/portal/system/CommonUtil.java | 27 +++ .../java/org/openo/portal/system/Constants.java | 20 ++ .../org/openo/portal/system/RegisterService.java | 146 +++++++++++++ .../org/openo/portal/system/SystemListener.java | 39 ++++ integration/src/main/resources/logback.xml | 102 +++++++++ .../main/resources/portalConfig/msb_register.xml | 115 +++++++++++ integration/src/main/webapp/WEB-INF/web.xml | 25 +++ 10 files changed, 832 insertions(+) create mode 100644 integration/pom.xml create mode 100644 integration/src/main/java/org/openo/portal/bean/MsbRegisterBean.java create mode 100644 integration/src/main/java/org/openo/portal/bean/ServiceNodeBean.java create mode 100644 integration/src/main/java/org/openo/portal/system/CommonUtil.java create mode 100644 integration/src/main/java/org/openo/portal/system/Constants.java create mode 100644 integration/src/main/java/org/openo/portal/system/RegisterService.java create mode 100644 integration/src/main/java/org/openo/portal/system/SystemListener.java create mode 100644 integration/src/main/resources/logback.xml create mode 100644 integration/src/main/resources/portalConfig/msb_register.xml create mode 100644 integration/src/main/webapp/WEB-INF/web.xml (limited to 'integration') diff --git a/integration/pom.xml b/integration/pom.xml new file mode 100644 index 00000000..c335b120 --- /dev/null +++ b/integration/pom.xml @@ -0,0 +1,230 @@ + + + + + org.openo.client.gui + client-gui + 1.1.0-SNAPSHOT + + + 4.0.0 + integration + war + client-gui/integration + + + openoui + 1.1.2 + 1.7.6 + + + + + ch.qos.logback + logback-core + ${version.logback} + + + ch.qos.logback + logback-classic + ${version.logback} + + + ch.qos.logback + logback-access + ${version.logback} + + + org.slf4j + slf4j-api + ${version.slf4j} + + + javax.servlet + servlet-api + provided + 2.5 + + + dom4j + dom4j + 1.6.1 + + + net.sf.json-lib + json-lib + 2.1 + jdk15 + + + commons-httpclient + commons-httpclient + 3.1 + + + org.apache.httpcomponents + httpclient + 4.3.5 + + + org.openo.client.gui + auth + 1.1.0-SNAPSHOT + war + + + org.openo.client.gui + catalog + 1.1.0-SNAPSHOT + war + + + org.openo.client.gui + common + 1.1.0-SNAPSHOT + war + + + org.openo.client.gui + extsys + 1.1.0-SNAPSHOT + war + + + org.openo.client.gui + lifecyclemgr + 1.1.0-SNAPSHOT + war + + + org.openo.client.gui + login + 1.1.0-SNAPSHOT + war + + + org.openo.client.gui + monitor + 1.1.0-SNAPSHOT + war + + + org.openo.client.gui + performance + 1.1.0-SNAPSHOT + war + + + org.openo.client.gui + resmgr + 1.1.0-SNAPSHOT + war + + + + + openoui + + + org.apache.maven.plugins + maven-war-plugin + + WEB-INF/web.xml + + + org.openo.client.gui + auth + + + org.openo.client.gui + catalog + + + org.openo.client.gui + common + + + org.openo.client.gui + extsys + + + org.openo.client.gui + lifecyclemgr + + + org.openo.client.gui + login + + + org.openo.client.gui + monitor + + + org.openo.client.gui + performance + + + org.openo.client.gui + resmgr + + + + + + org.apache.maven.plugins + maven-antrun-plugin + + + zip + package + + run + + + + + + + + + + + + + org.codehaus.mojo + build-helper-maven-plugin + + + attach-artifacts + package + + attach-artifact + + + + + target/${packagename}-${project.version}.zip + zip + + + + + + + + + diff --git a/integration/src/main/java/org/openo/portal/bean/MsbRegisterBean.java b/integration/src/main/java/org/openo/portal/bean/MsbRegisterBean.java new file mode 100644 index 00000000..8dd9ef3b --- /dev/null +++ b/integration/src/main/java/org/openo/portal/bean/MsbRegisterBean.java @@ -0,0 +1,80 @@ +/* + * Copyright 2016-2017, CMCC 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.portal.bean; + +import java.util.List; + +public class MsbRegisterBean { + private String serviceName = ""; + + private String lb_policy = ""; + + private String url = ""; + + private String protocol = ""; + + private String visualRange = ""; + + private List nodes; + + public String getServiceName() { + return serviceName; + } + + public void setServiceName(String serviceName) { + this.serviceName = serviceName; + } + + public String getLb_policy() { + return lb_policy; + } + + public void setLb_policy(String lb_policy) { + this.lb_policy = lb_policy; + } + + public String getUrl() { + return url; + } + + public void setUrl(String url) { + this.url = url; + } + + public String getProtocol() { + return protocol; + } + + public void setProtocol(String protocol) { + this.protocol = protocol; + } + + public String getVisualRange() { + return visualRange; + } + + public void setVisualRange(String visualRange) { + this.visualRange = visualRange; + } + + public List getNodes() { + return nodes; + } + + public void setNodes(List nodes) { + this.nodes = nodes; + } +} diff --git a/integration/src/main/java/org/openo/portal/bean/ServiceNodeBean.java b/integration/src/main/java/org/openo/portal/bean/ServiceNodeBean.java new file mode 100644 index 00000000..d0ae6fa1 --- /dev/null +++ b/integration/src/main/java/org/openo/portal/bean/ServiceNodeBean.java @@ -0,0 +1,48 @@ +/* + * Copyright 2016-2017, CMCC 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.portal.bean; + +public class ServiceNodeBean { + private String ip = ""; + + private String port = ""; + + private int ttl = 0; + + public String getIp() { + return ip; + } + + public void setIp(String ip) { + this.ip = ip; + } + + public String getPort() { + return port; + } + + public void setPort(String port) { + this.port = port; + } + + public int getTtl() { + return ttl; + } + + public void setTtl(int ttl) { + this.ttl = ttl; + } +} diff --git a/integration/src/main/java/org/openo/portal/system/CommonUtil.java b/integration/src/main/java/org/openo/portal/system/CommonUtil.java new file mode 100644 index 00000000..e07388d4 --- /dev/null +++ b/integration/src/main/java/org/openo/portal/system/CommonUtil.java @@ -0,0 +1,27 @@ +/* + * Copyright 2016-2017, CMCC 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.portal.system; + +public class CommonUtil { + + public static boolean isEmpty(String str) { + if (null == str || "".equals(str.trim())) { + return true; + } else { + return false; + } + } +} diff --git a/integration/src/main/java/org/openo/portal/system/Constants.java b/integration/src/main/java/org/openo/portal/system/Constants.java new file mode 100644 index 00000000..ff31de5b --- /dev/null +++ b/integration/src/main/java/org/openo/portal/system/Constants.java @@ -0,0 +1,20 @@ +/* + * Copyright 2016-2017, CMCC 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.portal.system; + +public class Constants { + public final static String MARK_COLON = ":"; +} diff --git a/integration/src/main/java/org/openo/portal/system/RegisterService.java b/integration/src/main/java/org/openo/portal/system/RegisterService.java new file mode 100644 index 00000000..ec6c9ce4 --- /dev/null +++ b/integration/src/main/java/org/openo/portal/system/RegisterService.java @@ -0,0 +1,146 @@ +/* + * Copyright 2016-2017, CMCC 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.portal.system; + +import java.io.File; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; + +import net.sf.json.JSONObject; + +import org.apache.http.HttpResponse; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.entity.StringEntity; +import org.apache.http.impl.client.DefaultHttpClient; +import org.apache.http.util.EntityUtils; +import org.apache.commons.httpclient.HttpStatus; +import org.dom4j.Document; +import org.dom4j.Element; +import org.dom4j.io.SAXReader; +import org.openo.portal.bean.MsbRegisterBean; +import org.openo.portal.bean.ServiceNodeBean; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class RegisterService { + + private final static Logger logger = LoggerFactory.getLogger(RegisterService.class); + + public static HashMap msbHostMap = new HashMap(); + public static List> registerList = new ArrayList>(); + + public static void registerMsb(String configPath) { + File inputXml = new File(configPath); + SAXReader saxReader = new SAXReader(); + + try { + Document document = saxReader.read(inputXml); + Element rootNode = document.getRootElement(); + getMsbHostInfo(rootNode); + getRegisterList(rootNode); + + String url = msbHostMap.get("hostIp") + Constants.MARK_COLON + msbHostMap.get("hostPort") + msbHostMap.get("msbApiRootDomain"); + for (int i = 0; i < registerList.size(); i++) { + HashMap registerInfo = registerList.get(i); + + ServiceNodeBean serviceNode = new ServiceNodeBean(); + serviceNode.setIp(registerInfo.get("ip")); + serviceNode.setPort(registerInfo.get("port")); + serviceNode.setTtl(Integer.valueOf(registerInfo.get("ttl"))); + List nodeList = new ArrayList(); + nodeList.add(serviceNode); + + MsbRegisterBean registerBean = new MsbRegisterBean(); + registerBean.setNodes(nodeList); + registerBean.setServiceName(registerInfo.get("serviceName")); + registerBean.setUrl(registerInfo.get("url")); + registerBean.setProtocol(registerInfo.get("protocol")); + registerBean.setVisualRange(registerInfo.get("visualRange")); + registerBean.setLb_policy(registerInfo.get("lb_policy")); + + JSONObject registerObj = JSONObject.fromObject(registerBean); + String registerResponse = registerPortalService(registerBean.getServiceName(), url, registerObj, ""); + } + logger.info("open-o portal register task succeeded."); + } catch (Exception e){ + logger.error("open-o portal register task failed."); + logger.error(e.getMessage()); + } + } + + private static void getMsbHostInfo(Element rootNode) { + Element msbHostNode = rootNode.element("msbHost"); + Iterator iter = msbHostNode.elementIterator(); + + while (iter.hasNext()) { + Element element = (Element) iter.next(); + msbHostMap.put(element.getName(), element.getText()); + } + } + + private static void getRegisterList(Element rootNode) { + Element registerListNode = rootNode.element("registerList"); + Iterator iRegisterList = registerListNode.elementIterator(); + + while (iRegisterList.hasNext()) { + HashMap registerMap = new HashMap(); + Element registerInfo = (Element) iRegisterList.next(); + Iterator iRegisterInfo = registerInfo.elementIterator(); + + while (iRegisterInfo.hasNext()) { + Element element = (Element) iRegisterInfo.next(); + registerMap.put(element.getName(), element.getText()); + } + registerList.add(registerMap); + } + } + + private static String registerPortalService(String serviceName, String url, JSONObject json, String token) { + DefaultHttpClient client = new DefaultHttpClient(); + HttpPost post = new HttpPost(url); + String response = null; + + try { + if (null != json) { + StringEntity s = new StringEntity(json.toString()); + s.setContentEncoding("UTF-8"); + s.setContentType("application/json"); + post.setEntity(s); + } + if (!CommonUtil.isEmpty(token)) { + post.addHeader("X-Auth-Token", token); + } + HttpResponse res = client.execute(post); + if (res.getStatusLine().getStatusCode() == HttpStatus.SC_OK + || res.getStatusLine().getStatusCode() == HttpStatus.SC_CREATED) { + String result = EntityUtils.toString(res.getEntity()); + if (!CommonUtil.isEmpty(result)) { + response = result; + } else { + response = null; + } + } + logger.info("register task [" + serviceName + "] completed successfully."); + } catch (Exception e) { + logger.error("register task [" + serviceName + "] failed because of errors."); + logger.error(e.getMessage()); + } + + return response; + } +} diff --git a/integration/src/main/java/org/openo/portal/system/SystemListener.java b/integration/src/main/java/org/openo/portal/system/SystemListener.java new file mode 100644 index 00000000..a896c82f --- /dev/null +++ b/integration/src/main/java/org/openo/portal/system/SystemListener.java @@ -0,0 +1,39 @@ +/* + * Copyright 2016-2017, CMCC 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.portal.system; + +import java.io.File; + +import javax.servlet.ServletContextEvent; +import javax.servlet.ServletContextListener; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class SystemListener implements ServletContextListener { + + private final Logger logger = LoggerFactory.getLogger(this.getClass()); + + public void contextDestroyed(ServletContextEvent sce) { + } + + public void contextInitialized(ServletContextEvent servletContextEvent) { + logger.info("open-o portal register task begin."); + String registerFilePath = SystemListener.class.getClassLoader().getResource("").getPath() + "portalConfig" + File.separator + "msb_register.xml"; + RegisterService.registerMsb(registerFilePath); + logger.info("open-o portal register task ended."); + } +} diff --git a/integration/src/main/resources/logback.xml b/integration/src/main/resources/logback.xml new file mode 100644 index 00000000..bf07d3b2 --- /dev/null +++ b/integration/src/main/resources/logback.xml @@ -0,0 +1,102 @@ + + + + + + + + + + + %d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger - %msg%n + + + + + + + ERROR + ACCEPT + DENY + + + ${logDir}/error/error.%d{yyyy-MM}.log + ${maxHistory} + + + + %d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger - %msg%n + + + + + + + WARN + ACCEPT + DENY + + + ${logDir}/warn/warn.%d{yyyy-MM}.log + ${maxHistory} + + + %d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger - %msg%n + + + + + + INFO + ACCEPT + DENY + + + ${logDir}/info/info.%d{yyyy-MM}.log + ${maxHistory} + + + %d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger - %msg%n + + + + + + DEBUG + ACCEPT + DENY + + + ${logDir}/debug/debug.%d{yyyy-MM}.log + ${maxHistory} + + + %d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger - %msg%n + + + + + + TRACE + ACCEPT + DENY + + + ${logDir}/trace/trace.%d{yyyy-MM}.log + ${maxHistory} + + + %d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger - %msg%n + + + + + + + + + + + + + diff --git a/integration/src/main/resources/portalConfig/msb_register.xml b/integration/src/main/resources/portalConfig/msb_register.xml new file mode 100644 index 00000000..6a56f89a --- /dev/null +++ b/integration/src/main/resources/portalConfig/msb_register.xml @@ -0,0 +1,115 @@ + + + + + http://192.168.233.226 + 80 + /openoapi/microservices/v1/services + + + + 127.0.0.1 + 8300 + /openoui/login + login + UI + 1 + hash + 0 + + + 127.0.0.1 + 8300 + /openoui/catalog + catalog + UI + 1 + hash + 0 + + + 127.0.0.1 + 8300 + /openoui/extsys + extsys + UI + 1 + hash + 0 + + + 127.0.0.1 + 8300 + /openoui/performance + performance + UI + 1 + hash + 0 + + + 127.0.0.1 + 8300 + /openoui/monitor + monitor + UI + 1 + hash + 0 + + + 127.0.0.1 + 8300 + /openoui/lifecyclemgr + lifecyclemgr + UI + 1 + hash + 0 + + + 127.0.0.1 + 8300 + /openoui/resmgr-nfv + resmgr-nfv + UI + 1 + hash + 0 + + + 127.0.0.1 + 8300 + /openoui/resmgr-sdn + resmgr-sdn + UI + 1 + hash + 0 + + + 127.0.0.1 + 8300 + /openoui/user + user + UI + 1 + hash + 0 + + + diff --git a/integration/src/main/webapp/WEB-INF/web.xml b/integration/src/main/webapp/WEB-INF/web.xml new file mode 100644 index 00000000..e1dca7e4 --- /dev/null +++ b/integration/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,25 @@ + + + + OPEN-O Web Application + + login/html/login.html + + + org.openo.portal.system.SystemListener + + -- cgit 1.2.3-korg