diff options
author | huangjian <huang.jian12@zte.com.cn> | 2016-08-31 16:47:33 +0800 |
---|---|---|
committer | huangjian <huang.jian12@zte.com.cn> | 2016-08-31 16:47:33 +0800 |
commit | fa49e78cc199526a9e33b59c5194f8e3bf0f0952 (patch) | |
tree | 3478e867a8f304266dbceca6e992cceca410ede4 /winery/org.eclipse.winery.topologymodeler/src/main/webapp/jsp/topologyCompletion/topologySaver.jsp | |
parent | 159d40f0011559c8f82338b29dca1bffd700f2c8 (diff) |
Add winery source code
Change-Id: I1c5088121d79b71098c3cba1996c6f784737532e
Issue-id: TOSCA-49
Signed-off-by: huangjian <huang.jian12@zte.com.cn>
Diffstat (limited to 'winery/org.eclipse.winery.topologymodeler/src/main/webapp/jsp/topologyCompletion/topologySaver.jsp')
-rw-r--r-- | winery/org.eclipse.winery.topologymodeler/src/main/webapp/jsp/topologyCompletion/topologySaver.jsp | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/winery/org.eclipse.winery.topologymodeler/src/main/webapp/jsp/topologyCompletion/topologySaver.jsp b/winery/org.eclipse.winery.topologymodeler/src/main/webapp/jsp/topologyCompletion/topologySaver.jsp new file mode 100644 index 0000000..671baee --- /dev/null +++ b/winery/org.eclipse.winery.topologymodeler/src/main/webapp/jsp/topologyCompletion/topologySaver.jsp @@ -0,0 +1,50 @@ +<% +/******************************************************************************* + * Copyright (c) 2013 Pascal Hirmer. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * and the Apache License 2.0 which both accompany this distribution, + * and are available at http://www.eclipse.org/legal/epl-v10.html + * and http://www.apache.org/licenses/LICENSE-2.0 + * + * Contributors: + * Pascal Hirmer - initial API and implementation + *******************************************************************************/ + +/** + * This JSP saves a topology template to the repository using the RESTHelper class. + * It is called when there are several topology solutions which shall be saved in different locations. + */ +%> +<%@page import="org.eclipse.winery.topologymodeler.addons.topologycompleter.helper.RESTHelper"%> +<%@page import="java.io.StringReader"%> +<%@page import="javax.xml.bind.JAXBContext"%> +<%@page import="javax.xml.bind.JAXBException"%> +<%@page import="javax.xml.bind.Unmarshaller"%> +<%@page import="org.eclipse.winery.model.tosca.Definitions"%> +<%@page import="org.eclipse.winery.model.tosca.TServiceTemplate"%> +<%@page import="org.eclipse.winery.model.tosca.TTopologyTemplate"%> + +<% + String xmlString = request.getParameter("topology"); + String templateURL = request.getParameter("templateURL"); + String repositoryURL = request.getParameter("repositoryURL"); + + // initiate JaxB context + JAXBContext context; + context = JAXBContext.newInstance(Definitions.class); + StringReader reader = new StringReader(xmlString); + + // unmarshall the topology XML string + Unmarshaller um = context.createUnmarshaller(); + Definitions jaxBDefinitions = (Definitions) um.unmarshal(reader); + TServiceTemplate st = (TServiceTemplate) jaxBDefinitions.getServiceTemplateOrNodeTypeOrNodeTypeImplementation().get(0); + TTopologyTemplate toBeSaved = st.getTopologyTemplate(); + + // depending on the selected save method (overwrite or create new) the save method is called + if (request.getParameter("overwriteTopology").equals("true")) { + RESTHelper.saveCompleteTopology(toBeSaved, templateURL, true, "", "", repositoryURL); + } else { + RESTHelper.saveCompleteTopology(toBeSaved, templateURL, false, request.getParameter("topologyName"), request.getParameter("topologyNamespace"), repositoryURL); + } +%>
\ No newline at end of file |