Package ddf.catalog.plugin
Interface AccessPlugin
public interface AccessPlugin
An AccessPlugin allows or denies access to the Catalog operation or response. AccessPlugin are
independent and should not rely on ordering of other plugins
-
Method Summary
Modifier and TypeMethodDescriptionprocessPostDelete(DeleteResponse input) Processes aDeleteResponse, following the execution ofCatalogProvider.delete(DeleteRequest), to determine whether or not the user can access the Catalog operationprocessPostQuery(QueryResponse input) Processes aQueryResponse, following the execution of theQuery, to determine whether or not the user can access the Response.processPostResource(ResourceResponse input, Metacard metacard) Processes aResourceResponse, following the execution of theResourceRequest, to determine whether or not the user can access the Response.processPreCreate(CreateRequest input) Processes aCreateRequest, prior toCatalogProvider.create(CreateRequest), to determine whether or not the user can access the Catalog operationprocessPreDelete(DeleteRequest input) Processes aDeleteRequest, prior toCatalogProvider.delete(DeleteRequest), to determine whether or not the user can access the Catalog operationprocessPreQuery(QueryRequest input) Processes aQueryRequest, prior to execution of theQuery, to determine whether or not the user can access the Catalog operation.Processes aResourceRequest, prior to execution of theResourceRequest, to determine whether or not the user can access the Catalog operation.processPreUpdate(UpdateRequest input, Map<String, Metacard> existingMetacards) Processes anUpdateRequest, prior to execution of theUpdate, to determine whether or not the user can access the Catalog operation
-
Method Details
-
processPreCreate
Processes aCreateRequest, prior toCatalogProvider.create(CreateRequest), to determine whether or not the user can access the Catalog operation- Parameters:
input- theCreateRequestto process- Returns:
- the value of the processed
CreateRequestto pass to the nextAccessPlugin - Throws:
StopProcessingException- thrown to halt processing when a critical issue occurs during processing. This is intended to prevent other plugins from processing as well.
-
processPreUpdate
UpdateRequest processPreUpdate(UpdateRequest input, Map<String, Metacard> existingMetacards) throws StopProcessingExceptionProcesses anUpdateRequest, prior to execution of theUpdate, to determine whether or not the user can access the Catalog operation- Parameters:
input- theUpdateRequestto processexistingMetacards- the Map ofMetacards that currently exist- Returns:
- the value of the processed
UpdateRequestto pass to the nextAccessPlugin - Throws:
StopProcessingException- thrown to halt processing when a critical issue occurs during processing. This is intended to prevent other plugins from processing as well.
-
processPreDelete
Processes aDeleteRequest, prior toCatalogProvider.delete(DeleteRequest), to determine whether or not the user can access the Catalog operation- Parameters:
input- theDeleteRequestto process- Returns:
- the value of the processed
DeleteRequestto pass to the nextAccessPlugin - Throws:
StopProcessingException- thrown to halt processing when a critical issue occurs during processing. This is intended to prevent other plugins from processing as well.
-
processPostDelete
Processes aDeleteResponse, following the execution ofCatalogProvider.delete(DeleteRequest), to determine whether or not the user can access the Catalog operation- Parameters:
input- theDeleteResponseto process- Returns:
- the value of the processed
DeleteResponseto pass to the nextAccessPlugin - Throws:
StopProcessingException- thrown to halt processing when a critical issue occurs during processing. This is intended to prevent other plugins from processing as well.
-
processPreQuery
Processes aQueryRequest, prior to execution of theQuery, to determine whether or not the user can access the Catalog operation. The AccessPlugins will be run in the same order for both processPreQuery and processPostQuery- Parameters:
input- theQueryRequestto process- Returns:
- the value of the processed
QueryRequestto pass to the nextAccessPlugin - Throws:
StopProcessingException- thrown to halt processing when a critical issue occurs during processing. This is intended to prevent other plugins from processing as well.
-
processPostQuery
Processes aQueryResponse, following the execution of theQuery, to determine whether or not the user can access the Response. The AccessPlugins will be run in the same order for both processPreQuery and processPostQuery- Parameters:
input- theQueryResponseto process- Returns:
- the value of the processed
QueryResponseto pass to the nextAccessPlugin - Throws:
StopProcessingException- thrown to halt processing when a critical issue occurs during processing. This is intended to prevent other plugins from processing as well.
-
processPreResource
Processes aResourceRequest, prior to execution of theResourceRequest, to determine whether or not the user can access the Catalog operation. The AccessPlugins will be run in the same order for both processPreQuery and processPostQuery- Parameters:
input- theResourceRequestto process- Returns:
- the value of the processed
QueryRequestto pass to the nextAccessPlugin - Throws:
StopProcessingException- thrown to halt processing when a critical issue occurs during processing. This is intended to prevent other plugins from processing as well.
-
processPostResource
ResourceResponse processPostResource(ResourceResponse input, Metacard metacard) throws StopProcessingException Processes aResourceResponse, following the execution of theResourceRequest, to determine whether or not the user can access the Response. The AccessPlugins will be run in the same order for both processPreResource and processPostResource- Parameters:
input- theResourceResponseto process- Returns:
- the value of the processed
ResourceResponseto pass to the nextAccessPlugin - Throws:
StopProcessingException- thrown to halt processing when a critical issue occurs during processing. This is intended to prevent other plugins from processing as well.
-