Brooklyn

brooklyn.util.text
[Java] Class Identifiers

java.lang.Object
  brooklyn.util.text.Identifiers

public class Identifiers

Field Summary
static java.lang.String BASE64_VALID_CHARS

static java.lang.String ID_VALID_NONSTART_CHARS

static java.lang.String ID_VALID_START_CHARS

static java.lang.String JAVA_GENERATED_IDENTIFIERNONSTART_CHARS

static java.lang.String JAVA_GENERATED_IDENTIFIER_START_CHARS

static java.lang.String JAVA_VALID_NONSTART_CHARS

static java.lang.String JAVA_VALID_START_CHARS

 
Method Summary
static void appendBase64IdFromValueOfLength(long value, int length, java.lang.StringBuffer sb)

static void appendBase64IdFromValueOfLength(long value, int length, java.lang.StringBuilder sb)

static java.lang.String getBase64IdFromValue(long value)

static java.lang.String getBase64IdFromValue(long value, int length)

static boolean isValidJavaToken(java.lang.String s)

static boolean isValidToken(java.lang.String token, java.lang.String validStartChars, java.lang.String validSubsequentChars)

static java.lang.String makeRandomBase64Id(int length)

static java.lang.String makeRandomId(int l)

makes a random id string (letters and numbers) of the given length; starts with letter (upper or lower) so can be used as java-id; tests ensure random distribution, so random ID of length 5 is about 2^29 possibilities

static java.lang.String makeRandomJavaId(int l)

makes a random id string (letters and numbers) of the given length; starts with letter (upper or lower) so can be used as java-id; tests ensure random distribution, so random ID of length 5 is about 2^29 possibilities

static boolean randomBoolean()

static byte[] randomBytes(byte[] buf)

returns the array passed in

static byte[] randomBytes(int length)

static double randomDouble()

static int randomInt()

static int randomInt(int upbound)

returns in [0,upbound)

static long randomLong()

 
Methods inherited from class java.lang.Object
java.lang.Object#wait(), java.lang.Object#wait(long), java.lang.Object#wait(long, int), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll()
 

Field Detail

BASE64_VALID_CHARS

public static final java.lang.String BASE64_VALID_CHARS


ID_VALID_NONSTART_CHARS

public static final java.lang.String ID_VALID_NONSTART_CHARS


ID_VALID_START_CHARS

public static final java.lang.String ID_VALID_START_CHARS


JAVA_GENERATED_IDENTIFIERNONSTART_CHARS

public static final java.lang.String JAVA_GENERATED_IDENTIFIERNONSTART_CHARS


JAVA_GENERATED_IDENTIFIER_START_CHARS

public static final java.lang.String JAVA_GENERATED_IDENTIFIER_START_CHARS


JAVA_VALID_NONSTART_CHARS

public static final java.lang.String JAVA_VALID_NONSTART_CHARS


JAVA_VALID_START_CHARS

public static final java.lang.String JAVA_VALID_START_CHARS


 
Method Detail

appendBase64IdFromValueOfLength

public static void appendBase64IdFromValueOfLength(long value, int length, java.lang.StringBuffer sb)


appendBase64IdFromValueOfLength

public static void appendBase64IdFromValueOfLength(long value, int length, java.lang.StringBuilder sb)


getBase64IdFromValue

public static java.lang.String getBase64IdFromValue(long value)


getBase64IdFromValue

public static java.lang.String getBase64IdFromValue(long value, int length)


isValidJavaToken

public static boolean isValidJavaToken(java.lang.String s)


isValidToken

public static boolean isValidToken(java.lang.String token, java.lang.String validStartChars, java.lang.String validSubsequentChars)


makeRandomBase64Id

public static java.lang.String makeRandomBase64Id(int length)


makeRandomId

public static java.lang.String makeRandomId(int l)
makes a random id string (letters and numbers) of the given length; starts with letter (upper or lower) so can be used as java-id; tests ensure random distribution, so random ID of length 5 is about 2^29 possibilities

implementation is efficient, uses char array, and makes one call to random per 5 chars; makeRandomId(5) takes about 4 times as long as a simple Math.random call, or about 50 times more than a simple x++ instruction; in other words, it's appropriate for contexts where random id's are needed, but use efficiently (ie cache it per object), and prefer to use a counter where feasible

in general this is preferable to base64 as is more portable, can be used throughout javascript (as ID's which don't allow +) or as java identifiers (which don't allow numbers in the first char)


makeRandomJavaId

public static java.lang.String makeRandomJavaId(int l)
makes a random id string (letters and numbers) of the given length; starts with letter (upper or lower) so can be used as java-id; tests ensure random distribution, so random ID of length 5 is about 2^29 possibilities

implementation is efficient, uses char array, and makes one call to random per 5 chars; makeRandomId(5) takes about 4 times as long as a simple Math.random call, or about 50 times more than a simple x++ instruction; in other words, it's appropriate for contexts where random id's are needed, but use efficiently (ie cache it per object), and prefer to use a counter where feasible


randomBoolean

public static boolean randomBoolean()


randomBytes

public static byte[] randomBytes(byte[] buf)
returns the array passed in


randomBytes

public static byte[] randomBytes(int length)


randomDouble

public static double randomDouble()


randomInt

public static int randomInt()


randomInt

public static int randomInt(int upbound)
returns in [0,upbound)


randomLong

public static long randomLong()


 

Brooklyn Multi-Cloud Application Management Platform
brooklyncentral.github.com. Apache License. © 2012.