use of org.hisp.dhis.dxf2.common.ImportOptions in project dhis2-core by dhis2.
the class DataValueSetServiceTest method testImportDataValuesXmlWithAttributePreheatCacheTrue.
@Test
public void testImportDataValuesXmlWithAttributePreheatCacheTrue() throws Exception {
in = new ClassPathResource("datavalueset/dataValueSetBAttribute.xml").getInputStream();
ImportOptions importOptions = new ImportOptions().setPreheatCache(true).setIdScheme(IdScheme.ATTR_ID_SCHEME_PREFIX + ATTRIBUTE_UID).setDataElementIdScheme(IdScheme.ATTR_ID_SCHEME_PREFIX + ATTRIBUTE_UID).setOrgUnitIdScheme(IdScheme.ATTR_ID_SCHEME_PREFIX + ATTRIBUTE_UID);
ImportSummary summary = dataValueSetService.saveDataValueSet(in, importOptions);
assertEquals(summary.getConflicts().toString(), 0, summary.getConflicts().size());
assertEquals(12, summary.getImportCount().getImported());
assertEquals(0, summary.getImportCount().getUpdated());
assertEquals(0, summary.getImportCount().getDeleted());
assertEquals(0, summary.getImportCount().getIgnored());
assertEquals(ImportStatus.SUCCESS, summary.getStatus());
assertImportDataValues(summary);
}
use of org.hisp.dhis.dxf2.common.ImportOptions in project dhis2-core by dhis2.
the class DataValueSetServiceTest method testImportDataValuesXmlWithCodePreheatCacheTrue.
@Test
public void testImportDataValuesXmlWithCodePreheatCacheTrue() throws Exception {
in = new ClassPathResource("datavalueset/dataValueSetBCode.xml").getInputStream();
ImportOptions importOptions = new ImportOptions().setPreheatCache(true).setIdScheme("CODE").setDataElementIdScheme("CODE").setOrgUnitIdScheme("CODE");
ImportSummary summary = dataValueSetService.saveDataValueSet(in, importOptions);
assertEquals(summary.getConflicts().toString(), 0, summary.getConflicts().size());
assertEquals(12, summary.getImportCount().getImported());
assertEquals(0, summary.getImportCount().getUpdated());
assertEquals(0, summary.getImportCount().getDeleted());
assertEquals(0, summary.getImportCount().getIgnored());
assertEquals(ImportStatus.SUCCESS, summary.getStatus());
assertImportDataValues(summary);
}
use of org.hisp.dhis.dxf2.common.ImportOptions in project dhis2-core by dhis2.
the class DataValueSetServiceTest method testImportDataValuesXmlDryRun.
@Test
public void testImportDataValuesXmlDryRun() throws Exception {
in = new ClassPathResource("datavalueset/dataValueSetB.xml").getInputStream();
ImportOptions importOptions = new ImportOptions().setDryRun(true).setIdScheme("UID").setDataElementIdScheme("UID").setOrgUnitIdScheme("UID");
ImportSummary summary = dataValueSetService.saveDataValueSet(in, importOptions);
assertEquals(ImportStatus.SUCCESS, summary.getStatus());
assertEquals(summary.getConflicts().toString(), 0, summary.getConflicts().size());
Collection<DataValue> dataValues = mockDataValueBatchHandler.getInserts();
assertNotNull(dataValues);
assertEquals(0, dataValues.size());
}
use of org.hisp.dhis.dxf2.common.ImportOptions in project dhis2-core by dhis2.
the class DataValueSetController method postAdxDataValueSet.
@RequestMapping(method = RequestMethod.POST, consumes = CONTENT_TYPE_XML_ADX)
@PreAuthorize("hasRole('ALL') or hasRole('F_DATAVALUE_ADD')")
public void postAdxDataValueSet(ImportOptions importOptions, HttpServletRequest request, HttpServletResponse response) throws IOException {
if (importOptions.isAsync()) {
startAsyncImport(importOptions, ImportDataValueTask.FORMAT_ADX, request, response);
} else {
try {
ImportSummary summary = adxDataService.saveDataValueSet(request.getInputStream(), importOptions, null);
summary.setImportOptions(importOptions);
response.setContentType(CONTENT_TYPE_XML);
renderService.toXml(response.getOutputStream(), summary);
} catch (Exception ex) {
log.error("ADX Import error: ", ex);
throw ex;
}
}
}
use of org.hisp.dhis.dxf2.common.ImportOptions in project dhis2-core by dhis2.
the class DataValueSetController method postDxf2DataValueSet.
// -------------------------------------------------------------------------
// Post
// -------------------------------------------------------------------------
@RequestMapping(method = RequestMethod.POST, consumes = "application/xml")
@PreAuthorize("hasRole('ALL') or hasRole('F_DATAVALUE_ADD')")
public void postDxf2DataValueSet(ImportOptions importOptions, HttpServletRequest request, HttpServletResponse response) throws IOException {
if (importOptions.isAsync()) {
startAsyncImport(importOptions, ImportDataValueTask.FORMAT_XML, request, response);
} else {
ImportSummary summary = dataValueSetService.saveDataValueSet(request.getInputStream(), importOptions);
summary.setImportOptions(importOptions);
response.setContentType(CONTENT_TYPE_XML);
renderService.toXml(response.getOutputStream(), summary);
}
}
Aggregations