@Test @RunWithCustomExecutor public void should_return_ko_when_store_graph_handled() throws StoreGraphException { String errorMessage = "Error store unit graph in the offer"; when(storeGraphService.tryStoreGraph()).thenThrow(new RuntimeException(errorMessage)); Response response = reconstructionResource.storeGraph(); assertThat(response.getStatus()).isEqualTo(Status.INTERNAL_SERVER_ERROR.getStatusCode()); String responseEntity = (String) response.getEntity(); assertThat(responseEntity).isNotNull(); assertThat(responseEntity).contains(errorMessage); }
@Path(STORE_GRAPH_URI) @GET @Produces(MediaType.APPLICATION_JSON) @VitamAuthentication(authentLevel = AuthenticationLevel.BASIC_AUTHENT) public Response storeGraph() { try { VitamThreadUtils.getVitamSession().initIfAbsent(VitamConfiguration.getAdminTenant()); VitamThreadUtils.getVitamSession().setTenantId(VitamConfiguration.getAdminTenant()); Map<MetadataCollections, Integer> map = this.storeGraphService.tryStoreGraph(); return Response.ok().entity(map).build(); } catch (Exception e) { LOGGER.error(STORE_GRAPH_EXCEPTION_MSG, e); return Response.serverError().entity(ERROR_MSG + e.getMessage() + "\"}").build(); } }
MetadataManagementResource { @Path(STORE_GRAPH_URI) @GET @Produces(MediaType.APPLICATION_JSON) @VitamAuthentication(authentLevel = AuthenticationLevel.BASIC_AUTHENT) public Response storeGraph() { try { VitamThreadUtils.getVitamSession().initIfAbsent(VitamConfiguration.getAdminTenant()); VitamThreadUtils.getVitamSession().setTenantId(VitamConfiguration.getAdminTenant()); Map<MetadataCollections, Integer> map = this.storeGraphService.tryStoreGraph(); return Response.ok().entity(map).build(); } catch (Exception e) { LOGGER.error(STORE_GRAPH_EXCEPTION_MSG, e); return Response.serverError().entity(ERROR_MSG + e.getMessage() + "\"}").build(); } } }
MetadataManagementResource { @Path(STORE_GRAPH_URI) @GET @Produces(MediaType.APPLICATION_JSON) @VitamAuthentication(authentLevel = AuthenticationLevel.BASIC_AUTHENT) public Response storeGraph() { try { VitamThreadUtils.getVitamSession().initIfAbsent(VitamConfiguration.getAdminTenant()); VitamThreadUtils.getVitamSession().setTenantId(VitamConfiguration.getAdminTenant()); Map<MetadataCollections, Integer> map = this.storeGraphService.tryStoreGraph(); return Response.ok().entity(map).build(); } catch (Exception e) { LOGGER.error(STORE_GRAPH_EXCEPTION_MSG, e); return Response.serverError().entity(ERROR_MSG + e.getMessage() + "\"}").build(); } } @VisibleForTesting  MetadataManagementResource(VitamRepositoryProvider vitamRepositoryProvider,
        OffsetRepository offsetRepository, MetaDataImpl metadata, MetaDataConfiguration configuration); @VisibleForTesting  MetadataManagementResource(
        ReconstructionService reconstructionService,
        StoreGraphService storeGraphService,
        GraphComputeService graphComputeService,
        ReclassificationDistributionService reclassificationDistributionService,
        ProcessingManagementClientFactory processingManagementClientFactory,
        LogbookOperationsClientFactory logbookOperationsClientFactory,
        WorkspaceClientFactory workspaceClientFactory,
        MetaDataConfiguration configuration,
        ExportsPurgeService exportsPurgeService); }
