MODULE MAIN
===========
Module Maintainer: Jody Garnett
- feature
- filter & expression - Corey
- styling - Corey
IP Review:
- Martin, Feb 1st, 2006
- Jody Garnett, July 24th, 2006
- TODO: test directory

Welcome to the "main" module, this module started out built around core. For GeoTools 2.0 (and
the move to subversion), default implementations from several existing modules were merged in
order to limit developer confusion.  These origional modules are still tracked (and where named
obvious things like feature, filter, style,....).

Much of the origional code comes from the dawn of time - say 1996 but was only punted together
under a GeoTools PMC (C) in 2002 as part of a merge of the existing GeoTools project with the
work of Martin.

IP:
- LICENSE.txt updated

org.geotools.catalog
--------------------
Ported from uDig project (LGPL) w/ permission for (C) to PMC as part of GeoTools 2.2 (thanks Justin).
IP:
- updated header to (C) 2005 Refractions Research
- updated header to (C) 2005-2006 PMC

org.geotools.catalog.adaptable
------------------------------
Seems to be mostly new created by Justin in order to allow for the "extensible interface pattern"
tipified by the Eclipse IAdaptable interace. Since he is following the uDig example the method names
do not conflict with those of IResource and there should be no problem again eclipse.org codebase.

IP:
- Updated to (C) 2006 PMC w/ (C) 2005 Refractions
- TODO Confirm with Justin what is going on
- ResolveFactoryFinder obviously justin so only (C) 2006 PMC

org.geotools.catalog.defauls
----------------------------
Seems to be mostly ports of the default implementation from uDig.
IP:
- Updated to (C) 2006 PMC w/ (C) 2005 Refractions
- TODO Confirm with Justin what is going on

org.geotools.data
-----------------
The contents of the data package were overhalled for the GeoTools 2.0 release, this package
contains the default implementations, and a bit more utility classes then can be sensibly
figured out.
IP:
- Updated to (C) 2003-2006 PMC
- Diff had no header, assume (C) 2006 TODO wait for email list to report back
- FileDataStore & Finder (C) 2004-2005

org.geotools.data.collection
----------------------------
Included to clean up code as part of GeoTools 2.2, common utility classes.
IP:
- updated to (C) 2005-2006 PMC

org.geotools.data.coverage.grid
org.geotools.data.coverage.grid.file
org.geotools.data.coverage.grid.stream
--------------------------------------
Part of initial grid coverage work for uDig project, at least one file contained an incorrect header
with (C) Refractions Reserach. Since this code was never released as part of uDig, this was
simply a developer mistake.
IP:
- updated to (C) 2004-2006
- removed (C) 2004 Refraction Research (see above note)

org.geotools.data.crs
---------------------
Initially created for GeoTools 2.0 to provide reader implementations for reprojection / forceprojection, initial
AuthorityFactory interface provided for GeoTools 2.1 since deprecated and moved to referencing.
IP:
- CRSAuthorityFactory (C) 2004-2006 PMC
- others (C) 2003-2006 PMC

org.geotools.data.jdbc
----------------------
Created to "save" previous data source implementations, and provide an abstract class for JDBC DataStore
implementations. Warning scariest series of hacks we got ... code added for GeoTools 2.0, 2.1 and 2.2.
IP:
- feature source code (C) 2002-2006 as it preserves pre geotools 2.0 code
- datastore code (C) 2003-2006
- hacks mostly (C) 2004-2006

org.geotools.data.jdbc.attributeio
----------------------------------
Part of origional attribute reader based design for datastore.
IP:
- updated headers to (C) 2003-2006 PMC

org.geotools.data.jdbc.fidmapper
--------------------------------
Merged from an experimental branch in 2004, thanks andrea.
IP:
- updated headers to (C)2004-2006 PMC
- some funny todo notes from david adler in headers

org.geotools.data.jdbc.referencing
----------------------------------
Seems to be added by jesse, probably a port of early access based EPSG authority?
IP:
- headers to (C) 2004-2006
- ask Jesse for confirmation, confirmed as 2004

org.geotools.data.memory
------------------------
Created as the API proof of concept for GeoTools 2.0 DataStore API. MemoryDataStore added
for GeoTools 2.0 (although really a port of DefaulFeatureCollection).
IP:
- memorydatastore header to (C) 2003-2006 PMC
- memoryfeaturecollection header to (C) 2002-2006 PMC

org.geotools.data.ows
---------------------
Added to support OGC Open Web Services constructs, for WMS client code and WFS datastore code.
Implemened for GeoTools 2.1 as part of the uDig project.
IP:
- headers updated to (C) 2004-2006 PMC

org.geotools.data.store
-----------------------
Remaining code from first cut at supporting metadata, code retained as the start of a replacement
for AbstractDataStore based on what we have learned. Code origionally based on GeoServer internals,
for end product see the catalog package.

