Search in sources :

Example 1 with PendingDocumentTracker

use of edu.cornell.kfs.rass.batch.PendingDocumentTracker in project cu-kfs by CU-CommunityApps.

the class RassServiceImpl method updateKFS.

@Transactional
@Override
public Map<String, RassXmlFileProcessingResult> updateKFS(List<RassXmlFileParseResult> successfullyParsedFiles) {
    LOG.info("updateKFS, Processing " + successfullyParsedFiles.size() + " RASS XML files into KFS");
    PendingDocumentTracker documentTracker = new PendingDocumentTracker();
    Map<String, RassBusinessObjectUpdateResultGrouping<Agency>> agencyResults = updateBOs(successfullyParsedFiles, agencyDefinition, documentTracker);
    Map<String, RassBusinessObjectUpdateResultGrouping<Proposal>> proposalResults = updateBOs(successfullyParsedFiles, proposalDefinition, documentTracker);
    Map<String, RassBusinessObjectUpdateResultGrouping<Award>> awardResults = updateBOs(successfullyParsedFiles, awardDefinition, documentTracker);
    LOG.debug("updateKFS, NOTE: Proposal and Award processing still needs to be implemented!");
    rassUpdateService.waitForRemainingGeneratedDocumentsToFinish(documentTracker);
    return buildProcessingResults(successfullyParsedFiles, agencyResults, proposalResults, awardResults);
}
Also used : RassBusinessObjectUpdateResultGrouping(edu.cornell.kfs.rass.batch.RassBusinessObjectUpdateResultGrouping) PendingDocumentTracker(edu.cornell.kfs.rass.batch.PendingDocumentTracker) Transactional(org.springframework.transaction.annotation.Transactional)

Aggregations

PendingDocumentTracker (edu.cornell.kfs.rass.batch.PendingDocumentTracker)1 RassBusinessObjectUpdateResultGrouping (edu.cornell.kfs.rass.batch.RassBusinessObjectUpdateResultGrouping)1 Transactional (org.springframework.transaction.annotation.Transactional)1