Package net.opengis.ows11

Examples of net.opengis.ows11.OperationsMetadataType


    }

    private void checkDomainSubset(CoverageInfo meta, DomainSubsetType domainSubset)
            throws Exception {
        BoundingBoxType bbox = domainSubset.getBoundingBox();
       
        // workaround for http://jira.codehaus.org/browse/GEOT-1710
        if("urn:ogc:def:crs:OGC:1.3:CRS84".equals(bbox.getCrs()))
            bbox.setCrs("EPSG:4326");
       
        CoordinateReferenceSystem bboxCRs = CRS.decode(bbox.getCrs());
        Envelope gridEnvelope = meta.getGridCoverage(null, HINTS).getEnvelope();
        GeneralEnvelope gridEnvelopeBboxCRS = null;
        if (bboxCRs instanceof GeographicCRS) {
            try {
                CoordinateOperationFactory cof = CRS.getCoordinateOperationFactory(true);

                final CoordinateOperation operation = cof.createOperation(gridEnvelope
                        .getCoordinateReferenceSystem(), bboxCRs);
                gridEnvelopeBboxCRS = CRS.transform(operation, gridEnvelope);
            } catch (Exception e) {
                // this may happen, there is nothing we can do about it, we just
                // use the back transformed envelope to be more lenient about
                // which coordinate coorections to make on the longitude axis
                // should the antimeridian style be used
            }
        }

        // check the coordinates, but make sure the case 175,-175 is handled
        // as valid for the longitude axis in a geographic coordinate system
        // see section 7.6.2 of the WCS 1.1.1 spec)
        List<Double> lower = bbox.getLowerCorner();
        List<Double> upper = bbox.getUpperCorner();
        for (int i = 0; i < lower.size(); i++) {
            if (lower.get(i) > upper.get(i)) {
                final CoordinateSystemAxis axis = bboxCRs.getCoordinateSystem().getAxis(i);
                // see if the coordinates can be fixed
                if (bboxCRs instanceof GeographicCRS && axis.getDirection() == AxisDirection.EAST) {
View Full Code Here


    private DomainSubsetType parseDomainSubset(Map kvp) {
        final DomainSubsetType domainSubset = Wcs111Factory.eINSTANCE.createDomainSubsetType();

        // either bbox or timesequence must be there
        BoundingBoxType bbox = (BoundingBoxType) kvp.get("BoundingBox");
        TimeSequenceType timeSequence = (TimeSequenceType) kvp.get("TemporalSubset");
        if (timeSequence == null && bbox == null)
            throw new WcsException(
                    "Bounding box cannot be null, TimeSequence has not been specified",
                    WcsExceptionCode.MissingParameterValue, "BoundingBox");
View Full Code Here

        // we do not check that lower <= higher because in the case of geographic
        // bbox we have to accept the case where the lower coordinate is higher
        // than the high one and handle it as antimeridian crossing, better do that once
        // in the code that handles GetCoverage (the same check must be performed for xml requests)

        BoundingBoxType bbt = Ows11Factory.eINSTANCE.createBoundingBoxType();
        bbt.setCrs(crsName);
        bbt.setLowerCorner(Arrays.asList(lower));
        bbt.setUpperCorner(Arrays.asList(upper));
        return bbt;
    }
View Full Code Here

     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @generated
     */
    public NotificationChain basicSetBoundingBoxData(BoundingBoxType newBoundingBoxData, NotificationChain msgs) {
        BoundingBoxType oldBoundingBoxData = boundingBoxData;
        boundingBoxData = newBoundingBoxData;
        if (eNotificationRequired()) {
            ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, Wps10Package.DATA_TYPE__BOUNDING_BOX_DATA, oldBoundingBoxData, newBoundingBoxData);
            if (msgs == null) msgs = notification; else msgs.add(notification);
        }
View Full Code Here

            "          <ows:UpperCorner>180.0 90.0</ows:UpperCorner>\n" +
            "        </ows:BoundingBox>";

        buildDocument(xml);

        BoundingBoxType box = (BoundingBoxType) parse();
        assertNotNull(box);
       
        assertEquals( new BigInteger("2"), box.getDimensions() );
        assertEquals( "EPSG:4326", box.getCrs() );
        assertEquals( Arrays.asList(-180.0, -90.0), box.getLowerCorner() );
        assertEquals( Arrays.asList(180.0, 90.0), box.getUpperCorner() );
    }
View Full Code Here

        assertEquals( Arrays.asList(-180.0, -90.0), box.getLowerCorner() );
        assertEquals( Arrays.asList(180.0, 90.0), box.getUpperCorner() );
    }
   
    public void testEncode() throws Exception {
        BoundingBoxType bbox = Ows11Factory.eINSTANCE.createBoundingBoxType();
        bbox.setLowerCorner(Arrays.asList(-180.0, -90.0));
        bbox.setUpperCorner(Arrays.asList(180.0, 90.0));
        bbox.setCrs("EPSG:4326");

        Document d = encode(bbox, OWS.BoundingBox);
        Node bboxNode = d.getChildNodes().item(0);
        assertEquals("-180.0 -90.0", bboxNode.getChildNodes().item(0).getTextContent());
        assertEquals("180.0 90.0", bboxNode.getChildNodes().item(1).getTextContent());
View Full Code Here

            FieldSubsetType fs = wcsf.createFieldSubsetType();
           
            for (int i = 0; i < node.jjtGetNumChildren(); i++) {
                Node child = node.jjtGetChild(i);
                if(child instanceof ASTFieldId) {
                    CodeType id = owsf.createCodeType();
                    id.setValue((String) child.jjtAccept(this, null));
                    fs.setIdentifier(id);
                } else if(child instanceof ASTInterpolation) {
                    fs.setInterpolationType((String) child.jjtAccept(this, null));
                } else if(child instanceof ASTAxisSubset) {
                    fs.getAxisSubset().add(child.jjtAccept(this, null));
View Full Code Here

                if (null == this.request.getIdentifier() || this.request.getIdentifier().isEmpty()) {
                    throw new WPSException("Invalid identifier", "No identifier present");
                }

                for (Object identifier : this.request.getIdentifier()) {
                    CodeType ct = (CodeType) identifier;
                    this.processDescription(Ows11Util.name(ct));
                }

                end("wps:ProcessDescriptions");
            }
View Full Code Here

        List<CodeType> values = new ArrayList<CodeType>();

        Ows11Factory owsFactory = new Ows11FactoryImpl();

        for(String str : (List<String>)KvpUtils.readFlat(value)) {
            CodeType codeType = owsFactory.createCodeType();
            codeType.setValue(str);
            values.add(codeType);
        }

        return values;
    }
View Full Code Here

    public ExecuteResponseType run(ExecuteType request) {
        //note the current time
        Date started = Calendar.getInstance().getTime();
       
        //load the process factory
        CodeType ct = request.getIdentifier();
        Name processName = Ows11Util.name(ct);
        ProcessFactory pf = Processors.createProcessFactory(processName);
        if ( pf == null ) {
            throw new WPSException( "No such process: " + processName );
        }
View Full Code Here

TOP

Related Classes of net.opengis.ows11.OperationsMetadataType

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.