edu.umd.cloud9.io.pair
Class PairOfLongs

java.lang.Object
  extended by edu.umd.cloud9.io.pair.PairOfLongs
All Implemented Interfaces:
Comparable<PairOfLongs>, Writable, WritableComparable<PairOfLongs>

public class PairOfLongs
extends Object
implements WritableComparable<PairOfLongs>

WritableComparable representing a pair of longs. The elements in the pair are referred to as the left and right elements. The natural sort order is: first by the left element, and then by the right element.

Author:
Jimmy Lin

Nested Class Summary
static class PairOfLongs.Comparator
          Comparator optimized for PairOfLongs.
 
Constructor Summary
PairOfLongs()
          Creates a pair.
PairOfLongs(long left, long right)
          Creates a pair.
 
Method Summary
 PairOfLongs clone()
          Clones this object.
 int compareTo(PairOfLongs obj)
          Defines a natural sort order for pairs.
 boolean equals(Object obj)
          Checks two pairs for equality.
 long getKey()
          Returns the key (left element).
 long getLeftElement()
          Returns the left element.
 long getRightElement()
          Returns the right element.
 long getValue()
          Returns the value (right element).
 int hashCode()
          Returns a hash code value for the pair.
 void readFields(DataInput in)
          Deserializes this pair.
 void set(long left, long right)
          Sets the right and left elements of this pair.
 String toString()
          Generates human-readable String representation of this pair.
 void write(DataOutput out)
          Serializes this pair.
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

PairOfLongs

public PairOfLongs()
Creates a pair.


PairOfLongs

public PairOfLongs(long left,
                   long right)
Creates a pair.

Parameters:
left - the left element
right - the right element
Method Detail

readFields

public void readFields(DataInput in)
                throws IOException
Deserializes this pair.

Specified by:
readFields in interface Writable
Parameters:
in - source for raw byte representation
Throws:
IOException

write

public void write(DataOutput out)
           throws IOException
Serializes this pair.

Specified by:
write in interface Writable
Parameters:
out - where to write the raw byte representation
Throws:
IOException

getLeftElement

public long getLeftElement()
Returns the left element.

Returns:
the left element

getRightElement

public long getRightElement()
Returns the right element.

Returns:
the right element

getKey

public long getKey()
Returns the key (left element).

Returns:
the key

getValue

public long getValue()
Returns the value (right element).

Returns:
the value

set

public void set(long left,
                long right)
Sets the right and left elements of this pair.

Parameters:
left - the left element
right - the right element

equals

public boolean equals(Object obj)
Checks two pairs for equality.

Overrides:
equals in class Object
Parameters:
obj - object for comparison
Returns:
true if obj is equal to this object, false otherwise

compareTo

public int compareTo(PairOfLongs obj)
Defines a natural sort order for pairs. Pairs are sorted first by the left element, and then by the right element.

Specified by:
compareTo in interface Comparable<PairOfLongs>
Returns:
a value less than zero, a value greater than zero, or zero if this pair should be sorted before, sorted after, or is equal to obj.

hashCode

public int hashCode()
Returns a hash code value for the pair.

Overrides:
hashCode in class Object
Returns:
hash code for the pair

toString

public String toString()
Generates human-readable String representation of this pair.

Overrides:
toString in class Object
Returns:
human-readable String representation of this pair

clone

public PairOfLongs clone()
Clones this object.

Overrides:
clone in class Object
Returns:
clone of this object