encode unique keys with Base62 for shorter keys

This commit is contained in:
Sebastian Sdorra
2012-09-05 16:05:55 +02:00
parent e8d92f485c
commit 04e95abfab

View File

@@ -38,6 +38,8 @@ import com.google.inject.Singleton;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import sonia.scm.util.Base62;
//~--- JDK imports ------------------------------------------------------------ //~--- JDK imports ------------------------------------------------------------
import java.util.Random; import java.util.Random;
@@ -76,9 +78,9 @@ public class DefaultKeyGenerator implements KeyGenerator
{ {
StringBuilder buffer = new StringBuilder(); StringBuilder buffer = new StringBuilder();
buffer.append(Long.toHexString(System.currentTimeMillis())); buffer.append(Base62.encode(createRandom()));
buffer.append(Long.toHexString(sessionKey.incrementAndGet())); buffer.append(Base62.encode(System.currentTimeMillis()));
buffer.append(Integer.toHexString(createRandom())); buffer.append(Base62.encode(sessionKey.incrementAndGet()));
String key = buffer.toString(); String key = buffer.toString();