assertEquals(0, tmpNode2.getChildNodes().getLength());
// validate all static event method definitions
for (int i = 0, nCount = s_metaclass.getEventCount(); i < nCount; ++i)
{
Event event = s_metaclass.getEvent(i);
if (event.isStatic())
{
String sEvent = XML.BASE_PREFIX + event.getName();
validateEventMethod(
XMLUtil.findChildElement(resource, "method", "name", sEvent), event, sEvent);
++nChildCount;
}
}
nChildCount += validateEventResources(resource, s_metaclass, true); //validate event resources
assertEquals(nChildCount, resource.getChildNodes().getLength());
// below here validate non-static OID dependent definitions
nChildCount = 6;
resource = XMLUtil.findChildElement(resource, "resource", "path", "{oid}");
assertNotNull(resource);
assertEquals(2, resource.getAttributes().getLength());
assertEquals("text/xml", XMLUtil.getStringAttr(resource, "queryType"));
param = XMLUtil.findChildElement(resource, "param", "href", "#authorization");
assertNotNull(param);
assertEquals(1, param.getAttributes().getLength());
assertEquals(0, param.getChildNodes().getLength());
tmpNode = XMLUtil.findChildElement(resource, "param", "name", "oid");
assertNotNull(tmpNode);
assertEquals(3, tmpNode.getAttributes().getLength());
assertEquals("template", XMLUtil.getStringAttr(tmpNode, "style"));
assertEquals(XML.XSD_NS + ":hexBinary", XMLUtil.getStringAttr(tmpNode, "type"));
assertEquals(0, tmpNode.getChildNodes().getLength());
method = XMLUtil.findChildElement(resource, "method", "href", "#read-request");
assertNotNull(method);
assertEquals(1, method.getAttributes().getLength());
assertEquals(0, method.getChildNodes().getLength());
method = XMLUtil.findChildElement(resource, "method", "name", "POST");
assertNotNull(method);
assertEquals(1, method.getAttributes().getLength());
assertEquals(2, method.getChildNodes().getLength());
tmpNode = XMLUtil.findChildElement(method, "request");
assertNotNull(tmpNode);
assertFalse(tmpNode.hasAttributes());
assertEquals(2, tmpNode.getChildNodes().getLength());
assertEquals("param", tmpNode.getFirstChild().getNodeName());
assertEquals("representation", tmpNode.getChildNodes().item(1).getNodeName());
assertEquals(2, tmpNode.getChildNodes().item(1).getAttributes().getLength());
assertEquals("text/xml", XMLUtil.getStringAttr(tmpNode.getChildNodes().item(1), "mediaType"));
assertEquals(XML.TNS_NS + ":TestMetaTypeChild",
XMLUtil.getStringAttr(tmpNode.getChildNodes().item(1), "element"));
assertEquals(0, tmpNode.getChildNodes().item(1).getChildNodes().getLength());
tmpNode = XMLUtil.findChildElement(method, "response");
assertNotNull(tmpNode);
assertEquals(0, tmpNode.getAttributes().getLength());
assertEquals(3, tmpNode.getChildNodes().getLength());
tmpNode2 = XMLUtil.findChildElement(tmpNode, "representation");
assertNotNull(tmpNode2);
assertEquals(2, tmpNode2.getAttributes().getLength());
assertEquals(XML.TNS_NS + ":TestMetaTypeChild", XMLUtil.getStringAttr(tmpNode2, "element"));
assertEquals(0, tmpNode2.getChildNodes().getLength());
tmpNode2 = XMLUtil.findChildElement(tmpNode, "fault");
assertNotNull(tmpNode2);
assertEquals(1, tmpNode2.getAttributes().getLength());
assertEquals("#exception", XMLUtil.getStringAttr(tmpNode2, "href"));
assertEquals(0, tmpNode2.getChildNodes().getLength());
method = XMLUtil.findChildElement(resource, "method", "name", "PUT");
assertNotNull(method);
assertEquals(1, method.getAttributes().getLength());
assertEquals(2, method.getChildNodes().getLength());
tmpNode = XMLUtil.findChildElement(method, "request");
assertNotNull(tmpNode);
assertFalse(tmpNode.hasAttributes());
assertEquals(2, tmpNode.getChildNodes().getLength());
assertEquals("param", tmpNode.getFirstChild().getNodeName());
assertEquals("representation", tmpNode.getChildNodes().item(1).getNodeName());
assertEquals(2, tmpNode.getChildNodes().item(1).getAttributes().getLength());
assertEquals("text/xml", XMLUtil.getStringAttr(tmpNode.getChildNodes().item(1), "mediaType"));
assertEquals(XML.TNS_NS + ":TestMetaTypeChild",
XMLUtil.getStringAttr(tmpNode.getChildNodes().item(1), "element"));
assertEquals(0, tmpNode.getChildNodes().item(1).getChildNodes().getLength());
tmpNode = XMLUtil.findChildElement(method, "response");
assertNotNull(tmpNode);
assertEquals(0, tmpNode.getAttributes().getLength());
assertEquals(2, tmpNode.getChildNodes().getLength());
tmpNode2 = XMLUtil.findChildElement(tmpNode, "representation");
assertNotNull(tmpNode2);
assertEquals(2, tmpNode2.getAttributes().getLength());
assertEquals(XML.TNS_NS + ":TestMetaTypeChild", XMLUtil.getStringAttr(tmpNode2, "element"));
assertEquals(0, tmpNode2.getChildNodes().getLength());
tmpNode2 = XMLUtil.findChildElement(tmpNode, "fault");
assertNotNull(tmpNode2);
assertEquals(1, tmpNode2.getAttributes().getLength());
assertEquals("#exception", XMLUtil.getStringAttr(tmpNode2, "href"));
assertEquals(0, tmpNode2.getChildNodes().getLength());
// validate all non-static event method definitions
for (int i = 0, nCount = s_metaclass.getEventCount(); i < nCount; ++i)
{
Event event = s_metaclass.getEvent(i);
if (!event.isStatic())
{
String sEvent = XML.BASE_PREFIX + event.getName();
validateEventMethod(
XMLUtil.findChildElement(resource, "method", "name", sEvent), event, sEvent);
++nChildCount;
}