Hello,
Has anyone put any thought into this? Or perhaps give me some pointers
so I can hack around in more or less the right direction?

Thanks,
Roger

On Sun, Sep 11, 2011 at 5:48 PM, Andrea Aime
<[email protected]> wrote:
> On Fri, Sep 9, 2011 at 4:26 PM, Roger Bedell <[email protected]> wrote:
>> My original post:
>> The trunk wps gs:clip seems to work nicely in clipping to an arbitrary
>> polygon. Very nice - thanks! Output to the usual shape-zip and gml formats.
>> I of course, want more, specifically, the all the OGR output formats I'm
>> used to using with WFS using the OGR Output Format extension.
>> Anyone done this suggestion from Andrea yet?
>> "For the latter you probably to write a PPIO based on on ogr wfs output
>> format, based on the same principles
>> as ShapeZipPPIO:
>> /home/aaime/devel/git-gs/src/extension/wps/wps-core/src/main/java/org/geoserver/wps/ppio/ShapeZipPPIO.java"
>> Well, I tried briefly, almost getting there with the code below, but failing
>> with this comment from Andrea:
>>> Well, working a little bit more, this seems to work:
>>>     public void encode(Object value, OutputStream os) throws Exception {
>>>         //SimpleFeatureCollection fc = (SimpleFeatureCollection) value;
>>>         Ogr2OgrOutputFormat of = new Ogr2OgrOutputFormat(null);
>>>         //ShapeZipOutputFormat of = new ShapeZipOutputFormat();
>>>
>>>         FeatureCollection features = (FeatureCollection) value;
>>>         //SimpleFeatureType featureType = (SimpleFeatureType)
>>> features.getSchema();
>>>
>>>         FeatureCollectionType fc =
>>> WfsFactory.eINSTANCE.createFeatureCollectionType();
>>>         fc.getFeature().add( features );
>>>
>>>
>>>         //FeatureCollectionType fct = (FeatureCollectionType)value;
>>>         of.write(fc, os, null);
>>>     }
>>> Now, I'm trying to figure out how to specify and get of.write to see the
>>> correct OGR_Format. In the current one, it uses this:
>>>         // figure out which output format we're going to generate
>>>         GetFeatureType gft = (GetFeatureType)
>>> getFeature.getParameters()[0];
>>>         OgrFormat format = formats.get(gft.getOutputFormat());
>>> Which seems odd. Guess I have to figure if there is a way to pass output
>>> parameters to PPIO.
>>
>> Nope, there is no way, a PPIO is devoted to turn a java class into
>> some serialization format and back, both of which have to be known in
>> advance.
>>
>> In order to make this pluggable we probably have to resort to
>> some intermediation, like a pluggable PPIO factory that can emit various
>> PPIO (and can do so dynamically).
>>
>> Hmmm... an easier way could be to have ComplexPPIO return not just one mime
>> type, but a list of them, and then change the 11 points in the code that use
>> the existing getMimeType() method to use a getMimeTypes() instead.
>>
>> I would like to hear from Justin as well about this one, can you start a
>> discussion topic on geoserver-devel about this?
>
> Just a quick note, the idea is still the same as I suggested to Roger, add
> some some dynamic bits to the lookup of PPIOs so that we can leverage
> what's in the spring context (in particular, the wfs encoders), but I'm
> not sure about the best route to get there.
>
> The other thing is that these objects would be just output encoders,
> they would be PPO. How to mark that a PPIO is assimetric?
> I guess the most natural way would be to have separate PPI and PPO.
>
> Ah, Roger, the incoming week is less likely than usual to see a good
> conversation on this one as good part of the GeoServer developers
> are in Denver at FOSS4G (http://2011.foss4g.org)
>
> Cheers
> Andrea
>
> --
> -------------------------------------------------------
> Ing. Andrea Aime
> GeoSolutions S.A.S.
> Tech lead
>
> Via Poggio alle Viti 1187
> 55054  Massarosa (LU)
> Italy
>
> phone: +39 0584 962313
> fax:      +39 0584 962313
>
> http://www.geo-solutions.it
> http://geo-solutions.blogspot.com/
> http://www.youtube.com/user/GeoSolutionsIT
> http://www.linkedin.com/in/andreaaime
> http://twitter.com/geowolf
>
> -------------------------------------------------------
>

------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
Geoserver-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

Reply via email to