org.castor.xmlctf

Class RandomHelper


public class RandomHelper
extends java.lang.Object

Assists in the generation of random instances of a given object model.
Version:
$Revision: 6785 $ $Date: 2006-04-13 06:47:36 -0600 (Thu, 13 Apr 2006) $
Author:
Sebastien Gignoux

Method Summary

static boolean
flip()
Returns true or false randomly with equal probability.
static boolean
flip(double p)
Returns true randomly with the probability p.
static ArrayList
getRandom(ArrayList al, Class c)
Returns a populated ArrayList of random length.
static BigDecimal
getRandom(BigDecimal bg, Class c)
Returns a random BigDecimal.
static Collection
getRandom(Collection al, Class c)
Returns a populated Collection of random length.
static List
getRandom(List al, Class c)
Returns a populated List of random length.
static Object
getRandom(Object object, Class c)
Returns a random Object of the type provided by class c.
static Object[]
getRandom(Object[] array, Class c)
Creates a populated array of type c of random length.
static Set
getRandom(Set al, Class c)
Returns a populated Set of random length.
static SortedSet
getRandom(SortedSet al, Class c)
Returns a populated SortedSet of random length.
static String
getRandom(String s, Class c)
Returns a random String that will not have leading or trailing whitespace and that will not have consecutive internal whitespace.
static String
getRandom(String s, Class c, boolean collapseWhitespace)
Returns a random String, optionally with leading and trailing whitespace removed and internal consecutive whitespace collapsed.
static String[]
getRandom(String[] array, Class c)
Returns a populated array of String of random length.
static Vector
getRandom(Vector vect, Class c)
Returns a populated vector of random length.
static boolean
getRandom(boolean b)
Returns a random boolean.
static byte
getRandom(byte b)
Returns a random byte.
static byte[]
getRandom(byte[] array, Class c)
Returns a populated array of byte of random length.
static char
getRandom(char c)
Returns a random printable char.
static double
getRandom(double d)
Returns a random double.
static float
getRandom(float f)
Returns a random float.
static int
getRandom(int i)
Returns a random int.
static int[]
getRandom(int[] array, Class c)
Returns a populated array of int of random length.
static java.util.Date
getRandom(java.util.Date date, Class c)
Returns a random java.util.Date.
static long
getRandom(long l)
Returns a random long.
static RecurringDuration
getRandom(RecurringDuration recurring, Class c)
Returns a random Castor RecurringDuration.
static TimeDuration
getRandom(TimeDuration date, Class c)
Returns a random Castor TimeDuration.
static long
getSeed()
Returns the seed which was used to initialize the pseudo-random number generator.
static char
rndPrintableChar()
Returns a random printable character from the PRINTABLE_CHAR string.
static void
setSeed(long seed)
Re-initializes the random number generator with the given seed.

Method Details

flip

public static boolean flip()
Returns true or false randomly with equal probability.
Returns:
true or false randomly with equal probability.

flip

public static boolean flip(double p)
Returns true randomly with the probability p.
Parameters:
p - A probability for returning true
Returns:
true p% of the time

getRandom

public static ArrayList getRandom(ArrayList al,
                                  Class c)
            throws InstantiationException,
                   IllegalAccessException
Returns a populated ArrayList of random length. If the class of the object contained into the vector implements CastorTestable, randomizeFields() will be called on the objects.
Parameters:
al - the ArrayList to populate
c - the type of object to put in the vector
Returns:
a populated ArrayList of random length.

getRandom

public static BigDecimal getRandom(BigDecimal bg,
                                   Class c)
Returns a random BigDecimal.
Parameters:
bg - An unused parameter, used only for polymorphism.
c - An unused parameter that indicates we are making a random Object, not a random primitive
Returns:
a random BigDecimal.

getRandom

public static Collection getRandom(Collection al,
                                   Class c)
            throws InstantiationException,
                   IllegalAccessException
Returns a populated Collection of random length. If the class of the object contained into the vector implements CastorTestable, randomizeFields() will be called on the objects.
Parameters:
al - the ArrayList to populate
c - the type of object to put in the vector
Returns:
a populated ArrayList of random length.

getRandom

public static List getRandom(List al,
                             Class c)
            throws InstantiationException,
                   IllegalAccessException
Returns a populated List of random length. If the class of the object contained into the vector implements CastorTestable, randomizeFields() will be called on the objects.
Parameters:
al - the ArrayList to populate
c - the type of object to put in the vector
Returns:
a populated ArrayList of random length.

getRandom

public static Object getRandom(Object object,
                               Class c)
Returns a random Object of the type provided by class c.
Parameters:
object - An unused parameter, used only for polymorphism.
c - the type of object we will create a randomized instance of. This class must implement CastorTestable.
Returns:
a random Object.

getRandom

public static Object[] getRandom(Object[] array,
                                 Class c)
            throws InstantiationException,
                   IllegalAccessException
Creates a populated array of type c of random length. If the class to put into the vector implements CastorTestable, randomizeFields() will be called on the objects.
Parameters:
array - An unused parameter, used only for polymorphism.
c - the type of object to put in the array
Returns:
a populated array of random length.

getRandom

