Class LogbookResource


@Path("/logbook/v1") public class LogbookResource extends ApplicationStatusResource
  • Field Details

  • Constructor Details

  • Method Details

    • getOperation

      @GET @Path("/operations/{id_op}") @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response getOperation(@PathParam("id_op") String id, com.fasterxml.jackson.databind.JsonNode queryDsl, @HeaderParam("X-Sliced-Operations") boolean sliced, @HeaderParam("X-Cross-Tenant") boolean crossTenant)
      Selects an operation by id and queryDSL
      Parameters:
      id - operation ID
      queryDsl - the queryDsl containing the ID
      Returns:
      the response with a specific HTTP status
    • createOperation

      @POST @Path("/operations/{id_op}") @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response createOperation(@PathParam("id_op") String operationId, LogbookOperationParameters[] operations)
      Create or Select a new operation
      Parameters:
      operationId - path param, the operation id
      operations - the json serialized as a LogbookOperationParameters.
      Returns:
      the response with a specific HTTP status
    • updateOperation

      @PUT @Path("/operations/{id_op}") @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response updateOperation(@PathParam("id_op") String operationId, LogbookOperationParameters... operations)
      Append a new item on the given operation
      Parameters:
      operationId - the operation id
      operations - the json serialized as a LogbookOperationParameters.
      Returns:
      the response with a specific HTTP status
    • generateOperationTraceabilities

      @POST @Path("/operations/traceability") @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response generateOperationTraceabilities(@HeaderParam("X-Tenant-Id") String xTenantId, List<Integer> tenants)
      Run traceability secure operation for logbook
      Parameters:
      xTenantId - the tenant id
      Returns:
      the response with a specific HTTP status
    • selectOperation

      @GET @Path("/operations") @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response selectOperation(com.fasterxml.jackson.databind.JsonNode query, @HeaderParam("X-Sliced-Operations") boolean sliced, @HeaderParam("X-Cross-Tenant") boolean crossTenant)
      Select a list of operations
      Parameters:
      query - DSL as JsonNode
      sliced - true if sliced operations
      crossTenant - true to inclure admin tenant operations
      Returns:
      Response containt the list of loglook operation
    • getLastOperationByType

      @GET @Path("/lastOperationByType") @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response getLastOperationByType(String operationType)
    • getUnitLifeCyclesByOperation

      @GET @Path("/operations/{id_op}/unitlifecycles") @Consumes("application/json") @Produces("application/octet-stream") public javax.ws.rs.core.Response getUnitLifeCyclesByOperation(@PathParam("id_op") String operationId, @HeaderParam("X-Event-Status") String evtStatus, com.fasterxml.jackson.databind.JsonNode query)
      GET multiple Unit Life Cycles
      Parameters:
      operationId - the operation id
      evtStatus - the evenement status (commited / not_commited)
      query - as JsonNode
      Returns:
      the response with a specific HTTP status
    • createUnitLifeCyclesByOperation

      @POST @Path("/operations/{id_op}/unitlifecycles/{id_lc}") @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response createUnitLifeCyclesByOperation(@PathParam("id_op") String operationId, @PathParam("id_lc") String unitLcId, LogbookLifeCycleUnitParameters parameters)
      Create Unit Life Cycle
      Parameters:
      operationId - the operation id
      unitLcId - the life cycle id
      parameters - the json serialized as a LogbookLifeCycleUnitParameters.
      Returns:
      the response with a specific HTTP status
    • updateUnitLifeCyclesUnitTemporaryByOperation

      @POST @Path("/operations/{id_op}/bulklifecycles/unit/temporary") @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response updateUnitLifeCyclesUnitTemporaryByOperation(@PathParam("id_op") String operationId, List<LogbookLifeCycleParametersBulk> logbookLifeCycleParametersBulk)
    • updateUnitLifeCyclesGOTTemporaryByOperation

      @POST @Path("/operations/{id_op}/bulklifecycles/got/temporary") @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response updateUnitLifeCyclesGOTTemporaryByOperation(@PathParam("id_op") String operationId, List<LogbookLifeCycleParametersBulk> logbookLifeCycleParametersBulk)
    • updateUnitLifeCyclesUnitByOperation

      @POST @Path("/operations/{id_op}/bulklifecycles/unit") @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response updateUnitLifeCyclesUnitByOperation(@PathParam("id_op") String operationId, List<LogbookLifeCycleParametersBulk> logbookLifeCycleParametersBulk)
    • updateUnitLifeCyclesGOTByOperation

      @POST @Path("/operations/{id_op}/bulklifecycles/got") @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response updateUnitLifeCyclesGOTByOperation(@PathParam("id_op") String operationId, List<LogbookLifeCycleParametersBulk> logbookLifeCycleParametersBulk)
    • updateUnitLifeCyclesUnitTemporaryByOperation

      @PUT @Path("/operations/{id_op}/unitlifecycles/{id_lc}") @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response updateUnitLifeCyclesUnitTemporaryByOperation(@PathParam("id_op") String operationId, @PathParam("id_lc") String unitLcId, @HeaderParam("X-Event-Status") String evtStatus, LogbookLifeCycleUnitParameters parameters)
      Update Unit Life Cycle
      Parameters:
      operationId - the operation id
      unitLcId - the life cycle id
      evtStatus - the operation type : Update or Commit the lifeCycle
      parameters - the json serialized as a LogbookLifeCycleUnitParameters.
      Returns:
      the response with a specific HTTP status
    • deleteUnitLifeCyclesByOperation

      @DELETE @Path("/operations/{id_op}/unitlifecycles/{id_lc}") @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response deleteUnitLifeCyclesByOperation(@PathParam("id_op") String operationId, @PathParam("id_lc") String unitLcId)
      Delete Unit Life Cycle
      Parameters:
      operationId - the operation id
      unitLcId - the life cycle id
      Returns:
      the response with a specific HTTP status
    • commitUnitLifeCyclesByOperation

      @Deprecated @PUT @Path("/operations/{id_op}/unitlifecycles/{id_lc}/commit") @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response commitUnitLifeCyclesByOperation(@PathParam("id_op") String operationId, @PathParam("id_lc") String unitLcId)
      Deprecated.
      Commit Unit Life Cycle
      Parameters:
      operationId - the operation id
      unitLcId - the life cycle id
      Returns:
      the response with a specific HTTP status
    • bulkCreateUnit

      @POST @Path("/operations/{id_op}/unitlifecycles") @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response bulkCreateUnit(@PathParam("id_op") String idOp, String array)
      Lifecycle Unit Bulk Create
      Parameters:
      idOp - the operation id
      array - Lifecycle Unit Logbooks as ArrayNode
      Returns:
      Response of CREATED
    • createLifeCycleObjectGroupBulk

      @PUT @Path("/operations/{id_op}/lifecycles/objectgroup/bulk") @Consumes("application/json") public javax.ws.rs.core.Response createLifeCycleObjectGroupBulk(@PathParam("id_op") String idOp, List<LogbookLifeCycleObjectGroupModel> logbookLifeCycleModels)
      Lifecycle Unit Bulk Create
      Parameters:
      idOp - the operation id
      logbookLifeCycleModels - Lifecycle Unit Logbooks as ArrayNode
      Returns:
      Response of CREATED
    • createLifeCycleUnitBulk

      @PUT @Path("/operations/{id_op}/lifecycles/unit/bulk") @Consumes("application/json") public javax.ws.rs.core.Response createLifeCycleUnitBulk(@PathParam("id_op") String idOp, List<LogbookLifeCycleUnitModel> logbookLifeCycleModels)
      Lifecycle Unit Bulk Create
      Parameters:
      idOp - the operation id
      logbookLifeCycleModels - Lifecycle Unit Logbooks as ArrayNode
      Returns:
      Response of CREATED
    • updateBulkUnit

      @PUT @Path("/operations/{id_op}/unitlifecycles") @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response updateBulkUnit(@PathParam("id_op") String idOp, String arrayNodeLifecycle)
      Update Lifecycle With Bulk Mode
      Parameters:
      idOp - the operation id
      arrayNodeLifecycle - as ArrayNode of operations to add to existing Lifecycle Logbook entry
      Returns:
      Response with a status of OK if updated
    • getUnitLifeCycleById

      @GET @Path("/unitlifecycles/{id_lc}") @Produces("application/json") public javax.ws.rs.core.Response getUnitLifeCycleById(@PathParam("id_lc") String unitLifeCycleId, @HeaderParam("X-Event-Status") String evtStatus, com.fasterxml.jackson.databind.JsonNode queryDsl) throws VitamDBException
      gets the unit life cycle based on its id
      Parameters:
      unitLifeCycleId - the unit life cycle id
      evtStatus - the lifeCycle Status that we are looking for : COMMITTED or IN_PROCESS
      queryDsl - the query to get unit lfc
      Returns:
      the unit life cycle
      Throws:
      VitamDBException
    • getUnitLifeCycleStatus

      @HEAD @Path("/unitlifecycles/{id_lc}") public javax.ws.rs.core.Response getUnitLifeCycleStatus(@PathParam("id_lc") String unitLifeCycleId)
      Gets the unit life cycle status based on its id
      Parameters:
      unitLifeCycleId - the unit life cycle id
      Returns:
      the unit life cycle status : Committed or In process
    • getUnitLifeCycles

      @GET @Path("/unitlifecycles") @Produces("application/json") @Consumes("application/json") public javax.ws.rs.core.Response getUnitLifeCycles(com.fasterxml.jackson.databind.JsonNode queryDsl, @HeaderParam("X-Event-Status") String evtStatus) throws VitamDBException
      Gets a list of unit lifeCycles using a queryDsl
      Parameters:
      queryDsl - a DSL query
      evtStatus - the lifeCycle Status that we are looking for : COMMITTED or IN_PROCESS
      Returns:
      a list of unit lifeCycles
      Throws:
      VitamDBException
    • exportRawUnitLifecyclesByLastPersistedDate

      @POST @Path("/raw/unitlifecycles/bylastpersisteddate") @Produces("application/octet-stream") @Consumes("application/json") public javax.ws.rs.core.Response exportRawUnitLifecyclesByLastPersistedDate(RawLifecycleByLastPersistedDateRequest request)
      Export raw unit life cycles by request
      Parameters:
      request - the request
      Returns:
      a streamed list of unit lifeCycles
    • getRawUnitLifeCycleById

      @GET @Path("/raw/unitlifecycles/byid/{id}") @Produces("application/json") @Consumes("application/json") public javax.ws.rs.core.Response getRawUnitLifeCycleById(@PathParam("id") String id)
      Gets a list of raw unit lifeCycles by id
      Parameters:
      id - the id to retrieve
      Returns:
      a the unit lifecycle in raw format
    • getRawUnitLifeCycleByIds

      @GET @Path("/raw/unitlifecycles/byids") @Produces("application/json") @Consumes("application/json") public javax.ws.rs.core.Response getRawUnitLifeCycleByIds(List<String> ids)
      Gets a list of raw unit lifeCycles by ids
      Parameters:
      ids - the ids to retrieve
      Returns:
      a the unit lifecycle in raw format
    • getObjectGroupLifeCyclesByOperation

      @GET @Path("/operations/{id_op}/objectgrouplifecycles") @Consumes("application/json") @Produces("application/octet-stream") public javax.ws.rs.core.Response getObjectGroupLifeCyclesByOperation(@PathParam("id_op") String operationId, @HeaderParam("X-Event-Status") String evtStatus, com.fasterxml.jackson.databind.JsonNode query)
      GET multiple Unit Life Cycles
      Parameters:
      operationId - the operation id
      evtStatus - the evenement status (commited / not_commited)
      query - as JsonNode
      Returns:
      the response with a specific HTTP status
    • createObjectGroupLifeCyclesByOperation

      @POST @Path("/operations/{id_op}/objectgrouplifecycles/{id_lc}") @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response createObjectGroupLifeCyclesByOperation(@PathParam("id_op") String operationId, @PathParam("id_lc") String objGrpId, LogbookLifeCycleObjectGroupParameters parameters)
      Create object Group Life Cycle
      Parameters:
      operationId - the operation id
      objGrpId - the life cycle id
      parameters - the json serialized as a LogbookLifeCycleObjectGroupParameters.
      Returns:
      the response with a specific HTTP status
    • updateObjectGroupLifeCyclesByOperation

      @PUT @Path("/operations/{id_op}/objectgrouplifecycles/{id_lc}") @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response updateObjectGroupLifeCyclesByOperation(@PathParam("id_op") String operationId, @PathParam("id_lc") String objGrpId, @HeaderParam("X-Event-Status") String evtStatus, LogbookLifeCycleObjectGroupParameters parameters)
      Update object Group Life Cycle
      Parameters:
      operationId - the operation id
      objGrpId - the life cycle id
      evtStatus - the operation type : Update or Commit the lifeCycle
      parameters - the json serialized as a LogbookLifeCycleObjectGroupParameters.
      Returns:
      the response with a specific HTTP status
    • deleteObjectGroupLifeCyclesByOperation

      @DELETE @Path("/operations/{id_op}/objectgrouplifecycles/{id_lc}") @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response deleteObjectGroupLifeCyclesByOperation(@PathParam("id_op") String operationId, @PathParam("id_lc") String objGrpId)
      Delete object Group Life Cycle
      Parameters:
      operationId - the operation id
      objGrpId - the life cycle id
      Returns:
      the response with a specific HTTP status
    • commitObjectGroupLifeCyclesByOperation

      @Deprecated @PUT @Path("/operations/{id_op}/objectgrouplifecycles/{id_lc}/commit") @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response commitObjectGroupLifeCyclesByOperation(@PathParam("id_op") String operationId, @PathParam("id_lc") String objGrpId)
      Deprecated.
      Commit object Group Life Cycle
      Parameters:
      operationId - the operation id
      objGrpId - the life cycle id
      Returns:
      the response with a specific HTTP status
    • bulkCreateObjectGroup

      @POST @Path("/operations/{id_op}/objectgrouplifecycles") @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response bulkCreateObjectGroup(@PathParam("id_op") String idOp, String array)
      Lifecycle ObjectGroup Bulk Create
      Parameters:
      idOp - the operation id
      array - Lifecycle ObjectGroup Logbooks as ArrayNode
      Returns:
      Response of CREATED
    • updateBulkObjectGroup

      @PUT @Path("/operations/{id_op}/objectgrouplifecycles") @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response updateBulkObjectGroup(@PathParam("id_op") String idOp, String arrayNodeLifecycle)
      Update Lifecycle ObjectGroup With Bulk Mode
      Parameters:
      idOp - the operation id
      arrayNodeLifecycle - as ArrayNode of operations to add to existing Lifecycle Logbook entry
      Returns:
      Response with a status of OK if updated
    • getObjectGroupLifeCycleById

      @GET @Path("/objectgrouplifecycles/{id_lc}") @Produces("application/json") public javax.ws.rs.core.Response getObjectGroupLifeCycleById(@PathParam("id_lc") String objectGroupLifeCycleId, @HeaderParam("X-Event-Status") String evtStatus, com.fasterxml.jackson.databind.JsonNode queryDsl) throws VitamDBException
      Gets the object group life cycle based on its id and using the passed DSL query
      Parameters:
      objectGroupLifeCycleId - the object group life cycle id
      evtStatus - the lifeCycle Status that we are looking for : COMMITTED or IN_PROCESS
      queryDsl - the DSL query
      Returns:
      a Response that contains the object group life cycle
      Throws:
      VitamDBException
    • getObjectGroupLifeCycles

      @GET @Path("/objectgrouplifecycles") @Produces("application/json") public javax.ws.rs.core.Response getObjectGroupLifeCycles(@HeaderParam("X-Event-Status") String evtStatus, com.fasterxml.jackson.databind.JsonNode queryDsl) throws VitamDBException
      Gets the object group life cycles based on the passed DSL query
      Parameters:
      evtStatus - the lifeCycle Status that we are looking for : COMMITTED or IN_PROCESS
      queryDsl - the DSL query
      Returns:
      a Response that contains the object group life cycle
      Throws:
      VitamDBException
    • getObjectGroupLifeCycleStatus

      @HEAD @Path("/objectgrouplifecycles/{id_lc}") public javax.ws.rs.core.Response getObjectGroupLifeCycleStatus(@PathParam("id_lc") String objectGroupLifeCycleId)
      Gets the objectGroup life cycle status based on its id
      Parameters:
      objectGroupLifeCycleId - the object group cycle id
      Returns:
      the object group cycle status : Committed or In process
    • exportRawObjectGroupLifecyclesByLastPersistedDate

      @POST @Path("/raw/objectgrouplifecycles/bylastpersisteddate") @Produces("application/octet-stream") @Consumes("application/json") public javax.ws.rs.core.Response exportRawObjectGroupLifecyclesByLastPersistedDate(RawLifecycleByLastPersistedDateRequest request)
      Export raw object group life cycles by request
      Parameters:
      request - the request
      Returns:
      a streamed list of unit lifeCycles
    • getRawObjectGroupLifeCycleById

      @GET @Path("/raw/objectgrouplifecycles/byid/{id}") @Produces("application/json") @Consumes("application/json") public javax.ws.rs.core.Response getRawObjectGroupLifeCycleById(@PathParam("id") String id)
      Gets a list of raw object group lifeCycles by id
      Parameters:
      id - the id to retrieve
      Returns:
      a the object group lifecycle in raw format
    • getRawObjectGroupLifeCycleByIds

      @GET @Path("/raw/objectgrouplifecycles/byids") @Produces("application/json") @Consumes("application/json") public javax.ws.rs.core.Response getRawObjectGroupLifeCycleByIds(List<String> ids)
      Gets a list of raw object group lifeCycles by ids
      Parameters:
      ids - the id to retrieve
      Returns:
      a the object group lifecycle in raw format
    • rollBackUnitLifeCyclesByOperation

      @DELETE @Path("/operations/{id_op}/unitlifecycles") public javax.ws.rs.core.Response rollBackUnitLifeCyclesByOperation(@PathParam("id_op") String operationId)
      Deletes all temporary Unit lifeCycles created during a given operation
      Parameters:
      operationId - the operation id
      Returns:
      a Response that contains the result of deletion operation
    • rollBackObjectGroupLifeCyclesByOperation

      @DELETE @Path("/operations/{id_op}/objectgrouplifecycles") public javax.ws.rs.core.Response rollBackObjectGroupLifeCyclesByOperation(@PathParam("id_op") String operationId)
      Deletes all temporary ObjectGroup lifeCycles created during a given operation
      Parameters:
      operationId - the operation id
      Returns:
      a Response that contains the result of deletion operation
    • traceabilityLfcUnit

      @POST @Path("/lifecycles/units/traceability") @Produces("application/json") public javax.ws.rs.core.Response traceabilityLfcUnit(@HeaderParam("X-Tenant-Id") String xTenantId)
      Runs unit lifecycle traceability
      Parameters:
      xTenantId - the tenant id
      Returns:
      the response with a specific HTTP status
    • traceabilityLfcObjectGroup

      @POST @Path("/lifecycles/objectgroups/traceability") @Produces("application/json") public javax.ws.rs.core.Response traceabilityLfcObjectGroup(@HeaderParam("X-Tenant-Id") String xTenantId)
      Runs object group lifecycle traceability
      Parameters:
      xTenantId - the tenant id
      Returns:
      the response with a specific HTTP status
    • checkLifecycleTraceabilityStatus

      @GET @Path("/lifecycles/traceability/check/{id}") @Produces("application/json") public javax.ws.rs.core.Response checkLifecycleTraceabilityStatus(@PathParam("id") String operationId)
      Runs unit lifecycle traceability
      Parameters:
      operationId - the process id
      Returns:
      the response with a specific HTTP status
    • reindex

      @Path("/reindex") @POST @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response reindex(IndexParameters indexParameters)
      Reindex a collection
      Parameters:
      indexParameters - parameters specifying what to reindex
      Returns:
      Response
    • changeIndexes

      @Path("/alias") @POST @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response changeIndexes(SwitchIndexParameters switchIndexParameters)
      Switch indexes
      Parameters:
      switchIndexParameters -
      Returns:
      Response
    • launchTraceabilityAudit

      @Path("/auditTraceability") @POST @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response launchTraceabilityAudit(AuditLogbookOptions options)
    • deleteObjectGroups

      @DELETE @Path("/objectgrouplifecycles/bulkDelete") @Produces("application/json") public javax.ws.rs.core.Response deleteObjectGroups(List<String> objectGroupIds)
    • deleteUnits

      @DELETE @Produces("application/json") @Path("/lifeCycleUnits/bulkDelete") public javax.ws.rs.core.Response deleteUnits(List<String> unitsIdentifier)
    • findLastLifecycleTraceabilityOperation

      @Path("/lastLifeCycleTraceabilityOperation/{eventType}") @GET @Produces("application/json") public javax.ws.rs.core.Response findLastLifecycleTraceabilityOperation(@PathParam("eventType") String eventType)