diff options
| author | Andrei Aiordachioaie <a.aiordachioaie@jacobs-university.de> | 2010-03-31 20:33:45 +0200 |
|---|---|---|
| committer | Andrei Aiordachioaie <a.aiordachioaie@jacobs-university.de> | 2010-03-31 20:33:45 +0200 |
| commit | fb1ba3515facd670815c83e08ffca383cc506ee5 (patch) | |
| tree | 590d4a9b67dccab632419799159f643f9fff70ff | |
| parent | 1093dc67e8357fa3d3dc37e8cd171a079b043bb9 (diff) | |
Fixed bug related to additions with scalar values.
| -rw-r--r-- | src/petascope/ConfigManager.java | 2 | ||||
| -rw-r--r-- | src/petascope/wcps/server/core/CoverageExprPairType.java | 28 | ||||
| -rw-r--r-- | test/testcases-wcps/38-complex_extend.rasql | 1 | ||||
| -rw-r--r-- | test/testcases-wcps/38-complex_extend.test | 1 | ||||
| -rw-r--r-- | test/testcases-wcps/38-complex_extend.xml | 3 | ||||
| -rw-r--r-- | test/testcases-wcps/39-complex_extend-2.rasql | 1 | ||||
| -rw-r--r-- | test/testcases-wcps/39-complex_extend-2.test | 1 | ||||
| -rw-r--r-- | test/testcases-wcps/39-complex_extend-2.xml | 39 |
8 files changed, 63 insertions, 13 deletions
diff --git a/src/petascope/ConfigManager.java b/src/petascope/ConfigManager.java index b577d1e..f61813c 100644 --- a/src/petascope/ConfigManager.java +++ b/src/petascope/ConfigManager.java @@ -51,7 +51,7 @@ public class ConfigManager { v3 adds WGS84 handling in WCPS requests. */ private final static String MINOR = "3"; /* Bug-fix count. We have a hack: every WCPS response is written to disk. */ - private final static String BUGFIX = "5-hack"; + private final static String BUGFIX = "6-hack"; /* Petascope 1.2.0 contains WCS 1.1.0, WCS 2.0, WCS-T 1.0.0 and WCPS 1.0.0 */ public final static String PETASCOPE_VERSION = MAJOR + "." + MINOR + "." + BUGFIX; diff --git a/src/petascope/wcps/server/core/CoverageExprPairType.java b/src/petascope/wcps/server/core/CoverageExprPairType.java index 7bdc784..d52e74c 100644 --- a/src/petascope/wcps/server/core/CoverageExprPairType.java +++ b/src/petascope/wcps/server/core/CoverageExprPairType.java @@ -38,17 +38,7 @@ public class CoverageExprPairType implements IRasNode, ICoverageInfo { System.err.println("Trying to parse a coverage expression pair ... Starting at node "
+ nodeName);
- // Combination 1: CoverageExprType + CoverageExprType
- try {
- first = new CoverageExpr(node, xq);
- second = new CoverageExpr(node.getNextSibling(), xq);
- info = new CoverageInfo(((ICoverageInfo) second).getCoverageInfo());
- ok = true;
- } catch (WCPSException e) {
- System.err.println("Failed to parse a CoverageExprType + CoverageExprType!");
- }
-
- // Combination 2: CoverageExprType + ScalarExprType
+ // Combination 1: CoverageExprType + ScalarExprType
if (ok == false) {
try {
first = new CoverageExpr(node, xq);
@@ -60,7 +50,7 @@ public class CoverageExprPairType implements IRasNode, ICoverageInfo { }
}
- // Combination 3: ScalarExprType + CoverageExprType
+ // Combination 2: ScalarExprType + CoverageExprType
if (ok == false) {
try {
first = new ScalarExpr(node, xq);
@@ -72,6 +62,20 @@ public class CoverageExprPairType implements IRasNode, ICoverageInfo { }
}
+ // Combination 3: CoverageExprType + CoverageExprType
+ if (ok == false) {
+ try {
+ first = new CoverageExpr(node, xq);
+ second = new CoverageExpr(node.getNextSibling(), xq);
+ info = new CoverageInfo(((ICoverageInfo) first).getCoverageInfo());
+ ok = true;
+ } catch (WCPSException e) {
+ System.err.println("Failed to parse a CoverageExprType + CoverageExprType!");
+ }
+ }
+
+
+
if (ok == false) {
throw new WCPSException("Could not parse a coverage expression pair !");
}
diff --git a/test/testcases-wcps/38-complex_extend.rasql b/test/testcases-wcps/38-complex_extend.rasql new file mode 100644 index 0000000..d267106 --- /dev/null +++ b/test/testcases-wcps/38-complex_extend.rasql @@ -0,0 +1 @@ +select jpeg(extend(((t)+((char)(50))),[0:500,0:500])) from rgb AS t
\ No newline at end of file diff --git a/test/testcases-wcps/38-complex_extend.test b/test/testcases-wcps/38-complex_extend.test new file mode 100644 index 0000000..3f73e2e --- /dev/null +++ b/test/testcases-wcps/38-complex_extend.test @@ -0,0 +1 @@ +for t in (rgb) return encode(extend( (t + (char)50), x :"CRS:1" ( 0:500 ), y: "CRS:1" (0: 500) ), "jpeg" )
\ No newline at end of file diff --git a/test/testcases-wcps/38-complex_extend.xml b/test/testcases-wcps/38-complex_extend.xml new file mode 100644 index 0000000..26f34a5 --- /dev/null +++ b/test/testcases-wcps/38-complex_extend.xml @@ -0,0 +1,3 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<ProcessCoveragesRequest xmlns="http://www.opengis.net/wcps/1.0" service="WCPS" version="1.0.0"> +<query><xmlSyntax><coverageIterator><iteratorVar>t</iteratorVar><coverageName>rgb</coverageName></coverageIterator><encode store="false"><extend><plus><coverage>t</coverage><cast><numericConstant>50</numericConstant><type>char</type></cast></plus><axis>x</axis><srsName>CRS:1</srsName><lowerBound><numericConstant>0</numericConstant></lowerBound><upperBound><numericConstant>500</numericConstant></upperBound><axis>y</axis><srsName>CRS:1</srsName><lowerBound><numericConstant>0</numericConstant></lowerBound><upperBound><numericConstant>500</numericConstant></upperBound></extend><format>jpeg</format></encode></xmlSyntax></query></ProcessCoveragesRequest>
\ No newline at end of file diff --git a/test/testcases-wcps/39-complex_extend-2.rasql b/test/testcases-wcps/39-complex_extend-2.rasql new file mode 100644 index 0000000..761e761 --- /dev/null +++ b/test/testcases-wcps/39-complex_extend-2.rasql @@ -0,0 +1 @@ +select jpeg(((extend(t,[0:500,0:500]))+((char)(0)))) from mr AS t
\ No newline at end of file diff --git a/test/testcases-wcps/39-complex_extend-2.test b/test/testcases-wcps/39-complex_extend-2.test new file mode 100644 index 0000000..6e8e45e --- /dev/null +++ b/test/testcases-wcps/39-complex_extend-2.test @@ -0,0 +1 @@ +for t in (mr) return encode(extend( t, x :"CRS:1" ( 0:500 ), y: "CRS:1" (0: 500) ) + (char) 0 , "jpeg" )
\ No newline at end of file diff --git a/test/testcases-wcps/39-complex_extend-2.xml b/test/testcases-wcps/39-complex_extend-2.xml new file mode 100644 index 0000000..15ca033 --- /dev/null +++ b/test/testcases-wcps/39-complex_extend-2.xml @@ -0,0 +1,39 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<ProcessCoveragesRequest xmlns="http://www.opengis.net/wcps/1.0" service="WCPS" version="1.0.0"> + <query> + <xmlSyntax> + <coverageIterator> + <iteratorVar>t</iteratorVar> + <coverageName>mr</coverageName> + </coverageIterator> + <encode store="false"> + <plus> + <extend> + <coverage>t</coverage> + <axis>x</axis> + <srsName>CRS:1</srsName> + <lowerBound> + <numericConstant>0</numericConstant> + </lowerBound> + <upperBound> + <numericConstant>500</numericConstant> + </upperBound> + <axis>y</axis> + <srsName>CRS:1</srsName> + <lowerBound> + <numericConstant>0</numericConstant> + </lowerBound> + <upperBound> + <numericConstant>500</numericConstant> + </upperBound> + </extend> + <cast> + <numericConstant>0</numericConstant> + <type>char</type> + </cast> + </plus> + <format>jpeg</format> + </encode> + </xmlSyntax> + </query> +</ProcessCoveragesRequest>
\ No newline at end of file |
