@Override public SimpleFeatureCollection subCollection(Filter filter) { SimpleFeatureCollection delegateCollection = delegate.subCollection(filter); return new ReTypingFeatureCollection(delegateCollection, target); }
@Override protected boolean canDelegate(FeatureVisitor visitor) { return ReTypingFeatureCollection.isTypeCompatible(visitor, target); }
public void testSchema() throws Exception { // see http://jira.codehaus.org/browse/GEOT-1616 SimpleFeatureType original = delegate.getSchema(); String newName = original.getTypeName() + "xxx"; SimpleFeatureTypeBuilder stb = new SimpleFeatureTypeBuilder(); stb.init(original); stb.setName(newName); SimpleFeatureType renamed = stb.buildFeatureType(); ReTypingFeatureCollection rtc = new ReTypingFeatureCollection(delegate, renamed); assertEquals(renamed, rtc.getSchema()); }
public void testDelegateAccepts() throws Exception { SimpleFeatureTypeBuilder stb = new SimpleFeatureTypeBuilder(); stb.setName("test"); stb.add("foo", String.class); stb.add("bar", Integer.class); UniqueVisitor vis = new UniqueVisitor("bar"); SimpleFeatureCollection delegate = createMock(SimpleFeatureCollection.class); delegate.accepts(vis, null); expectLastCall().once(); replay(delegate); ReTypingFeatureCollection rtc = new ReTypingFeatureCollection(delegate, stb.buildFeatureType()); rtc.accepts(vis, null); verify(delegate); vis = new UniqueVisitor("baz"); SimpleFeatureIterator it = createNiceMock(SimpleFeatureIterator.class); replay(it); SimpleFeatureType ft = createNiceMock(SimpleFeatureType.class); replay(ft); delegate = createMock(SimpleFeatureCollection.class); expect(delegate.features()).andReturn(it).once(); expect(delegate.getSchema()).andReturn(ft).once(); replay(delegate); rtc = new ReTypingFeatureCollection(delegate, stb.buildFeatureType()); rtc.accepts(vis, null); verify(delegate); }
public SimpleFeatureIterator features() { return new DelegateSimpleFeatureIterator( this, iterator() ); }
new ReTypingFeatureCollection(delegate, stb.buildFeatureType()); rtc.accepts(vis, null); verify(delegate); rtc = new ReTypingFeatureCollection(delegate, stb.buildFeatureType()); rtc.accepts(vis, null); verify(delegate);
public FeatureIterator features() { return new DelegateFeatureIterator( this, iterator() ); }
SimpleFeatureTypeBuilder.retype( sfc.getSchema(), mixed.getPropertyNames()); ReTypingFeatureCollection retyped = new ReTypingFeatureCollection(sfc, target); return (FeatureCollection) SecuredObjects.secure(retyped, policy); } else {
protected boolean canDelegate(FeatureVisitor visitor) { return ReTypingFeatureCollection.isTypeCompatible(visitor, readSchema); } }
@Override public void addGranules(SimpleFeatureCollection granules) { try { ReTypingFeatureCollection backMapped = new ReTypingFeatureCollection(granules, delegate.getSchema()); store.addGranules(backMapped); } catch (IOException e) { throw new RuntimeException(e); } }
@Override protected boolean canDelegate(FeatureVisitor visitor) { return isTypeCompatible(visitor, featureType); }
SimpleFeatureType ft = SimpleFeatureTypeBuilder.retype(features.getSchema(), names); if (!(ft.equals(features.getSchema()))) { features = new ReTypingFeatureCollection(features, ft);
@Override public SimpleFeatureCollection getGranules(Query q) throws IOException { Query renamed = renameQuery(q); SimpleFeatureCollection granules = delegate.getGranules(renamed); SimpleFeatureType targetSchema = this.schema; if (q.getPropertyNames() != Query.ALL_NAMES) { targetSchema = SimpleFeatureTypeBuilder.retype(schema, q.getPropertyNames()); } return new ReTypingFeatureCollection(granules, targetSchema); }
collection = new ReTypingFeatureCollection(collection, harmonizedType);
SimpleFeatureTypeBuilder.retype(schema, query.getPropertyNames()); if (!target.equals(schema)) { collection = new ReTypingFeatureCollection(collection, target);
features = new ReTypingFeatureCollection(features, target);