Interface CoverageAccess
- All Known Subinterfaces:
FileCoverageAccess
- All Known Implementing Classes:
DefaultCoverageAccess
,DefaultFileCoverageAccess
,NetCDFAccess
Please note that this service may be remote (or otherwise slow). You are doing IO here and should treat this class with respect - please do not access these methods from a display thread.
- Author:
- Simone Giannecchini, GeoSolutions, Jody Garnett
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic enum
Level of access supported. -
Method Summary
Modifier and TypeMethodDescriptionaccess
(Name name, Map<String, Serializable> params, CoverageAccess.AccessType accessType, Hints hints, ProgressListener listener) Retrieve aCoverageSource
to access a Named Coverage.boolean
canCreate
(Name name, Map<String, Serializable> params, Hints hints, ProgressListener listener) Test to see if this coverage access is suitable for creating aCoverageStore
referred by Name, with the specified set of parameters.boolean
Test to see if this coverage access is suitable for deleting aCoverageSource
referred by Name, with the specified set of parameters.create
(Name name, Map<String, Serializable> params, Hints hints, ProgressListener listener) Create aCoverageStore
with the specified name.boolean
Asks thisCoverageAccess
to entirely remove a certain Coverage from the availableCoverageSource
s.void
dispose()
This will free any cached info object or header information.getAccessParameterInfo
(CoverageAccess.AccessType accessType) Describes the required (and optional) parameters that can be used to open aCoverageSource
.Retrieves the parameters used to connect to this live instance ofCoverageAccess
.int
getCoveragesNumber
(ProgressListener listener) The number of Coverages made available.Returns theDriver
which has been used to connect to this CoverageAccess.getInfo
(ProgressListener listener) Description of the CoverageAccess we are connected to here.getNames
(ProgressListener listener) Names of the available Coverages.getStorageMetadata
(String metadataDomain) boolean
Tells me whether or not thisCoverageAccess
supports creation of a new coverage storage.boolean
Tells me whether or not thisCoverageAccess
supports removal of an existing coverage storage.
-
Method Details
-
getDriver
Driver getDriver()Returns theDriver
which has been used to connect to this CoverageAccess.- Returns:
Driver
used to connect
-
getInfo
Description of the CoverageAccess we are connected to here.- Returns:
- Description of the CoverageAccess we are connected to here.
-
getSupportedAccessTypes
Set<CoverageAccess.AccessType> getSupportedAccessTypes()- Returns:
- the
Set
of supportedCoverageAccess.AccessType
s for thisCoverageAccess
instance.
-
getNames
Names of the available Coverages.Each Coverage named here represents a unique data product that may be accessed via the CoverageSource
- Returns:
- Names of the available contents.
-
getCoveragesNumber
The number of Coverages made available.- Returns:
- getNames( listener ).size()
-
getAccessParameterInfo
Describes the required (and optional) parameters that can be used to open aCoverageSource
. -
access
CoverageSource access(Name name, Map<String, Serializable> params, CoverageAccess.AccessType accessType, Hints hints, ProgressListener listener) throws IOExceptionRetrieve aCoverageSource
to access a Named Coverage.- Parameters:
name
- Indicate the coverage to accessparams
- Additional parameters as needed to indicate what part of the data set to accessaccessType
- Requested level of accesshints
- Implementation specific hints; please review the javadocs for your Driver for detailslistener
- used to report progress while obtianing access- Throws:
IOException
-
isCreateSupported
boolean isCreateSupported()Tells me whether or not thisCoverageAccess
supports creation of a new coverage storage.This method will only return true if getSupportedAccessTypes() == READ_WRITE.
- Returns:
true
when removal of of a new coverage storage is supported,false
otherwise.
-
canCreate
boolean canCreate(Name name, Map<String, Serializable> params, Hints hints, ProgressListener listener) throws IOExceptionTest to see if this coverage access is suitable for creating aCoverageStore
referred by Name, with the specified set of parameters.This method will only return true if getSupportedAccessTypes() == READ_WRITE.
- Parameters:
name
- The name of the data set to createparams
- Indicate the content to be createdhints
- Implementations specific Hints, please check the javadocs for your driver for details- Returns:
- true if a coverage can be created
- Throws:
IOException
-
create
CoverageStore create(Name name, Map<String, Serializable> params, Hints hints, ProgressListener listener) throws IOExceptionCreate aCoverageStore
with the specified name.You can check isCreateSupported() prior to calling this method. Implementing subclasses may throw an
UnsupportedOperationException
in case the related Driver won't allowCoverageStore
creation.- Parameters:
name
- The name of the data set to createparams
- Indicate the content to be createdhints
- Implementations specific Hints, please check the javadocs for your driver for details- Throws:
IllegalStateException
- if getSupportedAccessTypes() == READ_ONLYIOException
-
isDeleteSupported
boolean isDeleteSupported()Tells me whether or not thisCoverageAccess
supports removal of an existing coverage storage.- Returns:
true
when removal of an existing coverage storage is supported,false
otherwise.
-
canDelete
Test to see if this coverage access is suitable for deleting aCoverageSource
referred by Name, with the specified set of parameters.- Parameters:
name
- Name of data set to remove fromparams
- Used to indicate what what of the data set to remove; ifnull
indicate the entire data set should be removedhints
- Implementation specific Hints; please consult the javadocs for the Driver you are working with.- Throws:
IOException
-
delete
Asks thisCoverageAccess
to entirely remove a certain Coverage from the availableCoverageSource
s.Many file based formats won't allow to perform such operation, but db based source should be quite happy with it.
- Returns:
true
in case of success.- Throws:
IOException
-
getConnectParameters
Map<String,Serializable> getConnectParameters()Retrieves the parameters used to connect to this live instance ofCoverageAccess
.- Returns:
- the parameters used to connect to this live instance of
CoverageAccess
.
-
dispose
void dispose()This will free any cached info object or header information.Often a
CoverageAccess
will keep a file channel open, this will clean that sort of thing up.Once a
CoverageAccess
has been disposed it can be seen as being in unspecified state, hence calling a method on it may have unpredictable results. -
getStorageMetadata
-
getStorageMetadataDomains
-