Package org.opengis.filter.identity

Examples of org.opengis.filter.identity.Version


    @Override
    public Object parse(ElementInstance instance, Node node, Object value) throws Exception {
        final String rid = (String) node.getAttributeValue("rid");
        //final String previousRid = (String) node.getAttributeValue("previousRid");
        final Version version = (Version) node.getAttributeValue("version");
        final Date startTime = (Date) node.getAttributeValue("startDate");
        final Date endTime = (Date) node.getAttributeValue("endDate");

        String fid;
        String featureVersion = null;
View Full Code Here


    @Override
    public Object parse(InstanceComponent instance, Object value) throws Exception {
        final String content = (String) value;
        if(null == content || content.length() == 0){
            return new Version();
        }
        try {
            Version.Action versionAction = Version.Action.valueOf(content);
            return new Version(versionAction);
        } catch (IllegalArgumentException e) {
            try {
                Integer index = Integer.valueOf(content);
                return new Version(index);
            } catch (NumberFormatException nfe) {
                Calendar dateTime = DatatypeConverterImpl.getInstance().parseDateTime(content);
                return new Version(dateTime.getTime());
            }
        }
    }
View Full Code Here

        }
    }

    @Override
    public String encode(Object object, String value) throws Exception {
        Version version = (Version) object;
        if(version.isEmpty()){
            return null;
        }
        if(version.isDateTime()){
            Calendar cal = GregorianCalendar.getInstance(TimeZone.getTimeZone("GMT"));
            cal.setTimeInMillis(version.getDateTime().getTime());
            String dateTime = DatatypeConverterImpl.getInstance().printDateTime(cal);
            return dateTime;
        }
        if(version.isIndex()){
            return String.valueOf(version.getIndex());
        }
        if(version.isVersionAction()){
            return String.valueOf(version.getVersionAction());
        }
        throw new IllegalArgumentException("Empty version union");
    }
View Full Code Here

        final Date date1 = dateParser.parseDateTime("1977-01-17T01:05:40Z").getTime();
        final Date date2 = dateParser.parseDateTime("2011-07-29T23:49:40Z").getTime();
        FilterFactory ff = CommonFactoryFinder.getFilterFactory(null);

        // This is in consistent as the FIRST entry cannot have a previous1
        ResourceIdImpl resourceId =  new ResourceIdImpl("rid1", "abc", new Version(FIRST));
        resourceId.setPreviousRid("previous1");
        assertEquals( resourceId.getID(), ids.get(0).getID());
       
        assertEquals(ff.resourceId("rid2", "", new Version(LAST)).getID(),
                     ids.get(1).getID());
        assertEquals(ff.resourceId("rid3", "", new Version(PREVIOUS)).getID(),
                     ids.get(2).getID());
        assertEquals(ff.resourceId("rid4", "", new Version(NEXT)).getID(),
                     ids.get(3).getID());
        assertEquals(ff.resourceId("rid5", "", new Version(ALL)).getID(),
                     ids.get(4).getID());
       
        // This is inconsistent as date and resource based query cannot be used at the same time
        ResourceIdImpl resourceId2 =  new ResourceIdImpl("rid6", "", new Version(4));
        resourceId2.setPreviousRid("previous2");
        resourceId2.setStartTime(date1);
        resourceId2.setEndTime(date2);
        assertEquals( resourceId2.getID(),
                      ids.get(5).getID());
       
        assertEquals(ff.resourceId("rid7", "123"new Version(date1)).getID(), ids.get(6).getID());
    }
View Full Code Here

        return f.id(new LinkedHashSet<Identifier>(Arrays.asList(
            f.featureId("foo.1"), f.featureId("foo.2"), f.featureId("foo.3"))));
    }
   
    public static Id resourceId() {
        ResourceIdImpl resourceId = new ResourceIdImpl("foo.4","", new Version(Version.Action.NEXT));
       
        resourceId.setPreviousRid("previousRid");
        resourceId.setStartTime( new Date(1000) );
        resourceId.setEndTime(new Date(2000));

        Integer testInt = new Integer(1234567890);
       
        return f.id(new LinkedHashSet<Identifier>(Arrays.asList(
                f.featureId("foo.1", "v1"),
                f.resourceId("foo.2", "", new Version(new Date(1000))),//
                f.resourceId("foo.3", "", new Version(testInt)),//
                resourceId)));
    }
View Full Code Here

        this.previousRid = previousRid;
    }

    public void setVersion(final Version version) {
        if (version == null) {
            this.version = new Version().union();
        } else {
            this.version = version.union();
        }
    }
View Full Code Here

   
    // grab a specific revision
    filter = ff.id( ff.featureId("CITY.98734597823459687235","A457") );
   
    // You can also use ResourceId to grab a specific revision
    filter = ff.id( ff.resourceId("CITY.98734597823459687235","A457", new Version()) );
   
    // grab the one before that
    filter = ff.id(ff.resourceId("CITY.98734597823459687235","A457",new Version(Action.PREVIOUS) ));
   
     // grab the one after that
    filter = ff.id(ff.resourceId("CITY.98734597823459687235","A457",new Version(Action.NEXT) ));
   
     // grab the first one
    filter = ff.id(ff.resourceId("CITY.98734597823459687235","A457",new Version(Action.FIRST) ));
   
    // grab the first one (ie index = 1 )
    filter = ff.id(ff.resourceId("CITY.98734597823459687235","A457",new Version(1) ));
   
    // grab the twelfth record in the sequence (ie index = 12 )
    filter = ff.id(ff.resourceId("CITY.98734597823459687235","A457",new Version(12) ));
   
    // Grab the entry close to Jan 1985
    DateFormat df = DateFormat.getDateInstance( DateFormat.SHORT );
    df.setTimeZone(TimeZone.getTimeZone("GMT"));
    filter = ff.id(ff.resourceId("CITY.98734597823459687235","A457",new Version(df.parse("1985-1-1"))));
   
     // Grab all the entries in the 1990s
    filter = ff.id(ff.resourceId("CITY.98734597823459687235",df.parse("1990-1-1"),df.parse("2000-1-1")));
   
    // rid end
View Full Code Here

    public void setVersion( ResourceId history ){
        if( history.getStartTime() != null && history.getEndTime() != null ){
            setVersion( history.getStartTime(),history.getEndTime() );
        }
        else if( history.getVersion() != null ){
            Version ver = history.getVersion();
            if( ver.isVersionAction()){
                setVersion( ver.getVersionAction() );
            }
            else if( ver.isDateTime() ){
                setVersion( ver.getDateTime() );
            }
            else if( ver.isIndex() ){
                setVersion( ver.getIndex() );
            }
        }
    }
View Full Code Here

TOP

Related Classes of org.opengis.filter.identity.Version

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.