Example usage for com.google.common.hash PrimitiveSink putInt

List of usage examples for com.google.common.hash PrimitiveSink putInt

Introduction

In this page you can find the example usage for com.google.common.hash PrimitiveSink putInt.

Prototype

PrimitiveSink putInt(int i);

Source Link

Document

Puts an int into this sink.

Usage

From source file:org.largecollections.FastIntIntCacheMap.java

private void initializeBloomFilter() {
    this.myFunnel = new Funnel<Integer>() {
        public void funnel(Integer obj, PrimitiveSink into) {
            into.putInt(Math.abs(obj.hashCode()));

        }//w  ww.j a v a 2  s  .co  m
    };
    this.bloomFilter = BloomFilter.create(myFunnel, this.bloomFilterSize);
}

From source file:com.axiomine.largecollections.util.LargeCollection.java

protected void initializeBloomFilter() {
    this.myFunnel = new Funnel() {
        public void funnel(Object obj, PrimitiveSink into) {
            into.putInt(obj.hashCode());
        }//from w ww  . j  a va  2 s .  c  o  m
    };
    float defaultFalsePositives = 0.03f;
    if (!StringUtils.isBlank(System.getProperty(LargeCollection.OVERRIDE_BF_FPP))) {
        String fpp = System.getProperty(LargeCollection.OVERRIDE_BF_FPP);
        try {
            float f = Float.parseFloat(fpp);
            if (f <= 0 || f > 0.2) {
                throw new RuntimeException(
                        "Bloom filter false postives probability range should be between 0 (excluded) and 0.2 (included), provided value = "
                                + f);
            } else {
                defaultFalsePositives = f;
            }
        } catch (Exception ex) {
            throw Throwables.propagate(ex);
        }
    }
    this.bloomFilter = BloomFilter.create(myFunnel, this.bloomFilterSize, defaultFalsePositives);
}

From source file:org.largecollections.CacheSetWithUnqHashCode.java

private void initializeBloomFilter() {
    this.myFunnel = new Funnel<Integer>() {
        public void funnel(Integer obj, PrimitiveSink into) {
            into.putInt(obj);

        }/* w w  w . j a  va 2  s  .c o m*/
    };
    this.bloomFilter = BloomFilter.create(myFunnel, this.bloomFilterSize);
}

From source file:org.largecollections.MapFactory.java

private void initializeBloomFilter() {
    this.myFunnel = new Funnel<K>() {
        public void funnel(K obj, PrimitiveSink into) {
            into.putInt(Math.abs(obj.hashCode()));

        }/* w  w w .  j  ava 2  s  . co m*/
    };
    this.bloomFilter = BloomFilter.create(myFunnel, this.bloomFilterSize);
}

From source file:iox.easycache.internal.AnyFunnel.java

@Override
public void funnel(Object data, PrimitiveSink sink) {
    sink.putByte(MARK);//from   w  w w  .j  av a  2s.  c o  m
    if (data == null)
        sink.putByte(NUL);
    else if (data instanceof byte[])
        sink.putBytes((byte[]) data);
    else if (data instanceof char[])
        sink.putString(new CharArray((char[]) data), Util.UTF);
    else if (data instanceof String)
        sink.putString((String) data, Util.UTF);
    else if (data instanceof boolean[]) {
        for (boolean e : (boolean[]) data)
            sink.putBoolean(e);
    } else if (data instanceof short[]) {
        for (short e : (short[]) data)
            sink.putShort(e);
    } else if (data instanceof int[]) {
        for (int e : (int[]) data)
            sink.putInt(e);
    } else if (data instanceof long[]) {
        for (long e : (long[]) data)
            sink.putLong(e);
    } else if (data instanceof float[]) {
        for (float e : (float[]) data)
            sink.putFloat(e);
    } else if (data instanceof double[]) {
        for (double e : (double[]) data)
            sink.putDouble(e);
    } else if (data instanceof Object[]) {
        for (Object e : (Object[]) data)
            funnel(e, sink);
    } else if (data instanceof Boolean)
        sink.putBoolean((Boolean) data);
    else if (data instanceof Byte)
        sink.putByte((Byte) data);
    else if (data instanceof Character)
        sink.putChar((Character) data);
    else if (data instanceof Short)
        sink.putShort((Short) data);
    else if (data instanceof Integer)
        sink.putInt((Integer) data);
    else if (data instanceof Long)
        sink.putLong((Long) data);
    else if (data instanceof Float)
        sink.putFloat((Float) data);
    else if (data instanceof Double)
        sink.putDouble((Double) data);
    else {
        putObject(data, sink);
    }
}

From source file:io.github.maxymania.powercache.hash.AnyFunnel.java

private void funnel(Object data, PrimitiveSink sink, int dept) {
    if (dept > 80) {
        sink.putByte(ONE);/*from  ww  w  . j av  a2  s  .  c  o  m*/
        return;
    }
    sink.putByte(MARK);
    if (data == null) {
        sink.putByte(NUL);
    } else if (data instanceof byte[]) {
        sink.putBytes((byte[]) data);
    } else if (data instanceof char[]) {
        sink.putString(new CharArray((char[]) data), Util.UTF);
    } else if (data instanceof String) {
        sink.putString((String) data, Util.UTF);
    } else if (data instanceof boolean[]) {
        for (boolean e : (boolean[]) data) {
            sink.putBoolean(e);
        }
    } else if (data instanceof short[]) {
        for (short e : (short[]) data) {
            sink.putShort(e);
        }
    } else if (data instanceof int[]) {
        for (int e : (int[]) data) {
            sink.putInt(e);
        }
    } else if (data instanceof long[]) {
        for (long e : (long[]) data) {
            sink.putLong(e);
        }
    } else if (data instanceof float[]) {
        for (float e : (float[]) data) {
            sink.putFloat(e);
        }
    } else if (data instanceof double[]) {
        for (double e : (double[]) data) {
            sink.putDouble(e);
        }
    } else if (data instanceof Object[]) {
        for (Object e : (Object[]) data) {
            funnel(e, sink);
        }
    } else if (data instanceof Boolean) {
        sink.putBoolean((Boolean) data);
    } else if (data instanceof Byte) {
        sink.putByte((Byte) data);
    } else if (data instanceof Character) {
        sink.putChar((Character) data);
    } else if (data instanceof Short) {
        sink.putShort((Short) data);
    } else if (data instanceof Integer) {
        sink.putInt((Integer) data);
    } else if (data instanceof Long) {
        sink.putLong((Long) data);
    } else if (data instanceof Float) {
        sink.putFloat((Float) data);
    } else if (data instanceof Double) {
        sink.putDouble((Double) data);
    } else {
        putObject(data, sink, dept);
    }
}