public static Set getRandom(Set al,
                            Class c)
            throws InstantiationException,
                   IllegalAccessException
Returns a populated Set of random length. If the class of the object contained into the vector implements CastorTestable, randomizeFields() will be called on the objects.
Parameters:
al - the Set to populate
c - the type of object to put in the vector
Returns:
a populated Set of random length.

getRandom

public static SortedSet getRandom(SortedSet al,
                                  Class c)
            throws InstantiationException,
                   IllegalAccessException
Returns a populated SortedSet of random length. If the class of the object contained into the vector implements CastorTestable, randomizeFields() will be called on the objects.
Parameters:
al - the SortedSet to populate
c - the type of object to put in the vector
Returns:
a populated SortedSet of random length.

getRandom

public static String getRandom(String s,
                               Class c)
Parameters:
s - An unused parameter, used only for polymorphism.
c - An unused parameter that indicates we are making a random Object, not a random primitive
Returns:
a random string

getRandom

public static String getRandom(String s,
                               Class c,
                               boolean collapseWhitespace)
Returns a random String, optionally with leading and trailing whitespace removed and internal consecutive whitespace collapsed.
Parameters:
s - An unused parameter, used only for polymorphism.
c - An unused parameter that indicates we are making a random Object, not a random primitive
collapseWhitespace - if true, removes leading and trailing whitespace and collapses multiple consecutive spaces.
Returns:
a random string

getRandom

public static String[] getRandom(String[] array,
                                 Class c)
Returns a populated array of String of random length.
Parameters:
array - An unused parameter, used only for polymorphism.
c - An unused parameter that indicates we are making a random Object, not a random primitive
Returns:
a populated array of String of random length.

getRandom

public static Vector getRandom(Vector vect,
                               Class c)
            throws InstantiationException,
                   IllegalAccessException
Returns a populated vector of random length. If the class to put into the vector implements CastorTestable, randomizeFields() will be called on the objects.
Parameters:
vect - the vector to populate, if null a new Vector will be created.
c - the type of object to put in the vector.
Returns:
a populated Vector of random length.

getRandom

public static boolean getRandom(boolean b)
Returns a random boolean.
Parameters:
b - An unused parameter, used only for polymorphism.
Returns:
a random boolean.

getRandom

public static byte getRandom(byte b)
Returns a random byte.
Parameters:
b - An unused parameter, used only for polymorphism.
Returns:
a random byte.

getRandom

public static byte[] getRandom(byte[] array,
                               Class c)
Returns a populated array of byte of random length.
Parameters:
array - An unused parameter, used only for polymorphism.
c - An unused parameter that indicates we are making a random Object, not a random primitive
Returns:
a populated array of byte of random length.

getRandom

public static char getRandom(char c)
Returns a random printable char.
Parameters:
c - An unused parameter, used only for polymorphism.
Returns:
a random printable char.

getRandom

public static double getRandom(double d)
Returns a random double.
Parameters:
d - An unused parameter, used only for polymorphism.
Returns:
a random double.

getRandom

public static float getRandom(float f)
Returns a random float.
Parameters:
f - An unused parameter, used only for polymorphism.
Returns:
a random float.

getRandom

public static int getRandom(int i)
Returns a random int.
Parameters:
i - An unused parameter, used only for polymorphism.
Returns:
a random int.

getRandom

public static int[] getRandom(int[] array,
                              Class c)
Returns a populated array of int of random length.
Parameters:
array - An unused parameter, used only for polymorphism.
c - An unused parameter that indicates we are making a random Object, not a random primitive
Returns:
a populated array of int of random length.

getRandom

public static java.util.Date getRandom(java.util.Date date,
                                       Class c)
Returns a random java.util.Date.
Parameters:
date - An unused parameter, used only for polymorphism.
c - An unused parameter that indicates we are making a random Object, not a random primitive
Returns:
a random java.util.Date.

getRandom

public static long getRandom(long l)
Returns a random long.
Parameters:
l - An unused parameter, used only for polymorphism.
Returns:
a random long.

getRandom

public static RecurringDuration getRandom(RecurringDuration recurring,
                                          Class c)
Returns a random Castor RecurringDuration.
Parameters:
recurring - An unused parameter, used only for polymorphism.
c - An unused parameter that indicates we are making a random Object, not a random primitive
Returns:
a random Castor recurringDuration.

getRandom

public static TimeDuration getRandom(TimeDuration date,
                                     Class c)
Returns a random Castor TimeDuration.
Parameters:
date - An unused parameter, used only for polymorphism.
c - An unused parameter that indicates we are making a random Object, not a random primitive
Returns:
a random Castor timeDuration.

getSeed

public static long getSeed()
Returns the seed which was used to initialize the pseudo-random number generator.
Returns:
the seed which was used to initialize the pseudo-random number generator

rndPrintableChar

public static char rndPrintableChar()
Returns:
a random printable character from the PRINTABLE_CHAR string.

setSeed

public static void setSeed(long seed)
Re-initializes the random number generator with the given seed.
Parameters:
seed - the new seed for the random number generator.

Intalio Inc. (C) 1999-2008. All rights reserved http://www.intalio.com