Class AccessInternalModuleImpl
- java.lang.Object
-
- fr.gouv.vitam.access.internal.core.AccessInternalModuleImpl
-
- All Implemented Interfaces:
AccessInternalModule
public class AccessInternalModuleImpl extends java.lang.Object implements AccessInternalModule
AccessModuleImpl implements AccessModule
-
-
Constructor Summary
Constructors Constructor Description AccessInternalModuleImpl()AccessModuleImpl constructorAccessInternalModuleImpl(LogbookLifeCyclesClientFactory logbookLifeCyclesClientFactory, LogbookOperationsClientFactory logbookOperationsClientFactory, StorageClientFactory storageClientFactory, WorkspaceClientFactory workspaceClientFactory, AdminManagementClientFactory adminManagementClientFactory, MetaDataClientFactory metaDataClientFactory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.List<StatusByAccessRequest>checkAccessRequestStatuses(java.util.List<AccessRequestReference> accessRequestReferences)voidcheckClassificationLevel(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.ResponsefindDIPByOperationId(java.lang.String id)retrieve a DIP file according to an operationIdjavax.ws.rs.core.ResponsefindTransferSIPByOperationId(java.lang.String id)retrieve a SIP file according to an operationIdjavax.ws.rs.core.ResponsegetAccessLog(com.fasterxml.jackson.databind.JsonNode params)Retrieve all accessLog by the concatenation of all accesslog files as InputStreamjavax.ws.rs.core.ResponsegetOneObjectFromObjectGroup(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 requestedvoidremoveAccessRequest(java.lang.String strategyId, java.lang.String accessRequestId)com.fasterxml.jackson.databind.JsonNodeselectObjectGroupById(com.fasterxml.jackson.databind.JsonNode jsonQuery, java.lang.String idObjectGroup)Retrieve an ObjectGroup by its id with results fields filtered based on given querycom.fasterxml.jackson.databind.JsonNodeselectObjects(com.fasterxml.jackson.databind.JsonNode jsonQuery)select Objectcom.fasterxml.jackson.databind.JsonNodeselectUnit(com.fasterxml.jackson.databind.JsonNode jsonQuery)select Unitcom.fasterxml.jackson.databind.JsonNodeselectUnitbyId(com.fasterxml.jackson.databind.JsonNode jsonQuery, java.lang.String idUnit)select Unit by idcom.fasterxml.jackson.databind.JsonNodeselectUnitsWithInheritedRules(com.fasterxml.jackson.databind.JsonNode jsonQuery)Select units by DSL and computes inherited rules for matching unitsjavax.ws.rs.core.ResponsestreamObjects(com.fasterxml.jackson.databind.JsonNode query)javax.ws.rs.core.ResponsestreamUnits(com.fasterxml.jackson.databind.JsonNode query)com.fasterxml.jackson.databind.JsonNodeupdateUnitById(com.fasterxml.jackson.databind.JsonNode queryJson, java.lang.String idUnit, java.lang.String requestId)update Unit by id
-
-
-
Constructor Detail
-
AccessInternalModuleImpl
public AccessInternalModuleImpl()
AccessModuleImpl constructor
-
AccessInternalModuleImpl
public AccessInternalModuleImpl(LogbookLifeCyclesClientFactory logbookLifeCyclesClientFactory, LogbookOperationsClientFactory logbookOperationsClientFactory, StorageClientFactory storageClientFactory, WorkspaceClientFactory workspaceClientFactory, AdminManagementClientFactory adminManagementClientFactory, MetaDataClientFactory metaDataClientFactory)
-
-
Method Detail
-
selectUnit
public com.fasterxml.jackson.databind.JsonNode selectUnit(com.fasterxml.jackson.databind.JsonNode jsonQuery) throws java.lang.IllegalArgumentException, InvalidParseOperationException, AccessInternalExecutionExceptionselect Unit- Specified by:
selectUnitin interfaceAccessInternalModule- Parameters:
jsonQuery- as String { $query : query}- Returns:
- the result of the select on Unit
- Throws:
InvalidParseOperationException- Throw if json format is not correctAccessInternalExecutionException- Throw if error occurs when send Unit to databasejava.lang.IllegalArgumentException- if json query is null
-
selectUnitbyId
public com.fasterxml.jackson.databind.JsonNode selectUnitbyId(com.fasterxml.jackson.databind.JsonNode jsonQuery, java.lang.String idUnit) throws InvalidParseOperationException, AccessInternalExecutionException, MetaDataNotFoundExceptionDescription copied from interface:AccessInternalModuleselect Unit by id- Specified by:
selectUnitbyIdin interfaceAccessInternalModule- Parameters:
jsonQuery- 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 databaseMetaDataNotFoundException
-
selectObjectGroupById
public com.fasterxml.jackson.databind.JsonNode selectObjectGroupById(com.fasterxml.jackson.databind.JsonNode jsonQuery, java.lang.String idObjectGroup) throws InvalidParseOperationException, AccessInternalExecutionException, MetaDataNotFoundExceptionDescription copied from interface:AccessInternalModuleRetrieve an ObjectGroup by its id with results fields filtered based on given query- Specified by:
selectObjectGroupByIdin interfaceAccessInternalModule- Parameters:
jsonQuery- the query DSL as a Json nodeidObjectGroup- the id of the ObjectGroup as- Returns:
- the ObjectGroup metadata as a JsonNode
- Throws:
InvalidParseOperationException- thrown if json query is not syntactically correctAccessInternalExecutionException- in case of access failureMetaDataNotFoundException
-
getOneObjectFromObjectGroup
public javax.ws.rs.core.Response getOneObjectFromObjectGroup(java.lang.String idObjectGroup, java.lang.String qualifier, int version, java.lang.String idUnit) throws StorageNotFoundException, AccessInternalExecutionException, MetaDataNotFoundException, InvalidParseOperationException, AccessInternalUnavailableDataFromAsyncOfferExceptionDescription copied from interface:AccessInternalModuleRetrieve an object as InputStream based on the associated ObjectGroupId and qualifier + version requested- Specified by:
getOneObjectFromObjectGroupin interfaceAccessInternalModule- 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 storageAccessInternalExecutionException- For other technical errorsMetaDataNotFoundExceptionInvalidParseOperationException- when a query is badly structuredAccessInternalUnavailableDataFromAsyncOfferException
-
getAccessLog
public javax.ws.rs.core.Response getAccessLog(com.fasterxml.jackson.databind.JsonNode params) throws AccessInternalExecutionException, StorageNotFoundException, java.text.ParseExceptionDescription copied from interface:AccessInternalModuleRetrieve all accessLog by the concatenation of all accesslog files as InputStream- Specified by:
getAccessLogin interfaceAccessInternalModule- Parameters:
params- a json containing query on StartDate or EndDate- Returns:
- the Storage response for the asked file
- Throws:
AccessInternalExecutionExceptionStorageNotFoundExceptionjava.text.ParseException
-
checkClassificationLevel
public void checkClassificationLevel(com.fasterxml.jackson.databind.JsonNode query) throws InvalidParseOperationExceptionDescription copied from interface:AccessInternalModulecheck ClassificationLevel in update Unit- Specified by:
checkClassificationLevelin interfaceAccessInternalModule- Parameters:
query- query- Throws:
InvalidParseOperationException- InvalidParseOperationException
-
createObjectAccessRequestIfRequired
public java.util.Optional<AccessRequestReference> createObjectAccessRequestIfRequired(java.lang.String idObjectGroup, java.lang.String qualifier, int version) throws MetaDataNotFoundException, InvalidParseOperationException, AccessInternalExecutionException
- Specified by:
createObjectAccessRequestIfRequiredin interfaceAccessInternalModule- Throws:
MetaDataNotFoundExceptionInvalidParseOperationExceptionAccessInternalExecutionException
-
checkAccessRequestStatuses
public java.util.List<StatusByAccessRequest> checkAccessRequestStatuses(java.util.List<AccessRequestReference> accessRequestReferences) throws AccessInternalExecutionException, AccessInternalIllegalOperationException
- Specified by:
checkAccessRequestStatusesin interfaceAccessInternalModule- Throws:
AccessInternalExecutionExceptionAccessInternalIllegalOperationException
-
removeAccessRequest
public void removeAccessRequest(java.lang.String strategyId, java.lang.String accessRequestId) throws AccessInternalExecutionException, AccessInternalIllegalOperationException- Specified by:
removeAccessRequestin interfaceAccessInternalModule- Throws:
AccessInternalExecutionExceptionAccessInternalIllegalOperationException
-
streamUnits
public javax.ws.rs.core.Response streamUnits(com.fasterxml.jackson.databind.JsonNode query) throws AccessInternalExecutionException, MetadataScrollLimitExceededException, MetadataScrollThresholdExceededException- Specified by:
streamUnitsin interfaceAccessInternalModule- Throws:
AccessInternalExecutionExceptionMetadataScrollLimitExceededExceptionMetadataScrollThresholdExceededException
-
streamObjects
public javax.ws.rs.core.Response streamObjects(com.fasterxml.jackson.databind.JsonNode query) throws AccessInternalExecutionException, MetadataScrollLimitExceededException, MetadataScrollThresholdExceededException- Specified by:
streamObjectsin interfaceAccessInternalModule- Throws:
AccessInternalExecutionExceptionMetadataScrollLimitExceededExceptionMetadataScrollThresholdExceededException
-
updateUnitById
public com.fasterxml.jackson.databind.JsonNode updateUnitById(com.fasterxml.jackson.databind.JsonNode queryJson, java.lang.String idUnit, java.lang.String requestId) throws MetaDataNotFoundException, java.lang.IllegalArgumentException, InvalidParseOperationException, AccessInternalExecutionException, UpdatePermissionException, AccessInternalRuleExecutionExceptionDescription copied from interface:AccessInternalModuleupdate Unit by id- Specified by:
updateUnitByIdin interfaceAccessInternalModule- Parameters:
queryJson- json update queryidUnit- as StringrequestId- the request id- Returns:
- the result of the update on Unit
- Throws:
MetaDataNotFoundException- Throw if unit is not foundjava.lang.IllegalArgumentException- Throw if error occurs when checking argumentInvalidParseOperationException- Throw if json format is not correctAccessInternalExecutionException- Throw if error occurs when send Unit to databaseAccessInternalRuleExecutionException- Throw When error occures on rules update checkUpdatePermissionException
-
findDIPByOperationId
public javax.ws.rs.core.Response findDIPByOperationId(java.lang.String id) throws AccessInternalExecutionExceptionDescription copied from interface:AccessInternalModuleretrieve a DIP file according to an operationId- Specified by:
findDIPByOperationIdin interfaceAccessInternalModule- Parameters:
id- operation id- Returns:
- zip file containing a DIP
- Throws:
AccessInternalExecutionException
-
findTransferSIPByOperationId
public javax.ws.rs.core.Response findTransferSIPByOperationId(java.lang.String id) throws AccessInternalExecutionExceptionDescription copied from interface:AccessInternalModuleretrieve a SIP file according to an operationId- Specified by:
findTransferSIPByOperationIdin interfaceAccessInternalModule- Parameters:
id- operation id- Returns:
- zip file containing a SIP
- Throws:
AccessInternalExecutionException
-
selectObjects
public com.fasterxml.jackson.databind.JsonNode selectObjects(com.fasterxml.jackson.databind.JsonNode jsonQuery) throws java.lang.IllegalArgumentException, InvalidParseOperationException, AccessInternalExecutionExceptionselect Object- Specified by:
selectObjectsin interfaceAccessInternalModule- Parameters:
jsonQuery- as String { $query : query}- Returns:
- the result of the select on object
- Throws:
InvalidParseOperationException- Throw if json format is not correctAccessInternalExecutionException- Throw if error occurs when send Object to databasejava.lang.IllegalArgumentException- if json query is null
-
selectUnitsWithInheritedRules
public com.fasterxml.jackson.databind.JsonNode selectUnitsWithInheritedRules(com.fasterxml.jackson.databind.JsonNode jsonQuery) throws java.lang.IllegalArgumentException, InvalidParseOperationException, AccessInternalExecutionExceptionDescription copied from interface:AccessInternalModuleSelect units by DSL and computes inherited rules for matching units- Specified by:
selectUnitsWithInheritedRulesin interfaceAccessInternalModule- Parameters:
jsonQuery- the query DSL- Returns:
- the selected units with there inherited rules
- Throws:
java.lang.IllegalArgumentException- Throw if json format is not correctInvalidParseOperationExceptionAccessInternalExecutionException- Throw if error occurs when send Unit to database
-
-