package com.ausregistry.jtoolkit2.se.idn.ietf; import com.ausregistry.jtoolkit2.se.ExtendedObjectType; import com.ausregistry.jtoolkit2.se.ResponseExtension; import com.ausregistry.jtoolkit2.xml.XMLDocument; import org.w3c.dom.Node; import javax.xml.xpath.XPathExpressionException; public class DomainInfoIetfIdnResponseExtension extends ResponseExtension { private static final String IETF_IDN_PREFIX = ExtendedObjectType.IETF_IDN.getName(); private final String dataExpr = ResponseExtension.EXTENSION_EXPR + "/" + IETF_IDN_PREFIX + ":RESPONSE_TYPE"; private boolean initialised; private String table; private String uname; @Override public void fromXML(XMLDocument xmlDoc) throws XPathExpressionException { Node dataNode = xmlDoc.getElement(replaceResponseType(dataExpr, ResponseExtension.DATA)); if (dataNode != null) { initialised = true; Node tableNode = xmlDoc.getElement( replaceResponseType(dataExpr + "/" + IETF_IDN_PREFIX + ":table", ResponseExtension.DATA)); Node unameNode = xmlDoc.getElement( replaceResponseType(dataExpr + "/" + IETF_IDN_PREFIX + ":uname", ResponseExtension.DATA)); table = tableNode.getTextContent(); if (unameNode != null) { uname = unameNode.getTextContent(); } } else { initialised = false; } } @Override public boolean isInitialised() { return initialised; } public String getUname() { return uname; } public String getTable() { return table; } }