Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Licensed to the Apache Software Foundation (ASF) under one
   * or more contributor license agreements.  See the NOTICE file
   * distributed with this work for additional information
   * regarding copyright ownership.  The ASF licenses this file
   * to you under the Apache License, Version 2.0 (the
   * "License"); you may not use this file except in compliance
   * with the License.  You may obtain a copy of the License at
   *
  *     http://www.apache.org/licenses/LICENSE-2.0
  *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
 package org.apache.pig.backend.hadoop;
 
 
 
 
     private static final BinInterSedes bis = new BinInterSedes();
     private BigInteger value;
 
     public BigIntegerWritable() {
          = .;
     }
 
     public BigIntegerWritable(BigInteger bi) {
          = bi;
     }
 
     public void set(BigInteger value) {
         this. = value;
     }
 
     public BigInteger get() {
         return ;
     }
 
     @Override
     public int compareTo(BigIntegerWritable o) {
         return .compareTo(o.get());
     }
 
     @Override
     public int hashCode() {
         return .hashCode();
     }
 
     @Override
     public boolean equals(Object o) {
         if (!(o instanceof BigIntegerWritable)) {
             return false;
         }
         return compareTo((BigIntegerWritable)o) == 0;
     }
 
     @Override
     public String toString() {
         return .toString();
     }
 
     @Override
     public void readFields(DataInput inthrows IOException {
          = (BigInteger).readDatum(in);
     }
 
     @Override
     public void write(DataOutput outthrows IOException {
         .writeDatum(out.);
     }

    
A Comparator optimized for BigIntegerWritable.
 
     //TODO consider trying to do something a big more optimizied
     public static class Comparator extends WritableComparator {
         private BigIntegerWritable thisValue = new BigIntegerWritable();
         private BigIntegerWritable thatValue = new BigIntegerWritable();
 
         public Comparator() {
             super(BigIntegerWritable.class);
         }
 
         @Override
         public int compare(byte[] b1int s1int l1,
                            byte[] b2int s2int l2) {
             try {
                .readFields(new DataInputStream(new ByteArrayInputStream(b1)));
                .readFields(new DataInputStream(new ByteArrayInputStream(b2)));
            } catch (IOException e) {
                throw new RuntimeException("Unable to read field from byte array: " + e);
            }
            return .compareTo();
        }
    }
    // register this comparator
    static {
        WritableComparator.define(BigIntegerWritable.classnew Comparator());
    }
New to GrepCode? Check out our FAQ X