IdMasks { public static IdMask<BigInteger> forBigInteger(Config config) { return new IdMask.BigIntegerIdMask(config); } private  IdMasks(); static IdMask<Long> forLongIds(Config config); static IdMask<LongTuple> forLongTuples(Config config); static IdMask<UUID> forUuids(Config config); static IdMask<byte[]> for128bitNumbers(Config config); static IdMask<BigInteger> forBigInteger(Config config);  }
@Test public void createForBigIntegers() { BigInteger id = BigInteger.ONE; IdMask<BigInteger> idMask = IdMasks.forBigInteger(Config.builder(Bytes.random(16).array()).build()); String encoded = idMask.mask(id); BigInteger decoded = idMask.unmask(encoded); assertEquals(id, decoded); }