use of org.apache.axiom.om.OMFactory in project webservices-axiom by apache.
the class TestInsertSiblingAfter method runTest.
@Override
protected void runTest() throws Throwable {
OMFactory fac = metaFactory.getOMFactory();
OMElement parent = fac.createOMElement("test", null);
OMText text1 = fac.createOMText("text1");
OMText text2 = fac.createOMText("text2");
parent.addChild(text1);
text1.insertSiblingAfter(text2);
assertSame(parent, text2.getParent());
}
use of org.apache.axiom.om.OMFactory in project webservices-axiom by apache.
the class TestInsertSiblingAfterLastChild method runTest.
@Override
protected void runTest() throws Throwable {
OMFactory fac = metaFactory.getOMFactory();
OMNamespace ns = fac.createOMNamespace("http://www.testuri.com", "ns");
OMElement parent = fac.createOMElement("parent", ns);
// Create three OMElements
OMElement c1 = fac.createOMElement("c1", ns);
OMElement c2 = fac.createOMElement("c2", ns);
OMElement c3 = fac.createOMElement("c3", ns);
// Add c1 to parent using parent.addChild()
parent.addChild(c1);
// Add c2 to c1 as a sibling after
c1.insertSiblingAfter(c2);
// Now add c3 to parent using parent.addChild()
parent.addChild(c3);
assertAbout(xml()).that(xml(OMElement.class, parent)).ignoringRedundantNamespaceDeclarations().hasSameContentAs("<ns:parent xmlns:ns=\"http://www.testuri.com\">" + "<ns:c1 /><ns:c2 /><ns:c3 /></ns:parent>");
}
use of org.apache.axiom.om.OMFactory in project webservices-axiom by apache.
the class TestComplete method runTest.
@Override
protected void runTest() throws Throwable {
// Build a root element and child OMSE
OMFactory f = metaFactory.getOMFactory();
OMNamespace ns = f.createOMNamespace("http://www.sosnoski.com/uwjws/library", "");
OMNamespace rootNS = f.createOMNamespace("http://sampleroot", "rootPrefix");
OMElement child = f.createOMElement(new PullOMDataSource(TestDocument.DOCUMENT1.getContent()), "library", ns);
OMElement root = f.createOMElement("root", rootNS);
// Trigger expansion of the child OMSE
// This will cause the child to be partially parsed (i.e. incomplete)
child.getFirstOMChild();
// Add the child OMSE to the root.
root.addChild(child);
// Normally adding an incomplete child to a parent will
// cause the parent to be marked as incomplete.
// But OMSE's are self-contained...therefore the root
// should still be complete
assertTrue(!child.isComplete());
assertTrue(root.isComplete());
// Now repeat the test, but this time trigger the
// partial parsing of the child after adding it to the root.
child = f.createOMElement(new PullOMDataSource(TestDocument.DOCUMENT1.getContent()), "library", ns);
root = f.createOMElement("root", rootNS);
root.addChild(child);
// causes partial parsing...i.e. incomplete child
child.getFirstOMChild();
assertTrue(!child.isComplete());
assertTrue(root.isComplete());
}
use of org.apache.axiom.om.OMFactory in project webservices-axiom by apache.
the class TestDiscard method runTest.
@Override
protected void runTest() throws Throwable {
OMFactory factory = metaFactory.getOMFactory();
OMElement parent = factory.createOMElement("parent", null);
OMElement child1 = factory.createOMElement("child1", null, parent);
PullOMDataSource ds = new PullOMDataSource("<root><a/><b/></root>");
OMSourcedElement omse = factory.createOMElement(ds, "root", null);
parent.addChild(omse);
OMElement child2 = factory.createOMElement("child2", null, parent);
expansionStrategy.apply(omse);
omse.discard();
assertThat(child1.getNextOMSibling()).isSameAs(child2);
assertThat(ds.hasUnclosedReaders()).isFalse();
assertThat(ds.getReaderRequestCount()).isEqualTo(expansionStrategy == DONT_EXPAND ? 0 : 1);
}
use of org.apache.axiom.om.OMFactory in project webservices-axiom by apache.
the class TestName2QualifiedPrefix method runTest.
@Override
protected void runTest() throws Throwable {
OMFactory f = metaFactory.getOMFactory();
// Create OMSE with a DUMMYPREFIX prefix even though the underlying element uses the default prefix
OMNamespace rootNS = f.createOMNamespace("http://sampleroot", "rootPrefix");
OMNamespace ns = f.createOMNamespace("http://www.sosnoski.com/uwjws/library", "");
OMElement element = f.createOMElement(new PullOMDataSource(TestDocument.DOCUMENT2.getContent()), "library", ns);
OMElement root = f.createOMElement("root", rootNS);
root.addChild(element);
// Test getting the namespace, localpart and prefix. This should used not result in expansion
assertTrue(element.getLocalName().equals("library"));
assertTrue(element.getNamespace().getNamespaceURI().equals("http://www.sosnoski.com/uwjws/library"));
assertTrue(element.getNamespace().getPrefix().equals(""));
// Serialize and consume. This should not cause expansion and currently won't update
// the name of the element.
StringWriter writer = new StringWriter();
root.serializeAndConsume(writer);
String result = writer.toString();
assertTrue(element.getLocalName().equals("library"));
assertTrue(element.getNamespace().getNamespaceURI().equals("http://www.sosnoski.com/uwjws/library"));
assertTrue(element.getNamespace().getPrefix().equals(""));
assertTrue(result.indexOf("xmlns=") < // Make sure that the serialized string does not contain default prefix declaration
0);
assertTrue("Serialized text error" + result, result.indexOf("1930110111") > 0);
}
Aggregations