FeatureCollection cleanup (GEOT-4181) #44

wants to merge 54 commits into


None yet
1 participant

jodygarnett commented Oct 31, 2012

This pull request is taken from the following change proposal: https://jira.codehaus.org/browse/GEOT-4181


This is an API change for FeatureCollection:

  • Remove CollectionListener methods (addListener, removeListener)
  • Remove Iterator Methods (iterator, close, purge)
  • Remove Collection Methods (add,adAll,clear,remove,removeAll,retainAll)

This has the consequence of hitting most of our FeatureCollectionImplementations.

This pull request should not be accepted until:

  • pull request for GeoServer is in place (done)
  • pull request for uDig is in place (done)

Warning: I could not cleanly fix PropertyValueCollection as implemented, as such ValueCollectionTypeBindingTest has an eXcluded test (Update: Justin fixed - thanks Justin)

Upgrade instructions are provided in the pull request (as part of update.rst) and the code examples reproduced on the wiki page for handy cut and paste reference when fixing GeoServer and uDig.

jodygarnett added some commits Sep 17, 2012

@jodygarnett jodygarnett Remove deprecated methods from FeatureCollection 550ea55
@jodygarnett jodygarnett Remove deprecated methods from FeatureCollection 0358c62
@jodygarnett jodygarnett Fix docs 6b53e31
@jodygarnett jodygarnett Fix api 889cec8
@jodygarnett jodygarnett Fix app-schema - but why all these terrible implementations of size 645aa47
@jodygarnett jodygarnett Fix arcade by using ListFeatureCollection 1ecc93d
@jodygarnett jodygarnett fix data module 43f4005
@jodygarnett jodygarnett Fix pregeneralized c8cfb08
@jodygarnett jodygarnett clean up coverage 7937506
@jodygarnett jodygarnett fix up geogit - this one looks especially sketchy 0be5e64
@jodygarnett jodygarnett fix up geojson test cases 0ba97d2
@jodygarnett jodygarnett Changed API to use ListFeatureCollection and cleaned up import 7b3b01d
@jodygarnett jodygarnett Clean up a reference to featureCollection.close 6c6efd4
@jodygarnett jodygarnett sort out jdbc module, mostly use of FeatureIterator with a few cases …
…of needing to use FeatureStore to add to a collection
@jodygarnett jodygarnett Good working example for the docs 84186e5
@jodygarnett jodygarnett Fix up gt-main - very unimpressed with app schema unsafe use of utili…
…ty classes
@jodygarnett jodygarnett Fix up postgis-versioned (we need to remove this one) b65de83
@jodygarnett jodygarnett A couple of fixes for the process module 1654950
@jodygarnett jodygarnett fix up process-feature - no surprises here 162bdb9
@jodygarnett jodygarnett grind through process-raster - no surprises here e818da0
@jodygarnett jodygarnett Not much to fix for gt-property 3fad1ea
@jodygarnett jodygarnett Same for property-ng only test cases to fix 7e2ba19
@jodygarnett jodygarnett quick fix for SampleDataAccessFeatureCollection use 758bbfb
@jodygarnett jodygarnett Fix up a few gt-shapefile tests 88656ef
@jodygarnett jodygarnett Fix up shapefile-ng test cases to use DefaultFeatureCollection to sta…
…ge data
@jodygarnett jodygarnett not much to fix for shapefile renderer 8846925
@jodygarnett jodygarnett Fix up validation module. A few cases uses SimpleFeatureCollection as…
… a working set, removing content that hand been handled. Used ListFeatureCollection as the replacement.
@jodygarnett jodygarnett fix up a test case to use FeatureIterator.close() cf3f4b9
@jodygarnett jodygarnett Similar story for wfs-ng fixing of test cases required 6c0fe5e
@jodygarnett jodygarnett Use DefaultFeatureCollection to give GML a way to catch features 3eb1e41
@jodygarnett jodygarnett An interesting fix for Encoder that uses Iterator internally. Made a …
…BridgeIterator for FeatureCollection, and made sure to make it closeable so the result can be cleaned up.
@jodygarnett jodygarnett Not a very safe fix, depends on DefaultFeatureCollection being suppli…
…ed by GMLAbstractFeatureCollectionBaseTypeBinding
@jodygarnett jodygarnett AbstractFeatureCollectionTypeBinding parse is demanding an implementa…
…tion of Collection
@jodygarnett jodygarnett Fix up KML using BridgeIterator for DocumentTypeBinding, unable to lo…
…cate the place to check for closable so the warning about the iterator not being closed still stands
@jodygarnett jodygarnett A few leaps of faith checking for instance of Collection in order to …
…add content. CompositeFeatureCollection was adapted to use FeatureIterator
@jodygarnett jodygarnett Careful adjustment of StreamingRenderer, basically duplicate the loop…
…s once for collection/iterator and once for featureCollection/FeatureIterator
@jodygarnett jodygarnett First round of bug fixes including addition of BaseFeatureCollection …
…as a replacement for AbstractFeatureCollection that just needs features() method
@jodygarnett jodygarnett Prevent EMFUtils tripping up over FeatureCollection - not sure why it…
… was needed
@jodygarnett jodygarnett Updated examples and copied to wiki for handy reference 39ed479
@jodygarnett jodygarnett Using Id filter directly was confused versioned postgis testing. Chan…
…ged it back and introduced an expected(Filter) method to quickly count FeatureIds protected by an instance of check
@jodygarnett jodygarnett Initial fix was too quick, testing h2 datastore caught this one. e1f75c2
@jodygarnett jodygarnett WARNING unsuccessful fix to PropertyValueCollection (it was not a Fea…

The encoding test in ValueCollectionTypeBindingTest has been eXed out until I can get a code review from Justin.

jodygarnett referenced this pull request in locationtech/udig-platform Nov 2, 2012


feature collection cleanup #161

jodygarnett and others added some commits Nov 3, 2012

@jodygarnett jodygarnett Additional DataUtilities methods in response to review by Andrea and …
jdeolive changed ValueCollectionType.member to Collection e85bc16
jdeolive Fixing FilterFeatureCollection.
Added FilteringSimpleFeatureCollection for simple feature narrowing, and ensuring #features() method overriden to create filtering feature iterator.
@jodygarnett jodygarnett Merge pull request #46 from jdeolive/featurecollection_cleanup_origional
Additional changes to feature collection cleanup branch.
@jodygarnett jodygarnett Second round of feedback from Andrea 400c374
@jodygarnett jodygarnett Update BaseFeatureCollection / BaseSimpleFeatureCollection based on P…
…rocessorCollection methods for subCollection and sort
@jodygarnett jodygarnett Additional helper methods for DataUtilities taken from ProcessingColl…
…ection class. ProcessingCollection now extends BaseFeatureCollection to avoid code duplication.
@jodygarnett jodygarnett QA check on FeatureCollection.accepts combined with utility method Da…
…taUtilities.visit( collection, visitor, progress )
@jodygarnett jodygarnett Close iterators left open by CollectionDataStore getCount and getBoun…
…ds methods as per GEOT-4306

jodygarnett commented Nov 10, 2012

Discussion is complete on the mailing list, thanks for review Andrea, and testing Justin.


jodygarnett commented Nov 17, 2012

Pull request content was rebased and applied to master to work around conflict with StreamingRender

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment