Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.opengis.feature
Interface FeatureStore

    public interface FeatureStore

Gives a normalized interface to a data provider that can serve up collections of `Feature` objects.

Since:
  GeoAPI 2.0

Method Summary
`void` | `addFeatureStoreListener(FeatureStoreListener listener)` Adds a listener object whose methods will be invoked whenever a new feature type is added, a feature type is deleted, or a feature type's schema has been modified.
`void` | `createType(FeatureType type)` Creates a new type.
`FeatureStyle` | `getDefaultStyle(GenericName type)` If the feature store wants to provide a default style for the given type, it may return something here.
`InternationalString` | `getDescription()` Description of this feature store.
`InternationalString` | `getDisplayName()` Display name for this feature store.
`FeatureCollection` | `getFeatures(GenericName type)` Gets all features of the given type.
`FeatureCollection` | `getFeatures(GenericName type, Filter filter)` Gets all features of the given type that pass some filter.
`FeatureCollection` | `getFeatures(Query query)` Gets features of the given type that pass some query.
`FeatureCollection` | `getFeatures(Query q, Transaction t)` Shortcut for calling `getFeatures(q)` then calling `setTransaction(t)` on the result.
`FeatureType` | `getFeatureType(GenericName typeName)` Returns the schema of the named feature type.
`URI` | `getIcon()` Icon representing this `FeatureStore`.
`List<GenericName>` | `getRootTypeNames()` This method is similar to the `getTypeNames()` method, except that it acknowledges that some features only make sense as children of another feature collection type.
`List<GenericName>` | `getTypeNames()` Gets a list of all the names of the types held in this feature store.
`void` | `modifyType(FeatureType type)` Modifies the type by changing the schema to what is passed as a parameter.
`void` | `registerFeatureCollection(FeatureCollection featureCollection, GenericName type)` Registers the given feature collection so that it may hear any adds, removes, or updates of `Feature`s of the given `type`.
`void` | `registerFeatureCollection(FeatureCollection featureCollection, GenericName type, Filter filter)` Registers the given feature collection so that it may hear any adds, removes, or updates of `Feature`s of the given `type` that meet the given `filter`.
`void` | `registerFeatureCollection(FeatureCollection featureCollection, Query query)` Registers the given feature collection so that it may hear any adds, removes, or updates of `Feature`s of the given `type` that meet the given `filter`.
`void` | `removeFeatureStoreListener(FeatureStoreListener listener)` Removes a listener that was previously added using the `addFeatureStoreListener` method.
`void` | `removeType(GenericName type)` Completely removes all the features of the given type and removes the type itself.
`void` | `unregisterFeatureCollection(FeatureCollection featureCollection)` Unregisters the given feature collection so that it will no longer hear any adds, removes, or updates of `Feature`s for which it had previously registered.

Method Detail

### getIcon

    URI getIcon()

  Icon representing this `FeatureStore`.

  Returns:
    URI to a icon (GIF or PNG) representing this feature store.

### getDisplayName

    InternationalString getDisplayName()

  Display name for this feature store.

### getDescription

    InternationalString getDescription()

  Description of this feature store.

### getTypeNames

    List<GenericName> getTypeNames()

  Gets a list of all the names of the types held in this feature store. The typical usage of these generic names will be as follows: In most cases, the generic name will have a local part that is be the name of the XML element used to encode such features as GML. The scope of the name will either be null (if the XML element is to have no namespace) or will be a name whose `toString()` gives the URI of an XML namespace.

### getRootTypeNames

    List<GenericName> getRootTypeNames()

  This method is similar to the `getTypeNames()` method, except that it acknowledges that some features only make sense as children of another feature collection type. So this method returns the types that are the root level "parent" types that can be retrieved from this store. Implementors are free to return the same values from this method as from `getTypeNames()`.

### getFeatureType

    FeatureType getFeatureType(GenericName typeName)

  Returns the schema of the named feature type. May return null if a type of the given name does not exist. The `GenericName` passed to this method must be equal to one of the elements in the list returned by the `getTypeNames()` method.

### getFeatures

    FeatureCollection getFeatures(GenericName type)
                                  throws IOException

  Gets all features of the given type.

  Throws:
    `IOException` - if an error occurs while reading the backing store. If the cause is not a standard I/O exception, it may be wrapped in a `FeatureStoreException`.

### getFeatures

    FeatureCollection getFeatures(GenericName type,
                                  Filter filter)
                                  throws IOException

  Gets all features of the given type that pass some filter.

  Throws:
    `IOException` - if an error occurs while reading the backing store. If the cause is not a standard I/O exception, it may be wrapped in a `FeatureStoreException`.

