org.geotools.coverage.grid.io
Interface GranuleStore

All Superinterfaces:
GranuleSource
All Known Implementing Classes:
GranuleCatalogStore

public interface GranuleStore
extends GranuleSource

API extending GranuleSource providing capabilities to add, delete and modify granules.

Author:
Simone Giannecchini, GeoSolutions SAS, Andrea Aime, GeoSolutions SAS, Daniele Romagnoli, GeoSolutions SAS

Method Summary
 void addGranules(SimpleFeatureCollection granules)
          Add all the granules from the specified collection to this GranuleStore.
 Transaction getTransaction()
          Gets the Transaction that this GranuleStore is currently operating against.
 int removeGranules(Filter filter)
          Removes granules selected by the given filter.
 void setTransaction(Transaction transaction)
          Provide a transaction for commit/rollback control of a modifying operation on this GranuleStore.
 void updateGranules(String[] attributeNames, Object[] attributeValues, Filter filter)
          Modifies the attributes with the supplied values in all granules selected by the given filter.
 
Methods inherited from interface GranuleSource
dispose, getBounds, getCount, getGranules, getSchema
 

Method Detail

addGranules

void addGranules(SimpleFeatureCollection granules)
Add all the granules from the specified collection to this GranuleStore.

Parameters:
granules - the granules to add

removeGranules

int removeGranules(Filter filter)
Removes granules selected by the given filter.

Parameters:
filter - an OpenGIS filter
Throws:
IOException - if an error occurs modifying the data source

updateGranules

void updateGranules(String[] attributeNames,
                    Object[] attributeValues,
                    Filter filter)
Modifies the attributes with the supplied values in all granules selected by the given filter.

Parameters:
attributeNames - the attributes to modify
attributeValues - the new values for the attributes
filter - an OpenGIS filter
Throws:
IOException - if the attribute and object arrays are not equal in length; if the value types do not match the attribute types; if modification is not supported; or if there errors accessing the data source

getTransaction

Transaction getTransaction()
Gets the Transaction that this GranuleStore is currently operating against.
 
 Transaction t = GranuleStore.getTransaction();
 try {
     GranuleStore.addGranules (granules);
     t.commit();
 } catch( IOException erp ){
     // something went wrong;
     t.rollback();
 }
 
 

Returns:
Transaction in use, or Transaction.AUTO_COMMIT

setTransaction

void setTransaction(Transaction transaction)
Provide a transaction for commit/rollback control of a modifying operation on this GranuleStore.
 
 Transation t = new DefaultTransaction();
 GranuleStore.setTransaction(t);
 try {
     GranuleStore.addGranules (granules);
     t.commit();
 } catch ( IOException ex ) {
     // something went wrong;
     t.rollback();
 } finally {
     t.close();
 }
 
 

Parameters:
transaction - the transaction


Copyright © 1996-2014 Geotools. All Rights Reserved.