use of org.openforis.concurrency.Job in project collect by openforis.
the class DataCleansingMetadataIntegrationTest method importMetadataTestFile.
private DataCleansingMetadata importMetadataTestFile(final String testFileName) {
Job job = new Job() {
protected void buildTasks() throws Throwable {
File file = getSystemResourceFile(testFileName);
DataCleansingImportTask importTask = applicationContext.getBean(DataCleansingImportTask.class);
importTask.setInputFile(file);
importTask.setSurvey(survey);
importTask.setActiveUser(adminUser);
addTask((Task) importTask);
}
};
jobManager.start(job, false);
if (job.isCompleted()) {
DataCleansingMetadata metadata = metadataManager.loadMetadata(survey);
return metadata;
} else {
throw new RuntimeException("Error importing metadata file: " + job.getErrorMessage(), job.getLastException());
}
}
use of org.openforis.concurrency.Job in project collect by openforis.
the class DataRestoreController method getRestoreDataRemotelyStatus.
@Secured({ UserRoles.ENTRY })
@RequestMapping(value = "/surveys/data/restorejobs/{jobId}/status.json", method = GET)
@ResponseBody
public RemoteDataRestoreResponse getRestoreDataRemotelyStatus(@PathVariable String jobId) throws IOException {
RemoteDataRestoreResponse response;
Job job = jobManager.getJob(jobId);
if (job == null || !(job instanceof DataRestoreJob)) {
response = new RemoteDataRestoreResponse();
response.setErrorStatus();
response.setErrorMessage("Job not found");
} else {
response = createRemoteDataRestoreResponse(job);
}
return response;
}
use of org.openforis.concurrency.Job in project collect by openforis.
the class DataRestoreController method abortRestoreDataRemotelyJob.
@RequestMapping(value = "/surveys/data/restore/jobs/{jobId}/abort.json", method = GET)
@ResponseBody
public RemoteDataRestoreResponse abortRestoreDataRemotelyJob(@PathVariable String jobId) throws IOException {
RemoteDataRestoreResponse response;
Job job = jobManager.getJob(jobId);
if (job == null || !(job instanceof DataRestoreJob)) {
response = new RemoteDataRestoreResponse();
response.setErrorStatus();
response.setErrorMessage("Job not found");
} else {
job.abort();
response = createRemoteDataRestoreResponse(job);
}
return response;
}
Aggregations