airavata-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ramin...@apache.org
Subject [08/17] re-arrange server and clint code to create seperate distributions. AIRAVATA-1471
Date Thu, 06 Nov 2014 16:52:06 GMT
http://git-wip-us.apache.org/repos/asf/airavata/blob/a133fa8c/modules/distribution/orchestrator-server/src/main/resources/NOTICE
----------------------------------------------------------------------
diff --git a/modules/distribution/orchestrator-server/src/main/resources/NOTICE b/modules/distribution/orchestrator-server/src/main/resources/NOTICE
new file mode 100644
index 0000000..fa7cba5
--- /dev/null
+++ b/modules/distribution/orchestrator-server/src/main/resources/NOTICE
@@ -0,0 +1,163 @@
+Apache Airavata
+Copyright 2014 The Apache Software Foundation
+
+This product includes software developed at
+The Apache Software Foundation (http://www.apache.org/).
+
+===============================================================================
+Apache Xerces Java Notice:
+
+   Portions of this software were originally based on the following:
+     - software copyright (c) 1999, IBM Corporation., http://www.ibm.com.
+     - software copyright (c) 1999, Sun Microsystems., http://www.sun.com.
+     - voluntary contributions made by Paul Eng on behalf of the
+       Apache Software Foundation that were originally developed at iClick, Inc.,
+       software copyright (c) 1999.
+
+================================================================================
+Apache XmlBeans Notice: 
+
+   Portions of this software were originally based on the following:
+     - software copyright (c) 2000-2003, BEA Systems, <http://www.bea.com/>.
+
+   Aside from contributions to the Apache XMLBeans project, this
+   software also includes:
+
+    - one or more source files from the Apache Xerces-J and Apache Axis
+      products, Copyright (c) 1999-2003 Apache Software Foundation
+
+    - W3C XML Schema documents Copyright 2001-2003 (c) World Wide Web
+      Consortium (Massachusetts Institute of Technology, European Research
+      Consortium for Informatics and Mathematics, Keio University)
+
+    - resolver.jar from Apache Xml Commons project,
+      Copyright (c) 2001-2003 Apache Software Foundation
+
+    - Piccolo XML Parser for Java from http://piccolo.sourceforge.net/,
+      Copyright 2002 Yuval Oren under the terms of the Apache Software License 2.0
+
+    - JSR-173 Streaming API for XML from http://sourceforge.net/projects/xmlpullparser/,
+      Copyright 2005 BEA under the terms of the Apache Software License 2.0
+      
+=========================================================================================
+Apache Axis2 Notice: (axis2-*, mex-1.5.1-impl)
+
+Portions Copyright 2006 International Business Machines Corp.
+Portions Copyright 2005-2007 WSO2, Inc.
+
+This product also includes schemas and specification developed by:
+- the W3C consortium (http://www.w3c.org)
+
+This product also includes WS-* schemas developed by International
+Business Machines Corporation, Microsoft Corporation, BEA Systems, 
+TIBCO Software, SAP AG, Sonic Software, and VeriSign
+
+This product also includes a WSDL developed by salesforce.com
+- Copyright 1999-2006 salesforce.com, inc.
+Portions of the included xmlbeans library were originally based on the following:
+- software copyright (c) 2000-2003, BEA Systems, <http://www.bea.com/>.
+
+====================================================================================
+Apache Derby Notice:
+
+Portions of Derby were originally developed by
+International Business Machines Corporation and are
+licensed to the Apache Software Foundation under the
+"Software Grant and Corporate Contribution License Agreement",
+informally known as the "Derby CLA".
+The following copyright notice(s) were affixed to portions of the code
+with which this file is now or was at one time distributed
+and are placed here unaltered.
+
+(C) Copyright 1997,2004 International Business Machines Corporation.  All rights reserved.
+
+(C) Copyright IBM Corp. 2003. 
+
+=======================
+
+The portion of the functionTests under 'nist' was originally 
+developed by the National Institute of Standards and Technology (NIST), 
+an agency of the United States Department of Commerce, and adapted by
+International Business Machines Corporation in accordance with the NIST
+Software Acknowledgment and Redistribution document at
+http://www.itl.nist.gov/div897/ctg/sql_form.htm
+
+========================
+
+The JDBC apis for small devices and JDBC3 (under java/stubs/jsr169 and
+java/stubs/jdbc3) were produced by trimming sources supplied by the
+Apache Harmony project. In addition, the Harmony SerialBlob and
+SerialClob implementations are used. The following notice covers the Harmony sources:
+
+Portions of Harmony were originally developed by
+Intel Corporation and are licensed to the Apache Software
+Foundation under the "Software Grant and Corporate Contribution
+License Agreement", informally known as the "Intel Harmony CLA".
+
+=============================================================================
+Apache Woden Notice:
+
+   This product also includes software developed by :
+   
+     - IBM Corporation (http://www.ibm.com),
+         WSDL4J was the initial code contribution for the Apache Woden
+         project and some of the WSDL4J design and code has been reused.
+     - The W3C Consortium (http://www.w3c.org),
+         Common W3C XML Schema and DTD files are packaged with Apache Woden.
+
+   Please read the different LICENSE files present in the root directory of
+   this distribution.
+
+=========================================================================
+Woodstox Notice: 
+
+This product includes software developed by the Woodstox Project 
+(http://woodstox.codehaus.org/)
+
+This product currently only contains code developed by authors
+of specific components, as identified by the source code files.
+
+Since product implements StAX API, it has dependencies to StAX API
+classes.
+
+For additional credits (generally to people who reported problems)
+see CREDITS file.
+
+===========================================================================
+Apache xml-commons xml-apis Notice:
+
+   Portions of this software were originally based on the following:
+     - software copyright (c) 1999, IBM Corporation., http://www.ibm.com.
+     - software copyright (c) 1999, Sun Microsystems., http://www.sun.com.
+     - software copyright (c) 2000 World Wide Web Consortium, http://www.w3.org
+
+================================================================================================
+Apache  Xalan Notice: 
+
+Portions of this software was originally based on the following:
+     - software copyright (c) 1999-2002, Lotus Development Corporation., http://www.lotus.com.
+     - software copyright (c) 2001-2002, Sun Microsystems., http://www.sun.com.
+     - software copyright (c) 2003, IBM Corporation., http://www.ibm.com.
+     - voluntary contributions made by Ovidiu Predescu (ovidiu@cup.hp.com) on behalf of the

+       Apache Software Foundation and was originally developed at Hewlett Packard Company.

+================================================================================================
+Apache  OpenJPA Notice: 
+
+OpenJPA includes software developed by the SERP project
+Copyright (c) 2002-2006, A. Abram White. All rights reserved.
+
+OpenJPA includes the persistence and orm schemas from the JPA specifications.
+Copyright 2005-2009 Sun Microsystems, Inc. All rights reserved.
+OpenJPA elects to include this software in this distribution under the
+CDDL license.  You can obtain a copy of the License at:
+    https://glassfish.dev.java.net/public/CDDL+GPL.html
+The source code is available at:
+    https://glassfish.dev.java.net/source/browse/glassfish/
+
+OpenJPA includes software written by Miroslav Nachev
+OpenJPA uses test code written by Charles Tillman.
+================================================================================================
+Apache XmlSchema Notice:
+
+Portions Copyright 2006 International Business Machines Corp.
+================================================================================================

http://git-wip-us.apache.org/repos/asf/airavata/blob/a133fa8c/modules/distribution/orchestrator-server/src/main/resources/README
----------------------------------------------------------------------
diff --git a/modules/distribution/orchestrator-server/src/main/resources/README b/modules/distribution/orchestrator-server/src/main/resources/README
new file mode 100644
index 0000000..1539b8c
--- /dev/null
+++ b/modules/distribution/orchestrator-server/src/main/resources/README
@@ -0,0 +1,121 @@
+Apache Airavata Server - README.txt
+Licensed under Apache License 2.0 - http://www.apache.org/licenses/LICENSE-2.0
+--------------------------------------------------------------------------------
+
+About
+=====
+Apache Airavata, a software framework to executing and managing computational jobs on 
+distributed computing resources including local clusters, supercomputers, national grids,

+academic and commercial clouds. Airavata can be used as individual components or 
+as an integrated solution to build science gateways or general-purpose distributed 
+application and workflow management systems. Users can use Airavata back end services 
+and build gadgets to deploy in open social containers such as Apache Rave and modify them

+to suit their needs. Airavata builds on general concepts of service oriented computing, 
+distributed messaging, and workflow composition and orchestration.
+
+This distribution allows you to run a standalone Airavata Server which includes all the 
+airavata services shipped with a default derby database as the backend registry.
+
+Release Notes
+=============
+0.11 is the tenth release of Airavata (skipped 0.1-INCUBATNG). This release focuses bug fixes
and GSISSH library for beta testing. For detailed tasks list, please see RELEASE_NOTES.
+
+Building from source
+====================
+For brief installation instructions, see INSTALL
+For detailed installation and further instructions refer http://airavata.apache.org/ - Documentation
section in left hand panel. Step by step with proper documentation are provided.
+
+Known Issues in This Release
+============================
+This is the base release and is focused on a good foundation and less on features. This 
+version is not recommended for production usage.
+
+Airavata Binary Distribution Directory Structure
+================================================
+
+    AIRAVATA_HOME
+		├── bin
+		│   ├── database_scripts <dir>
+		│   ├── airavata-server.bat
+		│   ├── airavata-server.properties
+		│   ├── airavata-server.sh
+		│   ├── authenticators.xml
+		│   ├── axis2.xml
+		│   ├── derby.sh
+		│   ├── host.xml
+		│   ├── log4j.properties
+		│   ├── logo.txt
+		│   ├── setenv.bat
+		│   ├── setenv.sh
+		│   └── startNetworkServer
+		├── lib <dir>
+		├── repository
+		│   ├── modules 
+		│   └── services
+		├── samples
+		│   ├── workflows <dir>
+		│   ├── echo_out.sh
+		│   └── echo.sh
+		├── INSTALL
+		├── LICENSE
+		├── NOTICE
+		└── README
+
+
+How to test and run samples
+===========================
+* If you built Airavata from source, and if you see "BUILD SUCCESS", then the test cases
should have passes.
+* The test cases are beyond unit level, they startup embedded services and run through basic
workflow use cases.
+* To walk through Airavata features, follow "Airavata in Five Minutes" tutorial at http://airavata.apache.org/documentation/tutorials/airavata-in-5-minutes.html
+* For intermediate level Airavata features, follow "Airavata in Ten Minutes" tutorial at
http://airavata.apache.org/documentation/tutorials/airavata-in-10-minutes.html 
+* For advanced use cases, please contact mailing lists - http://airavata.apache.org/community/mailing-lists.html
+
+Description of Directory Structure
+==================================
+    - bin
+      This contains all the configuration files & the executable scripts to run the Airavata
Server (Axis2 server 
+      with Airavata services which include messageBroker and messageBox with GFac Axis2 services),
& a standalone Apache Derby server.
+
+    - bin - database_scripts
+      Contains the database scripts which are used to create tables for messagebox and messagebroker
services
+
+    - samples
+      This contains sample workflow to try out & sample application scripts.
+
+    - lib
+      This contains all the libraries required to run the airavata server and/or derby server.
+
+    - repository - services
+      Contains deployed services in Axis2 runtime.
+
+    - README
+      This document.
+
+    - INSTALL
+      This document will contain information on installing Apache-Airavata.
+
+
+Other Available Distributions
+=============================
+
+Server Distributions
+--------------------
+* Airavata Server
+  The Airavata Server binary distribution allows you to run a standalone Airavata Server
which includes all the airavata services 
+  shipped with a default derby database as the backend registry. For stable purposes, a mysql
configuration is recommended. 
+
+* Airavata Server Web Application
+  This is similar package as the Airavata Server but is distributed as the server Web Application
archive.
+  This war is compatible with Apache Tomcat application server. The war bundles all airavata
services 
+  enabled by defualt to startup a derby database as the backend registry. For stable purposes,
a mysql configuration is recommended. 
+
+Client Distributions
+--------------------
+* Airavata XBaya
+  The Airavata XBaya distribution is a client GUI application with features to register applications
as web services, construct workflows,
+  execute and monitor workflows and browse the generated results from the airavata registry.
+
+* Airavata XBaya JNLP
+  The Airavata XBaya JNLP distribution is the simular GUI distribution but prepackeged to
be ready to be deployed to 
+   a web server as a web start application. The GUI provides features to register applications
as web services, construct workflows,
+  execute and monitor workflows and browse the generated results from the airavata registry.


http://git-wip-us.apache.org/repos/asf/airavata/blob/a133fa8c/modules/distribution/orchestrator-server/src/main/resources/bin/logo.txt
----------------------------------------------------------------------
diff --git a/modules/distribution/orchestrator-server/src/main/resources/bin/logo.txt b/modules/distribution/orchestrator-server/src/main/resources/bin/logo.txt
new file mode 100644
index 0000000..e886438
--- /dev/null
+++ b/modules/distribution/orchestrator-server/src/main/resources/bin/logo.txt
@@ -0,0 +1,34 @@
+...._....................._..............._...._......................_.........
+.../ \..._.__...__._..___| |__...___...../ \..(_)_.__.__.___...____._|.|_.__._..
+../ _ \.| '_ \./ _` |/ __| '_ \./ _ \.../ _ \.| | '__/ _` \ \./ / _` | __/ _` |.
+./ ___ \| |_) | (_| | (__| |.| |  __/../ ___ \| | |.| (_| |\ V / (_| | || (_| |.
+/_/...\_\ .__/.\__,_|\___|_|.|_|\___|./_/...\_\_|_|..\__,_|.\_/.\__,_|\__\__,_|.
+........|_|.....................................................................
+................................................................................
+................,+????++~..~~++..+????????+??++.++~...~+=???+++.................
+..............:???????....:::...~??????????????.~..::...=????????...............
+............????????..~~..?????..??????????????.?????..~~~.~???????.............
+...........?????????I,~I~~??????.+????????????.~??????~=~..?????????~...........
+.........?????++??????..????????:.??????????I..????????..????????+????..........
+........??.....???????....???????...???????+..+??????+.I.????????.....?,........
+........????==????????..??..?????..=???????=..?????,.=+?.?????????===??=........
+......=??????????+????..+??=.???=.~??????????,.???=,???,.????=+??????????.......
+....??????????+...+I++..???,=...:??????????????.....+??..++I?+..,??????????.....
+....???????=??..........??..+??.:=:.???????......??..??=..........?=???????=....
+....??????..?...........+?..???.....???????......???.??...........~=.??????=....
+....~???~.~..............?..???.~=..,??????...7..???.?.:..............~????:....
+...7....7 ...............?..????. ...??????... .????.?.?.............I ..:.:....
+.....+7=,.+?................????:,I...?????..=.?????.?.............??~.=7+......
+..........????..............??????~...~??..~~??????..?...........+???,..........
+...........???............=.+???????,.?+:.?????????..+...........???+...........
+............??............?,.??????.,??..??????????.,............???............
+...........??,.............=.,????.?+....????????I.I..............=?............
+..........I?..................+??.:?~.....=??????..................??...........
+..........??...?...............??.:?=......??????..............?...??...........
+............++?..............?.????...?....??????.+..............++I............
+.............................?.??????~....???????.?.............................
+............................~~.??????......??????...............................
+.............................=???????......???????+.............................
+..........................=I??++?+++?......?+++++++?+...........................
+..........................,..77..77.........  ..  ...7..........................
+................................................................................

http://git-wip-us.apache.org/repos/asf/airavata/blob/a133fa8c/modules/distribution/orchestrator-server/src/main/resources/bin/orchestrator-server.sh
----------------------------------------------------------------------
diff --git a/modules/distribution/orchestrator-server/src/main/resources/bin/orchestrator-server.sh
b/modules/distribution/orchestrator-server/src/main/resources/bin/orchestrator-server.sh
new file mode 100755
index 0000000..5fa73e7
--- /dev/null
+++ b/modules/distribution/orchestrator-server/src/main/resources/bin/orchestrator-server.sh
@@ -0,0 +1,118 @@
+#!/bin/bash
+
+# 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.
+
+. `dirname $0`/setenv.sh
+cd $AIRAVATA_HOME/bin
+LOGO_FILE="logo.txt"
+
+JAVA_OPTS=""
+AIRAVATA_COMMAND=""
+IS_DAEMON_MODE=false
+LOGO=true
+STOP=false
+FORCE=false
+SERVERS="--servers=orchestrator"
+for var in "$@"
+do
+    case $var in
+        -xdebug)
+            JAVA_OPTS="$JAVA_OPTS -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,server=y,address=8000"
+	    AIRAVATA_COMMAND="$AIRAVATA_COMMAND $SERVERS"
+            shift
+        ;;
+        -security)
+            JAVA_OPTS="$JAVA_OPTS -Djava.security.manager -Djava.security.policy=$AIRAVATA_HOME/conf/axis2.policy
-Daxis2.home=$AIRAVATA_HOME"
+            shift
+        ;;
+	start)
+	   AIRAVATA_COMMAND="$AIRAVATA_COMMAND $SERVERS"
+	   IS_DAEMON_MODE=true
+            shift
+        ;;
+	stop)
+	    LOGO=false
+	    STOP=true
+	    AIRAVATA_COMMAND="$AIRAVATA_COMMAND $var"
+            shift
+        ;;
+	--force)
+	    FORCE=true
+            shift
+        ;;
+	-nologo)
+	    LOGO=false
+            shift
+        ;;
+        -h)
+            echo "Usage: airavata-server.sh [command-options]"
+            echo "command options:"
+	    echo "  start              Start server in daemon mode"
+	    echo "  stop [--force]     Stop all airavata servers."
+	    echo "  --<key>[=<value>]  Server setting(s) to override or introduce (overrides
values in airavata-server.properties)"
+            echo "  -nologo            Do not show airavata logo"
+            echo "  -xdebug            Start Airavata Server under JPDA debugger"
+            echo "  -security          Enable Java 2 security"
+            echo "  -h                 Display this help and exit"
+            shift
+            exit 0
+        ;;
+	*)
+	    AIRAVATA_COMMAND="$AIRAVATA_COMMAND $SERVERS $var"	    
+            shift
+    esac
+done
+if $LOGO ; then
+	if [ -e $LOGO_FILE ]
+	then
+		cat $LOGO_FILE
+	fi
+fi
+if $STOP && $FORCE ; 
+then
+	for f in `find . -name "server-start_*"`; do 
+		f_split=(${f//_/ });
+		echo "Found process file : $f" 
+		echo -n "    Sending kill signals to process ${f_split[1]}..."
+		out=`kill -9 ${f_split[1]} 2>&1`
+		if [ -z "$out" ]; then
+		    echo "done"
+		else
+		    echo "failed (REASON: $out)"
+		fi
+		echo -n "    Removing process file..."
+		out=`rm $f 2>&1`
+		if [ -z "$out" ]; then
+		    echo "done"
+		else
+		    echo "failed (REASON: $out)"
+		fi
+	done
+else
+	if $IS_DAEMON_MODE ; then
+		echo "Starting airavata server in daemon mode..."
+		nohup java $JAVA_OPTS -classpath "$XBAYA_CLASSPATH" \
+		    -Djava.endorsed.dirs="$AIRAVATA_HOME/lib/endorsed":"$JAVA_HOME/jre/lib/endorsed":"$JAVA_HOME/lib/endorsed"
\
+		    org.apache.airavata.server.ServerMain $AIRAVATA_COMMAND $* > orchestrator-server.out
& 
+ 	else
+		java $JAVA_OPTS -classpath "$XBAYA_CLASSPATH" \
+		    -Djava.endorsed.dirs="$AIRAVATA_HOME/lib/endorsed":"$JAVA_HOME/jre/lib/endorsed":"$JAVA_HOME/lib/endorsed"
\
+		    org.apache.airavata.server.ServerMain $AIRAVATA_COMMAND $*
+	fi
+fi
+

http://git-wip-us.apache.org/repos/asf/airavata/blob/a133fa8c/modules/distribution/pom.xml
----------------------------------------------------------------------
diff --git a/modules/distribution/pom.xml b/modules/distribution/pom.xml
index ff886d5..0498f62 100644
--- a/modules/distribution/pom.xml
+++ b/modules/distribution/pom.xml
@@ -30,7 +30,10 @@
             <modules>
                 <module>server</module>
                 <module>client</module>
-		<module>release</module>
+                <module>api-server</module>
+                <module>orchestrator-server</module>
+                <module>gfac-server</module>
+            	<module>release</module>
             </modules>
         </profile>
     </profiles>

http://git-wip-us.apache.org/repos/asf/airavata/blob/a133fa8c/modules/distribution/server/pom.xml
----------------------------------------------------------------------
diff --git a/modules/distribution/server/pom.xml b/modules/distribution/server/pom.xml
index 0cefe36..263112b 100644
--- a/modules/distribution/server/pom.xml
+++ b/modules/distribution/server/pom.xml
@@ -160,7 +160,7 @@
             <groupId>org.slf4j</groupId>
             <artifactId>slf4j-log4j12</artifactId>
         </dependency>
-	<dependency>
+		<dependency>
             <groupId>log4j</groupId>
             <artifactId>log4j</artifactId>
         </dependency>
@@ -264,6 +264,16 @@
             <artifactId>airavata-orchestrator-service</artifactId>
             <version>${project.version}</version>
         </dependency>
+         <dependency>
+            <groupId>org.apache.airavata</groupId>
+            <artifactId>airavata-orchestrator-stubs</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+          <dependency>
+            <groupId>org.apache.airavata</groupId>
+            <artifactId>airavata-gfac-stubs</artifactId>
+            <version>${project.version}</version>
+        </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-orchestrator-core</artifactId>
@@ -311,6 +321,11 @@
         </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
+            <artifactId>airavata-gfac-stubs</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-gfac-bes</artifactId>
             <version>${project.version}</version>
         </dependency>
@@ -379,11 +394,6 @@
             <artifactId>airavata-model-utils</artifactId>
             <version>${project.version}</version>
         </dependency>
-	<dependency>
-            <groupId>org.apache.airavata</groupId>
-            <artifactId>airavata-workflow-engine</artifactId>
-            <version>${project.version}</version>
-        </dependency>
         <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-api-server</artifactId>

http://git-wip-us.apache.org/repos/asf/airavata/blob/a133fa8c/modules/distribution/server/src/main/assembly/bin-assembly.xml
----------------------------------------------------------------------
diff --git a/modules/distribution/server/src/main/assembly/bin-assembly.xml b/modules/distribution/server/src/main/assembly/bin-assembly.xml
index a967056..b7addd0 100644
--- a/modules/distribution/server/src/main/assembly/bin-assembly.xml
+++ b/modules/distribution/server/src/main/assembly/bin-assembly.xml
@@ -204,6 +204,8 @@
 				<include>org.apache.airavata:airavata-common-utils:jar</include>
 				<include>org.apache.airavata:airavata-orchestrator-service:jar
 				</include>
+				<include>org.apache.airavata:airavata-orchestrator-stubs:jar
+				</include>
 				<include>org.apache.airavata:airavata-orchestrator-core:jar
 				</include>
 				<include>org.apache.airavata:airavata-gfac-schema-utils:jar
@@ -217,6 +219,7 @@
 				<include>org.apache.airavata:airavata-data-models:jar</include>
 				<include>org.apache.airavata:airavata-credential-store:jar</include>
 				<include>org.apache.airavata:airavata-gfac-core:jar</include>
+				<include>org.apache.airavata:airavata-gfac-stubs:jar</include>
 				<include>org.apache.airavata:airavata-gfac-service:jar</include>
 				<include>org.apache.airavata:airavata-gfac-ssh:jar</include>
 				<include>org.apache.airavata:airavata-gfac-local:jar</include>

http://git-wip-us.apache.org/repos/asf/airavata/blob/a133fa8c/modules/gfac/airavata-gfac-service/pom.xml
----------------------------------------------------------------------
diff --git a/modules/gfac/airavata-gfac-service/pom.xml b/modules/gfac/airavata-gfac-service/pom.xml
index 683d523..3ebbfd7 100644
--- a/modules/gfac/airavata-gfac-service/pom.xml
+++ b/modules/gfac/airavata-gfac-service/pom.xml
@@ -70,6 +70,11 @@
             <artifactId>airavata-api-stubs</artifactId>
             <version>${project.version}</version>
         </dependency>
+         <dependency>
+            <groupId>org.apache.airavata</groupId>
+            <artifactId>airavata-gfac-stubs</artifactId>
+            <version>${project.version}</version>
+        </dependency>
 	    <dependency>
             <groupId>org.apache.airavata</groupId>
             <artifactId>airavata-server-configuration</artifactId>

http://git-wip-us.apache.org/repos/asf/airavata/blob/a133fa8c/modules/gfac/airavata-gfac-stubs/pom.xml
----------------------------------------------------------------------
diff --git a/modules/gfac/airavata-gfac-stubs/pom.xml b/modules/gfac/airavata-gfac-stubs/pom.xml
new file mode 100644
index 0000000..b09c6d1
--- /dev/null
+++ b/modules/gfac/airavata-gfac-stubs/pom.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--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. -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <artifactId>gfac</artifactId>
+        <groupId>org.apache.airavata</groupId>
+        <version>0.14-SNAPSHOT</version>
+        <relativePath>../pom.xml</relativePath>
+    </parent>
+
+    <name>Airavata Gfac Client SDK</name>
+    <artifactId>airavata-gfac-stubs</artifactId>
+    <packaging>jar</packaging>
+    <url>http://airavata.apache.org/</url>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.thrift</groupId>
+            <artifactId>libthrift</artifactId>
+            <version>${thrift.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-log4j12</artifactId>
+            <version>${org.slf4j.version}</version>
+        </dependency>
+      	<dependency>
+            <groupId>org.apache.airavata</groupId>
+            <artifactId>airavata-data-models</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.airavata</groupId>
+            <artifactId>airavata-model-utils</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+	<dependency>
+            <groupId>org.apache.airavata</groupId>
+            <artifactId>airavata-client-configuration</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+    </dependencies>
+
+    <properties>
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+    </properties>
+    
+</project>

http://git-wip-us.apache.org/repos/asf/airavata/blob/a133fa8c/modules/gfac/airavata-gfac-stubs/src/main/java/org/apache/airavata/gfac/client/GFACInstance.java
----------------------------------------------------------------------
diff --git a/modules/gfac/airavata-gfac-stubs/src/main/java/org/apache/airavata/gfac/client/GFACInstance.java
b/modules/gfac/airavata-gfac-stubs/src/main/java/org/apache/airavata/gfac/client/GFACInstance.java
new file mode 100644
index 0000000..0e1aa56
--- /dev/null
+++ b/modules/gfac/airavata-gfac-stubs/src/main/java/org/apache/airavata/gfac/client/GFACInstance.java
@@ -0,0 +1,62 @@
+/*
+ *
+ * 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.gfac.client;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * This class represent the data related to gfac instances
+ * if orchestrator is running on non-embedded mode,
+ * This information can be used to do better load balancing between
+ * different gfac instances
+ */
+public class GFACInstance {
+    private final static Logger logger = LoggerFactory.getLogger(GFACInstance.class);
+
+    private String gfacURL;
+
+    private int currentLoad;
+
+    private int gfacPort;
+
+
+    public GFACInstance(String gfacURL, int gfacPort) {
+        this.gfacURL = gfacURL;
+        this.gfacPort = gfacPort;
+    }
+
+    public String getGfacURL() {
+        return gfacURL;
+    }
+
+    public void setGfacURL(String gfacURL) {
+        this.gfacURL = gfacURL;
+    }
+
+    public int getCurrentLoad() {
+        return currentLoad;
+    }
+
+    public void setCurrentLoad(int currentLoad) {
+        this.currentLoad = currentLoad;
+    }
+}

http://git-wip-us.apache.org/repos/asf/airavata/blob/a133fa8c/modules/gfac/airavata-gfac-stubs/src/main/java/org/apache/airavata/gfac/client/GFacClientFactory.java
----------------------------------------------------------------------
diff --git a/modules/gfac/airavata-gfac-stubs/src/main/java/org/apache/airavata/gfac/client/GFacClientFactory.java
b/modules/gfac/airavata-gfac-stubs/src/main/java/org/apache/airavata/gfac/client/GFacClientFactory.java
new file mode 100644
index 0000000..89f751d
--- /dev/null
+++ b/modules/gfac/airavata-gfac-stubs/src/main/java/org/apache/airavata/gfac/client/GFacClientFactory.java
@@ -0,0 +1,42 @@
+/*
+ *
+ * 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.gfac.client;
+
+import org.apache.airavata.gfac.cpi.GfacService;
+import org.apache.thrift.protocol.TBinaryProtocol;
+import org.apache.thrift.protocol.TProtocol;
+import org.apache.thrift.transport.TSocket;
+import org.apache.thrift.transport.TTransport;
+import org.apache.thrift.transport.TTransportException;
+
+public class GFacClientFactory {
+    public static GfacService.Client createGFacClient(String serverHost, int serverPort){
+          try {
+              TTransport transport = new TSocket(serverHost, serverPort);
+              transport.open();
+              TProtocol protocol = new TBinaryProtocol(transport);
+              return new GfacService.Client(protocol);
+          } catch (TTransportException e) {
+              e.printStackTrace();
+          }
+          return null;
+      }
+}


Mime
View raw message