MetadataManagementResource { @Path(STORE_GRAPH_URI) @GET @Produces(MediaType.APPLICATION_JSON) @VitamAuthentication(authentLevel = AuthenticationLevel.BASIC_AUTHENT) public Response storeGraph() { try { VitamThreadUtils.getVitamSession().initIfAbsent(VitamConfiguration.getAdminTenant()); VitamThreadUtils.getVitamSession().setTenantId(VitamConfiguration.getAdminTenant()); Map<MetadataCollections, Integer> map = this.storeGraphService.tryStoreGraph(); return Response.ok().entity(map).build(); } catch (Exception e) { LOGGER.error(STORE_GRAPH_EXCEPTION_MSG, e); return Response.serverError().entity(ERROR_MSG + e.getMessage() + "\"}").build(); } } @VisibleForTesting  MetadataManagementResource(VitamRepositoryProvider vitamRepositoryProvider,
        OffsetRepository offsetRepository, MetaDataImpl metadata, MetaDataConfiguration configuration); @VisibleForTesting  MetadataManagementResource(
        ReconstructionService reconstructionService,
        StoreGraphService storeGraphService,
        GraphComputeService graphComputeService,
        ReclassificationDistributionService reclassificationDistributionService,
        ProcessingManagementClientFactory processingManagementClientFactory,
        LogbookOperationsClientFactory logbookOperationsClientFactory,
        WorkspaceClientFactory workspaceClientFactory,
        MetaDataConfiguration configuration,
        ExportsPurgeService exportsPurgeService); @Path(RECONSTRUCTION_URI) @POST @Consumes(MediaType.APPLICATION_JSON) @Produces(MediaType.APPLICATION_JSON) @VitamAuthentication(authentLevel = AuthenticationLevel.BASIC_AUTHENT) Response reconstructCollection(List<ReconstructionRequestItem> reconstructionItems); @Path(STORE_GRAPH_URI) @GET @Produces(MediaType.APPLICATION_JSON) @VitamAuthentication(authentLevel = AuthenticationLevel.BASIC_AUTHENT) Response storeGraph(); @Path(STORE_GRAPH_PROGRESS_URI) @GET @Produces(MediaType.APPLICATION_JSON) @VitamAuthentication(authentLevel = AuthenticationLevel.BASIC_AUTHENT) Response storeGraphInProgress(); @Path(COMPUTE_GRAPH_URI) @POST @Consumes(MediaType.APPLICATION_JSON) @Produces(MediaType.APPLICATION_JSON) @VitamAuthentication(authentLevel = AuthenticationLevel.BASIC_AUTHENT) Response computeGraphByDSL(@HeaderParam(GlobalDataRest.X_TENANT_ID) Integer xTenantId, JsonNode queryDsl); @Path(COMPUTE_GRAPH_PROGRESS_URI) @GET @Produces(MediaType.APPLICATION_JSON) @VitamAuthentication(authentLevel = AuthenticationLevel.BASIC_AUTHENT) Response computeGraphByDSLInProgress(); @Path(COMPUTE_GRAPH_URI + "/{collection:" + UNIT + "|" + OBJECTGROUP + "|" + UNIT_OBJECTGROUP + "}") @POST @Consumes(MediaType.APPLICATION_JSON) @Produces(MediaType.APPLICATION_JSON) Response computeGraph(@PathParam("collection") GraphComputeAction action, Set<String> documentsId); @Path(EXPORT_RECLASSIFICATION_CHILD_NODES) @POST @Consumes(MediaType.APPLICATION_JSON) @Produces(MediaType.APPLICATION_JSON) Response exportReclassificationChildNodes(ReclassificationChildNodeExportRequest request); @Path(PURGE_GRAPH_ONLY_DOCUMENTS_URI + "/{collection:" + UNIT + "|" + OBJECTGROUP + "|" + UNIT_OBJECTGROUP + "}") @DELETE @Produces(MediaType.APPLICATION_JSON) Response purgeReconstructedDocumentsWithGraphOnlyData(@PathParam("collection") GraphComputeAction action); @Path(COMPUTED_INHERITED_RULES_OBSOLETE_URI) @POST @Produces(MediaType.APPLICATION_JSON) @VitamAuthentication(authentLevel = AuthenticationLevel.BASIC_AUTHENT) Response processObsoleteComputedInheritedRules(); @Path(PURGE_EXPIRED_DIP_FILES_URI) @DELETE @Produces(MediaType.APPLICATION_JSON) @VitamAuthentication(authentLevel = AuthenticationLevel.BASIC_AUTHENT) Response purgeExpiredDipFiles(); @Path(PURGE_EXPIRED_TRANSFER_SIP_FILES_URI) @DELETE @Produces(MediaType.APPLICATION_JSON) @VitamAuthentication(authentLevel = AuthenticationLevel.BASIC_AUTHENT) Response purgeExpiredTransfersSIPFiles(); @Path(MIGRATION_PURGE_EXPIRED_FROM_OFFERS) @DELETE @Produces(MediaType.APPLICATION_JSON) @VitamAuthentication(authentLevel = AuthenticationLevel.BASIC_AUTHENT) Response migrationPurgeDipFilesFromOffers(); }
