You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sa...@apache.org on 2014/04/14 20:30:08 UTC

[06/90] [abbrv] [partial] AIRAVATA-1124

http://git-wip-us.apache.org/repos/asf/airavata/blob/0e2c10f5/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/echo/Echo.java
----------------------------------------------------------------------
diff --git a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/echo/Echo.java b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/echo/Echo.java
deleted file mode 100644
index bfc22db..0000000
--- a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/echo/Echo.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.apache.airavata.xbaya.test.service.echo;
-
-import java.io.File;
-
-import org.apache.airavata.xbaya.test.service.Service;
-import org.xmlpull.v1.builder.XmlElement;
-
-import xsul.xwsif_runtime.XmlElementBasedStub;
-
-public interface Echo extends XmlElementBasedStub {
-
-    /**
-     * SERVICE_NAME
-     */
-    public final static String SERVICE_NAME = "EchoService";
-
-    /**
-     * WSDL_NAME
-     */
-    public final static String WSDL_NAME = "echo.wsdl";
-
-    /**
-     * WSDL_PATH
-     */
-    public final static String WSDL_PATH = Service.MATH_DIRECTORY_NAME + File.separator + WSDL_NAME;
-
-    /**
-     * @param input
-     *            the input message
-     * @return the output message
-     */
-    public XmlElement echo(XmlElement input);
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/0e2c10f5/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/echo/EchoClient.java
----------------------------------------------------------------------
diff --git a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/echo/EchoClient.java b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/echo/EchoClient.java
deleted file mode 100644
index bc31eea..0000000
--- a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/echo/EchoClient.java
+++ /dev/null
@@ -1,116 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.apache.airavata.xbaya.test.service.echo;
-
-import java.net.URI;
-
-import org.apache.airavata.common.utils.XMLUtil;
-import org.apache.airavata.xbaya.XBayaConfiguration;
-import org.apache.airavata.xbaya.lead.LeadContextHeaderHelper;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.xmlpull.v1.builder.XmlElement;
-
-import xsul.lead.LeadContextHeader;
-import xsul.wsif.WSIFMessage;
-import xsul.wsif.WSIFOperation;
-import xsul.wsif.WSIFPort;
-import xsul.xhandler_soap_sticky_header.StickySoapHeaderHandler;
-import xsul.xwsif_runtime.WSIFClient;
-import xsul.xwsif_runtime.WSIFRuntime;
-import xsul.xwsif_runtime_async.WSIFAsyncResponsesCorrelator;
-
-public class EchoClient {
-
-    private final static Logger logger = LoggerFactory.getLogger(EchoClient.class);
-
-    private EchoService service;
-
-    /**
-     * 
-     */
-    public void run() {
-        String wsdlLoc = startServer();
-        runClient(wsdlLoc);
-        shutdownServer();
-    }
-
-    private String startServer() {
-        this.service = new EchoService(0);
-        this.service.run();
-        return this.service.getServiceWsdlLocation();
-    }
-
-    private void shutdownServer() {
-        this.service.shutdownServer();
-    }
-
-    private void runClient(String wsdlLoc) {
-        logger.info("Starting " + EchoClient.class.getName());
-        logger.info("Invoking operation echoString using WSDL from " + wsdlLoc);
-
-        WSIFAsyncResponsesCorrelator correlator;
-        correlator = null;
-
-        // pass some headers
-        LeadContextHeaderHelper helper = new LeadContextHeaderHelper();
-        helper.setXBayaConfiguration(new XBayaConfiguration());
-        LeadContextHeader leadContext = helper.getLeadContextHeader();
-        leadContext.setWorkflowId(URI.create("http://host/2005/11/09/workflowinstace"));
-        leadContext.setNodeId("decoder1");
-        leadContext.setTimeStep("5");
-        leadContext.setServiceId("decoder-instance-10");
-
-        WSIFClient wclient = WSIFRuntime.newClient(wsdlLoc)
-                .addHandler(new StickySoapHeaderHandler("use-lead-header", leadContext)).useAsyncMessaging(correlator)
-                .setAsyncResponseTimeoutInMs(33000L); // to simplify testing set to just few
-        // seconds
-
-        WSIFPort port = wclient.getPort();
-        WSIFOperation operation = port.createOperation("echo");
-        WSIFMessage inputMessage = operation.createInputMessage();
-        WSIFMessage outputMessage = operation.createOutputMessage();
-        WSIFMessage faultMessage = operation.createFaultMessage();
-
-        inputMessage.setObjectPart("input", "test");
-
-        logger.info("Using WSIF to send message:\n" + XMLUtil.xmlElementToString((XmlElement) inputMessage));
-        boolean success = operation.executeRequestResponseOperation(inputMessage, outputMessage, faultMessage);
-
-        XmlElement result;
-        if (success) {
-            result = (XmlElement) outputMessage;
-        } else {
-            result = (XmlElement) faultMessage;
-        }
-        logger.info("Received message:\n" + XMLUtil.xmlElementToString(result));
-
-        logger.info("Finished");
-    }
-
-    /**
-     * @param args
-     */
-    public static void main(String[] args) {
-        (new EchoClient()).run();
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/0e2c10f5/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/echo/EchoImpl.java
----------------------------------------------------------------------
diff --git a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/echo/EchoImpl.java b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/echo/EchoImpl.java
deleted file mode 100644
index e0a0243..0000000
--- a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/echo/EchoImpl.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.apache.airavata.xbaya.test.service.echo;
-
-import java.util.Random;
-
-import org.apache.airavata.common.utils.XMLUtil;
-import org.apache.airavata.xbaya.test.service.ServiceNotificationSender;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.xmlpull.v1.builder.XmlElement;
-import org.xmlpull.v1.builder.XmlNamespace;
-
-import xsul.XmlConstants;
-
-public class EchoImpl implements Echo {
-
-    private final static Logger logger = LoggerFactory.getLogger(EchoImpl.class);
-
-    /**
-     * @see org.apache.airavata.xbaya.test.service.echo.Echo#echo(org.xmlpull.v1.builder.XmlElement)
-     */
-    public XmlElement echo(XmlElement inputElement) {
-        logger.info(XMLUtil.xmlElementToString(inputElement));
-
-        ServiceNotificationSender notifier = ServiceNotificationSender.invoked(inputElement);
-
-        XmlElement input = inputElement.requiredElement(null, "input");
-
-        Random random = new Random();
-        int msec = random.nextInt(5000);
-        logger.info("Sleep for " + msec + " msec");
-        try {
-            Thread.sleep(msec);
-        } catch (InterruptedException e) {
-            logger.error(e.getMessage(), e);
-        }
-
-        XmlElement output = input;
-        output.setParent(null);
-        output.setName("output");
-
-        XmlNamespace namespace = XmlConstants.BUILDER.newNamespace("echotypens",
-                "http://www.extreme.indiana.edu/math/echo/xsd/");
-        XmlElement outputElement = XmlConstants.BUILDER.newFragment(namespace, "EchoOutput");
-        outputElement.addElement(output);
-
-        if (notifier != null) {
-            notifier.sendingResult(outputElement);
-        }
-        logger.info(XMLUtil.xmlElementToString(outputElement));
-        return outputElement;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/0e2c10f5/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/echo/EchoService.java
----------------------------------------------------------------------
diff --git a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/echo/EchoService.java b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/echo/EchoService.java
deleted file mode 100644
index c3c58a8..0000000
--- a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/echo/EchoService.java
+++ /dev/null
@@ -1,113 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.apache.airavata.xbaya.test.service.echo;
-
-import java.io.File;
-
-import org.apache.airavata.common.utils.XMLUtil;
-import org.apache.airavata.xbaya.test.service.Service;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import xsul.lead.LeadContextHeader;
-import xsul.wsdl.WsdlDefinitions;
-import xsul.xhandler_soap_sticky_header.StickySoapHeaderHandler;
-import xsul.xservo.XService;
-import xsul.xservo_soap.XSoapDocLiteralService;
-import xsul.xservo_soap_http.HttpBasedServices;
-
-public class EchoService implements Service {
-
-    private final static Logger logger = LoggerFactory.getLogger(EchoService.class);
-
-    private HttpBasedServices httpServices;
-
-    private XService xservice;
-
-    private int port;
-
-    /**
-     * Constructs an EchoService.
-     * 
-     * @param port
-     */
-    public EchoService(int port) {
-        this.port = port;
-    }
-
-    /**
-     * Runs the service.
-     */
-    public void run() {
-        this.httpServices = new HttpBasedServices(this.port);
-        this.xservice = this.httpServices.addService(new XSoapDocLiteralService(Echo.SERVICE_NAME,
-                Service.MATH_DIRECTORY_NAME + File.separator + Echo.WSDL_PATH, new EchoImpl()));
-        this.xservice.addHandler(new StickySoapHeaderHandler("retrieve-lead-header", LeadContextHeader.TYPE));
-        this.xservice.startService();
-    }
-
-    /**
-     * Returns the location of the WSDL of the service.
-     * 
-     * @return The location of the WSDL of the service.
-     */
-    public String getServiceWsdlLocation() {
-        return this.httpServices.getServer().getLocation() + "/" + Echo.SERVICE_NAME + "?wsdl";
-    }
-
-    /**
-     * Returns the WSDL of the service.
-     * 
-     * @return The WSDL of the service.
-     */
-    public WsdlDefinitions getWsdl() {
-        return this.xservice.getWsdl();
-    }
-
-    /**
-     * Shutdowns the service.
-     */
-    public void shutdownServer() {
-        this.httpServices.getServer().shutdownServer();
-    }
-
-    /**
-     * @param args
-     */
-    public static void main(String[] args) {
-        try {
-            int port = 0;
-            if (args.length == 2) {
-                if ("-port".equalsIgnoreCase(args[0])) {
-                    port = Integer.parseInt(args[1]);
-                }
-            }
-            EchoService service = new EchoService(port);
-            service.run();
-            WsdlDefinitions wsdl = service.getWsdl();
-            File wsdlFile = new File(SAMPLE_WSDL_DIRECTORY, Echo.WSDL_NAME);
-            XMLUtil.saveXML(wsdl, wsdlFile);
-        } catch (Exception e) {
-            logger.error(e.getMessage(), e);
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/0e2c10f5/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/multiplier/Multiplier.java
----------------------------------------------------------------------
diff --git a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/multiplier/Multiplier.java b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/multiplier/Multiplier.java
deleted file mode 100644
index c1cde5c..0000000
--- a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/multiplier/Multiplier.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.apache.airavata.xbaya.test.service.multiplier;
-
-import java.io.File;
-
-import org.apache.airavata.xbaya.test.service.Service;
-import org.xmlpull.v1.builder.XmlElement;
-
-import xsul.xwsif_runtime.XmlElementBasedStub;
-
-public interface Multiplier extends XmlElementBasedStub {
-
-    /**
-     * SERVICE_NAME
-     */
-    public final static String SERVICE_NAME = "MultiplierService";
-
-    /**
-     * WSDL_NAME
-     */
-    public final static String WSDL_NAME = "multiplier.wsdl";
-
-    /**
-     * WSDL_PATH
-     */
-    public final static String WSDL_PATH = Service.MATH_DIRECTORY_NAME + File.separator + WSDL_NAME;
-
-    /**
-     * @param input
-     *            the input message
-     * @return the output message
-     */
-    public XmlElement multiply(XmlElement input);
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/0e2c10f5/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/multiplier/MultiplierImpl.java
----------------------------------------------------------------------
diff --git a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/multiplier/MultiplierImpl.java b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/multiplier/MultiplierImpl.java
deleted file mode 100644
index 6b53c0a..0000000
--- a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/multiplier/MultiplierImpl.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.apache.airavata.xbaya.test.service.multiplier;
-
-import java.util.Random;
-
-import org.apache.airavata.common.utils.XMLUtil;
-import org.apache.airavata.xbaya.test.service.ServiceNotificationSender;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.xmlpull.v1.builder.XmlElement;
-import org.xmlpull.v1.builder.XmlNamespace;
-
-import xsul.XmlConstants;
-
-public class MultiplierImpl implements Multiplier {
-
-    private final static Logger logger = LoggerFactory.getLogger(MultiplierImpl.class);
-
-    /**
-     * @see org.apache.airavata.xbaya.test.service.multiplier.Multiplier#multiply(org.xmlpull.v1.builder.XmlElement)
-     */
-    public XmlElement multiply(XmlElement inputElement) {
-        logger.info(XMLUtil.xmlElementToString(inputElement));
-
-        ServiceNotificationSender notifier = ServiceNotificationSender.invoked(inputElement);
-
-        XmlElement xElement = inputElement.requiredElement(null, "x");
-        XmlElement yElement = inputElement.requiredElement(null, "y");
-        String xString = xElement.requiredTextContent();
-        String yString = yElement.requiredTextContent();
-
-        int x = Integer.parseInt(xString);
-        int y = Integer.parseInt(yString);
-
-        Random random = new Random();
-        int msec = random.nextInt(10000);
-        logger.info("Sleep for " + msec + " msec");
-        try {
-            Thread.sleep(msec);
-        } catch (InterruptedException e) {
-            logger.error(e.getMessage(), e);
-        }
-
-        int z = x * y;
-
-        String zString = "" + z;
-
-        XmlNamespace namespace = XmlConstants.BUILDER.newNamespace("multipliertypens",
-                "http://www.extreme.indiana.edu/math/multiplier/xsd/");
-        XmlElement outputElement = XmlConstants.BUILDER.newFragment(namespace, "MultiplyOutput");
-        XmlElement zElement = outputElement.addElement("z");
-        zElement.addChild(zString);
-
-        if (notifier != null) {
-            notifier.sendingResult(outputElement);
-        }
-        logger.info(XMLUtil.xmlElementToString(outputElement));
-        return outputElement;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/0e2c10f5/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/multiplier/MultiplierService.java
----------------------------------------------------------------------
diff --git a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/multiplier/MultiplierService.java b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/multiplier/MultiplierService.java
deleted file mode 100644
index e4d910b..0000000
--- a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/service/multiplier/MultiplierService.java
+++ /dev/null
@@ -1,132 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.apache.airavata.xbaya.test.service.multiplier;
-
-import java.io.File;
-
-import org.apache.airavata.common.utils.XMLUtil;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import xsul.lead.LeadContextHeader;
-import xsul.wsdl.WsdlDefinitions;
-import xsul.xhandler_soap_sticky_header.StickySoapHeaderHandler;
-import xsul.xservo.XService;
-import xsul.xservo_soap.XSoapDocLiteralService;
-import xsul.xservo_soap_http.HttpBasedServices;
-
-public class MultiplierService {
-
-    private final static String SERVICE_NAME = "MultiplierService";
-
-    private final static String BASE_WSDL_LOCATION = "wsdls/math/multiplier-wsdl.xml";
-
-    private final static String OUTPUT_WSDL_LOCATION = "wsdls/sample/multiplier-wsdl.xml";
-
-    private final static Logger logger = LoggerFactory.getLogger(MultiplierService.class);
-
-    private HttpBasedServices httpServices;
-
-    private XService xservice;
-
-    private int port;
-
-    /**
-     * Constructs a MultiplierService.
-     * 
-     */
-    public MultiplierService() {
-        this(0);
-    }
-
-    /**
-     * Constructs a MultiplierService.
-     * 
-     * @param port
-     */
-    public MultiplierService(int port) {
-        this.port = port;
-    }
-
-    /**
-     * Runs the service.
-     */
-    public void run() {
-        this.httpServices = new HttpBasedServices(this.port);
-        logger.info("Server started on " + this.httpServices.getServerPort());
-
-        logger.info("Using WSDL for service description from " + BASE_WSDL_LOCATION);
-        this.xservice = this.httpServices.addService(new XSoapDocLiteralService(SERVICE_NAME, BASE_WSDL_LOCATION,
-                new MultiplierImpl()));
-        this.xservice.addHandler(new StickySoapHeaderHandler("retrieve-lead-header", LeadContextHeader.TYPE));
-        this.xservice.startService();
-        logger.info("Service started");
-        logger.info("Service WSDL available at " + getServiceWsdlLocation());
-    }
-
-    /**
-     * Returns the location of the WSDL.
-     * 
-     * @return The location of the WSDL
-     */
-    public String getServiceWsdlLocation() {
-        return this.httpServices.getServer().getLocation() + "/" + SERVICE_NAME + "?wsdl";
-    }
-
-    /**
-     * Returns the WSDL of the service.
-     * 
-     * @return The WSDL of the service.
-     */
-    public WsdlDefinitions getWsdl() {
-        return this.xservice.getWsdl();
-    }
-
-    /**
-     * Shutdowns the service.
-     */
-    public void shutdownServer() {
-        this.httpServices.getServer().shutdownServer();
-    }
-
-    /**
-     * @param args
-     */
-    public static void main(String[] args) {
-        try {
-            int port = 0;
-            if (args.length == 2) {
-                if ("-port".equalsIgnoreCase(args[0])) {
-                    port = Integer.parseInt(args[1]);
-                }
-            }
-            MultiplierService service = new MultiplierService(port);
-            service.run();
-            WsdlDefinitions wsdl = service.getWsdl();
-            File wsdlFile = new File(OUTPUT_WSDL_LOCATION);
-            XMLUtil.saveXML(wsdl, wsdlFile);
-        } catch (Exception e) {
-            logger.error(e.getMessage(), e);
-        }
-    }
-
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/0e2c10f5/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/util/WorkflowCreator.java
----------------------------------------------------------------------
diff --git a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/util/WorkflowCreator.java b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/util/WorkflowCreator.java
deleted file mode 100644
index 708788a..0000000
--- a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/test/util/WorkflowCreator.java
+++ /dev/null
@@ -1,741 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.apache.airavata.xbaya.test.util;
-
-import java.awt.Point;
-
-import org.apache.airavata.workflow.model.component.Component;
-import org.apache.airavata.workflow.model.component.ComponentException;
-import org.apache.airavata.workflow.model.component.ComponentRegistryException;
-import org.apache.airavata.workflow.model.component.local.LocalComponentRegistry;
-import org.apache.airavata.workflow.model.component.system.ConstantComponent;
-import org.apache.airavata.workflow.model.component.system.DoWhileComponent;
-import org.apache.airavata.workflow.model.component.system.EndDoWhileComponent;
-import org.apache.airavata.workflow.model.component.system.EndForEachComponent;
-import org.apache.airavata.workflow.model.component.system.EndifComponent;
-import org.apache.airavata.workflow.model.component.system.ForEachComponent;
-import org.apache.airavata.workflow.model.component.system.IfComponent;
-import org.apache.airavata.workflow.model.component.system.InputComponent;
-import org.apache.airavata.workflow.model.component.system.OutputComponent;
-import org.apache.airavata.workflow.model.component.system.ReceiveComponent;
-import org.apache.airavata.workflow.model.graph.Graph;
-import org.apache.airavata.workflow.model.graph.GraphException;
-import org.apache.airavata.workflow.model.graph.Node;
-import org.apache.airavata.workflow.model.graph.system.ConstantNode;
-import org.apache.airavata.workflow.model.graph.system.DoWhileNode;
-import org.apache.airavata.workflow.model.graph.system.IfNode;
-import org.apache.airavata.workflow.model.graph.system.InputNode;
-import org.apache.airavata.workflow.model.graph.system.OutputNode;
-import org.apache.airavata.workflow.model.graph.system.ReceiveNode;
-import org.apache.airavata.workflow.model.wf.Workflow;
-import org.apache.airavata.xbaya.file.XBayaPathConstants;
-import org.apache.airavata.xbaya.test.service.adder.Adder;
-import org.apache.airavata.xbaya.test.service.approver.Approver;
-import org.apache.airavata.xbaya.test.service.arrayadder.ArrayAdder;
-import org.apache.airavata.xbaya.test.service.arraygen.ArrayGenerator;
-import org.apache.airavata.xbaya.test.service.echo.Echo;
-import org.apache.airavata.xbaya.test.service.multiplier.Multiplier;
-
-public class WorkflowCreator {
-
-    /**
-     * GFAC_TEST_AWSDL
-     */
-    public static final String GFAC_TEST_AWSDL = "TestCMD_Example1_AWSDL.xml";
-
-    private Component inputComponent;
-
-    private Component outputComponent;
-
-    private LocalComponentRegistry componentRegistry;
-
-    private ConstantComponent constantComponent;
-
-    private ForEachComponent splitComponent;
-
-    private EndForEachComponent mergeComponent;
-
-    private IfComponent ifComponent;
-
-    private EndifComponent endifComponent;
-
-    private ReceiveComponent receiveComponent;
-
-    private DoWhileComponent doWhileComponent;
-
-    private EndDoWhileComponent endDoWhileComponent;
-
-    /**
-     * Constructs a WorkflowCreator.
-     */
-    public WorkflowCreator() {
-        this.componentRegistry = new LocalComponentRegistry(XBayaPathConstants.WSDL_DIRECTORY);
-        this.inputComponent = new InputComponent();
-        this.outputComponent = new OutputComponent();
-        this.constantComponent = new ConstantComponent();
-        this.splitComponent = new ForEachComponent();
-        this.mergeComponent = new EndForEachComponent();
-        this.ifComponent = new IfComponent();
-        this.endifComponent = new EndifComponent();
-        this.receiveComponent = new ReceiveComponent();
-        this.doWhileComponent = new DoWhileComponent();
-        this.endDoWhileComponent = new EndDoWhileComponent();
-    }
-
-    /**
-     * @return The graph
-     * @throws ComponentException
-     * @throws GraphException
-     * @throws ComponentRegistryException
-     */
-    public Workflow createSimpleMathWorkflow() throws ComponentException, GraphException, ComponentRegistryException {
-        Workflow workflow = new Workflow();
-
-        // Name, description
-        workflow.setName("Simple math workflow");
-        workflow.setDescription("Simple math workflow");
-
-        Graph graph = workflow.getGraph();
-
-        // Adder node
-        Component adderComp = this.componentRegistry.getComponent(Adder.WSDL_PATH);
-        Node adderNode = workflow.addNode(adderComp);
-        adderNode.setPosition(new Point(250, 100));
-
-        // Input parameter node 1
-        InputNode paramNode1 = (InputNode) workflow.addNode(this.inputComponent);
-        paramNode1.setPosition(new Point(50, 50));
-
-        // Input parameter node 2
-        InputNode paramNode2 = (InputNode) workflow.addNode(this.inputComponent);
-        paramNode2.setPosition(new Point(50, 120));
-
-        // Output parameter
-        OutputNode outParamNode = (OutputNode) workflow.addNode(this.outputComponent);
-        outParamNode.setPosition(new Point(300, 220));
-
-        // Connect ports
-        graph.addEdge(paramNode1.getOutputPort(0), adderNode.getInputPort(0));
-        graph.addEdge(paramNode2.getOutputPort(0), adderNode.getInputPort(1));
-        graph.addEdge(adderNode.getOutputPort(0), outParamNode.getInputPort(0));
-
-        // Set the default values
-        // This needs to be after connection.
-        String paramValue1 = "2";
-        paramNode1.setDefaultValue(paramValue1);
-        String paramValue2 = "3";
-        paramNode2.setDefaultValue(paramValue2);
-        return workflow;
-    }
-
-    /**
-     * @return The graph
-     * @throws ComponentException
-     * @throws GraphException
-     * @throws ComponentRegistryException
-     */
-    public Workflow createMathWorkflow() throws ComponentException, GraphException, ComponentRegistryException {
-        Workflow workflow = new Workflow();
-
-        // Name, description
-        workflow.setName("Math workflow");
-        workflow.setDescription("A workflow that calculates (a + b) * c.");
-
-        Graph graph = workflow.getGraph();
-
-        // Adder node
-        Component adderComp = this.componentRegistry.getComponent(Adder.WSDL_PATH);
-
-        Node adderNode1 = workflow.addNode(adderComp);
-        adderNode1.setPosition(new Point(170, 50));
-
-        // Multiplier node
-        Component multiComp = this.componentRegistry.getComponent(Multiplier.WSDL_PATH);
-
-        Node multiNode = workflow.addNode(multiComp);
-        multiNode.setPosition(new Point(320, 130));
-
-        // Input node 1
-        InputNode inputNode1 = (InputNode) workflow.addNode(this.inputComponent);
-        inputNode1.setPosition(new Point(20, 30));
-
-        // Input node 2
-        InputNode inputNode2 = (InputNode) workflow.addNode(this.inputComponent);
-        inputNode2.setPosition(new Point(20, 100));
-
-        // Input node 3
-        InputNode inputNode3 = (InputNode) workflow.addNode(this.inputComponent);
-        inputNode3.setPosition(new Point(20, 170));
-
-        // Output
-        OutputNode outputNode = (OutputNode) workflow.addNode(this.outputComponent);
-        outputNode.setPosition(new Point(500, 130));
-
-        // Connect ports
-        graph.addEdge(inputNode1.getOutputPort(0), adderNode1.getInputPort(0));
-        graph.addEdge(inputNode2.getOutputPort(0), adderNode1.getInputPort(1));
-        graph.addEdge(adderNode1.getOutputPort(0), multiNode.getInputPort(0));
-        graph.addEdge(inputNode3.getOutputPort(0), multiNode.getInputPort(1));
-        graph.addEdge(multiNode.getOutputPort(0), outputNode.getInputPort(0));
-
-        // Set the default values
-        // This needs to be after connection.
-        inputNode1.setConfiguredName("a");
-        inputNode2.setConfiguredName("b");
-        inputNode3.setConfiguredName("c");
-        inputNode1.setConfigured(true);
-        inputNode2.setConfigured(true);
-        inputNode3.setConfigured(true);
-        inputNode1.setDefaultValue("2");
-        inputNode2.setDefaultValue("3");
-        inputNode3.setDefaultValue("4");
-        outputNode.setConfiguredName("z");
-        outputNode.setConfigured(true);
-
-        return workflow;
-    }
-
-    /**
-     * @return The graph
-     * @throws ComponentException
-     * @throws GraphException
-     * @throws ComponentRegistryException
-     */
-    public Workflow createComplexMathWorkflow() throws ComponentException, GraphException, ComponentRegistryException {
-        Workflow workflow = new Workflow();
-
-        // Name, description
-        workflow.setName("Complex math workflow");
-        workflow.setDescription("Complex math workflow");
-
-        Graph graph = workflow.getGraph();
-
-        // Adder nodes
-        Component adderComp = this.componentRegistry.getComponent(Adder.WSDL_PATH);
-
-        Node adderNode1 = workflow.addNode(adderComp);
-        adderNode1.setPosition(new Point(170, 50));
-
-        Node adderNode2 = workflow.addNode(adderComp);
-        adderNode2.setPosition(new Point(170, 210));
-
-        // Multiplier node
-        Component multiComp = this.componentRegistry.getComponent(Multiplier.WSDL_PATH);
-
-        Node multiNode = workflow.addNode(multiComp);
-        multiNode.setPosition(new Point(320, 130));
-
-        // Input node 1
-        InputNode inputNode1 = (InputNode) workflow.addNode(this.inputComponent);
-        inputNode1.setPosition(new Point(20, 30));
-
-        // Input node 2
-        InputNode inputNode2 = (InputNode) workflow.addNode(this.inputComponent);
-        inputNode2.setPosition(new Point(20, 100));
-
-        // Input node 3
-        InputNode inputNode3 = (InputNode) workflow.addNode(this.inputComponent);
-        inputNode3.setPosition(new Point(20, 170));
-
-        // Input node 4
-        InputNode inputNode4 = (InputNode) workflow.addNode(this.inputComponent);
-        inputNode4.setPosition(new Point(20, 240));
-
-        // Output
-        OutputNode outputNode = (OutputNode) workflow.addNode(this.outputComponent);
-        outputNode.setPosition(new Point(500, 130));
-
-        // Connect ports
-        graph.addEdge(inputNode1.getOutputPort(0), adderNode1.getInputPort(0));
-        graph.addEdge(inputNode2.getOutputPort(0), adderNode1.getInputPort(1));
-        graph.addEdge(inputNode3.getOutputPort(0), adderNode2.getInputPort(0));
-        graph.addEdge(inputNode4.getOutputPort(0), adderNode2.getInputPort(1));
-        graph.addEdge(adderNode1.getOutputPort(0), multiNode.getInputPort(0));
-        graph.addEdge(adderNode2.getOutputPort(0), multiNode.getInputPort(1));
-        graph.addEdge(multiNode.getOutputPort(0), outputNode.getInputPort(0));
-
-        // Set the default values
-        // This needs to be after connection.
-        inputNode1.setConfiguredName("a");
-        inputNode2.setConfiguredName("b");
-        inputNode3.setConfiguredName("c");
-        inputNode4.setConfiguredName("d");
-        inputNode1.setDescription("This is the first input.");
-        inputNode2.setDescription("This is the second input.");
-        inputNode3.setDescription("This is the third input.");
-        inputNode4.setDescription("This is the fourth input.");
-        inputNode1.setConfigured(true);
-        inputNode2.setConfigured(true);
-        inputNode3.setConfigured(true);
-        inputNode4.setConfigured(true);
-        inputNode1.setDefaultValue("2");
-        inputNode2.setDefaultValue("3");
-        inputNode3.setDefaultValue("4");
-        inputNode4.setDefaultValue("5");
-        outputNode.setConfiguredName("z");
-        outputNode.setConfigured(true);
-
-        return workflow;
-    }
-
-    /**
-     * @return The graph
-     * @throws ComponentException
-     * @throws GraphException
-     * @throws ComponentRegistryException
-     */
-    public Workflow createMathWithConstWorkflow() throws ComponentException, GraphException, ComponentRegistryException {
-
-        Workflow workflow = new Workflow();
-
-        // Name, description
-        workflow.setName("Math with const");
-        workflow.setDescription("Math with const");
-
-        Graph graph = workflow.getGraph();
-
-        // Adder node
-        Component adderComp = this.componentRegistry.getComponent(Adder.WSDL_PATH);
-        Node adderNode = workflow.addNode(adderComp);
-        adderNode.setPosition(new Point(250, 100));
-
-        // Input parameter node
-        InputNode inputNode = (InputNode) workflow.addNode(this.inputComponent);
-        inputNode.setPosition(new Point(50, 50));
-
-        // Constant node
-        ConstantNode constantNode = (ConstantNode) workflow.addNode(this.constantComponent);
-        constantNode.setPosition(new Point(50, 120));
-
-        // Output parameter
-        OutputNode outParamNode = (OutputNode) workflow.addNode(this.outputComponent);
-        outParamNode.setPosition(new Point(300, 220));
-
-        // Connect ports
-        graph.addEdge(inputNode.getOutputPort(0), adderNode.getInputPort(0));
-        graph.addEdge(constantNode.getOutputPort(0), adderNode.getInputPort(1));
-        graph.addEdge(adderNode.getOutputPort(0), outParamNode.getInputPort(0));
-
-        // Set the default value of an input and the constant.
-        // This needs to be after connection.
-        String paramValue1 = "2";
-        inputNode.setDefaultValue(paramValue1);
-        String paramValue2 = "3";
-        constantNode.setValue(paramValue2);
-        return workflow;
-    }
-
-    /**
-     * @return The workflow
-     * @throws ComponentException
-     * @throws GraphException
-     * @throws ComponentRegistryException
-     */
-    public Workflow createArrayWorkflow() throws ComponentException, GraphException, ComponentRegistryException {
-        Workflow workflow = new Workflow();
-
-        // Name, description
-        workflow.setName("Array test");
-        workflow.setDescription("A workflow that tests arrays");
-
-        Graph graph = workflow.getGraph();
-
-        // n
-        InputNode inputN = (InputNode) workflow.addNode(this.inputComponent);
-        inputN.setPosition(new Point(0, 80));
-
-        // Array generator
-        Component arrayGeneratorComponent = this.componentRegistry.getComponent(ArrayGenerator.WSDL_PATH);
-        Node arrayGenerator = workflow.addNode(arrayGeneratorComponent);
-        arrayGenerator.setPosition(new Point(150, 80));
-
-        // Array adder
-        Component arrayAdderComponent = this.componentRegistry.getComponent(ArrayAdder.WSDL_PATH);
-        Node arrayAdder = workflow.addNode(arrayAdderComponent);
-        arrayAdder.setPosition(new Point(400, 80));
-
-        // Output
-        OutputNode output = (OutputNode) workflow.addNode(this.outputComponent);
-        output.setConfiguredName("output");
-        output.setPosition(new Point(550, 80));
-
-        // Connect ports
-        graph.addEdge(inputN.getOutputPort(0), arrayGenerator.getInputPort(0));
-        graph.addEdge(arrayGenerator.getOutputPort(0), arrayAdder.getInputPort(0));
-        graph.addEdge(arrayAdder.getOutputPort(0), output.getInputPort(0));
-
-        // Set the default values
-        // This needs to be after connection.
-        String n = "5";
-        inputN.setDefaultValue(n);
-
-        return workflow;
-    }
-
-    /**
-     * @return The workflow
-     * @throws ComponentException
-     * @throws GraphException
-     * @throws ComponentRegistryException
-     */
-    public Workflow createForEachWorkflow() throws ComponentException, GraphException, ComponentRegistryException {
-        Workflow workflow = new Workflow();
-
-        // Name, description
-        workflow.setName("ForEach test");
-        workflow.setDescription("Workflow that tests if");
-
-        Graph graph = workflow.getGraph();
-
-        // x
-        InputNode inputX = (InputNode) workflow.addNode(this.inputComponent);
-        inputX.setPosition(new Point(0, 0));
-
-        // n
-        InputNode inputN = (InputNode) workflow.addNode(this.inputComponent);
-        inputN.setPosition(new Point(0, 80));
-
-        // Array generator
-        Component arrayGeneratorComponent = this.componentRegistry.getComponent(ArrayGenerator.WSDL_PATH);
-        Node arrayGenerator = workflow.addNode(arrayGeneratorComponent);
-        arrayGenerator.setPosition(new Point(120, 80));
-
-        // Split
-        Node split = workflow.addNode(this.splitComponent);
-        split.setPosition(new Point(310, 80));
-
-        // Adder
-        Component adderComponent = this.componentRegistry.getComponent(Adder.WSDL_PATH);
-        Node adder = workflow.addNode(adderComponent);
-        adder.setPosition(new Point(440, 40));
-
-        // Merge
-        Node merge = workflow.addNode(this.mergeComponent);
-        merge.setPosition(new Point(580, 40));
-
-        // Output
-        OutputNode output = (OutputNode) workflow.addNode(this.outputComponent);
-        output.setConfiguredName("output");
-        output.setPosition(new Point(720, 40));
-
-        // Connect ports
-        graph.addEdge(inputX.getOutputPort(0), adder.getInputPort(0));
-        graph.addEdge(inputN.getOutputPort(0), arrayGenerator.getInputPort(0));
-        graph.addEdge(arrayGenerator.getOutputPort(0), split.getInputPort(0));
-        graph.addEdge(split.getOutputPort(0), adder.getInputPort(1));
-        graph.addEdge(adder.getOutputPort(0), merge.getInputPort(0));
-        graph.addEdge(merge.getOutputPort(0), output.getInputPort(0));
-
-        // Set the default values
-        // This needs to be after connection.
-        String x = "2";
-        inputX.setDefaultValue(x);
-        String n = "3";
-        inputN.setDefaultValue(n);
-
-        return workflow;
-    }
-
-    /**
-     * @return The workflow
-     * @throws ComponentException
-     * @throws GraphException
-     * @throws ComponentRegistryException
-     * @throws ComponentException
-     * @throws ComponentRegistryException
-     */
-    public Workflow createIfWorkflow() throws GraphException, ComponentException, ComponentRegistryException {
-        Workflow workflow = new Workflow();
-
-        // Name, description
-        workflow.setName("If test");
-        workflow.setDescription("Workflow that tests if");
-
-        Graph graph = workflow.getGraph();
-
-        // x
-        InputNode x = (InputNode) workflow.addNode(this.inputComponent);
-        x.setPosition(new Point(10, 10));
-
-        // y
-        InputNode y = (InputNode) workflow.addNode(this.inputComponent);
-        y.setPosition(new Point(10, 90));
-
-        // const0
-        ConstantNode const0 = (ConstantNode) workflow.addNode(this.constantComponent);
-        const0.setPosition(new Point(20, 180));
-
-        // if
-        IfNode ifNode = (IfNode) workflow.addNode(this.ifComponent);
-        ifNode.setPosition(new Point(170, 180));
-
-        // Adder nodes
-        Component adderComp = this.componentRegistry.getComponent(Adder.WSDL_PATH);
-
-        Node adder = workflow.addNode(adderComp);
-        adder.setPosition(new Point(400, 10));
-
-        // Multiplier node
-        Component multiComp = this.componentRegistry.getComponent(Multiplier.WSDL_PATH);
-
-        Node multiplier = workflow.addNode(multiComp);
-        multiplier.setPosition(new Point(400, 90));
-
-        // endif
-        Node endif = workflow.addNode(this.endifComponent);
-        endif.setPosition(new Point(550, 40));
-
-        // Output
-        OutputNode output = (OutputNode) workflow.addNode(this.outputComponent);
-        output.setConfiguredName("output");
-        output.setPosition(new Point(700, 40));
-
-        // Connect ports
-        graph.addEdge(x.getOutputPort(0), adder.getInputPort(0));
-        graph.addEdge(x.getOutputPort(0), multiplier.getInputPort(0));
-        graph.addEdge(y.getOutputPort(0), adder.getInputPort(1));
-        graph.addEdge(y.getOutputPort(0), multiplier.getInputPort(1));
-        graph.addEdge(const0.getOutputPort(0), ifNode.getInputPort(0));
-        graph.addEdge(ifNode.getControlOutPorts().get(0), adder.getControlInPort());
-        graph.addEdge(ifNode.getControlOutPorts().get(1), multiplier.getControlInPort());
-        graph.addEdge(adder.getOutputPort(0), endif.getInputPort(0));
-        graph.addEdge(multiplier.getOutputPort(0), endif.getInputPort(1));
-        graph.addEdge(endif.getOutputPort(0), output.getInputPort(0));
-
-        // Set the default values
-        // This needs to be after connection.
-        x.setDefaultValue("2");
-        y.setDefaultValue("3");
-        const0.setValue("adder");
-        ifNode.setXPath("$0 = 'adder'");
-
-        return workflow;
-    }
-
-    /**
-     * @return The workflow
-     * @throws GraphException
-     * @throws ComponentRegistryException
-     * @throws ComponentException
-     */
-    public Workflow createReceiveWorkflow() throws GraphException, ComponentException, ComponentRegistryException {
-        Workflow workflow = new Workflow();
-
-        // Name, description
-        workflow.setName("Receive test");
-        workflow.setDescription("Workflow that tests receive");
-
-        Graph graph = workflow.getGraph();
-
-        // Adder nodes
-        Component echoComponent = this.componentRegistry.getComponent(Echo.WSDL_PATH);
-
-        Node echo = workflow.addNode(echoComponent);
-        echo.setPosition(new Point(40, 40));
-
-        // receive
-        ReceiveNode receive = (ReceiveNode) workflow.addNode(this.receiveComponent);
-        receive.setPosition(new Point(200, 200));
-
-        // Output
-        OutputNode output1 = (OutputNode) workflow.addNode(this.outputComponent);
-        output1.setPosition(new Point(350, 40));
-
-        OutputNode output2 = (OutputNode) workflow.addNode(this.outputComponent);
-        output2.setPosition(new Point(350, 200));
-
-        // Connect ports
-        graph.addEdge(receive.getEPRPort(), echo.getInputPort(0));
-        graph.addEdge(echo.getOutputPort(0), output1.getInputPort(0));
-        graph.addEdge(receive.getOutputPort(0), output2.getInputPort(0));
-        graph.addEdge(echo.getControlOutPorts().get(0), receive.getControlInPort());
-
-        // Confugure
-        output1.setConfiguredName("output1");
-        output1.setConfigured(true);
-        output2.setConfiguredName("output2");
-        output2.setConfigured(true);
-
-        return workflow;
-
-    }
-
-    /**
-     * @return The graph
-     * @throws ComponentException
-     * @throws GraphException
-     * @throws ComponentRegistryException
-     */
-    public Workflow createGFacWorkflow() throws ComponentException, GraphException, ComponentRegistryException {
-
-        Workflow workflow = new Workflow();
-
-        // Name, description
-        workflow.setName("GFac test workflow");
-        workflow.setDescription("GFac test workflow");
-
-        Graph graph = workflow.getGraph();
-
-        // Adder node
-        Component gfacComp = this.componentRegistry.getComponent(GFAC_TEST_AWSDL);
-        Node gfacNode = workflow.addNode(gfacComp);
-        gfacNode.setPosition(new Point(250, 100));
-
-        // Input parameter node 1
-        InputNode paramNode1 = (InputNode) workflow.addNode(this.inputComponent);
-        paramNode1.setPosition(new Point(50, 50));
-        String paramValue1 = "300";
-        paramNode1.setDefaultValue(paramValue1);
-
-        // Output parameter
-        OutputNode outParamNode = (OutputNode) workflow.addNode(this.outputComponent);
-        outParamNode.setPosition(new Point(300, 220));
-
-        // Connect ports
-        graph.addEdge(paramNode1.getOutputPort(0), gfacNode.getInputPort(0));
-        graph.addEdge(gfacNode.getOutputPort(0), outParamNode.getInputPort(0));
-
-        return workflow;
-    }
-
-    /**
-     * @return The workflow created.
-     * @throws GraphException
-     * @throws ComponentException
-     * @throws ComponentRegistryException
-     */
-    public Workflow createLoanWorkflow() throws GraphException, ComponentException, ComponentRegistryException {
-        Workflow workflow = new Workflow();
-
-        // Name, description
-        workflow.setName("Loan Approval");
-        workflow.setDescription("Loan Approval");
-
-        Graph graph = workflow.getGraph();
-
-        // amount
-        InputNode amount = (InputNode) workflow.addNode(this.inputComponent);
-        amount.setPosition(new Point(10, 10));
-
-        // if
-        IfNode ifNode = (IfNode) workflow.addNode(this.ifComponent);
-        ifNode.setPosition(new Point(200, 100));
-
-        // Approver nodes
-        Component approverComponent = this.componentRegistry.getComponent(Approver.WSDL_PATH);
-
-        Node approver = workflow.addNode(approverComponent);
-        approver.setPosition(new Point(350, 10));
-
-        // const
-        ConstantNode constYes = (ConstantNode) workflow.addNode(this.constantComponent);
-        constYes.setPosition(new Point(350, 200));
-
-        // endif
-        Node endif = workflow.addNode(this.endifComponent);
-        endif.setPosition(new Point(550, 100));
-
-        // Output
-        OutputNode output = (OutputNode) workflow.addNode(this.outputComponent);
-        output.setPosition(new Point(700, 100));
-
-        // Connect ports
-        graph.addEdge(amount.getOutputPort(0), approver.getInputPort(0));
-        graph.addEdge(amount.getOutputPort(0), ifNode.getInputPort(0));
-        graph.addEdge(ifNode.getControlOutPorts().get(0), approver.getControlInPort());
-        graph.addEdge(ifNode.getControlOutPorts().get(1), constYes.getControlInPort());
-        graph.addEdge(approver.getOutputPort(0), endif.getInputPort(0));
-        graph.addEdge(constYes.getOutputPort(0), endif.getInputPort(1));
-        graph.addEdge(endif.getOutputPort(0), output.getInputPort(0));
-
-        // Set the default values
-        // This needs to be after connection.
-        amount.setDefaultValue("500");
-        constYes.setValue("Yes");
-        ifNode.setXPath("$0 > 1000");
-        output.setConfiguredName("accept");
-        output.setConfigured(true);
-
-        return workflow;
-    }
-    /**
-     * Create a dowhile workflow
-     * @return Workflow created.
-     * @throws GraphException
-     * @throws ComponentException
-     * @throws ComponentRegistryException
-     */
-    public Workflow createDoWhileWorkflow() throws GraphException, ComponentException, ComponentRegistryException {
-        Workflow workflow = new Workflow();
-
-        // Name, description
-        workflow.setName("Do While");
-        workflow.setDescription("Do While");
-
-        Graph graph = workflow.getGraph();
-
-        // amount
-        InputNode amount = (InputNode) workflow.addNode(this.inputComponent);
-        amount.setPosition(new Point(10, 10));
-
-        // if
-        DoWhileNode doWhileNode = (DoWhileNode) workflow.addNode(this.doWhileComponent);
-        doWhileNode.setPosition(new Point(200, 100));
-
-        // Approver nodes
-        Component approverComponent = this.componentRegistry.getComponent(Approver.WSDL_PATH);
-
-        Node approver = workflow.addNode(approverComponent);
-        approver.setPosition(new Point(350, 10));
-
-        // const
-        ConstantNode constYes = (ConstantNode) workflow.addNode(this.constantComponent);
-        constYes.setPosition(new Point(350, 200));
-
-        // endif
-        Node endDoWhile = workflow.addNode(this.endDoWhileComponent);
-        endDoWhile.setPosition(new Point(550, 100));
-
-        // Output
-        OutputNode output = (OutputNode) workflow.addNode(this.outputComponent);
-        output.setPosition(new Point(700, 100));
-
-        // Connect ports
-        graph.addEdge(amount.getOutputPort(0), approver.getInputPort(0));
-        graph.addEdge(amount.getOutputPort(0), doWhileNode.getInputPort(0));
-        graph.addEdge(doWhileNode.getControlOutPorts().get(0), approver.getControlInPort());
-        graph.addEdge(doWhileNode.getControlOutPorts().get(1), constYes.getControlInPort());
-        graph.addEdge(approver.getOutputPort(0), endDoWhile.getInputPort(0));
-        graph.addEdge(constYes.getOutputPort(0), endDoWhile.getInputPort(1));
-        graph.addEdge(endDoWhile.getOutputPort(0), output.getInputPort(0));
-
-        // Set the default values
-        // This needs to be after connection.
-        amount.setDefaultValue("0");
-        constYes.setValue("Yes");
-        doWhileNode.setXpath("$1 = 1");
-        output.setConfiguredName("accept");
-        output.setConfigured(true);
-
-        return workflow;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/0e2c10f5/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/XBayaGUI.java
----------------------------------------------------------------------
diff --git a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/XBayaGUI.java b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/XBayaGUI.java
deleted file mode 100644
index 0e36d3e..0000000
--- a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/XBayaGUI.java
+++ /dev/null
@@ -1,850 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.apache.airavata.xbaya.ui;
-
-import java.awt.BorderLayout;
-import java.awt.Container;
-import java.awt.Dimension;
-import java.awt.Toolkit;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-import java.awt.event.ContainerEvent;
-import java.awt.event.ContainerListener;
-import java.awt.event.MouseAdapter;
-import java.awt.event.MouseEvent;
-import java.awt.event.WindowAdapter;
-import java.awt.event.WindowEvent;
-import java.lang.reflect.InvocationTargetException;
-import java.util.ArrayList;
-import java.util.LinkedList;
-import java.util.List;
-
-import javax.swing.JFrame;
-import javax.swing.JOptionPane;
-import javax.swing.JSplitPane;
-import javax.swing.JTabbedPane;
-import javax.swing.SwingUtilities;
-import javax.swing.UIManager;
-import javax.swing.WindowConstants;
-import javax.swing.event.ChangeEvent;
-import javax.swing.event.ChangeListener;
-
-import org.apache.airavata.client.api.exception.AiravataAPIInvocationException;
-import org.apache.airavata.common.utils.SwingUtil;
-import org.apache.airavata.common.utils.XMLUtil;
-import org.apache.airavata.workflow.model.component.Component;
-import org.apache.airavata.workflow.model.component.ComponentException;
-import org.apache.airavata.workflow.model.exceptions.WorkflowException;
-import org.apache.airavata.workflow.model.exceptions.WorkflowRuntimeException;
-import org.apache.airavata.workflow.model.graph.GraphException;
-import org.apache.airavata.workflow.model.graph.Node;
-import org.apache.airavata.workflow.model.graph.Port;
-import org.apache.airavata.workflow.model.wf.Workflow;
-import org.apache.airavata.ws.monitor.MonitorException;
-import org.apache.airavata.ws.monitor.event.Event;
-import org.apache.airavata.ws.monitor.event.Event.Type;
-import org.apache.airavata.ws.monitor.event.EventListener;
-import org.apache.airavata.xbaya.XBayaConfiguration;
-import org.apache.airavata.xbaya.XBayaConfiguration.XBayaExecutionMode;
-import org.apache.airavata.xbaya.XBayaConstants;
-import org.apache.airavata.xbaya.XBayaEngine;
-import org.apache.airavata.xbaya.core.generators.WorkflowFiler;
-import org.apache.airavata.xbaya.core.ide.XBayaExecutionModeListener;
-import org.apache.airavata.xbaya.ui.dialogs.ErrorWindow;
-import org.apache.airavata.xbaya.ui.dialogs.workflow.WorkflowPropertyWindow;
-import org.apache.airavata.xbaya.ui.graph.GraphCanvas;
-import org.apache.airavata.xbaya.ui.graph.GraphCanvasEvent;
-import org.apache.airavata.xbaya.ui.graph.GraphCanvasEvent.GraphCanvasEventType;
-import org.apache.airavata.xbaya.ui.graph.GraphCanvasListener;
-import org.apache.airavata.xbaya.ui.menues.XBayaMenu;
-import org.apache.airavata.xbaya.ui.utils.ErrorMessages;
-import org.apache.airavata.xbaya.ui.views.ComponentViewer;
-import org.apache.airavata.xbaya.ui.views.JCRBrowserPanel;
-import org.apache.airavata.xbaya.ui.views.MonitorPanel;
-import org.apache.airavata.xbaya.ui.views.PortViewer;
-import org.apache.airavata.xbaya.ui.widgets.ScrollPanel;
-import org.apache.airavata.xbaya.ui.widgets.TabLabelButton;
-import org.apache.airavata.xbaya.ui.widgets.XBayaToolBar;
-import org.apache.airavata.xbaya.ui.widgets.component.ComponentSelector;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.xmlpull.infoset.XmlElement;
-
-public class XBayaGUI implements EventListener, XBayaExecutionModeListener {
-
-    private static final Logger logger = LoggerFactory.getLogger(XBayaGUI.class);
-
-    private static final int STATIC_MENU_ITEMS = 4;
-
-    private XBayaEngine engine;
-
-    private JFrame frame;
-
-    private XBayaMenu menu;
-
-    private List<GraphCanvas> graphCanvases = new LinkedList<GraphCanvas>();
-
-    private PortViewer portViewer;
-
-    private ComponentViewer componentViewer;
-
-    private ComponentSelector componentSelector;
-
-    private MonitorPanel monitorPane;
-
-    private XBayaToolBar toolbar;
-
-    private ErrorWindow errorWindow;
-
-    private JTabbedPane rightBottomTabbedPane;
-
-    private JTabbedPane graphTabbedPane;
-
-    private boolean graphPanelMaximized;
-
-    private int previousMainDividerLocation;
-
-    private int previousRightDividerLocation;
-
-    private JSplitPane mainSplitPane;
-
-    private JSplitPane leftSplitPane;
-
-    private JSplitPane rightSplitPane;
-
-    private JTabbedPane componentTabbedPane;
-
-    private ScrollPanel compTreeXBayapanel;
-
-	private WorkflowFiler graphFiler;
-
-    private WorkflowPropertyWindow workflowPropertiesWindow;
-
-    /**
-     * Constructs an XBayaEngine.
-     * 
-     * @param engine
-     */
-    public XBayaGUI(XBayaEngine engine) {
-        this.engine = engine;
-        this.engine.getMonitor().addEventListener(this);
-        graphFiler = new WorkflowFiler(engine);
-        engine.getConfiguration().registerExecutionModeChangeListener(this);
-
-        try {
-            SwingUtilities.invokeAndWait(new Runnable() {
-                public void run() {
-                    init();
-                }
-            });
-        } catch (InterruptedException e) {
-            // Shouldn't happen.
-            throw new WorkflowRuntimeException(e);
-        } catch (InvocationTargetException e) {
-            // Shouldn't happen.
-        	//It happened
-        	/* exception occurs when xbaya is opened twice from the jvm
-        	 * org.apache.airavata.xbaya.XBayaRuntimeException: java.lang.reflect.InvocationTargetException
-				at org.apache.airavata.xbaya.gui.XBayaGUI.<init>(XBayaGUI.java:148)
-				at org.apache.airavata.xbaya.XBayaEngine.<init>(XBayaEngine.java:106)
-				at org.apache.airavata.xbaya.XBaya.<init>(XBaya.java:51)
-				at org.ogce.paramchem.XBayaLauncher.run(XBayaLauncher.java:44)
-				at java.lang.Thread.run(Thread.java:662)
-			Caused by: java.lang.reflect.InvocationTargetException
-				at java.awt.EventQueue.invokeAndWait(EventQueue.java:1042)
-				at javax.swing.SwingUtilities.invokeAndWait(SwingUtilities.java:1326)
-				at org.apache.airavata.xbaya.gui.XBayaGUI.<init>(XBayaGUI.java:138)
-				... 4 more
-        	 */
-            throw new WorkflowRuntimeException(e);
-        }
-        
-        // Following suppsed to jump in the middle to save unsaved workflows when exiting xbaya
-        // but its not working because the UI is already disposed it seems :(
-//        Runtime.getRuntime().addShutdownHook(new Thread(){
-//        	@Override
-//        	public void run() {
-//        		while (getGraphCanvases().size()>0){
-//        			removeGraphCanvasFromIndex(0);
-//        		}
-//        	}
-//        });
-    }
-
-    /**
-     * Returns the notificationPane.
-     * 
-     * @return The notificationPane
-     */
-    public MonitorPanel getMonitorPane() {
-        return this.monitorPane;
-    }
-
-    /**
-     * Returns the ComponentTreeViewer.
-     * 
-     * @return The ComponentTreeViewer
-     */
-    public ComponentSelector getComponentSelector() {
-        return this.componentSelector;
-    }
-
-    /**
-     * Returns the ErrorWindow.
-     * 
-     * @return the errorWindow
-     */
-    public ErrorWindow getErrorWindow() {
-        return this.errorWindow;
-    }
-
-    /**
-     * Returns the Frame.
-     * 
-     * @return the Frame
-     */
-    public JFrame getFrame() {
-        return this.frame;
-    }
-
-    /**
-     * @return The list of GraphCanvases.
-     */
-    public List<GraphCanvas> getGraphCanvases() {
-        return this.graphCanvases;
-    }
-
-    /**
-     * Return the active GraphPanel.
-     * 
-     * @return The GraphPanel
-     */
-    public GraphCanvas getGraphCanvas() {
-        int index = this.graphTabbedPane.getSelectedIndex();
-        if (index!=-1) {
-			return this.graphCanvases.get(index);
-		}else{
-			return null;
-		}
-    }
-
-    /**
-     * Returns the toolbar.
-     * 
-     * @return The toolbar
-     */
-    public XBayaToolBar getToolbar() {
-    	if (toolbar==null){
-    		this.toolbar = new XBayaToolBar(this.engine);
-    	}
-        return this.toolbar;
-    }
-
-    public GraphCanvas newGraphCanvas(boolean focus) {
-    	return newGraphCanvas(focus, false);
-    }
-    
-    /**
-     * Creates a new graph tab.
-     * 
-     * This method needs to be called by Swing event thread.
-     * 
-     * @param focus
-     * 
-     * @return The graph canvas created
-     */
-    public GraphCanvas newGraphCanvas(boolean focus, boolean withID) {
-        GraphCanvas newGraphCanvas = new GraphCanvas(this.engine);
-        this.graphCanvases.add(newGraphCanvas);
-        this.graphTabbedPane.addTab(newGraphCanvas.getWorkflow().getName(), newGraphCanvas.getSwingComponent());
-        final int index = graphTabbedPane.getTabCount()-1;
-		TabLabelButton tabLabelButton = new TabLabelButton(graphTabbedPane,"Close this workflow");
-		graphTabbedPane.setTabComponentAt(index, tabLabelButton); 
-		tabLabelButton.setCloseButtonListener(new ActionListener(){
-			@Override
-			public void actionPerformed(ActionEvent e) {
-				removeGraphCanvasFromIndex(index);				
-			}
-		});
-        graphTabbedPane.addContainerListener(new ContainerListener(){
-
-			@Override
-			public void componentAdded(ContainerEvent event) {
-			}
-
-			@Override
-			public void componentRemoved(ContainerEvent event) {
-				List<GraphCanvas> graphCanvases = engine.getGUI().getGraphCanvases();
-				for (GraphCanvas graphCanvas : graphCanvases) {
-					if (graphCanvas.getSwingComponent()==event.getComponent()){
-						if (graphCanvas.isWorkflowChanged()){
-							setFocus(graphCanvas);
-							if (JOptionPane.showConfirmDialog(null, "The workflow '"+graphCanvas.getWorkflow().getName()+"' has been modified. Save changes?", "Save Workflow", JOptionPane.YES_NO_OPTION)==JOptionPane.YES_OPTION){
-								graphFiler.saveWorkflow(graphCanvas);
-							}
-						}
-						break;
-					}
-				}
-			}
-        	
-        });
-        if (focus) {
-            setFocus(newGraphCanvas);
-        }
-        newGraphCanvas.addGraphCanvasListener(this.componentViewer);
-        newGraphCanvas.addGraphCanvasListener(this.portViewer);
-        newGraphCanvas.addGraphCanvasListener(new GraphCanvasListener() {
-
-            public void graphCanvasChanged(GraphCanvasEvent event) {
-                GraphCanvasEventType type = event.getType();
-                final GraphCanvas graphCanvas = event.getGraphCanvas();
-                final Workflow workflow = event.getWorkflow();
-                switch (type) {
-                case GRAPH_LOADED:
-                case NAME_CHANGED:
-                    SwingUtilities.invokeLater(new Runnable() {
-                        public void run() {
-                            String name = workflow.getName();
-
-                            // Change the name of the tab.
-                            updateTabTitle(graphCanvas, workflow);
-
-                            // Change the name of the frame.
-                            setFrameName(name);
-                        }
-
-						
-                    });
-                    break;
-                case NODE_SELECTED:
-                case INPUT_PORT_SELECTED:
-                case OUTPUT_PORT_SELECTED:
-                    // Do nothing
-                case WORKFLOW_CHANGED:
-                	updateTabTitle(graphCanvas,graphCanvas.getWorkflow());
-                	setFrameName(workflow.getName());
-                	for (ChangeListener listener:tabChangeListeners){
-                		try{
-                			listener.stateChanged(null);
-                		}catch(Exception e){
-                			e.printStackTrace();
-                		}
-                	}
-                }
-            }
-            private void updateTabTitle(
-					final GraphCanvas graphCanvas,
-					final Workflow workflow) {
-				int index = XBayaGUI.this.graphTabbedPane.indexOfComponent(graphCanvas.getSwingComponent());
-                String newTitle = workflow.getName();
-                if (graphCanvas.isWorkflowChanged()){
-                	newTitle="*"+newTitle;
-                }
-				XBayaGUI.this.graphTabbedPane.setTitleAt(index, newTitle);
-			}
-        });
-        if (withID){
-        	getWorkflowPropertyWindow().show();
-        }
-        return newGraphCanvas;
-    }
-
-    /**
-     * @param graphCanvas
-     */
-    public void setFocus(GraphCanvas graphCanvas) {
-        this.graphTabbedPane.setSelectedComponent(graphCanvas.getSwingComponent());
-    }
-
-    /**
-     * Selects a canvas with a specified workflow if any; otherwise create one.
-     * 
-     * This method needs to be called by Swing event thread.
-     * 
-     * @param workflow
-     */
-    public void selectOrCreateGraphCanvas(Workflow workflow) {
-        GraphCanvas graphCanvas = null;
-        for (GraphCanvas canvas : this.graphCanvases) {
-            if (workflow == canvas.getWorkflow()) {
-                graphCanvas = canvas;
-            }
-        }
-        if (graphCanvas == null) {
-            graphCanvas = newGraphCanvas(true);
-            graphCanvas.setWorkflow(workflow);
-        } else {
-            setFocus(graphCanvas);
-        }
-    }
-    
-    private List<ChangeListener> tabChangeListeners=new ArrayList<ChangeListener>();
-
-	private JCRBrowserPanel jcrBrowserPanel;
-    
-    public void addWorkflowTabChangeListener(ChangeListener listener){
-		graphTabbedPane.addChangeListener(listener);
-		tabChangeListeners.add(listener);
-    }
-    
-    public void removeWorkflowTabChangeListener(ChangeListener listener){
-		graphTabbedPane.removeChangeListener(listener);
-		tabChangeListeners.remove(listener);
-    }
-    /**
-     * Closes the selected graph canvas.
-     * 
-     * This method needs to be called by Swing event thread.
-     */
-    public void closeGraphCanvas() {
-        removeGraphCanvasFromIndex(this.graphTabbedPane.getSelectedIndex());
-    	//I dont know why but aparently you have to have atleast one tab present
-//    	newGraphCanvas(true);
-    }
-
-    public boolean closeAllGraphCanvas(){
-    	while (graphTabbedPane.getTabCount()>0){
-    		if (!removeGraphCanvasFromIndex(0)){
-    			return false;
-    		}
-    	}
-		return true;
-    	//I dont know why but aparently you have to have atleast one tab present
-//    	newGraphCanvas(true);
-    }
-    
-	private boolean removeGraphCanvasFromIndex(int index) {
-		boolean actionSuccess=true;
-		if ((graphTabbedPane.getTabCount()>0) && (index<this.graphTabbedPane.getTabCount())){
-			GraphCanvas graphCanvas = graphCanvases.get(index);
-			if (graphCanvas.isWorkflowChanged()){
-				int result = JOptionPane.showConfirmDialog(frame, "'"+graphCanvas.getWorkflow().getName()+"' has been modified. Save changes?", "Save Workflow", JOptionPane.YES_NO_CANCEL_OPTION);
-				try {
-					if (result==JOptionPane.YES_OPTION){
-						graphFiler.saveWorkflow(graphCanvas);
-						if (graphCanvas.isWorkflowChanged()){
-							//if cancelled while trying to save
-							actionSuccess=false;
-						}
-					}else if (result==JOptionPane.CANCEL_OPTION){
-						actionSuccess=false;
-					}
-						
-				} catch (Exception e) {
-					e.printStackTrace();
-				}
-			}
-			if (actionSuccess) {
-				graphCanvases.remove(index);
-				graphTabbedPane.removeTabAt(index);
-				activeTabChanged();
-			}
-		}
-		return actionSuccess;
-	}
-    
-    /**
-     * Selects the next graph canvas.
-     * 
-     * This method needs to be called by Swing event thread.
-     */
-    public void selectNextGraphCanvas() {
-        int count = this.graphTabbedPane.getTabCount();
-        int index = this.graphTabbedPane.getSelectedIndex();
-        index = (index + 1) % count;
-        this.graphTabbedPane.setSelectedIndex(index);
-    }
-
-    /**
-     * Toggles the maximization of the Graph Panel.
-     */
-    public void toggleMaximizeGraphPanel() {
-        if (XBayaGUI.this.graphPanelMaximized) {
-            unmaximizeGraphPanel();
-        } else {
-            maximizeGraphPanel();
-        }
-    }
-
-    /**
-     * Maximizes the Graph Panel.
-     */
-    public void maximizeGraphPanel() {
-        if (!XBayaGUI.this.graphPanelMaximized) {
-            XBayaGUI.this.graphPanelMaximized = true;
-
-            SwingUtilities.invokeLater(new Runnable() {
-                public void run() {
-                    XBayaGUI.this.previousMainDividerLocation = XBayaGUI.this.mainSplitPane.getDividerLocation();
-                    XBayaGUI.this.previousRightDividerLocation = XBayaGUI.this.rightSplitPane.getDividerLocation();
-                    XBayaGUI.this.mainSplitPane.setDividerLocation(0.0);
-                    XBayaGUI.this.rightSplitPane.setDividerLocation(1.0);
-                }
-            });
-        }
-    }
-
-    /**
-     * Set the size of the graph panel to the original.
-     */
-    public void unmaximizeGraphPanel() {
-        if (XBayaGUI.this.graphPanelMaximized) {
-            XBayaGUI.this.graphPanelMaximized = false;
-
-            SwingUtilities.invokeLater(new Runnable() {
-                public void run() {
-                    XBayaGUI.this.mainSplitPane.setDividerLocation(XBayaGUI.this.previousMainDividerLocation);
-                    XBayaGUI.this.rightSplitPane.setDividerLocation(XBayaGUI.this.previousRightDividerLocation);
-                }
-            });
-        }
-    }
-
-    /**
-     * Adds a selected component as a node at random position.
-     */
-    public void addNode() {
-        getGraphCanvas().addNode(this.componentSelector.getSelectedComponent());
-    }
-
-    /**
-     * @see org.apache.airavata.ws.monitor.event.EventListener#eventReceived(org.apache.airavata.ws.monitor.event.Event)
-     */
-    public void eventReceived(Event event) {
-        Type type = event.getType();
-        if (type == Type.MONITOR_STARTED || type == Type.KARMA_STARTED) {
-            // Show the monitor panel.
-            this.rightBottomTabbedPane.setSelectedComponent(this.monitorPane.getSwingComponent());
-        }
-    }
-
-    /**
-     * Initializes
-     */
-    private void init() {
-        createFrame();
-
-        this.menu = new XBayaMenu(this.engine, getToolbar());
-        this.frame.setJMenuBar(this.menu.getSwingComponent());
-
-        initPane();
-
-        // Create an empty graph canvas.
-//        newGraphCanvas(true);
-
-        this.frame.setVisible(true);
-    	loadDefaultGraph();
-
-        executionModeChanged(this.engine.getConfiguration());
-    }
-
-    /**
-     * Initializes the GUI.
-     */
-    private void initPane() {
-        Container contentPane = this.frame.getContentPane();
-
-        // Error window
-        this.errorWindow = new ErrorWindow(contentPane);
-
-        contentPane.add(getToolbar().getSwingComponent(), BorderLayout.PAGE_START);
-
-        this.portViewer = new PortViewer();
-        this.componentViewer = new ComponentViewer();
-        this.componentSelector = new ComponentSelector(this.engine);
-        this.componentSelector.addComponentSelectorListener(this.componentViewer);
-        this.monitorPane = new MonitorPanel(this,this.engine.getMonitor());
-
-        compTreeXBayapanel = new ScrollPanel(this.componentSelector, ComponentSelector.TITLE);
-        ScrollPanel compViewXBayaPanel = new ScrollPanel(this.componentViewer, ComponentViewer.TITLE);
-
-        this.rightBottomTabbedPane = new JTabbedPane();
-        this.rightBottomTabbedPane.setMinimumSize(SwingUtil.MINIMUM_SIZE);
-        this.rightBottomTabbedPane.setPreferredSize(new Dimension(0, 200));
-        this.rightBottomTabbedPane.addTab(PortViewer.TITLE, this.portViewer.getSwingComponent());
-        this.rightBottomTabbedPane.addTab(MonitorPanel.TITLE, this.monitorPane.getSwingComponent());
-
-        this.graphTabbedPane = new JTabbedPane();
-        this.graphTabbedPane.setMinimumSize(SwingUtil.MINIMUM_SIZE);
-        this.graphTabbedPane.addMouseListener(new MouseAdapter() {
-            @Override
-            public void mouseClicked(MouseEvent e) {
-                if (e.getClickCount() >= 2) {
-                    toggleMaximizeGraphPanel();
-                }
-            }
-        });
-        this.graphTabbedPane.addChangeListener(new ChangeListener() {
-            public void stateChanged(ChangeEvent event) {
-                // Called when the active tab changed.
-                // Note that this is not called when a tab is removed.
-                logger.debug(event.toString());
-                XBayaGUI.this.activeTabChanged();
-            }
-        });
-
-        this.leftSplitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT, true);
-        this.rightSplitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT, true);
-        this.mainSplitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, true, this.leftSplitPane, this.rightSplitPane);
-        contentPane.add(this.mainSplitPane, BorderLayout.CENTER);
-
-        this.leftSplitPane.setOneTouchExpandable(true);
-        this.rightSplitPane.setOneTouchExpandable(true);
-        this.mainSplitPane.setOneTouchExpandable(true);
-
-        // this.leftSplitPane.setTopComponent(compTreeXBayapanel.getSwingComponent());
-        // this.leftSplitPane.setTopComponent(new JCRBrowserPanel(engine));
-
-        this.componentTabbedPane = new JTabbedPane();
-        this.componentTabbedPane.setMinimumSize(SwingUtil.MINIMUM_SIZE);
-        this.leftSplitPane.setTopComponent(this.componentTabbedPane);
-        this.componentTabbedPane.add(this.compTreeXBayapanel.getSwingComponent());
-        this.componentTabbedPane.setTitleAt(0, "Component");
-
-        this.leftSplitPane.setBottomComponent(compViewXBayaPanel.getSwingComponent());
-        this.rightSplitPane.setTopComponent(this.graphTabbedPane);
-        this.rightSplitPane.setBottomComponent(this.rightBottomTabbedPane);
-
-        this.leftSplitPane.setMinimumSize(SwingUtil.MINIMUM_SIZE);
-        this.rightSplitPane.setMinimumSize(SwingUtil.MINIMUM_SIZE);
-
-        //
-        // Adjust sizes
-        //
-
-        // Need to pack the frame first to get the size of each component.
-        this.frame.pack();
-
-        final int leftPanelWidth = 250;
-        final int portViewHight = 200;
-
-        this.mainSplitPane.setDividerLocation(leftPanelWidth);
-        this.leftSplitPane.setDividerLocation(0.5);
-        this.leftSplitPane.setResizeWeight(0.5);
-
-        this.rightSplitPane.setDividerLocation(this.rightSplitPane.getSize().height - portViewHight);
-        // The bottom component to stay the same size
-        this.rightSplitPane.setResizeWeight(1.0);
-
-    }
-
-    public void viewJCRBrowserPanel(){
-    	if (jcrBrowserPanel!=null){
-    		jcrBrowserPanel=componentTabbedPane.indexOfComponent(jcrBrowserPanel)==-1? null:jcrBrowserPanel;
-    	}
-    	if (jcrBrowserPanel==null) {
-			jcrBrowserPanel = new JCRBrowserPanel(engine);
-			this.componentTabbedPane.add(jcrBrowserPanel);
-			int index=this.componentTabbedPane.getTabCount()-1;
-			this.componentTabbedPane.setTitleAt(1, "Airavata Registry");
-			TabLabelButton tabLabelButton = new TabLabelButton(componentTabbedPane, "Close JCR Browser");
-			tabLabelButton.setCloseButtonListener(new ActionListener(){
-				@Override
-				public void actionPerformed(ActionEvent arg0) {
-					componentTabbedPane.remove(jcrBrowserPanel);
-				}
-				
-			});
-			this.componentTabbedPane.setTabComponentAt(index, tabLabelButton);
-		}
-		componentTabbedPane.setSelectedComponent(jcrBrowserPanel);
-    }
-    
-    public void viewComponentTree(){
-    	componentTabbedPane.setSelectedComponent(compTreeXBayapanel.getSwingComponent());
-    }
-    
-  
-    /**
-     * Creates a frame.
-     */
-    private void createFrame() {
-        try {
-            UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
-        } catch (Exception e) {
-            // OK. The default will be used.
-            logger.error(e.getMessage(), e);
-        }
-
-        JFrame.setDefaultLookAndFeelDecorated(false);
-        this.frame = new JFrame();
-
-        // Adjust the size
-        XBayaConfiguration config = this.engine.getConfiguration();
-        int width = config.getWidth();
-        int height = config.getHeight();
-        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
-        final int inset = 50;
-        this.frame.setLocation(inset, inset);
-        Dimension size = new Dimension(screenSize.width - inset * 2, screenSize.height - inset * 2);
-        if (width != 0) {
-            size.width = width;
-        }
-        if (height != 0) {
-            size.height = height;
-        }
-
-        // This controls the size when you open in a huge screen
-        if(size.width > 1280 && size.height > 800){
-            size.width = 1280;
-            size.height = 800;
-        }
-        this.frame.setPreferredSize(size);
-
-        this.frame.setTitle(XBayaConstants.APPLICATION_NAME);
-
-        this.frame.setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);
-        this.frame.addWindowListener(new WindowAdapter() {
-            @Override
-            public void windowClosing(WindowEvent event) {
-            	int result = JOptionPane.showConfirmDialog(frame, "'Are you sure you want to exit?", "Exit XBaya", JOptionPane.YES_NO_OPTION);
-				if (result==JOptionPane.NO_OPTION || (!closeAllGraphCanvas())){
-					return;
-				}
-                logger.debug(event.toString());
-                XBayaGUI.this.frame.setVisible(false);
-                try {
-                    XBayaGUI.this.engine.dispose();
-                } catch (WorkflowException e) {
-                    // Ignore the error.
-                    logger.error(e.getMessage(), e);
-                } catch (RuntimeException e) {
-                    // Ignore the error.
-                    logger.error(e.getMessage(), e);
-                }
-                if (XBayaGUI.this.engine.getConfiguration().isCloseOnExit()) {
-                    System.exit(0);
-                }
-            }
-
-            @Override
-            public void windowClosed(WindowEvent e) {
-                logger.debug(e.toString());
-
-                try {
-                    XBayaGUI.this.engine.getMonitor().stop();
-                } catch (MonitorException e1) {
-                    logger.error(e1.getMessage(), e1);
-                }
-                // Make sure to kill all threads.
-                // Dispose only when it can be disposed to prevent infinite loop
-                if (XBayaGUI.this.frame.isDisplayable()) {
-                    XBayaGUI.this.frame.dispose();
-                }
-            }
-        });
-        this.frame.setIconImage(SwingUtil.createImage("airavata-2.png"));
-    }
-
-    private void activeTabChanged() {
-        GraphCanvas graphPanel = getGraphCanvas();
-
-        if (graphPanel!=null) {
-			// Reset the port viewers.
-			Port inputPort = graphPanel.getSelectedInputPort();
-			Port outputPort = graphPanel.getSelectedOutputPort();
-			this.portViewer.setInputPort(inputPort);
-			this.portViewer.setOutputPort(outputPort);
-			// Reset component viewer.
-			Node node = graphPanel.getSelectedNode();
-			Component component;
-			if (node != null) {
-				component = node.getComponent();
-			} else {
-				component = this.componentSelector.getSelectedComponent();
-			}
-			this.componentViewer.setComponent(component);
-			String name = graphPanel.getWorkflow().getName();
-			setFrameName(name);
-		}else{
-			//TODO what to do when no tabs are present???
-		}
-    }
-
-    public ComponentViewer getComponentVIewer() {
-        return this.componentViewer;
-    }
-
-    private void setFrameName(String workflowName) {
-        String title = this.engine.getConfiguration().getTitle();
-        this.frame.setTitle(workflowName + " - " + title);
-    }
-
-	@Override
-	public void executionModeChanged(XBayaConfiguration config) {
-		this.leftSplitPane.setVisible(config.getXbayaExecutionMode()==XBayaExecutionMode.IDE);
-	}
-
-
-    /**
-     * @return
-     */
-    public WorkflowPropertyWindow getWorkflowPropertyWindow() {
-        if (this.workflowPropertiesWindow == null) {
-            this.workflowPropertiesWindow = new WorkflowPropertyWindow(this);
-        }
-        return this.workflowPropertiesWindow;
-    }
-    
-    /**
-     * Sets the workflow.
-     *
-     * @param workflow
-     *            The workflow
-     */
-    public void setWorkflow(Workflow workflow) {
-        this.getGraphCanvas().setWorkflow(workflow);
-    }
-
-    /**
-     * Return the current workflow.
-     *
-     * @return The current workflow
-     */
-    public Workflow getWorkflow() {
-        return this.getGraphCanvas().getWorkflowWithImage();
-    }
-    
-    private void loadDefaultGraph() {
-        if (this.engine.getConfiguration().getWorkflow() != null) {
-            this.newGraphCanvas(true, false);
-            try {
-            	String xml = this.engine.getConfiguration().getAiravataAPI().getWorkflowManager().getWorkflowAsString(this.engine.getConfiguration().getWorkflow());
-                XmlElement xwf = XMLUtil.stringToXmlElement(xml);
-                Workflow workflow = new Workflow(xwf);
-                setWorkflow(workflow);
-            } catch (AiravataAPIInvocationException e) {
-               getErrorWindow().error(ErrorMessages.REPOSITORY_CONFIGURATION_IS_WRONG_FAILED_TO_LOAD_THE_WORKFLOW, e);
-            } catch (GraphException e) {
-                getErrorWindow().error(ErrorMessages.WORKFLOW_IS_WRONG, e);
-            } catch (ComponentException e) {
-                getErrorWindow().error(ErrorMessages.COMPONENT_FORMAT_ERROR, e);
-            }
-        }
-
-    }
-
-	public XBayaConfiguration getConfiguration() {
-		return engine.getConfiguration();
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/0e2c10f5/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/actions/AbstractBrowserActionItem.java
----------------------------------------------------------------------
diff --git a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/actions/AbstractBrowserActionItem.java b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/actions/AbstractBrowserActionItem.java
deleted file mode 100644
index 406e3b7..0000000
--- a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/actions/AbstractBrowserActionItem.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you 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.apache.airavata.xbaya.ui.actions;
-
-import java.awt.event.ActionListener;
-
-import javax.swing.Icon;
-import javax.swing.JMenuItem;
-
-public abstract class AbstractBrowserActionItem {
-
-    private String caption;
-    private Icon icon;
-    private JMenuItem menuItem;
-    private String description;
-
-    public abstract String getID();
-
-    public void setIcon(Icon icon) {
-        this.icon = icon;
-        getMenuItem().setIcon(getIcon());
-    }
-
-    public Icon getIcon() {
-        return icon;
-    }
-
-    public String getCaption() {
-        return caption;
-    }
-
-    public void setCaption(String caption) {
-        this.caption = caption;
-        getMenuItem().setText(getCaption());
-    }
-
-    public JMenuItem getMenuItem() {
-        if (menuItem == null) {
-            menuItem = new JMenuItem(getCaption());
-        }
-        menuItem.setText(getCaption());
-        return menuItem;
-    }
-
-    public void addActionListener(ActionListener listener) {
-        getMenuItem().addActionListener(listener);
-    }
-
-    public void removeActionListener(ActionListener listener) {
-        getMenuItem().removeActionListener(listener);
-    }
-
-    public void setVisible(boolean visible) {
-        getMenuItem().setVisible(visible);
-    }
-
-    public void setEnabled(boolean enabled) {
-        getMenuItem().setEnabled(enabled);
-    }
-
-    public abstract String getDefaultCaption();
-
-    public String getDescription() {
-        return description;
-    }
-
-    public void setDescription(String description) {
-        this.description = description;
-        getMenuItem().setToolTipText(getDescription());
-    }
-}