Mercurial > repos > ganjoo > webservice_toolsuite
diff WebServiceToolWorkflow/WebServiceTool_input_method.py @ 0:d5cd409b8a18 default tip
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
author | ganjoo |
---|---|
date | Tue, 07 Jun 2011 18:00:50 -0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/WebServiceToolWorkflow/WebServiceTool_input_method.py Tue Jun 07 18:00:50 2011 -0400 @@ -0,0 +1,94 @@ +import warnings +import platform +import os,sys +from generateClient import * +from generateClient1 import * + +'''input : wadl/wsdl/sawadl-url, method name +purpose: +1. Calls methods from generateClient1.py to generate client description for one-time invocation +of the Web service. This client description is added as a xml file under ./clients/ +2. Calls methods from generateClient.py to generate client description for invocation of Web service +in a workflow. This client description is added as a xml file under ./workflowclients/ +3. Adds the path to the above xml files to Galaxy tool-conf.xml file using call edit_tool_conf.py +''' + +#read the url passed as an argument +url = sys.argv[2] + +#split url passed on '.' character +urllist = url.split('.') + +clientGenerator = ClientGenerator(sys.argv[2],sys.argv[3],sys.argv[4],sys.argv[5]) +clientGenerator1 = ClientGenerator1(sys.argv[2],sys.argv[3],sys.argv[4],sys.argv[5]) + +#if url passed is of a WADL document +if urllist[len(urllist)-1]=='wadl' or urllist[len(urllist)-1]=='WADL': + javahome = os.environ.get('JAVA_HOME') + galaxyhome=os.environ.get('GALAXY_HOME') + classpath= galaxyhome + '/tools/WebServiceToolWorkflow/ParserForWADL/bin' + jarpath = galaxyhome + '/tools/WebServiceToolWorkflow/ParserForWADL/lib/' + machine = platform.machine() + +#start JVM depending on the machine. The location of libjvm.so is assumed to be standard. +#you can replace lines 32 to 41, with startJVM("LOCATION OF YOUR LIBJVM.SO","-ea", "-Djava.class.path=%s" % classpath,"-Djava.ext.dirs=%s" % jarpath) + if machine == 'x86_64' : + print 'a' + startJVM("%s/jre/lib/amd64/server/libjvm.so" % javahome,"-ea", "-Djava.class.path=%s" % classpath,"-Djava.ext.dirs=%s" % jarpath) + elif machine == 'i686' : + print 'b' + startJVM("%s/jre/lib/i386/server/libjvm.so" % javahome,"-ea", "-Djava.class.path=%s" % classpath,"-Djava.ext.dirs=%s" % jarpath) + elif machine == 'sun4u' : + startJVM("%s/jre/lib/sparc/server/libjvm.so" % javahome,"-ea", "-Djava.class.path=%s" % classpath,"-Djava.ext.dirs=%s" % jarpath) + else : + System.exit("Could not identify machine, please specify path to libjvm.so") + +#generate client xml for one time invocation of a Web service + clientGenerator1.wadlClient() + +#generate client xml for invocation of a Web service in workflows + clientGenerator.wadlClient() + +#if url passed is of a WSDL 2.0 document +elif urllist[len(urllist)-1]=='wsdl' or urllist[len(urllist)-1]=='WSDL': + clientGenerator.wsdlClient() + clientGenerator1.wsdlClient() + +#if url passed is of a SAWADL document +elif urllist[len(urllist)-1]=='sawadl' or urllist[len(urllist)-1]=='SAWADL': + + javahome = os.environ.get('JAVA_HOME') + galaxyhome=os.environ.get('GALAXY_HOME') + classpath= galaxyhome + '/tools/WebServiceToolWorkflow/lib/SAWADLParser/bin' + jarpath = galaxyhome + '/tools/WebServiceToolWorkflow/lib/' + machine = platform.machine() + + if machine == 'x86_64' : + print 'a' + startJVM("%s/jre/lib/amd64/server/libjvm.so" % javahome,"-ea", "-Djava.class.path=%s" % classpath,"-Djava.ext.dirs=%s" % jarpath) + elif machine == 'i686' : + print 'b' + startJVM("%s/jre/lib/i386/server/libjvm.so" % javahome,"-ea", "-Djava.class.path=%s" % classpath,"-Djava.ext.dirs=%s" % jarpath) + elif machine == 'sun4u' : + startJVM("%s/jre/lib/sparc/server/libjvm.so" % javahome,"-ea", "-Djava.class.path=%s" % classpath,"-Djava.ext.dirs=%s" % jarpath) + else : + print 'c' + System.exit("Could not identify machine, please specify path to libjvm.so") + + #f=open(sys.argv[5],'w') + #f.write('reached here 2 \t') + #f.close() + + clientGenerator.sawadlClient() + clientGenerator1.sawadlClient() + #f=open(sys.argv[5],'w') + #f.write('reached here 3') + #f.close() + + shutdownJVM() + + + + + +