MetadataManagementResource { @Path(STORE_GRAPH_URI) @GET @Produces(MediaType.APPLICATION_JSON) @VitamAuthentication(authentLevel = AuthenticationLevel.BASIC_AUTHENT) public Response storeGraph() { try { VitamThreadUtils.getVitamSession().initIfAbsent(VitamConfiguration.getAdminTenant()); VitamThreadUtils.getVitamSession().setTenantId(VitamConfiguration.getAdminTenant()); Map<MetadataCollections, Integer> map = this.storeGraphService.tryStoreGraph(); return Response.ok().entity(map).build(); } catch (Exception e) { LOGGER.error(STORE_GRAPH_EXCEPTION_MSG, e); return Response.serverError().entity(ERROR_MSG + e.getMessage() + "\"}").build(); } } @VisibleForTesting  MetadataManagementResource(VitamRepositoryProvider vitamRepositoryProvider,
        OffsetRepository offsetRepository, MetaDataImpl metadata, MetaDataConfiguration configuration); @VisibleForTesting  MetadataManagementResource(
        ReconstructionService reconstructionService,
        StoreGraphService storeGraphService,
        GraphComputeService graphComputeService,
        ReclassificationDistributionService reclassificationDistributionService,
        ProcessingManagementClientFactory processingManagementClientFactory,
        LogbookOperationsClientFactory logbookOperationsClientFactory,
        WorkspaceClientFactory workspaceClientFactory,
        MetaDataConfiguration configuration,
        ExportsPurgeService exportsPurgeService); @Path(RECONSTRUCTION_URI) @POST @Consumes(MediaType.APPLICATION_JSON) @Produces(MediaType.APPLICATION_JSON) @VitamAuthentication(authentLevel = AuthenticationLevel.BASIC_AUTHENT) Response reconstructCollection(List<ReconstructionRequestItem> reconstructionItems); @Path(STORE_GRAPH_URI) @GET @Produces(MediaType.APPLICATION_JSON) @VitamAuthentication(authentLevel = AuthenticationLevel.BASIC_AUTHENT) Response storeGraph(); @Path(STORE_GRAPH_PROGRESS_URI) @GET @Produces(MediaType.APPLICATION_JSON) @VitamAuthentication(authentLevel = AuthenticationLevel.BASIC_AUTHENT) Response storeGraphInProgress(); @Path(COMPUTE_GRAPH_URI) @POST @Consumes(MediaType.APPLICATION_JSON) @Produces(MediaType.APPLICATION_JSON) @VitamAuthentication(authentLevel = AuthenticationLevel.BASIC_AUTHENT) Response computeGraphByDSL(@HeaderParam(GlobalDataRest.X_TENANT_ID) Integer xTenantId, JsonNode queryDsl); @Path(COMPUTE_GRAPH_PROGRESS_URI) @GET @Produces(MediaType.APPLICATION_JSON) @VitamAuthentication(authentLevel = AuthenticationLevel.BASIC_AUTHENT) Response computeGraphByDSLInProgress(); @Path(COMPUTE_GRAPH_URI + "/{collection:" + UNIT + "|" + OBJECTGROUP + "|" + UNIT_OBJECTGROUP + "}") @POST @Consumes(MediaType.APPLICATION_JSON) @Produces(MediaType.APPLICATION_JSON) Response computeGraph(@PathParam("collection") GraphComputeAction action, Set<String> documentsId); @Path(EXPORT_RECLASSIFICATION_CHILD_NODES) @POST @Consumes(MediaType.APPLICATION_JSON) @Produces(MediaType.APPLICATION_JSON) Response exportReclassificationChildNodes(ReclassificationChildNodeExportRequest request); @Path(PURGE_GRAPH_ONLY_DOCUMENTS_URI + "/{collection:" + UNIT + "|" + OBJECTGROUP + "|" + UNIT_OBJECTGROUP + "}") @DELETE @Produces(MediaType.APPLICATION_JSON) Response purgeReconstructedDocumentsWithGraphOnlyData(@PathParam("collection") GraphComputeAction action); @Path(COMPUTED_INHERITED_RULES_OBSOLETE_URI) @POST @Produces(MediaType.APPLICATION_JSON) @VitamAuthentication(authentLevel = AuthenticationLevel.BASIC_AUTHENT) Response processObsoleteComputedInheritedRules(); @Path(PURGE_EXPIRED_DIP_FILES_URI) @DELETE @Produces(MediaType.APPLICATION_JSON) @VitamAuthentication(authentLevel = AuthenticationLevel.BASIC_AUTHENT) Response purgeExpiredDipFiles(); @Path(PURGE_EXPIRED_TRANSFER_SIP_FILES_URI) @DELETE @Produces(MediaType.APPLICATION_JSON) @VitamAuthentication(authentLevel = AuthenticationLevel.BASIC_AUTHENT) Response purgeExpiredTransfersSIPFiles(); @Path(MIGRATION_PURGE_EXPIRED_FROM_OFFERS) @DELETE @Produces(MediaType.APPLICATION_JSON) @VitamAuthentication(authentLevel = AuthenticationLevel.BASIC_AUTHENT) Response migrationPurgeDipFilesFromOffers(); static final String OBJECTGROUP; static final String UNIT; }