diff options
Diffstat (limited to 'petascope/src/petascope/wcps/server/core/CoverageExprPairType.java')
-rw-r--r-- | petascope/src/petascope/wcps/server/core/CoverageExprPairType.java | 166 |
1 files changed, 82 insertions, 84 deletions
diff --git a/petascope/src/petascope/wcps/server/core/CoverageExprPairType.java b/petascope/src/petascope/wcps/server/core/CoverageExprPairType.java index 71bd0ff..a97dc1e 100644 --- a/petascope/src/petascope/wcps/server/core/CoverageExprPairType.java +++ b/petascope/src/petascope/wcps/server/core/CoverageExprPairType.java @@ -14,91 +14,89 @@ * You should have received a copy of the GNU General Public License * along with rasdaman community. If not, see <http://www.gnu.org/licenses/>. * - * Copyright 2003, 2004, 2005, 2006, 2007, 2008, 2009 Peter Baumann / - rasdaman GmbH. + * Copyright 2003 - 2010 Peter Baumann / rasdaman GmbH. * * For more information please see <http://www.rasdaman.org> * or contact Peter Baumann via <baumann@rasdaman.com>. */ -package petascope.wcps.server.core;
-
-import petascope.wcps.server.exceptions.InvalidCrsException;
-import petascope.wcps.server.exceptions.WCPSException;
-import org.w3c.dom.*;
-
-public class CoverageExprPairType implements IRasNode, ICoverageInfo {
-
- private IRasNode first, second;
- private CoverageInfo info;
- private boolean ok = false;
-
- public CoverageExprPairType(Node node, XmlQuery xq)
- throws WCPSException, InvalidCrsException {
- String nodeName = node.getNodeName();
-
- System.err.println("Trying to parse a coverage expression pair ... Starting at node "
- + nodeName);
-
- // Combination 1: CoverageExprType + ScalarExprType
- if (ok == false) {
- try {
- first = new CoverageExpr(node, xq);
- second = new ScalarExpr(node.getNextSibling(), xq);
- info = new CoverageInfo(((ICoverageInfo) first).getCoverageInfo());
- ok = true;
- } catch (WCPSException e) {
- System.err.println("Failed to parse CoverageExprType + ScalarExprType!");
- }
- }
-
- // Combination 2: ScalarExprType + CoverageExprType
- if (ok == false) {
- try {
- first = new ScalarExpr(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 ScalarExprType + CoverageExprType!");
- }
- }
-
- // 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 !");
- }
- }
-
- public CoverageInfo getCoverageInfo() {
- return info;
- }
-
- public String toRasQL() {
- if (ok == true) {
- return first.toRasQL() + second.toRasQL();
- } else {
- return " error ";
- }
- }
-
- public IRasNode getFirst() {
- return first;
- }
-
- public IRasNode getSecond() {
- return second;
- }
-}
+package petascope.wcps.server.core; + +import petascope.exceptions.WCPSException; +import org.w3c.dom.*; + +public class CoverageExprPairType implements IRasNode, ICoverageInfo { + + private IRasNode first, second; + private CoverageInfo info; + private boolean ok = false; + + public CoverageExprPairType(Node node, XmlQuery xq) + throws WCPSException { + String nodeName = node.getNodeName(); + + System.err.println("Trying to parse a coverage expression pair ... Starting at node " + + nodeName); + + // Combination 1: CoverageExprType + ScalarExprType + if (ok == false) { + try { + first = new CoverageExpr(node, xq); + second = new ScalarExpr(node.getNextSibling(), xq); + info = new CoverageInfo(((ICoverageInfo) first).getCoverageInfo()); + ok = true; + } catch (WCPSException e) { + System.err.println("Failed to parse CoverageExprType + ScalarExprType!"); + } + } + + // Combination 2: ScalarExprType + CoverageExprType + if (ok == false) { + try { + first = new ScalarExpr(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 ScalarExprType + CoverageExprType!"); + } + } + + // 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 !"); + } + } + + public CoverageInfo getCoverageInfo() { + return info; + } + + public String toRasQL() { + if (ok == true) { + return first.toRasQL() + second.toRasQL(); + } else { + return " error "; + } + } + + public IRasNode getFirst() { + return first; + } + + public IRasNode getSecond() { + return second; + } +} |