Finally, I found some time to look into this again.
The features are coming from somewhere. Either from a file, from a server or
created manually by the user. And even if read from a file users can manipulate
them.
At the certain source code location, I get a
FeatureCollection<SimpleFeatureType, SimpleFeature> collection as parameter and
want to listen for changes on it.
Here is the code for GeoTools 2.7.4:
https://github.com/senbox-org/snap-engine/blob/85c77bae7fb59a63abc475d9cae0321c4f30f886/snap-core/src/main/java/org/esa/snap/core/datamodel/VectorDataNode.java#L101-L117
This worked pretty well.
And this is the code what I have now tried. I think it looks a bit confused:
https://github.com/senbox-org/snap-engine/blob/25d1e21a294ee16506d69475386d64b053a83027/snap-core/src/main/java/org/esa/snap/core/datamodel/VectorDataNode.java#L103-L113
Maybe I should do it totally different? Maybe not passing around a
FeatureCollection but a FeatureStore?
Thanks
Marco
Von: Jody Garnett [mailto:jody.garn...@gmail.com]
Gesendet: Donnerstag, 26. Januar 2017 20:05
An: Marco Peters <marco.pet...@brockmann-consult.de>
Cc: GeoTools Users <geotools-gt2-users@lists.sourceforge.net>
Betreff: Re: [Geotools-gt2-users] Lost functionality in FeatureEvent?
You should be able to listen to the FeatureSource for changes; that is where
the edits are happening (sometimes for several threads at once etc...).
You are correct that CollectionFeatureSource is very simple and more for
staging static data for display. I guess I am surprised, it feels like you are
staging this data in memory ... for interactive feedback on a map?
Can we roll back - where did you get your data from? Did you copy it out of
something into a DefaultFeatureCollection?
--
Jody Garnett
On 25 January 2017 at 07:07, Marco Peters <marco.pet...@brockmann-consult.de
<mailto:marco.pet...@brockmann-consult.de> > wrote:
Thanks Jody. Now I have a follow up question.
How can I follow changes in a FeatureCollection.
I can’t add a listener, also not if I wrap it in a DefaultFeatureCollection.
I can put it in a CollectionFeatureSource and add a FeatureListener but
CollectionFeatureSource does not fire any event.
I searched the documentation and the source code repository but haven’t found a
solution for it.
But I’m sure it is somewhere. At least, I want to believe…
Marco
Von: Jody Garnett [mailto:jody.garn...@gmail.com
<mailto:jody.garn...@gmail.com> ]
Gesendet: Freitag, 20. Januar 2017 23:55
An: Marco Peters <marco.pet...@brockmann-consult.de
<mailto:marco.pet...@brockmann-consult.de> >
Cc: GeoTools Users <geotools-gt2-users@lists.sourceforge.net
<mailto:geotools-gt2-users@lists.sourceforge.net> >
Betreff: Re: [Geotools-gt2-users] Lost functionality in FeatureEvent?
Excellent Marco; and that filter should be an Id filter with a list of modified
feature ids.
One reason for this change (which is quite annoying / subtle) is that some
datastores (like WFS) do not assign a final FeatureID until after commit is
called. In the WFS client case it needs to send the Transaction request to the
WFS, get the result back, parse the feature ids out of the result, and let you
know about them in an event.
--
Jody Garnett
On 20 January 2017 at 03:58, Marco Peters <marco.pet...@brockmann-consult.de
<mailto:marco.pet...@brockmann-consult.de> > wrote:
Seems I found the answer myself.
FeatureEvent.getFilter() returns a filter to get the changed features from the
source.
Von: Marco Peters [mailto:marco.pet...@brockmann-consult.de
<mailto:marco.pet...@brockmann-consult.de> ]
Gesendet: Donnerstag, 19. Januar 2017 17:18
An: geotools-gt2-users@lists.sourceforge.net
<mailto:geotools-gt2-users@lists.sourceforge.net>
Betreff: [Geotools-gt2-users] Lost functionality in FeatureEvent?
Currently I try to update my GeoTools dependencies from 2.7.4 to 16.1. Yes, I
know I’m late.
However, I noticed a possible loss of functionality. As CollectionEvent is
replaced FeatureEvent I have no chance anymore to find out which features have
been removed or added. In CollectionEvent they were available by getFeatures().
My question, is there another way of obtaining these features?
By the way, is there may be a changelog which summarises the API changes from
version to version? This would be helpful now.
Ciao
Marco
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
GeoTools-GT2-Users mailing list
GeoTools-GT2-Users@lists.sourceforge.net
<mailto:GeoTools-GT2-Users@lists.sourceforge.net>
https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
GeoTools-GT2-Users mailing list
GeoTools-GT2-Users@lists.sourceforge.net
<mailto:GeoTools-GT2-Users@lists.sourceforge.net>
https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
GeoTools-GT2-Users mailing list
GeoTools-GT2-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users