ZooWebSite/ZOOAPI/Examples

Version 11 (modified by djay, 14 years ago)

--

ZOO API Examples

In this page you can find some small examples on how to use the JavaScript? ZOO-API on the server side.

ZOO-API contains many classes and functions. You can find the description list here.

ZOO.Process example of use

function SampleService(conf,inputs,outputs){
   var myProcess = new ZOO.Process('http://localhost/cgi-bin-new1/zoo_loader_new1.cgi','Boundary');
   var myInputs = {InputPolygon: { type: 'complex', value: '{"type":"Polygon","coordinates":[[[-106.993853,35.998758],[-107.407233,35.997524],[-107.430525,35.997726],[-107.4824,35.99878],[-108.37013,35.999472],[-109.043633,35.996652],[-109.096265,35.997817],[-109.148763,36.001751],[-109.200981,36.008442],[-109.252775,36.017871],[-109.304,36.030014],[-109.354516,36.044835],[-106.468201,35.991497],[-106.855511,35.989504],[-106.90933,35.990676],[-106.963008,35.994743],[-106.993853,35.998758]]]}', mimeType: "application/json"} };
   var myExecuteResult=myProcess.Execute(myInputs);
   return {result: ZOO.SERVICE_SUCCEEDED, outputs: [ {name:"Result", value: myExecuteResult} ] };
}

In this really short example you can see how to create ZOO.Process class instance and call the Execute method on such an instance. Then you'll just need to return a JavaScript? object containing the attributes result and outputs, which I'm sure you already know what is about. The first is about the status of the process (can be ZOO.SERVICE_SUCEEDED,ZOO.SERVICE_FAILED ad so on), the last is obviously the resulting maps (take a look at the maps internal data structure used by ZOO Kernel in service.h).

ZOO.UpdateStatus?

function SampleLongService(conf,inputs,outputs){
   var my_i=0;
   while(my_i<100){
       try{
         conf["lenv"]["status"]=my_i;
       }
       catch(e){
       }
       ZOOUpdateStatus(conf,my_i);
       SampleService(conf,inputs,outputs);
       my_i+=10;
   }
   return SampleService(conf,inputs,outputs);
}

Search

ZOO Sponsors

http://www.zoo-project.org/trac/chrome/site/img/geolabs-logo.pnghttp://www.zoo-project.org/trac/chrome/site/img/neogeo-logo.png http://www.zoo-project.org/trac/chrome/site/img/apptech-logo.png http://www.zoo-project.org/trac/chrome/site/img/3liz-logo.png http://www.zoo-project.org/trac/chrome/site/img/gateway-logo.png

Become a sponsor !

Knowledge partners

http://www.zoo-project.org/trac/chrome/site/img/ocu-logo.png http://www.zoo-project.org/trac/chrome/site/img/gucas-logo.png http://www.zoo-project.org/trac/chrome/site/img/polimi-logo.png http://www.zoo-project.org/trac/chrome/site/img/fem-logo.png http://www.zoo-project.org/trac/chrome/site/img/supsi-logo.png http://www.zoo-project.org/trac/chrome/site/img/cumtb-logo.png

Become a knowledge partner

Related links

http://zoo-project.org/img/ogclogo.png http://zoo-project.org/img/osgeologo.png