Package org.mozilla.javascript
Class Kit
- java.lang.Object
-
- org.mozilla.javascript.Kit
-
public class Kit extends Object
Collection of utilities
-
-
Constructor Summary
Constructors Constructor Description Kit()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static Object
addListener(Object bag, Object listener)
Add listener to bag of listeners.static Class<?>
classOrNull(ClassLoader loader, String className)
Attempt to load the class of the given name.static Class<?>
classOrNull(String className)
static RuntimeException
codeBug()
Throws RuntimeException to indicate failed assertion.static RuntimeException
codeBug(String msg)
Throws RuntimeException to indicate failed assertion.static Object
getListener(Object bag, int index)
Get listener at index position in bag or null if index equals to number of listeners in bag.static RuntimeException
initCause(RuntimeException ex, Throwable cause)
If initCause methods exists in Throwable, call ex.initCause(cause) or otherwise do nothing.static Object
makeHashKeyFromPair(Object key1, Object key2)
static String
readReader(Reader r)
static byte[]
readStream(InputStream is, int initialBufferCapacity)
static Object
removeListener(Object bag, Object listener)
Remove listener from bag of listeners.static int
xDigitToInt(int c, int accumulator)
If character c is a hexadecimal digit, return accumulator * 16 plus corresponding number.
-
-
-
Method Detail
-
classOrNull
public static Class<?> classOrNull(ClassLoader loader, String className)
Attempt to load the class of the given name. Note that the type parameter isn't checked.
-
initCause
public static RuntimeException initCause(RuntimeException ex, Throwable cause)
If initCause methods exists in Throwable, call ex.initCause(cause) or otherwise do nothing.- Returns:
- The ex argument.
-
xDigitToInt
public static int xDigitToInt(int c, int accumulator)
If character c is a hexadecimal digit, return accumulator * 16 plus corresponding number. Otherise return -1.
-
addListener
public static Object addListener(Object bag, Object listener)
Add listener to bag of listeners. The function does not modify bag and return a new collection containing listener and all listeners from bag. Bag without listeners always represented as the null value.Usage example:
private volatile Object changeListeners; public void addMyListener(PropertyChangeListener l) { synchronized (this) { changeListeners = Kit.addListener(changeListeners, l); } } public void removeTextListener(PropertyChangeListener l) { synchronized (this) { changeListeners = Kit.removeListener(changeListeners, l); } } public void fireChangeEvent(Object oldValue, Object newValue) { // Get immune local copy Object listeners = changeListeners; if (listeners != null) { PropertyChangeEvent e = new PropertyChangeEvent( this, "someProperty" oldValue, newValue); for (int i = 0; ; ++i) { Object l = Kit.getListener(listeners, i); if (l == null) break; ((PropertyChangeListener)l).propertyChange(e); } } }
- Parameters:
listener
- Listener to add to bagbag
- Current collection of listeners.- Returns:
- A new bag containing all listeners from bag and listener.
- See Also:
removeListener(Object bag, Object listener)
,getListener(Object bag, int index)
-
removeListener
public static Object removeListener(Object bag, Object listener)
Remove listener from bag of listeners. The function does not modify bag and return a new collection containing all listeners from bag except listener. If bag does not contain listener, the function returns bag.For usage example, see
addListener(Object bag, Object listener)
.- Parameters:
listener
- Listener to remove from bagbag
- Current collection of listeners.- Returns:
- A new bag containing all listeners from bag except listener.
- See Also:
addListener(Object bag, Object listener)
,getListener(Object bag, int index)
-
getListener
public static Object getListener(Object bag, int index)
Get listener at index position in bag or null if index equals to number of listeners in bag.For usage example, see
addListener(Object bag, Object listener)
.- Parameters:
bag
- Current collection of listeners.index
- Index of the listener to access.- Returns:
- Listener at the given index or null.
- See Also:
addListener(Object bag, Object listener)
,removeListener(Object bag, Object listener)
-
readReader
public static String readReader(Reader r) throws IOException
- Throws:
IOException
-
readStream
public static byte[] readStream(InputStream is, int initialBufferCapacity) throws IOException
- Throws:
IOException
-
codeBug
public static RuntimeException codeBug() throws RuntimeException
Throws RuntimeException to indicate failed assertion. The function never returns and its return type is RuntimeException only to be able to write throw Kit.codeBug() if plain Kit.codeBug() triggers unreachable code error.- Throws:
RuntimeException
-
codeBug
public static RuntimeException codeBug(String msg) throws RuntimeException
Throws RuntimeException to indicate failed assertion. The function never returns and its return type is RuntimeException only to be able to write throw Kit.codeBug() if plain Kit.codeBug() triggers unreachable code error.- Throws:
RuntimeException
-
-