org.geotools.repository
Interface Catalog

All Superinterfaces:
Resolve
All Known Implementing Classes:
AbstractCatalog, AdaptingCatalog, DefaultCatalog

public interface Catalog
extends Resolve

Extension of Resolve which represents a local catalog or web registry service.

Conceptually provides a searchable Catalog of "Spatial Data Sources". Metadata search is abitrary.

Since:
0.7.0
Author:
David Zwiers, Refractions Research, Justin Deoliveira, The Open Planning Project
Module:
trunk/modules/unsupported   (gt-unsupported.jar) (Maven report) (SVN head)

Nested Class Summary
 
Nested classes/interfaces inherited from interface Resolve
Resolve.Status
 
Method Summary
 void add(Service service)
          Adds the specified entry to this catalog.
 List find(URI id, ProgressListener monitor)
          Find resources matching this id directly from this Catalog.
 List findService(URI query, ProgressListener monitor)
          Find Service matching this id directly from this Catalog.
 CatalogInfo getInfo(ProgressListener monitor)
          Aquire info on this Catalog.
 void remove(Service service)
          Removes the specified entry to this catalog.
 void replace(URI id, Service service)
          Replaces the specified entry in this catalog.
 Object resolve(Class adaptee, ProgressListener monitor)
          Will attempt to morph into the adaptee, and return that object.
 List search(String pattern, Envelope bbox, ProgressListener monitor)
          Performs a search on this catalog based on the specified inputs.
 
Methods inherited from interface Resolve
addListener, canResolve, fire, getIdentifier, getMessage, getStatus, members, parent, removeListener
 

Method Detail

resolve

Object resolve(Class adaptee,
               ProgressListener monitor)
               throws IOException
Will attempt to morph into the adaptee, and return that object. Required adaptions: May Block.

Specified by:
resolve in interface Resolve
Parameters:
adaptee -
monitor - May Be Null
Returns:
Instance of type adaptee, or null if the resolve is unsuported.
Throws:
IOException - in the result of an I/O error.
See Also:
CatalogInfo, IService

add

void add(Service service)
         throws UnsupportedOperationException
Adds the specified entry to this catalog. In some cases the catalog will be backed onto a server, which may not allow for additions.

An IService may belong to more than one Catalog.

Parameters:
service - the Service to add to the catalog
Throws:
UnsupportedOperationException

remove

void remove(Service service)
            throws UnsupportedOperationException
Removes the specified entry to this catalog. In some cases the catalog will be backed onto a server, which may not allow for deletions.

Parameters:
service -
Throws:
UnsupportedOperationException

replace

void replace(URI id,
             Service service)
             throws UnsupportedOperationException
Replaces the specified entry in this catalog. In some cases the catalog will be backed onto a server, which may not allow for deletions.

Parameters:
id -
service -
Throws:
UnsupportedOperationException

find

List find(URI id,
          ProgressListener monitor)
Find resources matching this id directly from this Catalog.

Parameters:
id - used to match resolves
monitor - used to show the progress of the find.
Returns:
List (possibly empty) of resolves (objects implementing the Resolve interface)

findService

List findService(URI query,
                 ProgressListener monitor)
Find Service matching this id directly from this Catalog. This method is guaranteed to be non-blocking.

Parameters:
query - a URI used to match resolves
monitor - monitor used to watch progress
Returns:
a List (possibly empty) of matching services (objects of type Service).

search

List search(String pattern,
            Envelope bbox,
            ProgressListener monitor)
            throws IOException
Performs a search on this catalog based on the specified inputs.

The pattern uses the following conventions:

The bbox provided shall be in Lat - Long, or null if the search is not to be contained within a specified area.

Parameters:
pattern - Search pattern (see above)
bbox - The bbox in Lat-Long (ESPG 4269), or null
monitor - for progress, or null if monitoring is not desired
Returns:
List containg objects of type Resolve.
Throws:
IOException

getInfo

CatalogInfo getInfo(ProgressListener monitor)
                    throws IOException
Aquire info on this Catalog.

This is functionally equivalent to: resolve(ICatalogInfo.class,monitor)

Returns:
ICatalogInfo resolve(ICatalogInfo.class,ProgressListener monitor);
Throws:
IOException
See Also:
resolve(Class, ProgressListener)


Copyright © 1996-2009 Geotools. All Rights Reserved.