use of org.apache.poi.xssf.usermodel.XSSFMap in project poi by apache.
the class MapInfo method readFrom.
public void readFrom(InputStream is) throws IOException {
try {
MapInfoDocument doc = MapInfoDocument.Factory.parse(is, DEFAULT_XML_OPTIONS);
mapInfo = doc.getMapInfo();
maps = new HashMap<Integer, XSSFMap>();
for (CTMap map : mapInfo.getMapArray()) {
maps.put((int) map.getID(), new XSSFMap(map, this));
}
} catch (XmlException e) {
throw new IOException(e.getLocalizedMessage());
}
}
use of org.apache.poi.xssf.usermodel.XSSFMap in project poi by apache.
the class TestXSSFExportToXML method testRefElementsInXmlSchema_Bugzilla_56730.
public void testRefElementsInXmlSchema_Bugzilla_56730() throws Exception {
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("56730.xlsx");
boolean found = false;
for (POIXMLDocumentPart p : wb.getRelations()) {
if (!(p instanceof MapInfo)) {
continue;
}
MapInfo mapInfo = (MapInfo) p;
XSSFMap map = mapInfo.getXSSFMapById(1);
assertNotNull("XSSFMap is null", map);
XSSFExportToXml exporter = new XSSFExportToXml(map);
ByteArrayOutputStream os = new ByteArrayOutputStream();
exporter.exportToXML(os, true);
String xmlData = os.toString("UTF-8");
assertNotNull(xmlData);
assertFalse(xmlData.equals(""));
assertEquals("2014-12-31", xmlData.split("<DATE>")[1].split("</DATE>")[0].trim());
assertEquals("12.5", xmlData.split("<REFELEMENT>")[1].split("</REFELEMENT>")[0].trim());
parseXML(xmlData);
found = true;
}
assertTrue(found);
}
use of org.apache.poi.xssf.usermodel.XSSFMap in project poi by apache.
the class TestXSSFExportToXML method testMultiTable.
public void testMultiTable() throws Exception {
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("CustomXMLMappings-complex-type.xlsx");
boolean found = false;
for (POIXMLDocumentPart p : wb.getRelations()) {
if (p instanceof MapInfo) {
MapInfo mapInfo = (MapInfo) p;
XSSFMap map = mapInfo.getXSSFMapById(2);
assertNotNull(map);
XSSFExportToXml exporter = new XSSFExportToXml(map);
ByteArrayOutputStream os = new ByteArrayOutputStream();
exporter.exportToXML(os, true);
String xml = os.toString("UTF-8");
assertNotNull(xml);
String[] regexConditions = { "<MapInfo", "</MapInfo>", "<Schema ID=\"1\" Namespace=\"\" SchemaRef=\"\"/>", "<Schema ID=\"4\" Namespace=\"\" SchemaRef=\"\"/>", "DataBinding", "Map Append=\"false\" AutoFit=\"false\" ID=\"1\"", "Map Append=\"false\" AutoFit=\"false\" ID=\"5\"" };
for (String condition : regexConditions) {
Pattern pattern = Pattern.compile(condition);
Matcher matcher = pattern.matcher(xml);
assertTrue(matcher.find());
}
}
found = true;
}
assertTrue(found);
}
use of org.apache.poi.xssf.usermodel.XSSFMap in project poi by apache.
the class TestXSSFExportToXML method testExportToXMLInverseOrder.
public void testExportToXMLInverseOrder() throws Exception {
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("CustomXmlMappings-inverse-order.xlsx");
boolean found = false;
for (POIXMLDocumentPart p : wb.getRelations()) {
if (!(p instanceof MapInfo)) {
continue;
}
MapInfo mapInfo = (MapInfo) p;
XSSFMap map = mapInfo.getXSSFMapById(1);
XSSFExportToXml exporter = new XSSFExportToXml(map);
ByteArrayOutputStream os = new ByteArrayOutputStream();
exporter.exportToXML(os, true);
String xml = os.toString("UTF-8");
assertNotNull(xml);
assertFalse(xml.equals(""));
String docente = xml.split("<DOCENTE>")[1].split("</DOCENTE>")[0].trim();
String nome = xml.split("<NOME>")[1].split("</NOME>")[0].trim();
String tutor = xml.split("<TUTOR>")[1].split("</TUTOR>")[0].trim();
String cdl = xml.split("<CDL>")[1].split("</CDL>")[0].trim();
String durata = xml.split("<DURATA>")[1].split("</DURATA>")[0].trim();
String argomento = xml.split("<ARGOMENTO>")[1].split("</ARGOMENTO>")[0].trim();
String progetto = xml.split("<PROGETTO>")[1].split("</PROGETTO>")[0].trim();
String crediti = xml.split("<CREDITI>")[1].split("</CREDITI>")[0].trim();
assertEquals("aa", nome);
assertEquals("aaaa", docente);
assertEquals("gvvv", tutor);
assertEquals("g", cdl);
assertEquals("gs", durata);
assertEquals("ds", argomento);
assertEquals("ro", progetto);
assertEquals("ro", crediti);
parseXML(xml);
found = true;
}
assertTrue(found);
}
use of org.apache.poi.xssf.usermodel.XSSFMap in project poi by apache.
the class TestXSSFExportToXML method testXPathOrdering.
public void testXPathOrdering() {
XSSFWorkbook wb = XSSFTestDataSamples.openSampleWorkbook("CustomXmlMappings-inverse-order.xlsx");
boolean found = false;
for (POIXMLDocumentPart p : wb.getRelations()) {
if (p instanceof MapInfo) {
MapInfo mapInfo = (MapInfo) p;
XSSFMap map = mapInfo.getXSSFMapById(1);
XSSFExportToXml exporter = new XSSFExportToXml(map);
assertEquals(1, exporter.compare("/CORSO/DOCENTE", "/CORSO/NOME"));
assertEquals(-1, exporter.compare("/CORSO/NOME", "/CORSO/DOCENTE"));
}
found = true;
}
assertTrue(found);
}
Aggregations