Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members

SampleApiClient.java

00001 import org.apache.axis.client.Call;
00002 import org.apache.axis.client.Service;
00003 import org.apache.axis.encoding.XMLType;
00004 import org.apache.axis.utils.Options;
00005 import javax.xml.namespace.QName;
00006 import javax.xml.rpc.ParameterMode;
00007 import org.apache.axis.message.SOAPBodyElement;
00008 import java.net.URL;
00009 import org.apache.axis.message.*;
00010 public class ApiClient
00011 {public static void main(String [] args)
00012     {try {
00013         Options options = new Options(args);
00014         String endpointURL = "http://parrot.ebi.ac.uk:8099/cgi-bin/msd_soap_service.cgi?client1";
00015                 long before = System.currentTimeMillis();
00016             Service  apiserver = new Service();
00017         Call connect = (Call) apiserver.createCall();
00018             Call resultset = (Call) apiserver.createCall();
00019                 Call query = (Call) apiserver.createCall();
00020                 Call exec_query = (Call) apiserver.createCall();
00021             connect.setTargetEndpointAddress( new java.net.URL(endpointURL) );
00022                 resultset.setTargetEndpointAddress( new java.net.URL(endpointURL) );
00023         query.setTargetEndpointAddress( new java.net.URL(endpointURL) ); 
00024                 exec_query.setTargetEndpointAddress( new java.net.URL(endpointURL) ); 
00025             connect.addParameter( "conn-name", XMLType.XSD_STRING, ParameterMode.IN );
00026                 connect.addParameter( "host", XMLType.XSD_STRING, ParameterMode.IN );
00027                 connect.addParameter( "usern", XMLType.XSD_STRING, ParameterMode.IN );
00028                 connect.addParameter( "pass", XMLType.XSD_STRING, ParameterMode.IN );
00029                 connect.addParameter( "status",XMLType.XSD_INT,ParameterMode.OUT);
00030             connect.setReturnType( org.apache.axis.encoding.XMLType.XSD_INT);
00031                 resultset.addParameter( "conn-name", XMLType.XSD_STRING, ParameterMode.IN );
00032                 resultset.addParameter( "query-name", XMLType.XSD_STRING, ParameterMode.IN );
00033                 resultset.addParameter( "res-name", XMLType.XSD_STRING, ParameterMode.IN );
00034         resultset.addParameter( "nors",XMLType.XSD_INT,ParameterMode.IN);
00035                 resultset.addParameter( "status",XMLType.XSD_INT,ParameterMode.OUT);
00036             resultset.setReturnType( org.apache.axis.encoding.XMLType.XSD_INT);
00037                 query.addParameter( "conn-name", XMLType.XSD_STRING, ParameterMode.IN );
00038                 query.addParameter( "query-name", XMLType.XSD_STRING, ParameterMode.IN );
00039                 query.addParameter( "result-name", XMLType.XSD_STRING, ParameterMode.IN );
00040                 query.addParameter( "status",XMLType.XSD_INT,ParameterMode.OUT);
00041             query.setReturnType( org.apache.axis.encoding.XMLType.XSD_INT);
00042                 exec_query.addParameter( "conn-name", XMLType.XSD_STRING, ParameterMode.IN );
00043                 exec_query.addParameter( "query-name", XMLType.XSD_STRING, ParameterMode.IN );
00044                 exec_query.addParameter( "result-name", XMLType.XSD_STRING, ParameterMode.IN );
00045                 exec_query.addParameter( "buf", XMLType.XSD_STRING, ParameterMode.IN );
00046                 exec_query.addParameter( "stm", XMLType.XSD_STRING, ParameterMode.IN );
00047                 exec_query.addParameter( "-size",XMLType.XSD_INT,ParameterMode.OUT);
00048             exec_query.addParameter( "param",XMLType.XSD_ANYTYPE,ParameterMode.OUT);
00049                 exec_query.setReturnType( org.apache.axis.encoding.XMLType.XSD_INT);
00050                 Integer ConnOutParam=new Integer(0);
00051         Integer ResultOutParam=new Integer(0);
00052                 String  connname = "MyConnection";
00053                 String  queryname = "MyQuery";
00054                 String  resname = "MyResult";
00055                 String  host = "msdsrchd";
00056                 String  user = "wh1";
00057                 String  pass = "wh1";
00058         Integer nors = new Integer(2);
00059                 String  sql = "select  *  from atom_data where atom_data_id >= :f<int> and atom_data_id <= 200*:f<int>";
00060                 Integer buf = new Integer(50);
00061             connect.setOperationName( "msd-connect");
00062                 resultset.setOperationName( "msd-resultset");
00063         query.setOperationName( "msd-query");
00064                 exec_query.setOperationName( "msd-exec-query");
00065                 Integer connret=(Integer)connect.invoke(new Object[]{connname,host,user,pass});
00066                 Integer resultret=(Integer)resultset.invoke(new Object[]{connname,queryname,resname,nors});
00067         Integer queryret=(Integer)query.invoke(new Object[]{connname,queryname,resname});
00068                 Integer exec_queryret=(Integer)exec_query.invoke(new Object[]{connname,queryname,resname,buf,sql});
00069             System.out.println("\nConnection Return: " + connret);
00070                 System.out.println("\nResult Set Return: " + resultret);
00071                 System.out.println("\nQuery Return: " + queryret);
00072                 long after = System.currentTimeMillis();
00073             long time = after-before;
00074             System.out.println("\nTime taken = "+ time);
00075             } catch (Exception e) {
00076             System.err.println(e.toString());
00077             e.printStackTrace();
00078         }
00079     }
00080 }

Generated on Fri Apr 16 13:47:45 2004 for MSDAPI by doxygen 1.3.4-20031005