diff options
Diffstat (limited to 'petascope/src/petascope/wcps/server/core/EncodeDataExpr.java')
-rw-r--r-- | petascope/src/petascope/wcps/server/core/EncodeDataExpr.java | 152 |
1 files changed, 75 insertions, 77 deletions
diff --git a/petascope/src/petascope/wcps/server/core/EncodeDataExpr.java b/petascope/src/petascope/wcps/server/core/EncodeDataExpr.java index dffccc0..4ee8642 100644 --- a/petascope/src/petascope/wcps/server/core/EncodeDataExpr.java +++ b/petascope/src/petascope/wcps/server/core/EncodeDataExpr.java @@ -14,84 +14,82 @@ * 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.*;
-
-// This is the equivalent of the "ProcessingExprType" complex XML type.
-public class EncodeDataExpr implements IRasNode {
-
- private IRasNode coverageExprType;
- private String extraParams;
- private String format;
- private String mime;
- private Boolean store;
-
- public EncodeDataExpr(Node node, XmlQuery request) throws WCPSException, InvalidCrsException {
- Node child;
- String nodeName;
-
- for (child = node.getFirstChild(); child != null; child = child.getNextSibling()) {
- nodeName = child.getNodeName();
-
- if (nodeName.equals("#text")) {
- continue;
- }
-
- System.err.println("Encode : node : " + child.getNodeName());
-
- if (nodeName.equals("format")) {
- format = child.getFirstChild().getNodeValue();
- mime = request.getMetadataSource().formatToMimetype(format);
- continue;
- }
-
- if (nodeName.equals("extraParameters")) {
- extraParams = child.getFirstChild().getNodeValue();
- continue;
- }
-
- coverageExprType = new CoverageExpr(child, request);
- }
-
- Node _store = node.getAttributes().getNamedItem("store");
-
- if (_store != null) {
- store = _store.getNodeValue().equals("true");
- }
- }
-
- public String getMime() {
- return mime;
- }
-
- public String toRasQL() {
- // TODO: cjucovschi - implement store
-
- String result;
-
- if (format.equals("raw")) {
- result = coverageExprType.toRasQL();
- } else {
- result = format + "(" + coverageExprType.toRasQL();
-
- if (extraParams != null) {
- extraParams = '"' + extraParams + '"';
- result = result + ", " + extraParams;
- }
-
- result = result + ")";
- }
-
- System.err.println("Returning EncodeExpression:" + result);
- return result;
- }
-}
+package petascope.wcps.server.core; + +import petascope.exceptions.WCPSException; +import org.w3c.dom.*; + +// This is the equivalent of the "ProcessingExprType" complex XML type. +public class EncodeDataExpr implements IRasNode { + + private IRasNode coverageExprType; + private String extraParams; + private String format; + private String mime; + private Boolean store; + + public EncodeDataExpr(Node node, XmlQuery request) throws WCPSException { + Node child; + String nodeName; + + for (child = node.getFirstChild(); child != null; child = child.getNextSibling()) { + nodeName = child.getNodeName(); + + if (nodeName.equals("#text")) { + continue; + } + + System.err.println("Encode : node : " + child.getNodeName()); + + if (nodeName.equals("format")) { + format = child.getFirstChild().getNodeValue(); + mime = request.getMetadataSource().formatToMimetype(format); + continue; + } + + if (nodeName.equals("extraParameters")) { + extraParams = child.getFirstChild().getNodeValue(); + continue; + } + + coverageExprType = new CoverageExpr(child, request); + } + + Node _store = node.getAttributes().getNamedItem("store"); + + if (_store != null) { + store = _store.getNodeValue().equals("true"); + } + } + + public String getMime() { + return mime; + } + + public String toRasQL() { + // TODO: cjucovschi - implement store + + String result; + + if (format.equals("raw")) { + result = coverageExprType.toRasQL(); + } else { + result = format + "(" + coverageExprType.toRasQL(); + + if (extraParams != null) { + extraParams = '"' + extraParams + '"'; + result = result + ", " + extraParams; + } + + result = result + ")"; + } + + System.err.println("Returning EncodeExpression:" + result); + return result; + } +} |