IP:
- headers (C)2004-2006 PMC
- removed (C) 2004 Refraction Research / uDig headers (since they are a mistake)

org.geotools.data.view
----------------------
Support read only view on feature source information, port of internal GPL GeoServer code
donated to PMC.
IP:
- updated to (C) 2004-2006 PMC

org.geotools.event
------------------
Added for GeoTools 2.2 as part of adding events to the SLD documents. Origionally based
on uDig catalog event system - compare and contrast (or bloody well merge) with the
current catalog package.
IP:
- updated headers to (C) 2005-2006 PMC

org.geotools.factory
--------------------
Implementation to help find GeoAPI factories on the classpath.
- header to (C) 2006 PMC, changed to LGPL license w/out address

org.geotools.feature
--------------------
Feature model used since before GeoTools 2.0. Changed to use of FeatureCollection for
data results for GeoTools 2.1, and added FeatureVisitor for GeoTools 2.2. 
There seems to be lots of dead code in here - the FM branch cannot merge soon enough.

IP:
- header to (C) 2002-2006 PMC in most cases
- AbstractFeatureCollectoin to (C) 2004
- removed a uDig header (mistake no doubt)

org.geotools.feature.collection
-------------------------------
Helper classes for feature collections added in GeoTools 2.2.
IP:
- headers to (C) 2005-2006 PMC

org.geotools.feature.type
-------------------------
Congruent with the feature package, this tracts the feature model, this code
predates GeoTools 2.0.

DateUtils contains the following Header:
/*
   Copyright (c) 2002-2004, Dennis M. Sosnoski.
   All rights reserved.
   Redistribution and use in source and binary forms, with or without modification,
   are permitted provided that the following conditions are met:
 * Redistributions of source code must retain the above copyright notice, this
      list of conditions and the following disclaimer.
 * Redistributions in binary form must reproduce the above copyright notice,
      this list of conditions and the following disclaimer in the documentation
      and/or other materials provided with the distribution.
 * Neither the name of JiBX nor the names of its contributors may be used
      to endorse or promote products derived from this software without specific
      prior written permission.
   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
   ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
   WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
   DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
   ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
   (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
   LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
   ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
   SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */
 
IP:
- headers to (C) 2002-2006 PMC
- copied a SosnoskiLICENSE.txt

org.geotools.feature.visitor
----------------------------
Added for GeoTools2.2 as the brains behind aggregate functions.
IP:
- headers to (C) 2005-2006 PMC
- two files missing headers

org.geotools.filter
-------------------
Origional pre GeoTools 2.0 code, revised to agree with Filter 1.1 specification for GeoTools 2.2, and
then subclassed from GeoAPI for GeoTools 2.3.
IP:
- some files from justin were missing all headers/comments updated to (C) 2006 PMC
- headers updated to (C) 200x-2006 PMC as required
- a few early files contain an addition (C) 2002, Centre for Computational Geography

org.geotools.filter.expression
------------------------------
All files added by justin as part GeoTools 2.3 move to GeoAPI interfaces.
IP:
- all files required (C) 2006 PMC header

org.geotools.filter.function
org.geotools.filter.function.math
---------------------------------
Contains a mix of interesting functions, some of which are auto generated. Most date from GeoTools 2.1
timeframe as they are used to provided a better SLD experience for GeoServer. GeoTools 2.2 has
introduced some aggregation functions wrapped over the visitor framework.
IP:
- headers updated to (C) 2005-2006 PMC
- ExplicitClassificationFunction missing headers
- StaticGeometry contains (C) 2005 by David Blasby and The Open Planning Project, with a note it was released LGPL

org.geotools.filter.parser
--------------------------
Contains jcc parser file, for filter parser, dates from GeoTools 2.0.
IP:
- added headers (C) 2003-2006 PMC

org.geotools.filter.spatial
---------------------------
Explicit implementation for filter functions, broken out by GeoAPI interface for GeoTools 2.3.
IP:
- all files neeeded headers, added by justin in 2006
- (C) 2006 PMC

org.geotools.filter.visitor
---------------------------
Contains visitors used to process filters, range of implementations over the geotools timeline.
IP:
- headers updated

org.geotools.geometry
---------------------
JTS utility class, deprecated and moved somewhere else...
IP:
- updated header

org.geotools.geometry.coordinatesequence
----------------------------------------
Implementations pluggin into JTS for specific benifits (speed, space etc...).
IP:
- updated header
- removed one uDig header (mistake)

org.geotools.geometry.jts
-------------------------
JTS support classes, care and feeding of....
IP:
- updated headers
- a few files lacked headers

org.geotools.gml
----------------
Looks to be the home of the sax and dom based GML parser code.
IP:
- updated headers, everything in order

