diff -r 5315a5713dd5 -r b2e1b45382a4 src/net/java/otr4j/io/messages/DHKeyMessage.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/net/java/otr4j/io/messages/DHKeyMessage.java Fri Apr 15 03:01:09 2011 +0200 @@ -0,0 +1,53 @@ +/* + * otr4j, the open source java otr library. + * + * Distributable under LGPL license. + * See terms of license at gnu.org. + */ +package net.java.otr4j.io.messages; + +import javax.crypto.interfaces.DHPublicKey; + +/** + * + * @author George Politis + */ +public class DHKeyMessage extends AbstractEncodedMessage { + + // Fields. + public DHPublicKey dhPublicKey; + + // Ctor. + public DHKeyMessage(int protocolVersion, DHPublicKey dhPublicKey) { + super(MESSAGE_DHKEY, protocolVersion); + this.dhPublicKey = dhPublicKey; + } + + // Methods. + @Override + public int hashCode() { + final int prime = 31; + int result = super.hashCode(); + // TODO: Needs work. + result = prime * result + + ((dhPublicKey == null) ? 0 : dhPublicKey.hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (!super.equals(obj)) + return false; + if (getClass() != obj.getClass()) + return false; + DHKeyMessage other = (DHKeyMessage) obj; + if (dhPublicKey == null) { + if (other.dhPublicKey != null) + return false; + } else if (dhPublicKey.getY().compareTo(other.dhPublicKey.getY()) != 0) + return false; + return true; + } +}