Dotname SDK Changelog =================== Changes in version 1.1.1.0 (26.09.2007) ----------------------------------- * Added "getXmlSchemas() : Set" method to EPPFactory, EPPMapFactory, EPPExtFactory, and the derived classes of EPPMapFactory and EPPExtFactory to specify the XML schemas that need to be pre-loaded. The schemaLocation attribute is optional with EPP RFC 4930, so dynamically loading the XML schemas will not consistently work. All XML schemas will be pre-loaded by EPPSchemaCachingParser based on the configured EPP.MapFactories and EPP.CmdRspExtensions. The order of the factories is signifant, where EPPHostMapFactory should precede EPPDomainMapFactory since the domain-1.0.xsd depends on the host-1.0.xsd. (James F. Gould) * Updated the gen, domain, host, contact, and tcp specifications and XML schemas to match the May 2007 RFC's. (James F. Gould) * Updated the copyright dates in license.txt to include 2004-2007. * Updated com.verisign.epp.domain.interfaces.EPPDomainTst, com.verisign.epp.domain.interfaces.EPPHostTst, com.verisign.epp.domain.interfaces.EPPContactTst to get the EPPResponse from the EPPCommandException within handleException(Exception) instead of relying on the EPPResponse.getResponse() method. (James F. Gould) * Updated com.verisign.epp.domain.interfaces.EPPDomain, com.verisign.epp.domain.interfaces.EPPHost, com.verisign.epp.domain.interfaces.EPPContact to not use a response attribute, but to use a local variable. Updated the getResponse() : EPPResponse method to call the session.getResponse() method to get the last response. (James F. Gould) * Updated EPPSession.processDocument to using the myResponse attribute instead of a local variable and to set it to null at the start of the method to properly support the public getResponse() : EPP Response method, which returns that last response of the last command if one was returned. (James F. Gould) * Added the EPP.MaxPacketSize configuration property to override the EPPXMLStream maximum packet size that was previous defined by the constant MAX_PACKET_SIZE. The EPPXMLStream.MAX_PACKET_SIZE has been renamed to EPPXMLStream.DEFAULT_MAX_PACKET_SIZE and used if the EPP.MaxPacketSize property is not set. (James F. Gould) * Added support for specifying a period of 0 to match the EPP specification as identified in SR 1288144. (James F. Gould) * Fixed EPPDomainInfoCmd.HOSTS_NONE constant to have a value of "none" instead of "del". (James F. Gould) * Updated EPPSession.endSession to ensure that the connection is closed even if the logout fails. (James F. Gould) * Added diagnostic logs to EPPSession to better track information associated with the state of the session. (James F. Gould) * Added EPPSessionPoolTst.testCloseSession() test and added a supporting change to GenHandler to test the server closing the connection before the client. (James F. Gould) * Added diagnostic logs to EPPServerThread to capture when a thread is started, when it is closing the connection, and when it is ending. (James F. Gould) * Changed "services mismatch" log from warn to debug level in EPPLoginCmd since this is a common use case. (James F. Gould) * Updated the EPPContactAddChange validation of optional fields for Contact update(Rupert Fernando) * Updated the EPPContactAddress to handle the street address correctly (Rupert Fernando) Changes in version 1.1.0.0 (25.09.2006) ----------------------------------- * Made EPPSession.endConnection public and added a call to EPPSession.endConnection within EPPSessionPoolableFactory.makeObject when an EPPCommandException is raised from EPPSession.initSession() which could cause a connection leak. (James F. Gould) * Updated EPPSessionPool to check that the aSession parameter is not null at the start of the invalidateObject and returnObject methods to ensure that numActive pool count does not go negative. which is an issue with the Jakarta Commons Object Pool. (James F. Gould) * Updated EPPSSLImpl.initialize() to reference EPPEnv.getSSLEnabledCipherSuites() and EPPEnv.getSSLEnabledProtocols. (James F. Gould) * Added EPPEnv.getSSLEnabledCipherSuites() : String[] based on the optional EPP.SSLEnabledCipherSuites property. (James F. Gould) * Added debug level logging of the supported protocols and cipher suites when a connection is made in com.verisign.epp.transport.client.EPPSSLClientSocket. (James F. Gould) * Updated gen epp.config and common-targets.xml to the com.verisign.epp.pool.EPPSystemSessionPoolTst test for local testing of the system pools under the gen build. (James F. Gould) * Allowed the setting of the authInfo when invoking any transfer operation with EPPDomain.sendTransfer(), EPPEmailFwd.sendTransfer(), EPPDefReg.sendTransfer(), and EPPNameWatch.sendTransfer(), which previously was only supported with the transfer request. This is based on SR 1156493. (James F. Gould) * Added support for mixed XML content in the msg element of the msgQ element of poll responses per SR #1020533 by updating EPPMsgQueue and adding a test case to EPPCodecTst. (James F. Gould) * Added support for timeinstant strings without the millisecond element in EPPUtil.decodeTimeInstance(String) : Date since milliseconds is optional. (James F. Gould) * Added optional EPP.SSLEnabledProtocols property based on SR #1017545. Added EPPEnv.getSSLEnabledProtocols() : String[], EPPSSLImpl.hasSSLEnabledProtocols() : boolean, and EPPSSLImpl.getSSLEnabledProtocols() : String[] methods. Updated EPPSSLClientSocket and HTTPSSocketFactory to set the enabled protocols based on the EPPSSL.getSSLEnabledProtocols method. (James F. Gould) Changes in version 1.0.3.0 (23.05.2006) ----------------------------------- * Explicitely set the pool minEvictableIdleTimeMillis configuration property to 0 in EPPSessionPool.initSinglePool and EPPSystemSessionPool.init to ensure that Generic Object Pool idle timeout checking is disabled. The EPPSessionPool handles EPP absoluate and idle timeouts. (James F. Gould) * Fix for SR #907237 where the epp.config Session Pool idleTimeout properties higher than timeBetweenEvictionRunsMillis properties resulted in the EPP Hello not be sent since the Evictor Thread called the EPPSessionPoolableFactory.passivateObject(Object) method which touched the session. The touch was moved up to EPPSessionPool.returnObject methods, removed from EPPSessionPoolableFactory, and a test was added to EPPSessionPoolTst for idle timeout. (James F. Gould). * Added test utility classes InvalidateSessionException and TestUtil, and updated EPPSessionPoolTst to use the new classes for providing a better sample of when to invalidate a session based on an exception. (James F. Gould) * Added the EPPResult.shouldCloseSession() : boolean method to for use in determine whether a server error should result in the closing/invalidation of the session. (James F. Gould) * Added support for either a boolean "1" or "true" and "0" or "false" in the EPPDomainCheckResult, EPPHostCheckResult, EPPEmailFwdCheckResult, and EPPDefRegCheckResult with use of new EPPUtil.decodeBooleanAttr and EPPUtil.encodeBooleanAttr methods. (James F. Gould) * Removed the validation for the authInfo with a transfer request in EPPNameWatchTransferCmd to allow the Stub Server to handle this validation. (James F. Gould) Changes in version 1.0.2.0 (21.12.2005) ----------------------------------- * Added handling empty reason element in EPPExtValue.decode(). (James F. Gould) * Fixed a bug in com.verisign.epp.codec.gen.EPPValue.decode where it required the namespace definition as an attribute of the sub-element. The namespace can now be defined anywhere in the XML. (James F. Gould) * Changed log level of services mismatch from error to warn in com.verisign.epp.codec.gen.EPPLoginCmd based on SR 652869. (James F. Gould) Changes in version 1.0.1.0 (14.11.2005) ----------------------------------- * Fixed an issue with EPPDomainInfoCmd when the hosts attribute is not set, which is the default, that caused the com.verisign.epp.codec.domain.EPPDomainTst test to fail. (James F. Gould) * Added the ability to set the client host name or IP address when creating a TCP or SSL connection. This ability was also added to the pools with the EPP.ClientHost or EPP.SessionPool..clientHost properties. Many files were modified to accommadate this feature. (James F. Gould) * Changed the EPPDomainPendActionMsg isSuccess and setSuccess methods to isPASuccess and setPASuccess so that they don't incorrectly override the same methods in the EPPResponse base class. Added additional codec and interfaces test code. (James F. Gould) * Fixed adding the svcExtension elements in EPPLoginCmd. The extservices attributes had to be set with EPPFactory.getInstance().getExtensions(). (James F. Gould)