public interface CatalogProvider extends Source, Maskable
CatalogFramework
) API used to interact with
providers of data such as a file system or database. The basic premise of a CatalogProvider is to
allow query, create, update, and delete operations.
The provider performs a translation between DDF objects and its native format. The key
functions of the CatalogProvider can be found in the Source
and Metacard
interfaces.
Modifier and Type | Method and Description |
---|---|
CreateResponse |
create(CreateRequest createRequest)
Publishes a list of
Metacard objects into the catalog. |
DeleteResponse |
delete(DeleteRequest deleteRequest)
Deletes records specified by a list of attribute values such as an id attribute.
|
UpdateResponse |
update(UpdateRequest updateRequest)
Updates a list of
Metacard records. |
getContentTypes, getSecurityAttributes, isAvailable, isAvailable, query
getDescription, getId, getOrganization, getTitle, getVersion
CreateResponse create(CreateRequest createRequest) throws IngestException
Metacard
objects into the catalog.createRequest
- - the CreateRequest
that includes a List
of
Metacard
objects to be stored in a Source
. The ID of the
Metacard
object will be ignored and populated / generated by the
CatalogProvider
when the record has been stored.CreateResponse
containing a List
of fully populated
metacards. This should be similar to the parameter list of Metacard
objects but it must have the ddf.catalog.data.Metacard ID
populated.IngestException
- if any problem occurs when storing the metacardsUpdateResponse update(UpdateRequest updateRequest) throws IngestException
Metacard
records. Metacard
records that are not in the Catalog will not be created.updateRequest
- - the UpdateRequest
that includes updates to Metacard
records that have been previously stored in a Source
. A
given Attribute
name-value pair in this request must uniquely
identify zero metacards or one metacard in the Source
, otherwise an IngestException
will be thrown.UpdateResponse
containing a List
of Update
objects that represent the new (updated) and old (previous)
Metacard
records.IngestException
- if an issue occurs during the update such as multiple records were
matched for a single update entryDeleteResponse delete(DeleteRequest deleteRequest) throws IngestException
deleteRequest
- - the DeleteRequest
containing the attribute values associated
with Metacard
s to deleteDeleteResponse
with Metacard
s that were deleted.
These Metacard
s are fully populated in preparation for any
processing services.IngestException
- if an issue occurs during the deleteThis work is licensed under a Creative Commons Attribution 4.0 International License.