@Override public void execute(ComputationStep.Context context) { try (DbSession dbSession = dbClient.openSession(false)) { Component project = treeRootHolder.getRoot(); dbClient.snapshotDao().switchIsLastFlagAndSetProcessedStatus(dbSession, project.getUuid(), analysisMetadataHolder.getUuid()); dbClient.componentDao().applyBChangesForRootComponentUuid(dbSession, project.getUuid()); dbSession.commit(); } }
@Test public void switchIsLastFlagAndSetProcessedStatus() { insertAnalysis("P1", "A1", SnapshotDto.STATUS_PROCESSED, true); insertAnalysis("P1", "A2", SnapshotDto.STATUS_UNPROCESSED, false); insertAnalysis("P2", "A3", SnapshotDto.STATUS_PROCESSED, true); db.commit(); underTest.switchIsLastFlagAndSetProcessedStatus(db.getSession(), "P1", "A2"); verifyStatusAndIsLastFlag("A1", SnapshotDto.STATUS_PROCESSED, false); verifyStatusAndIsLastFlag("A2", SnapshotDto.STATUS_PROCESSED, true); // other project is untouched verifyStatusAndIsLastFlag("A3", SnapshotDto.STATUS_PROCESSED, true); }
@Override public void execute() { try (DbSession dbSession = dbClient.openSession(false)) { Component project = treeRootHolder.getRoot(); dbClient.snapshotDao().switchIsLastFlagAndSetProcessedStatus(dbSession, project.getUuid(), analysisMetadataHolder.getUuid()); dbClient.componentDao().applyBChangesForRootComponentUuid(dbSession, project.getUuid()); dbSession.commit(); } }