Changes between Initial Version and Version 1 of OwsFramework/OwsCommon


Ignore:
Timestamp:
15/01/08 10:56:39 (12 years ago)
Author:
spascoe
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • OwsFramework/OwsCommon

    v1 v1  
     1== A note about Pylons terminology == 
     2 
     3In Pylons  
     4 
     5 - ''controllers'' are classes inherited from pylons.controllers.WSGIController that reside in the {{{controllers}}} package of your application.  Requests are routed to particular controllers via the ''Routes'' configuration. 
     6 - ''actions'' are methods of a ''controller''.  They are also selected using ''Routes''. 
     7 
     8== OGC Web Services == 
     9 
     10Support for implementing OGC Web Services using Pylons is provided via the {{{ows_common}}} package.  This package provides several things: 
     11 1. The !OwsController class 
     12 1. The [wiki:OwsFramework/OwsProtocol OWS Controller Protocol] defining standard attributes on Pylons controllers and actions 
     13 1. Decorators on controller actions 
     14 
     15=== The {{{ows_common}}} package === 
     16 
     17The {{{ows_common}}} package provides a library of objects modelling 
     18the OWS Common specification v1.1.0.  Metadata required for a OWS 
     19should be represented using {{{ows_common}}} where ever possible to 
     20maximise code reuse.  For instance, templates are provided to render 
     21{{{ows_common}}} objects into OWS 1.1.0 or WMS 1.3.0 compliant 
     22capabilities documents 
     23({{{ows_server.templates.ows.get_capabilities}}} and 
     24{{{ows_server.templates.ows.wms_capabilities}}}.  Implementations of 
     25other services can reuse parts of the core template. 
     26 
     27{{{ows_common.exceptions}}} provides a set of exception classes 
     28that are caught by the framework and rendered as a standard OWS 
     29exception response. 
     30 
     31{{{ows_common.pylons}}} provides a framework for creating OGC Web Services with the pylons 
     32web-application framework. 
     33 
     34=== The !OwsController class === 
     35 
     36All OWS implementations should be implemented as a Pylons controller 
     37inheriting from {{{ows_common.pylons.ows_controller.OwsController}}}.  The method 
     38{{{OwsController._renderCapabilities()}}} returns a response object 
     39containing a standard OWS common 1.1.0 Capabilities document. 
     40Populating this document with service-specific metadata can be done by 
     41overriding the {{{OwsController._loadCapabilities() method. 
     42 
     43OWS operations are created by defining a {{{OwsController}}} method of 
     44the same name wrapped in the {{{@ows_operation}}} decorator.  See OwsFramework/Decorators for more about decorators.