/** * Subclasses can override to customize the STAX result. * * @return a result for writing to */ protected Result createStaxResult() { return StaxUtils.getResult(eventWriter); }
T mappedFragment = (T) unmarshaller.unmarshal(StaxUtils.getSource(fragmentReader)); item = mappedFragment;
/** * Setup the fragmentReader to read the test input. */ @Override protected void setUp() throws Exception { Resource input = new ByteArrayResource(xml.getBytes()); eventReader = StaxUtils.createXmlInputFactory().createXMLEventReader( input.getInputStream()); fragmentReader = new DefaultFragmentEventReader(eventReader); }
T mappedFragment = (T) unmarshaller.unmarshal(StaxUtils.getSource(fragmentReader)); item = mappedFragment;
/** * Document with no fragments works OK. */ @Test public void testMoveCursorToNextFragmentOnMissing() throws XMLStreamException, FactoryConfigurationError, IOException { Resource resource = new ByteArrayResource(missingXml.getBytes()); XMLEventReader reader = StaxUtils.createXmlInputFactory().createXMLEventReader(resource.getInputStream()); assertFalse(source.moveCursorToNextFragment(reader)); }
/** * Subclasses can override to customize the STAX result. * * @return a result for writing to */ protected Result createStaxResult() { return StaxUtils.getResult(eventWriter); }
/** * Empty document works OK. */ @Test public void testMoveCursorToNextFragmentOnEmpty() throws XMLStreamException, FactoryConfigurationError, IOException { Resource resource = new ByteArrayResource(emptyXml.getBytes()); XMLEventReader reader = StaxUtils.createXmlInputFactory().createXMLEventReader(resource.getInputStream()); assertFalse(source.moveCursorToNextFragment(reader)); }
/** * Cursor is moved before beginning of next fragment. */ @Test public void testMoveCursorToNextFragment() throws XMLStreamException, FactoryConfigurationError, IOException { Resource resource = new ByteArrayResource(xml.getBytes()); XMLEventReader reader = StaxUtils.createXmlInputFactory().createXMLEventReader(resource.getInputStream()); final int EXPECTED_NUMBER_OF_FRAGMENTS = 2; for (int i = 0; i < EXPECTED_NUMBER_OF_FRAGMENTS; i++) { assertTrue(source.moveCursorToNextFragment(reader)); assertTrue(EventHelper.startElementName(reader.peek()).equals("fragment")); reader.nextEvent(); // move away from beginning of fragment } assertFalse(source.moveCursorToNextFragment(reader)); }