public static <T extends ValidatingConfig<T>> T getObjectFromUri(final URI uri, final Class<T> objectType) throws Exception { if (uri == null) { return null; } log.info("Initializing an object of class " + objectType.getName() + " from xml file at: " + uri); return getObjectFromStream(uri, UriAccessor.accessUri(uri), objectType); }
public static <T extends ValidatingConfig<T>> T getObjectFromString(final String uri, final Class<T> objectType) throws Exception { if (uri == null) { return null; } log.info("Initializing an object of class " + objectType.getName() + " from xml file at: " + uri); return getObjectFromStream(new URI(uri), UriAccessor.accessUri(uri), objectType); }
@Test(groups = "fast") public void test() throws SAXException, InvalidConfigException, JAXBException, IOException, TransformerException, URISyntaxException, ValidationException { final InputStream is = new ByteArrayInputStream(TEST_XML.getBytes()); final XmlTestClass test = XMLLoader.getObjectFromStream(new URI("internal:/"), is, XmlTestClass.class); assertEquals(test.getFoo(), "foo"); assertEquals(test.getBar(), 1.0); assertEquals(test.getLala(), 42); } }
@Test(groups = "fast") public void test() throws Exception { final InputStream is = new ByteArrayInputStream(TEST_XML.getBytes()); final XmlTestClass test = XMLLoader.getObjectFromStream(new URI("internal:/"), is, XmlTestClass.class); assertEquals(test.getFoo(), "foo"); assertEquals(test.getBar(), 1.0); assertEquals(test.getLala(), 42); final String output = XMLWriter.writeXML(test, XmlTestClass.class); //System.out.println(output); assertEquals(output.replaceAll("\\s", ""), TEST_XML.replaceAll("\\s", "")); } }