@Override protected FeatureWriter<SimpleFeatureType, SimpleFeature> getWriterInternal( Query query, int flags) throws IOException { // TODO Auto-generated method stub return new MemoryFeatureWriter(getState(), query); }
@Override protected FeatureReader<SimpleFeatureType, SimpleFeature> getReaderInternal(Query query) throws IOException { return new MemoryFeatureReader(getState(), query); }
@Override public void setTransaction(Transaction transaction) { super.setTransaction(transaction); MemoryFeatureStore.this.setTransaction( transaction); // Keep these two implementations on the same transaction } };
public void testAddingTwoFeaturesWithSameType() throws IOException { MemoryDataStore mds = new MemoryDataStore(); mds.addFeature(roadFeatures[0]); mds.addFeature(roadFeatures[1]); assertEquals(2, mds.entry("road").getMemory().size()); }
String typeName = inlineFeatureDatastore.getTypeNames()[0]; MemoryDataStore reTypedDS = new MemoryDataStore(new ForceCoordinateSystemFeatureReader(ilReader, crs)); featureSource = reTypedDS.getFeatureSource(typeName); } else { DataStore inlineFeatureDatastore = ul.getInlineFeatureDatastore();
public void testMemoryDataStoreFeatureArray() throws IOException { DataStore store = new MemoryDataStore(roadFeatures); assertStoreHasFeatureType(store, "road"); }
public void testAdd() { MemoryFeatureCollection rivers = new MemoryFeatureCollection(riverType); for (int i = 0; i < riverFeatures.length; i++) { rivers.add(riverFeatures[i]); } assertEquals(riverFeatures.length, rivers.size()); }
public void testGetFeatureTypes() throws IOException { String[] names = data.getTypeNames(); assertEquals(2, names.length); assertTrue(contains(names, "road")); assertTrue(contains(names, "river")); }
public void testGetFeatureWriter() throws NoSuchElementException, IOException { FeatureWriter<SimpleFeatureType, SimpleFeature> writer = data.getFeatureWriter("road", Transaction.AUTO_COMMIT); assertEquals(roadFeatures.length, count(writer)); assertFalse(writer.hasNext()); try { writer.next(); fail("Should not be able to use a closed writer"); } catch (IOException expected) { } }
public void testRemoveSchema() throws IOException { // two featureTypes should be in List<Name> names = data.getNames(); assertNotNull(names); assertEquals(2, names.size()); data.removeSchema("road"); List<Name> namesAfterRemove = data.getNames(); assertNotNull(namesAfterRemove); assertEquals(1, namesAfterRemove.size()); }
public void testGetFeatureWriterFilter() throws NoSuchElementException, IOException { FeatureWriter<SimpleFeatureType, SimpleFeature> writer; writer = data.getFeatureWriter("road", Filter.EXCLUDE, Transaction.AUTO_COMMIT); assertEquals(0, count(writer)); writer = data.getFeatureWriter("road", Filter.INCLUDE, Transaction.AUTO_COMMIT); assertEquals(roadFeatures.length, count(writer)); writer = data.getFeatureWriter("road", rd1Filter, Transaction.AUTO_COMMIT); assertEquals(1, count(writer)); }
public void testGetSchema() throws IOException { assertSame(roadType, data.getSchema("road")); assertSame(riverType, data.getSchema("river")); }
public void testGetFeatureWriterAppendTypeNameTransaction() throws Exception { FeatureWriter<SimpleFeatureType, SimpleFeature> writer; writer = data.getFeatureWriterAppend("road", Transaction.AUTO_COMMIT); assertEquals(0, count(writer)); writer.close(); }
@Override public boolean addAll(Collection<? extends SimpleFeature> c) { boolean changed = false; for (SimpleFeature feature : c) { boolean added = add(feature); if (!changed && added) { changed = true; } } return changed; }
public void testSize() { assertEquals(roadFeatures.length, roads.size()); }
public void testSubSubCollection() { SimpleFeatureCollection sub = roads.subCollection(rd12Filter); SimpleFeatureCollection subsub = sub.subCollection(rd1Filter); assertEquals(1, subsub.size()); }
@Override protected FeatureReader<SimpleFeatureType, SimpleFeature> getReaderInternal(Query query) throws IOException { return delegate.getReaderInternal(query); }
/** * When a data store is loaded with a reader, it would be nice if the memory data store * preserved feature order, so that features are always rendered the same way (rendering is * different if order changes and features do overlap) */ public void testOrderPreservationRoad() throws Exception { assertOrderSame(roadFeatures); }
public void testGetFeatureWriterTypeNameTransaction() throws NoSuchElementException, IOException { FeatureWriter<SimpleFeatureType, SimpleFeature> writer; writer = data.getFeatureWriter("road", Transaction.AUTO_COMMIT); assertEquals(roadFeatures.length, count(writer)); writer.close(); }