XML Adapter Classes
The Imixs-Core API provides adapter classes to transform a Imixs ItemCollection into a XML object and vice versa.
XMLDocumentAdapter
The XMLDocumentAdapter can be used to transform a Imixs ItemCollection in XML or transform a XML source into a ItemCollection:
ItemCollection workitem; .... XMLDocument xmlData = XMLDocumentAdapter.getDocument(workitem); ...
XMLDataCollectionAdapter
The XMLDataCollectionAdapter can be used to transform a List of Imixs ItemCollection elements in XML or transform a XML source into a List of ItemCollection:
List<ItemCollection> dataList; ... XMLDataCollection xmlData = XMLDataCollectionAdapter.getDataCollection(dataList); ...
The next example shows how to read a XML source into a XMLDataCollectionAdapter
List<ItemCollection> col = null; try { col = XMLDataCollectionAdapter .readCollectionFromInputStream(getClass().getResourceAsStream("/document-example.xml")); } catch (JAXBException e) { Assert.fail(); } catch (IOException e) { Assert.fail(); }
You can also write the data into a byte array using the XMLDataCollectionAdapter:
byte[] data = null; try { data = XMLDocumentAdapter.writeItemCollection(itemColSource); Assert.assertTrue(data.length > 100); } catch (JAXBException | IOException e) { Assert.fail(); }