water
Class Boot

java.lang.Object
  extended by java.lang.ClassLoader
      extended by water.Boot

public class Boot
extends java.lang.ClassLoader

Initializer class for H2O. Unpacks all the dependencies and H2O implementation from the jar file, sets the loader to be able to load all the classes properly and then executes the main method of the H2O class. Does nothing if the H2O is not run from a jar archive. (This *is* a feature, at least for the time being so that we can continue using different IDEs).


Field Summary
static Boot _init
           
 byte[] _jarHash
           
static long HEAP_USED_AT_LAST_GC
           
static long TIME_AT_LAST_GC
           
 
Method Summary
 void addExternalJars(java.io.File file)
          Adds all jars in given directory to the classpath.
 void addInternalJars(java.lang.String name)
          Add a jar to the system classloader
static void block_store_cleaner()
           
 void boot(java.lang.String[] args)
           
 void boot2(java.lang.String[] args)
           
 boolean fromJar()
           
static java.util.List<java.lang.String> getClasses()
           
 java.io.InputStream getResource2(java.lang.String uri)
           
 java.io.File internalFile(java.lang.String name)
          Returns an external File for the internal file name.
 java.lang.String jarPath()
           
static void kick_store_cleaner()
           
 java.lang.Class loadClass(java.lang.String name, boolean resolve)
           
 java.lang.String loadContent(java.lang.String fromFile)
           
static void main(java.lang.Class main, java.lang.String... args)
           
static void main(java.lang.String[] args)
           
static void run(java.lang.String[] args)
           
 
Methods inherited from class java.lang.ClassLoader
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findLibrary, findLoadedClass, findResource, findResources, findSystemClass, getPackage, getPackages, getParent, getResource, getResourceAsStream, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, loadClass, resolveClass, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_init

public static final Boot _init

_jarHash

public final byte[] _jarHash

HEAP_USED_AT_LAST_GC

public static volatile long HEAP_USED_AT_LAST_GC

TIME_AT_LAST_GC

public static volatile long TIME_AT_LAST_GC
Method Detail

loadContent

public java.lang.String loadContent(java.lang.String fromFile)

fromJar

public boolean fromJar()

jarPath

public java.lang.String jarPath()

main

public static void main(java.lang.String[] args)
                 throws java.lang.Exception
Throws:
java.lang.Exception

main

public static void main(java.lang.Class main,
                        java.lang.String... args)
                 throws java.lang.Exception
Throws:
java.lang.Exception

boot

public void boot(java.lang.String[] args)
          throws java.lang.Exception
Throws:
java.lang.Exception

boot2

public void boot2(java.lang.String[] args)
           throws java.lang.Exception
Throws:
java.lang.Exception

run

public static void run(java.lang.String[] args)
                throws java.lang.Exception
Throws:
java.lang.Exception

internalFile

public java.io.File internalFile(java.lang.String name)
Returns an external File for the internal file name.


addInternalJars

public void addInternalJars(java.lang.String name)
                     throws java.lang.IllegalAccessException,
                            java.lang.reflect.InvocationTargetException,
                            java.net.MalformedURLException
Add a jar to the system classloader

Throws:
java.lang.IllegalAccessException
java.lang.reflect.InvocationTargetException
java.net.MalformedURLException

addExternalJars

public void addExternalJars(java.io.File file)
                     throws java.lang.IllegalAccessException,
                            java.lang.reflect.InvocationTargetException,
                            java.net.MalformedURLException
Adds all jars in given directory to the classpath.

Throws:
java.lang.IllegalAccessException
java.lang.reflect.InvocationTargetException
java.net.MalformedURLException

getResource2

public java.io.InputStream getResource2(java.lang.String uri)

loadClass

public java.lang.Class loadClass(java.lang.String name,
                                 boolean resolve)
                          throws java.lang.ClassNotFoundException
Overrides:
loadClass in class java.lang.ClassLoader
Throws:
java.lang.ClassNotFoundException

getClasses

public static java.util.List<java.lang.String> getClasses()

kick_store_cleaner

public static void kick_store_cleaner()

block_store_cleaner

public static void block_store_cleaner()