@Override public String toString() { char[] buffer = new char[26]; internalWriteCrockford(buffer, timestamp(), 10, 0); long value = ((mostSignificantBits & 0xFFFFL) << 24); long interim = (leastSignificantBits >>> 40); value = value | interim; internalWriteCrockford(buffer, value, 8, 10); internalWriteCrockford(buffer, leastSignificantBits, 8, 18); return new String(buffer); } }
@Override public String toString() { char[] buffer = new char[26]; internalWriteCrockford(buffer, timestamp(), 10, 0); long value = ((mostSignificantBits & 0xFFFFL) << 24); long interim = (leastSignificantBits >>> 40); value = value | interim; internalWriteCrockford(buffer, value, 8, 10); internalWriteCrockford(buffer, leastSignificantBits, 8, 18); return new String(buffer); } }
static String internalUIDString(long timestamp, Random random) { checkTimestamp(timestamp); char[] buffer = new char[26]; internalWriteCrockford(buffer, timestamp, 10, 0); // could use nextBytes(byte[] bytes) instead internalWriteCrockford(buffer, random.nextLong(), 8, 10); internalWriteCrockford(buffer, random.nextLong(), 8, 18); return new String(buffer); }
static String internalUIDString(long timestamp, Random random) { checkTimestamp(timestamp); char[] buffer = new char[26]; internalWriteCrockford(buffer, timestamp, 10, 0); // could use nextBytes(byte[] bytes) instead internalWriteCrockford(buffer, random.nextLong(), 8, 10); internalWriteCrockford(buffer, random.nextLong(), 8, 18); return new String(buffer); }