src/net/java/otr4j/io/messages/QueryMessage.java
changeset 1044 197a85a35cba
parent 1043 7d6f2526244a
child 1045 e5a970600066
equal deleted inserted replaced
1043:7d6f2526244a 1044:197a85a35cba
     1 /*
       
     2  * otr4j, the open source java otr library.
       
     3  *
       
     4  * Distributable under LGPL license.
       
     5  * See terms of license at gnu.org.
       
     6  */
       
     7 package net.java.otr4j.io.messages;
       
     8 
       
     9 import java.util.List;
       
    10 
       
    11 /**
       
    12  * 
       
    13  * @author George Politis
       
    14  */
       
    15 public class QueryMessage extends AbstractMessage {
       
    16 	// Fields.
       
    17 	public List<Integer> versions;
       
    18 
       
    19 	// Ctor.
       
    20 	protected QueryMessage(int messageType, List<Integer> versions) {
       
    21 		super(messageType);
       
    22 		this.versions = versions;
       
    23 	}
       
    24 
       
    25 	public QueryMessage(List<Integer> versions) {
       
    26 		this(MESSAGE_QUERY, versions);
       
    27 	}
       
    28 
       
    29 	// Methods.
       
    30 	@Override
       
    31 	public int hashCode() {
       
    32 		final int prime = 31;
       
    33 		int result = super.hashCode();
       
    34 		result = prime * result
       
    35 				+ ((versions == null) ? 0 : versions.hashCode());
       
    36 		return result;
       
    37 	}
       
    38 
       
    39 	@Override
       
    40 	public boolean equals(Object obj) {
       
    41 		if (this == obj)
       
    42 			return true;
       
    43 		if (!super.equals(obj))
       
    44 			return false;
       
    45 		if (getClass() != obj.getClass())
       
    46 			return false;
       
    47 		QueryMessage other = (QueryMessage) obj;
       
    48 		if (versions == null) {
       
    49 			if (other.versions != null)
       
    50 				return false;
       
    51 		} else if (!versions.equals(other.versions))
       
    52 			return false;
       
    53 		return true;
       
    54 	}
       
    55 
       
    56 }