ProtocolSocketFactory equals and hashCode don't support subclassing -------------------------------------------------------------------
Key: HTTPCLIENT-593 URL: http://issues.apache.org/jira/browse/HTTPCLIENT-593 Project: HttpComponents HttpClient Issue Type: Bug Components: HttpClient Affects Versions: 3.1 Alpha 1, Nightly Builds Reporter: Chris Audley Priority: Minor In the implemenation of equals and hashCode for the classes org.apache.commons.httpclient.protocol.DefaultProtocolSocketFactory org.apache.commons.httpclient.protocol.SSLProtocolSocketFactory The implementation of equals and hashCode attempts to make all instances of the classes equal. However, the manner in which the methods are coded makes it necessary for any subclass to implement equals and hashCode themselves. A minor change to the methods in these classes will make possible to subclass these factories without re-implementing the equals and hashCode. The method equals should be written as return ((obj != null) && obj.getClass().equals(getClass())); rather than return ((obj != null) && obj.getClass().equals(DefaultProtocolSocketFactory.class)); And similarly, the hashCode method should be return getClass().hashCode(); rather than return DefaultProtocolSocketFactory.class.hashCode(); -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]