Hi Adit, I recently added an abstract framework to GeoTools that provides a mechanism for writing Open Web Services. Check out the org.geotools.data.ows package in module/main. I think it was made available in the latest RC.
I have not had time to do a code review, so there may be some areas that need work, but the basic implementation steps are: subclass AbstractOpenWebService and implement setupSpecifications() extend the Capabilities class and add in WCS specific items. I recommend adding a getCapabilities() to your subclass of AbstractOpenWebService to allow your users to get at the capabilities document. For each version of the WCS specification you wish to support, you must extend the Specification class and in support for each operation that WCS allows. I don't know much about WCS specifications, but you may only want to one version to start with, say WCS 1.0.0. Create a new class WCS1_0_0 that extends Specification. It will also help to create interfaces for each of the Requests, as well as classes that know how to handle each of the responses. You also need to extend GetCapabilitiesResponse with a class that does the XML parsing o the Capabilities document. There is probably more that I am missing! Please have a look at the WMS package, to see an example of this. It's located in plugin/wms. Classes to look at specifically: ows/WMSCapabilities wms/WebMapServer wms/WMS1_0_0 wms/WMS1_1_0 (if you want to support more than one version) wms/WMSSpecification wms/request/ - contains interfaces and abstract implementations of the requests wms/response/ - contains all the response implementations (definitely look at WMSGetCapabilitiesResponse) If you have any other questions, please let me know. Richard Adit Santokhee wrote: > Hi Richard, > > Where could I copy your code base from, is possible? > > Thanks in anticipation. > > Adit > > -----Original Message----- > From: Jody Garnett [mailto:[EMAIL PROTECTED] > Sent: 24 July 2006 14:20 > To: Adit Santokhee; Richard Gould; GeoTools Devel List > Subject: Re: [DEWS] [Geotools-gt2-users] GeoTools and WCS > > You can do the plugin and factory finder bit towards then end ... when > you want to have a Resolve "handle" :-) > > If you want to start grab some time with Richard during tonights IRC > meeting (you know the time and place?). You really want to just copy his > code base - cause it does most everything you need (as WCS and WMS have > the same operations). And then you will need to implement a "strategy > object" (pattern alert) coding against the specific WCS protocol you want. > > I would start with the WMS test case code and step through it once to > see how it... > 1. parses capabilities > 2. delegates making a request to a strategy "specification" object > > The end result should be a GridCoverage of some sort, almost by > definition the content of a WCS is not a normal visible image, you willl > want to look into the SLD specification to map the coveragte ranges into > colors for display. > > Cheers, > Jody >> Hi Jody, >> >> Thanks a lot for this. >> >> With reference to Section 8.3 about plugins and Factiryfonder on the >> GeoTools developer guide. Is this a good starting point for implementing a > a >> simple WCS server? >> >> Cheers, >> >> Adit >> >> >> >> >> -----Original Message----- >> From: Jody Garnett [mailto:[EMAIL PROTECTED] >> Sent: 24 July 2006 11:44 >> To: Adit Santokhee >> Cc: [email protected] >> Subject: Re: [Geotools-gt2-users] GeoTools and WCS >> >> Sort of ... a WCS service (or indeed a grid coverage in general) is not >> really modeled by the GeoTools DataStore API - instead it focuses on >> Features. You will find a GridCoverageExchange API (based on some OGC >> standard) with Readers for several image formats - the QA and >> performance of this is the subject of the recent GridCoverage merge... >> >> We also have the concepts of "handles" to spatial data, via IService and >> IGeoResource catalog interfaces - this API is currently used in uDig to >> represent DataStore feature data, WFS FeatureCollection data, and WMS >> layer data. It is this API that would be the best candidate to manage >> WCS client code (in exactly the same manner as WMS is currently handled). >> >> To peruse this I would talk to Richard Gould (the WMS maintainer) and >> see if any plans or collaboration is a foot. I do not know of GeoServer >> or uDig pursuing a WCS client as goal at the moment - so perhaps your >> project will provide the motivation ;-) >> >> Jody >> >>> Hello, >>> >>> >>> >>> We will be very interested to know if any work has been done to have a >>> WCS data store for GeoTools or if there are any plans extending >>> GeoTools to handle WCS as well? >>> >>> >>> >>> Cheers, >>> >>> >>> >>> Adit >>> >>> ------------------------------------------------------------------------ >>> >>> ------------------------------------------------------------------------- >>> Take Surveys. Earn Cash. Influence the Future of IT >>> Join SourceForge.net's Techsay panel and you'll get the chance to share >>> >> your >> >>> opinions on IT & business topics through brief surveys -- and earn cash >>> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV >>> ------------------------------------------------------------------------ >>> >>> _______________________________________________ >>> Geotools-gt2-users mailing list >>> [email protected] >>> https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users >>> >>> >> >> >> _______________________________________________ >> Dews mailing list >> [EMAIL PROTECTED] >> http://www.ncas.ac.uk/mailman/listinfo/dews >> >> > > > ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ Geotools-gt2-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users
