source: cows_wps/trunk/cows_wps/templates/wps_execute_response.xml @ 5615

Subversion URL: http://proj.badc.rl.ac.uk/svn/ndg/cows_wps/trunk/cows_wps/templates/wps_execute_response.xml@5615
Revision 5615, 3.0 KB checked in by spascoe, 11 years ago (diff)

COWS WPS package copied from
 http://proj.badc.rl.ac.uk/svn/dcip/cows-wps/trunk.

This is a stripped down version of the DDP WPS. Some features are
removed and others have been deactivated until we reimplement them in a
more generic way.

Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<!--!
3        @param status: tuple (status_string, info, percent)
4        @param status_url: URL pointing to retrieve stored status
5        @param version: WPS Version
6        @param identifier: process identifier
7        @param lineage: boolean determining whether to serialise inputs and output definitions
8        @param conf: ddp configuration dictionary
9        @param output_xml: A Genshi stream of any complex value output or None
10        @param input_dict: Unvalidated inputs
11-->
12<ExecuteResponse statusLocation="$status_url" version="$version"
13        xmlns="http://www.opengeospatial.net/wps" xmlns:ows="http://www.opengeospatial.net/ows"
14        xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
15        xmlns:py="http://genshi.edgewall.org/"
16        xsi:schemaLocation="http://www.opengeospatial.net/wps ../wpsExecute.xsd">
17        <ows:Identifier>$identifier</ows:Identifier>
18
19        <Status>
20                <?python status_str, info, percent = status ?>
21                <py:if test="str(status_str) == 'ACCEPTED'">
22                        <ProcessAccepted/>
23                </py:if>
24                <py:if test="str(status_str) == 'FAILED'">
25                        <ProcessFailed>
26                                <ows:ExceptionReport version="1.0">
27                                        <!--!TODO: where does code come from?  It used to be magically extracted from info but that's too obscure.
28                                                It could come from a COWS OWSException. -->                                             
29                                        <ows:Exception exceptionCode="">
30                                                <ows:ExceptionText>$info</ows:ExceptionText>
31                                        </ows:Exception>
32                                </ows:ExceptionReport>
33                        </ProcessFailed>
34                </py:if>
35                <py:if test="str(status_str) == 'COMPLETED'">
36                        <ProcessSucceeded>$info</ProcessSucceeded>
37                </py:if>
38                <py:if test="str(status_str) == 'STARTED'">
39                        <ProcessStarted percentCompleted="$percent">$info</ProcessStarted>
40                </py:if>
41        </Status>
42        <py:if test="str(status_str) != 'FAILED'">
43                <?python
44                    argkeys = input_dict.keys()
45                    argkeys.sort()
46                ?>
47                <DataInputs py:if="lineage">
48                        <Input py:for="arg in argkeys">
49                                <?python
50                                    value = input_dict[arg]
51                                    if type(value) not in (unicode, str):
52                                        value = ','.join(value)
53                                ?>
54                                <ows:Identifier>$arg</ows:Identifier>
55                                <ows:Title>$arg</ows:Title>
56                                <LiteralValue>$value</LiteralValue>
57                        </Input>
58                </DataInputs>
59                <OutputDefinitions py:if="lineage">
60                        <Output>
61                                <ows:Identifier>$identifier</ows:Identifier>
62                                <ows:Title py:with="title = caps_config_dict[identifier]['globals']['Title']">$title</ows:Title>
63                                <ows:Abstract py:with="abs = caps_config_dict[identifier]['globals']['Abstract']"
64                                >$abs</ows:Abstract>
65                        </Output>
66                </OutputDefinitions>
67                <ProcessOutputs>
68                        <Output>
69                                <ows:Identifier>$identifier</ows:Identifier>
70                                <ows:Title py:with="title = caps_config_dict[identifier]['globals']['Title']">$title</ows:Title>
71                                <ows:Abstract py:with="abs = caps_config_dict[identifier]['globals']['Abstract']">$abs</ows:Abstract>
72                                <py:if test="output_xml != None"> ${output_xml.generate()} </py:if>
73
74                        </Output>
75                </ProcessOutputs>
76        </py:if>
77</ExecuteResponse>
Note: See TracBrowser for help on using the repository browser.