Class Kit

java.lang.Object
org.mozilla.javascript.Kit

public class Kit extends Object
Collection of utilities
  • Constructor Details

    • Kit

      public Kit()
  • Method Details

    • classOrNull

      public static Class<?> classOrNull(String className)
    • 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.
    • xDigitToInt

      public static int xDigitToInt(int c, int accumulator)
      If character c is a hexadecimal digit, return accumulator * 16 plus corresponding number. Otherwise 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:
      bag - Current collection of listeners.
      listener - Listener to add to bag
      Returns:
      A new bag containing all listeners from bag and listener.
      See Also:
    • 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:
      bag - Current collection of listeners.
      listener - Listener to remove from bag
      Returns:
      A new bag containing all listeners from bag except listener.
      See Also:
    • 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:
    • makeHashKeyFromPair

      public static Object makeHashKeyFromPair(Object key1, Object key2)
    • readReader

      public static String readReader(Reader reader) 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