Interface AccessInternalModule
-
- All Known Implementing Classes:
AccessInternalModuleImpl
public interface AccessInternalModule
AccessModule interface for database operations in select
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.util.List<StatusByAccessRequest>
checkAccessRequestStatuses(java.util.List<AccessRequestReference> accessRequestReferences)
void
checkClassificationLevel(com.fasterxml.jackson.databind.JsonNode query)
check ClassificationLevel in update Unitjava.util.Optional<AccessRequestReference>
createObjectAccessRequestIfRequired(java.lang.String idObjectGroup, java.lang.String qualifier, int version)
javax.ws.rs.core.Response
findDIPByOperationId(java.lang.String id)
retrieve a DIP file according to an operationIdjavax.ws.rs.core.Response
findTransferSIPByOperationId(java.lang.String id)
retrieve a SIP file according to an operationIdjavax.ws.rs.core.Response
getAccessLog(com.fasterxml.jackson.databind.JsonNode params)
Retrieve all accessLog by the concatenation of all accesslog files as InputStreamjavax.ws.rs.core.Response
getOneObjectFromObjectGroup(java.lang.String idObjectGroup, java.lang.String qualifier, int version, java.lang.String idUnit)
Retrieve an object as InputStream based on the associated ObjectGroupId and qualifier + version requestedvoid
removeAccessRequest(java.lang.String storageStrategyId, java.lang.String accessRequestId)
com.fasterxml.jackson.databind.JsonNode
selectObjectGroupById(com.fasterxml.jackson.databind.JsonNode queryJson, java.lang.String idObjectGroup)
Retrieve an ObjectGroup by its id with results fields filtered based on given querycom.fasterxml.jackson.databind.JsonNode
selectObjects(com.fasterxml.jackson.databind.JsonNode queryJson)
select Objects Group based on DSL querycom.fasterxml.jackson.databind.JsonNode
selectUnit(com.fasterxml.jackson.databind.JsonNode queryJson)
select Unitcom.fasterxml.jackson.databind.JsonNode
selectUnitbyId(com.fasterxml.jackson.databind.JsonNode queryJson, java.lang.String idUnit)
select Unit by idcom.fasterxml.jackson.databind.JsonNode
selectUnitsWithInheritedRules(com.fasterxml.jackson.databind.JsonNode jsonQuery)
Select units by DSL and computes inherited rules for matching unitsjavax.ws.rs.core.Response
streamObjects(com.fasterxml.jackson.databind.JsonNode applyAccessContractRestrictionForObjectForSelect)
javax.ws.rs.core.Response
streamUnits(com.fasterxml.jackson.databind.JsonNode applyAccessContractRestrictionForUnitForSelect)
com.fasterxml.jackson.databind.JsonNode
updateUnitById(com.fasterxml.jackson.databind.JsonNode queryJson, java.lang.String idUnit, java.lang.String requestId)
update Unit by id
-
-
-
Method Detail
-
selectUnit
com.fasterxml.jackson.databind.JsonNode selectUnit(com.fasterxml.jackson.databind.JsonNode queryJson) throws InvalidParseOperationException, AccessInternalExecutionException, VitamDBException
select Unit- Parameters:
queryJson
- as String { $query : query}- Returns:
- the result of the select on Unit
- Throws:
java.lang.IllegalArgumentException
- if json query is nullInvalidParseOperationException
- Throw if json format is not correctAccessInternalExecutionException
- Throw if error occurs when send Unit to databaseVitamDBException
-
selectUnitbyId
com.fasterxml.jackson.databind.JsonNode selectUnitbyId(com.fasterxml.jackson.databind.JsonNode queryJson, java.lang.String idUnit) throws InvalidParseOperationException, AccessInternalExecutionException, MetaDataNotFoundException
select Unit by id- Parameters:
queryJson
- as String { $query : query}idUnit
- as String- Returns:
- the corresponding JsonNode
- Throws:
InvalidParseOperationException
- Throw if json format is not correctAccessInternalExecutionException
- Throw if error occurs when send Unit to databasejava.lang.IllegalArgumentException
- Throw if error occurs when checking argumentMetaDataNotFoundException
-
updateUnitById
com.fasterxml.jackson.databind.JsonNode updateUnitById(com.fasterxml.jackson.databind.JsonNode queryJson, java.lang.String idUnit, java.lang.String requestId) throws MetaDataNotFoundException, InvalidParseOperationException, AccessInternalExecutionException, java.lang.IllegalArgumentException, UpdatePermissionException, AccessInternalRuleExecutionException
update Unit by id- Parameters:
queryJson
- json update queryidUnit
- as StringrequestId
- the request id- Returns:
- the result of the update on Unit
- Throws:
InvalidParseOperationException
- Throw if json format is not correctAccessInternalExecutionException
- Throw if error occurs when send Unit to databaseAccessInternalRuleExecutionException
- Throw When error occures on rules update checkjava.lang.IllegalArgumentException
- Throw if error occurs when checking argumentMetaDataNotFoundException
- Throw if unit is not foundUpdatePermissionException
-
selectObjectGroupById
com.fasterxml.jackson.databind.JsonNode selectObjectGroupById(com.fasterxml.jackson.databind.JsonNode queryJson, java.lang.String idObjectGroup) throws InvalidParseOperationException, AccessInternalExecutionException, MetaDataNotFoundException
Retrieve an ObjectGroup by its id with results fields filtered based on given query- Parameters:
queryJson
- the query DSL as a Json nodeidObjectGroup
- the id of the ObjectGroup as- Returns:
- the ObjectGroup metadata as a JsonNode
- Throws:
java.lang.IllegalArgumentException
- in case of null/incorrect parametersInvalidParseOperationException
- thrown if json query is not syntactically correctAccessInternalExecutionException
- in case of access failureMetaDataNotFoundException
-
getOneObjectFromObjectGroup
javax.ws.rs.core.Response getOneObjectFromObjectGroup(java.lang.String idObjectGroup, java.lang.String qualifier, int version, java.lang.String idUnit) throws StorageNotFoundException, InvalidParseOperationException, MetaDataNotFoundException, AccessInternalExecutionException, AccessInternalUnavailableDataFromAsyncOfferException
Retrieve an object as InputStream based on the associated ObjectGroupId and qualifier + version requested- Parameters:
idObjectGroup
- The Object Group Idqualifier
- the qualifier to be retrieve (ie: Dissemination etc.)version
- the version number to getidUnit
- identifier of the parent archiveunit used to have access to the object- Returns:
- response
- Throws:
StorageNotFoundException
- If the object is not found in storageInvalidParseOperationException
- when a query is badly structuredAccessInternalExecutionException
- For other technical errorsMetaDataNotFoundException
AccessInternalUnavailableDataFromAsyncOfferException
-
getAccessLog
javax.ws.rs.core.Response getAccessLog(com.fasterxml.jackson.databind.JsonNode params) throws AccessInternalExecutionException, StorageNotFoundException, java.text.ParseException
Retrieve all accessLog by the concatenation of all accesslog files as InputStream- Parameters:
params
- a json containing query on StartDate or EndDate- Returns:
- the Storage response for the asked file
- Throws:
StorageNotFoundException
AccessInternalExecutionException
java.text.ParseException
-
findDIPByOperationId
javax.ws.rs.core.Response findDIPByOperationId(java.lang.String id) throws AccessInternalExecutionException
retrieve a DIP file according to an operationId- Parameters:
id
- operation id- Returns:
- zip file containing a DIP
- Throws:
AccessInternalExecutionException
-
findTransferSIPByOperationId
javax.ws.rs.core.Response findTransferSIPByOperationId(java.lang.String id) throws AccessInternalExecutionException
retrieve a SIP file according to an operationId- Parameters:
id
- operation id- Returns:
- zip file containing a SIP
- Throws:
AccessInternalExecutionException
-
selectObjects
com.fasterxml.jackson.databind.JsonNode selectObjects(com.fasterxml.jackson.databind.JsonNode queryJson) throws InvalidParseOperationException, AccessInternalExecutionException, VitamDBException
select Objects Group based on DSL query- Parameters:
queryJson
- as String { $query : query}- Returns:
- the result of the select on object
- Throws:
java.lang.IllegalArgumentException
- if json query is nullInvalidParseOperationException
- Throw if json format is not correctAccessInternalExecutionException
- Throw if error occurs when send Object to databaseVitamDBException
-
selectUnitsWithInheritedRules
com.fasterxml.jackson.databind.JsonNode selectUnitsWithInheritedRules(com.fasterxml.jackson.databind.JsonNode jsonQuery) throws java.lang.IllegalArgumentException, InvalidParseOperationException, AccessInternalExecutionException
Select units by DSL and computes inherited rules for matching units- Parameters:
jsonQuery
- the query DSL- Returns:
- the selected units with there inherited rules
- Throws:
java.lang.IllegalArgumentException
- Throw if json format is not correctAccessInternalExecutionException
- Throw if error occurs when send Unit to databaseInvalidParseOperationException
-
checkClassificationLevel
void checkClassificationLevel(com.fasterxml.jackson.databind.JsonNode query) throws java.lang.IllegalArgumentException, InvalidParseOperationException
check ClassificationLevel in update Unit- Parameters:
query
- query- Throws:
java.lang.IllegalArgumentException
- IllegalArgumentExceptionInvalidParseOperationException
- InvalidParseOperationException
-
createObjectAccessRequestIfRequired
java.util.Optional<AccessRequestReference> createObjectAccessRequestIfRequired(java.lang.String idObjectGroup, java.lang.String qualifier, int version) throws MetaDataNotFoundException, InvalidParseOperationException, AccessInternalExecutionException
-
checkAccessRequestStatuses
java.util.List<StatusByAccessRequest> checkAccessRequestStatuses(java.util.List<AccessRequestReference> accessRequestReferences) throws AccessInternalExecutionException, AccessInternalIllegalOperationException
-
removeAccessRequest
void removeAccessRequest(java.lang.String storageStrategyId, java.lang.String accessRequestId) throws AccessInternalExecutionException, AccessInternalIllegalOperationException
-
streamUnits
javax.ws.rs.core.Response streamUnits(com.fasterxml.jackson.databind.JsonNode applyAccessContractRestrictionForUnitForSelect) throws AccessInternalExecutionException, MetadataScrollLimitExceededException, MetadataScrollThresholdExceededException
-
streamObjects
javax.ws.rs.core.Response streamObjects(com.fasterxml.jackson.databind.JsonNode applyAccessContractRestrictionForObjectForSelect) throws AccessInternalExecutionException, MetadataScrollLimitExceededException, MetadataScrollThresholdExceededException
-
-