- if (XMLString::equals((*i)->getElementQName().getLocalPart(), LOCAL_NAME) &&
- XMLString::equals((*i)->getElementQName().getNamespaceURI(), m_discoNS.get())) {
- const AttributeExtensibleXMLObject* sub = dynamic_cast<const AttributeExtensibleXMLObject*>(*i);
- if (sub) {
- const XMLCh* val = sub->getAttribute(xmltooling::QName(nullptr,IndexedEndpointType::INDEX_ATTRIB_NAME));
- if (val) {
- int maxindex = XMLString::parseInt(val);
- if (ix.second <= maxindex)
- ix.second = maxindex + 1;
- break;
- }
+ const DiscoveryResponse* sub = dynamic_cast<DiscoveryResponse*>(*i);
+ if (sub) {
+ pair<bool,int> val = sub->getIndex();
+ if (val.first) {
+ if (ix.second <= val.second)
+ ix.second = val.second + 1;
+ break;