qu.java 2 KB
import com.google.common.base.Preconditions;
import com.google.common.base.Supplier;
import com.google.common.hash.AbstractStreamingHashFunction;
import com.google.common.hash.HashCode;
import com.google.common.hash.Hasher;
import java.io.Serializable;
import java.util.zip.Checksum;

public final class qu
  extends AbstractStreamingHashFunction
  implements Serializable
{
  private static final long serialVersionUID = 0L;
  private final Supplier<? extends Checksum> a;
  private final int b;
  private final String c;
  
  public qu(Supplier<? extends Checksum> paramSupplier, int paramInt, String paramString)
  {
    this.a = ((Supplier)Preconditions.checkNotNull(paramSupplier));
    if ((paramInt == 32) || (paramInt == 64)) {}
    for (boolean bool = true;; bool = false)
    {
      Preconditions.checkArgument(bool, "bits (%s) must be either 32 or 64", new Object[] { Integer.valueOf(paramInt) });
      this.b = paramInt;
      this.c = ((String)Preconditions.checkNotNull(paramString));
      return;
    }
  }
  
  public final int bits()
  {
    return this.b;
  }
  
  public final Hasher newHasher()
  {
    return new qu.a((Checksum)this.a.get(), (byte)0);
  }
  
  public final String toString()
  {
    return this.c;
  }
  
  final class a
    extends qq
  {
    private final Checksum b;
    
    private a(Checksum paramChecksum)
    {
      this.b = ((Checksum)Preconditions.checkNotNull(paramChecksum));
    }
    
    protected final void a(byte paramByte)
    {
      this.b.update(paramByte);
    }
    
    protected final void a(byte[] paramArrayOfByte, int paramInt1, int paramInt2)
    {
      this.b.update(paramArrayOfByte, paramInt1, paramInt2);
    }
    
    public final HashCode hash()
    {
      long l = this.b.getValue();
      if (qu.a(qu.this) == 32) {
        return HashCode.fromInt((int)l);
      }
      return HashCode.fromLong(l);
    }
  }
}


/* Location:              /home/merong/decompile/hackery-dex2jar.jar!/qu.class
 * Java compiler version: 6 (50.0)
 * JD-Core Version:       0.7.1
 */