That would ne a very interesting architecture Martin.<div>Each Service would manage its on requirements, for example its own internal bindings to Python or whatever.</div><div>I&#39;m not sure about the &quot;fastgi nature&quot; of the services. The server has a an fcgi interface, ok, but the services should be indipendent from this specific interface. The Server could be deployed in a different fashion, but the services should ignore this.</div>
<div><br></div><div>giovanni<br><br><div class="gmail_quote">2011/10/19 Martin Dobias <span dir="ltr">&lt;<a href="mailto:wonder.sk@gmail.com">wonder.sk@gmail.com</a>&gt;</span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Hi Giovanni and Radim<br>
<div class="im"><br>
On Wed, Oct 19, 2011 at 12:24 PM, G. Allegri &lt;<a href="mailto:giohappy@gmail.com">giohappy@gmail.com</a>&gt; wrote:<br>
&gt; I was thinking to both the ways:<br>
&gt;  - expose geoprocessing directly through QGIS MS (either C++ plugins or<br>
&gt; Python plugins)<br>
&gt;  - provide a Python mapscripting for QGIS MS (as you&#39;re saying)<br>
&gt; I think the two ways are complementary.<br>
&gt; The latter would let you &quot;control&quot; QGIS MS, and proxy requests, exactly the<br>
&gt; same as Mapserver/Mapscript.<br>
&gt; The first one would let you also expose code written for QGis Desktop. For<br>
&gt; example, you could expose the features provided by the Processing Framework<br>
&gt; (OTB, SAGA, etc.), or the code inside QGis Analysis.<br>
<br>
</div>A nice low-level solution would be to introduce a new class to<br>
qgis_core library that would take care of fastcgi functionality (e.g.<br>
QgsFastCgiServer) and an abstract interface for web-based services<br>
(e.g. QgsFastCgiService) for communication between the fastcgi server<br>
and the concrete service. One or more services could be registered to<br>
the fastcgi server and it would redirect the request to the services.<br>
Our WMS server would be therefore become a service running on top of<br>
QgsFastCgiServer, the mapserver executable would just create fastcgi<br>
server instance, add WMS service and start the server.<br>
<br>
With QgsFastCgiServer developers could implement basically any<br>
functionality they want. A simple WPS service could be built on top of<br>
the processing framework. Or a service that first does some<br>
processing, then renders the map and returns it (this would be the<br>
MapScript equivalent, right?)<br>
<br>
To use python we would need python wrapper of the server and service<br>
classes, something that could be done very easily.<br>
<br>
The WMS service could be probably made extensible, too, but the number<br>
of possible use cases would be probably smaller in order to stay<br>
compatible with WMS standard.<br>
<br>
Regards<br>
<font color="#888888">Martin<br>
</font></blockquote></div><br></div>