### getFeatures

    FeatureCollection getFeatures(Query query)
                                  throws IOException

  Gets features of the given type that pass some query. Different from the method that accepts a type and a filter, this method allows for retrieving only a subset of the attributes since a query can include a property list. Note that the type is indicated in the query.

  Throws:
    `IOException` - if an error occurs while reading the backing store. If the cause is not a standard I/O exception, it may be wrapped in a `FeatureStoreException`.

### getFeatures

    FeatureCollection getFeatures(Query q,
                                  Transaction t)
                                  throws IOException

  Shortcut for calling `getFeatures(q)` then calling `setTransaction(t)` on the result.

  Throws:
    `IOException` - if an error occurs while reading the backing store. If the cause is not a standard I/O exception, it may be wrapped in a `FeatureStoreException`.

### registerFeatureCollection

    void registerFeatureCollection(FeatureCollection featureCollection,
                                   GenericName type)

  Registers the given feature collection so that it may hear any adds, removes, or updates of `Feature`s of the given `type`.

  Parameters:
    `featureCollection` - the feature collection to register.
    `type` - the `FeatureType` to listen for.

### registerFeatureCollection

    void registerFeatureCollection(FeatureCollection featureCollection,
                                   GenericName type,
                                   Filter filter)

  Registers the given feature collection so that it may hear any adds, removes, or updates of `Feature`s of the given `type` that meet the given `filter`.

  Parameters:
    `featureCollection` - the feature collection to register.
    `type` - the `FeatureType` to register with.
    `filter` - the filter to register with.

### registerFeatureCollection

    void registerFeatureCollection(FeatureCollection featureCollection,
                                   Query query)

  Registers the given feature collection so that it may hear any adds, removes, or updates of `Feature`s of the given `type` that meet the given `filter`.

  Parameters:
    `featureCollection` - the feature collection to register.
    `query` - the query to register with.

### unregisterFeatureCollection

    void unregisterFeatureCollection(FeatureCollection featureCollection)

  Unregisters the given feature collection so that it will no longer hear any adds, removes, or updates of `Feature`s for which it had previously registered.

  Parameters:
    `featureCollection` - the feature collection to unregister.

### getDefaultStyle

    FeatureStyle getDefaultStyle(GenericName type)

  If the feature store wants to provide a default style for the given type, it may return something here. Otherwise, it should return null.

### createType

    void createType(FeatureType type)
                    throws UnsupportedOperationException,
                           IllegalArgumentException,
                           IOException

  Creates a new type. If this feature store is backed by a persistent store of some kind, then structures corresponding to the given type should be created in this persistent store.

  Throws:
    `UnsupportedOperationException` - if the addition feature types is not supported.
    `IllegalArgumentException` - If a type of the given name already exists.
    `IllegalArgumentException` - If the given feature schema is somehow incompatible with the persisten store that backs this feature store.
    `IOException` - if an error occurs while accessing the backing store. If the cause is not a standard I/O exception, it may be wrapped in a `FeatureStoreException`.

### removeType

    void removeType(GenericName type)
                    throws UnsupportedOperationException,
                           IOException

  Completely removes all the features of the given type and removes the type itself. If this feature store is backed by a persistent store of some kind, then the corresponding structures in that store should be removed.

  Throws:
    `UnsupportedOperationException` - if the removal of whole feature types is not supported.
    `IOException` - if an error occurs while accessing the backing store. If the cause is not a standard I/O exception, it may be wrapped in a `FeatureStoreException`.

### modifyType

    void modifyType(FeatureType type)
                    throws UnsupportedOperationException,
                           IOException

  Modifies the type by changing the schema to what is passed as a parameter.

  Throws:
    `UnsupportedOperationException` - if the modification of types is not supported.
    `IOException` - if an error occurs while accessing the backing store. If the cause is not a standard I/O exception, it may be wrapped in a `FeatureStoreException`.

### addFeatureStoreListener

    void addFeatureStoreListener(FeatureStoreListener listener)

  Adds a listener object whose methods will be invoked whenever a new feature type is added, a feature type is deleted, or a feature type's schema has been modified.

### removeFeatureStoreListener

    void removeFeatureStoreListener(FeatureStoreListener listener)

  Removes a listener that was previously added using the `addFeatureStoreListener` method.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 1994-2008 Open Geospatial Consortium. All Rights Reserved.