org.geotools.gml.producer
-------------------------
Front end to the GML transformer code, produces GML from feature collections etc.
IP:
- updated headers, everything in order.

org.geotools.map
org.geotools.map.event
----------------------
MapContext care and handling, model used by rendering (should move to API when based on a standard?)
IP:
- updated headers, everything in order.

org.geotools.ows
----------------
Contains a simple exception...
IP:
- updated header
org.geotools.styling
--------------------
Implementation of styling interfaces for Filter 1.0, updated in GeoTools 2.2 for Filter 1.1.
IP:
- some early code contains (C) 2002, Centre for Computational Geography
- Filter 1.0 code updated to (C) 2002-2006 PMC
- Filter 1.1 code updated to (C) 2005-2006 PMC

org.geotools.styling.visitor
----------------------------
One implementation of a style visitor, intended to duplicate content.
IP:
updated header to (C) 2005-2006 PMC

org.geotools.util
-----------------
Grab bag utils, some are JTS specific and should be moved etc...
IP:
- updated headers as required

org.geotools.xml
----------------
Entry point to XDO style parsing.
IP:
- updated headers to (C) 2004-2006 PMC

org.geotools.xml.filter
-----------------------
Parsing elements / complex types for filter goodness
IP:
- updated headers to (C) 2004-2006 PMC

org.geotools.xml.gml
--------------------
GML constructs for XDO style parser.
IP:
- updated headers to (C) 2004-2006 PMC

org.geotools.xml.handlers
-------------------------
Handlers (like min SAX parsers) for base XML constructs.
IP:
- updated headers (C) 2004-2006 PMC

org.geotools.xml.handlers.xsi
-----------------------------
Handlers (like min SAX parsers) for each kind of content.
IP:
- updated headers (C) 2004-2006 PMC

org.geotools.xml.schema
-----------------------
Interfaces for XDO style parsing handlers based on base XMLSchema elements.
IP:
 updated headers (C) 2004-2006 PMC
 
org.geotools.xml.schema.impl
----------------------------
Implementation of XDO style parsing handlers based on base XMLSchema elements.
IP:
 updated headers (C) 2004-2006 PMC
 
org.geotools.xml.styling
------------------------
Generated using a refractions (C) code generator according to class comment.
IP:
- provided headers (C) 2004-2006 PMC

org.geotools.xml.transform
--------------------------
Origional traditional XML transformer code from GeoTools 2.0.
IP:
- updated header

org.geotools.util
-----------------
IP:
- TODO: require LGPL copyright header
- javadocs needed w/ "@since 2.4"
 
org.geotools.xml.xLink
----------------------
Utility class for XDO based xml parsing added for GeoTools 2.1.
IP:
- updated header
 
org.geotools.xml.xsi
--------------------
Utility class for XDO based xml parsing added for GeoTools 2.1.
IP:
- updated header

org.geotoools (test)
-------------
IP:
- updated headers

org.geotools.data (test)
org.geotools.data.collection (test)
----------------------------
IP:
- a few files missing headers, one uDig header
- updated headers

org.geotools.data.coverage.grid.file.test (test)
org.geotools.data.coverage.grid.stream.test (test)
org.geotools.data.coverage.grid.test (test)
-------------------------------------------
IP:
- many files missing headers, several udig headers
- fixed headers (C) 2004 PMC

org.geotools.data.jdbc (test)
----------------------
IP:
- all files missing headers
- headers added

org.geotools.data.memory (test)
----------------------
IP:
- updated header
- added header for MemoryFeatureCollectionTest

org.geotools.feature (test)
--------------------
IP:
- updated headers, we were missing a few

org.geotools.feature.visitor (test)
---------------------------
IP:
- were missing one header
- headers updated

org.geotools.filter (test)
----------------------
IP:
- some functions *only* had listed (C) Centre for Computational Geography
- updated headers
- TestFilterHandler only mentions (c) 2002 Vision for New York - www.vfny.org w/ a GPL 2 license
- vfny == TOPP, aka remove GPL 2 mention as they have standing arragement

org.geotools.filter.function (test)
org.geotools.filter.function.math (test)
org.geotools.filter.visitor (test)
---------------------------------
IP:
- some files missing headers
- udpated to PMC 2005-2006

org.geotools.geometry (test)
org.geotools.geometry.jts (test)
----------------------
IP:
- JTS file had uDig header, credit refractions, and update header to PMC
- update headers

org.geotools.map (test)
----------------------
IP:
- update header (C) 2003-2006 PMC

org.geotools.styling (test)
org.geotools.styling.visitor (test)
----------------------------
IP:
- update header, as required

org.geotools.xml (test)
----------------------
IP:
- all files neeeded updated header
- two files had uDig headers by mistake

org.geotools.xml.ogc (test)
----------------------
IP:
- one file with uDig header by mistake
- update headers
