Stefan,
I'm a little confused. A List is an implemenation of the Collection
interface. I thought it would make more sense for the FeatureCollection
interface to return an implementation of Collection, rather than a List
specifically, becuase it gives the programmer implementing the interface
more flexibility.
I don't think this really matters to the user of the FeatureCollection
interface, as you can easily cast the returned implementation of Collection
to a List if desired.
I was just curious about the consistency of the FeatureCollection interface,
as it had some methods that returned a generic collection, and some others
that returned a List specifically. I think in hindsight it would've been
better to have all of the methods return a Collection, as there was no
specific reason why a List was returned.
At any rate, Martin brought out that this isn't really a minor problem, and
not worth fixing, as it would break any existing plug-ins that expect to get
a List and not a Collection.
The Sunburned Surveyor
On 4/30/07, Stefan Steiniger <[EMAIL PROTECTED]> wrote:
although you already respond with an ok.
i just want underline what Martin said, because a list has much more
features. and i guess alsmost everybody uses these nice features?
But It may be possible to add a second method - if one prefers to get a
collection :)
stefan
Sunburned Surveyor schrieb:
> O.K.
>
> SS
>
> On 4/27/07, *Martin Davis* <[EMAIL PROTECTED]
> <mailto:[EMAIL PROTECTED]>> wrote:
>
> SS,
>
> It's easy to change the FC interface methods return value from List
to
> Collection n the JUMP CVS codebase.
>
> But you risk breaking a lot of external plugins which have been
coded to
> the current interface. I don't really see a pressing need to do
this,
> so I would vote against it.
>
> Sunburned Surveyor wrote:
> > Martin,
> >
> > This makes perfect sense. Thank you for the clarification. If no
one
> > has an objection I will make a not of it in the Javadoc API. I
might
> > also see if I can refactor the FeatureCollection interface to use
> > java.util.Collection on the other two methods. This will give me
some
> > practice with Refactoring. (I won't commit these changes to the
CVS
> > until I know it works and I've had a chance to talk to the other
> > developers.)
> >
> > SS
> >
> > On 4/27/07, *Martin Davis* <[EMAIL PROTECTED]
> <mailto:[EMAIL PROTECTED]>
> > <mailto:[EMAIL PROTECTED]
> <mailto:[EMAIL PROTECTED]>>> wrote:
> >
> > The fact that getFeatures and query return a List is probably
an
> > undesirable widening of the API. For maximum flexibility for
> > implementors, they should all return Collection. This was
> just an
> > oversight in the original design.
> >
> > The reason that remove(Envelope) returns a collection of the
> removed
> > features while the others don't is that in the other two
> methods the
> > caller already knows which features are the ones which are to
be
> > removed. In the case of remove(Envelope) the only way to
know
> > what has
> > happened is to get the method to report which features it
> removed.
> >
> > Sunburned Surveyor wrote:
> > > I've been working on my FeatureCache and I've got a couple
of
> > > questions about the FeatureCollection interface.
> > >
> > > Three of the methods of the interface return instances of
> > > java.util.Collection. The getFeatures() method and the
query()
> > methods
> > > return instances of java.util.List, while the remove()
method
> > returns
> > > an instance that implements the java.util.Collection
> interface. I am
> > > wondering why these three methods don't consistently return
> > instances
> > > of java.util.List or instances of java.util.Collection. Why
> is the
> > > return value of the remove() method different from the
> other two
> > methods?
> > >
> > > I also noted that there are three methods that perform
> removal of
> > > Feature objects from the FeatureCollection, but only one of
> these
> > > methods, the remove(Envelope env) method, returns the
Feature
> > objects
> > > removed as an instance of java.util.Collection. The
> remove(Feature
> > > feature) method and the removeAll(Collection features)
> method do
> > not
> > > return the Features removed. Is there a reason why this
> behavior is
> > > not consistent?
> > >
> > > I'm just curious. It seems the Vivid Solutions team always
had
> > reasons
> > > for doing things that aren't readily apparent because of my
> lack of
> > > programming experience.
> > >
> > > Thank you an advance for any clarification.
> > >
> > > The Sunburned Surveyor
> > >
> >
>
------------------------------------------------------------------------
> > >
> > >
> >
>
-------------------------------------------------------------------------
>
> > > This SF.net email is sponsored by DB2 Express
> > > Download DB2 Express C - the FREE version of DB2 express
> and take
> > > control of your XML. No limits. Just data. Click to get it
> now.
> > > http://sourceforge.net/powerbar/db2/
> > >
> >
>
------------------------------------------------------------------------
> > >
> > > _______________________________________________
> > > Jump-pilot-devel mailing list
> > > Jump-pilot-devel@lists.sourceforge.net
> <mailto:Jump-pilot-devel@lists.sourceforge.net>
> > <mailto:Jump-pilot-devel@lists.sourceforge.net
> <mailto:Jump-pilot-devel@lists.sourceforge.net>>
> > >
> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
> <https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel>
> > >
> >
> > --
> > Martin Davis
> > Senior Technical Architect
> > Refractions Research, Inc.
> > (250) 383-3022
> >
> >
> >
>
-------------------------------------------------------------------------
>
> >
> > This SF.net email is sponsored by DB2 Express
> > Download DB2 Express C - the FREE version of DB2 express and
take
> > control of your XML. No limits. Just data. Click to get it
now.
> > http://sourceforge.net/powerbar/db2/
> > _______________________________________________
> > Jump-pilot-devel mailing list
> > Jump-pilot-devel@lists.sourceforge.net
> <mailto:Jump-pilot-devel@lists.sourceforge.net>
> > <mailto:Jump-pilot-devel@lists.sourceforge.net
> <mailto:Jump-pilot-devel@lists.sourceforge.net>>
> > https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
> >
> >
> >
>
------------------------------------------------------------------------
> >
> >
>
-------------------------------------------------------------------------
>
> > This SF.net email is sponsored by DB2 Express
> > Download DB2 Express C - the FREE version of DB2 express and take
> > control of your XML. No limits. Just data. Click to get it now.
> > http://sourceforge.net/powerbar/db2/
> >
>
------------------------------------------------------------------------
> >
> > _______________________________________________
> > Jump-pilot-devel mailing list
> > Jump-pilot-devel@lists.sourceforge.net
> <mailto:Jump-pilot-devel@lists.sourceforge.net>
> > https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
> <https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel>
> >
>
> --
> Martin Davis
> Senior Technical Architect
> Refractions Research, Inc.
> (250) 383-3022
>
>
>
-------------------------------------------------------------------------
> This SF.net email is sponsored by DB2 Express
> Download DB2 Express C - the FREE version of DB2 express and take
> control of your XML. No limits. Just data. Click to get it now.
> http://sourceforge.net/powerbar/db2/
> <http://sourceforge.net/powerbar/db2/>
> _______________________________________________
> Jump-pilot-devel mailing list
> Jump-pilot-devel@lists.sourceforge.net
> <mailto:Jump-pilot-devel@lists.sourceforge.net>
> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>
>
>
> ------------------------------------------------------------------------
>
>
-------------------------------------------------------------------------
> This SF.net email is sponsored by DB2 Express
> Download DB2 Express C - the FREE version of DB2 express and take
> control of your XML. No limits. Just data. Click to get it now.
> http://sourceforge.net/powerbar/db2/
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Jump-pilot-devel mailing list
> Jump-pilot-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Jump-pilot-devel mailing list
Jump-pilot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Jump-pilot-devel mailing list
Jump-pilot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel