/* * 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 java.security.PublicKey; import java.util.Arrays; /** @author George Politis */ public class SignatureX { // Fields. public PublicKey longTermPublicKey; public int dhKeyID; public byte[] signature; // Ctor. public SignatureX(PublicKey ourLongTermPublicKey, int ourKeyID, byte[] signature) { this.longTermPublicKey = ourLongTermPublicKey; this.dhKeyID = ourKeyID; this.signature = signature; } // Methods. @Override public int hashCode() { // TODO: Needs work. final int prime = 31; int result = 1; result = prime * result + dhKeyID; result = prime * result + ((longTermPublicKey == null) ? 0 : longTermPublicKey.hashCode()); result = prime * result + Arrays.hashCode(signature); return result; } @Override public boolean equals(Object obj) { // TODO: Needs work. if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; SignatureX other = (SignatureX) obj; if (dhKeyID != other.dhKeyID) return false; if (longTermPublicKey == null) { if (other.longTermPublicKey != null) return false; } else if (!longTermPublicKey.equals(other.longTermPublicKey)) return false; if (!Arrays.equals(signature, other.signature)) return false; return true; } }