The advent of the WMS and WFS classes in the global package presents an opportunity to improve the GeoServer Application. Currently GeoServer has dispersed application logic across several Servlets. These Servlets are used to implement the WFS and WMS protocols according to the Transaction Script pattern (Fowler 110). Transaction Scripts represent an Object Oriented Idiom similar in effect to procedural programming. The use of this design has resulted in significant duplication of functionality. By moving common functionality to the WMS and WFS classes in the global package we can reduce duplication.
Specific recommendations:
Move FeatureType Schema generation from DescribeFeatureType to FeatureTypeInfo. This functionality is currently duplicated. * Allow WFS to publish a selection of FeatureTypes defined in Data. This functionality is currently duplicated in the FeatureTypeInfo. * Allow WMS to publish a selection of FeatureTypes defined in Data. This functionality is currently duplicated in the FeatureTypeInfo. * Allows WMS to control the style associated with a Layer. It may be noted that the global Data classes module has already accomplished this centralization for the GeoServer Data classes and the Validation Processor.
Environment
None
Activity
codehaus
April 10, 2015 at 3:50 PM
CodeHaus Comment From: cholmes - Time: Wed, 27 Sep 2006 15:13:54 -0500 ---------------------
<p>Closing this as it's been around a long time and there are new thoughts on architecture.</p>
codehaus
April 10, 2015 at 3:50 PM
CodeHaus Comment From: emperorkefka - Time: Tue, 17 Feb 2004 15:21:20 -0600 ---------------------
<p>David has already layered for this to happen (<a href="https://jira.codehaus.org/browse/GEOS-89" title="Data Layer" class="issue-link" data-issue-key="GEOS-89"><del>GEOS-89</del></a>), we should centeralize gradually - no need to rush this one.</p>
codehaus
April 10, 2015 at 3:50 PM
CodeHaus Comment From: jgarnett - Time: Thu, 5 Feb 2004 17:15:08 -0600 ---------------------
<p>To be very specific this allows:</p> <ul class="alternate" type="square"> <li>Take code from WFS Servlets and place in WFS class</li> <li>Take code from WMS Servlets and place in WMS class</li> </ul>
From VWFS Implementaion Report Section 2.2.1
The advent of the WMS and WFS classes in the global package presents an
opportunity to improve the GeoServer Application. Currently GeoServer has
dispersed application logic across several Servlets.
These Servlets are used to implement the WFS and WMS protocols according to
the Transaction Script pattern (Fowler 110).
Transaction Scripts represent an Object Oriented Idiom similar in effect to
procedural programming. The use of this design has resulted in significant
duplication of functionality.
By moving common functionality to the WMS and WFS classes in the global
package we can reduce duplication.
Specific recommendations:
Move FeatureType Schema generation from DescribeFeatureType to
FeatureTypeInfo. This functionality is currently duplicated.
* Allow WFS to publish a selection of FeatureTypes defined in Data. This
functionality is currently duplicated in the FeatureTypeInfo.
* Allow WMS to publish a selection of FeatureTypes defined in Data. This
functionality is currently duplicated in the FeatureTypeInfo.
* Allows WMS to control the style associated with a Layer.
It may be noted that the global Data classes module has already accomplished
this centralization for the GeoServer Data classes and the Validation Processor.