source: trunk/docs/api/examples.txt @ 492

Last change on this file since 492 was 348, checked in by neteler, 13 years ago

set correctly svn propset

  • Property svn:eol-style set to native
  • Property svn:keywords set to HeadURL Date Author Id Rev
  • Property svn:mime-type set to text/plain
File size: 2.3 KB
RevLine 
[348]1.. _api-examples:
2
3Examples
4========
5
6In this page you can find some small examples on how to use the JavaScript ZOO-API
7on the server side.
8
9ZOO-API contains many classes and functions. You can find the description list :ref:`here <api-classes>`.
10
11ZOO.Process example of use
12--------------------------
13
14::
15
16  function SampleService(conf,inputs,outputs){
17     var myProcess = new ZOO.Process('http://localhost/cgi-bin-new1/zoo_loader_new1.cgi','Boundary');
18     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"} };
19     var myExecuteResult=myProcess.Execute(myInputs);
20     return {result: ZOO.SERVICE_SUCCEEDED, outputs: [ {name:"Result", value: myExecuteResult} ] };
21  }
22
23In this really short example you can see how to create ``ZOO.Process`` class instance and
24call the Execute method on such an instance. Then you'll just need to return a JavaScript
25object containing the attributes result and outputs, which I'm sure you already know
26what is about. The first is about the status of the process (can be ``ZOO.SERVICE_SUCEEDED``,
27``ZOO.SERVICE_FAILED`` and so on), the last is obviously the resulting maps (take a
28look at the maps internal data structure used by ZOO Kernel in ``service.h``).
29
30ZOO.UpdateStatus
31----------------
32
33::
34
35  function SampleLongService(conf,inputs,outputs){
36     var my_i=0;
37     while(my_i<100){
38         try{
39           conf["lenv"]["status"]=my_i;
40         }
41         catch(e){
42         }
43         ZOOUpdateStatus(conf,my_i);
44         SampleService(conf,inputs,outputs);
45         my_i+=10;
46     }
47     return SampleService(conf,inputs,outputs);
48  }
49
50You can see in this sample code how to use the ``ZOOUpdateStatus`` function to update the
51current status of your running process. This information will be really helpfull when the
52ZOO Kernel will run your JavaScript Service in background mode (if the user set to ``true``
53the ``storeExecuteResponse`` parameter in his request).
54
Note: See TracBrowser for help on using the repository browser.

Search

Context Navigation

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