package com.ausregistry.jtoolkit2.se.generic; import com.ausregistry.jtoolkit2.EPPDateFormatter; import com.ausregistry.jtoolkit2.se.Response; import com.ausregistry.jtoolkit2.xml.XMLDocument; import javax.xml.xpath.XPathExpressionException; import java.util.GregorianCalendar; /** * Use this to access registrant transfer data for a domain as provided in an * EPP registrantTransfer response using the * {@code urn:X-ar:params:xml:ns:registrant-1.0} namespace. Such a service * element is sent by a compliant EPP server in response to a valid domain * registrant transfer command, implemented by the * DomainRegistrantTransferCommand. * * @see com.ausregistry.jtoolkit2.se.generic.DomainRegistrantTransferCommand */ public class DomainRegistrantTransferResponse extends Response { private static final long serialVersionUID = -5724827272682186647L; private static final String DOM_NAME_EXPR = "/e:epp/epp:response/epp:resData/registrant:rtrnData/registrant:name/text()"; private static final String DOM_EX_DATE_EXPR = "/e:epp/epp:response/epp:resData/registrant:rtrnData/registrant:exDate/text()"; private String name; private GregorianCalendar exDate; public DomainRegistrantTransferResponse() { super(); } public String getName() { return name; } public GregorianCalendar getExpiryDate() { return exDate; } @Override public void fromXML(XMLDocument xmlDoc) { super.fromXML(xmlDoc); if (!resultArray[0].succeeded()) { return; } try { name = xmlDoc.getNodeValue(DOM_NAME_EXPR); String exDateStr = xmlDoc.getNodeValue(DOM_EX_DATE_EXPR); exDate = EPPDateFormatter.fromXSDateTime(exDateStr); } catch (XPathExpressionException xpee) { maintLogger.warning(xpee.getMessage()); } } }