java.lang.Object
com.sun.enterprise.module.bootstrap.Main

public class Main extends Object
CLI entry point that will setup the module subsystem and delegate the main execution to the first archive in its import list... TODO: reusability of this class needs to be improved.
Author:
dochez
  • Field Details

  • Constructor Details

    • Main

      public Main()
  • Method Details

    • main

      public static void main(String[] args)
    • run

      public void run(String[] args)
    • getBootstrapFile

      protected File getBootstrapFile() throws BootException
      We need to determine which jar file has been used to load this class Using the getResourceURL we can get this information, after that, it is just a bit of detective work to get the file path for the jar file.
      Returns:
      the path to the jar file containing this class. always returns non-null.
      Throws:
      BootException - If failed to determine the bootstrap file name.
    • start

      public void start(String[] args) throws BootException
      Start the server from the command line
      Parameters:
      args - the command line arguments
      Throws:
      BootException
    • defineParentClassLoader

      protected void defineParentClassLoader() throws BootException
      Throws:
      BootException
    • getParentClassLoader

      protected ClassLoader getParentClassLoader()
    • launch

      public ModuleStartup launch(ModulesRegistry registry, String mainModuleName, StartupContext context) throws BootException
      Launches the module system and hand over the execution to the ModuleStartup implementation of the main module.
      Parameters:
      mainModuleName - The module that will provide ModuleStartup. If null, one will be auto-discovered.
      context - startup context instance
      Returns:
      The ModuleStartup service
      Throws:
      BootException
    • findStartupService

      public ModuleStartup findStartupService(ModulesRegistry registry, org.glassfish.hk2.api.ServiceLocator serviceLocator, String mainModuleName, StartupContext context) throws BootException
      Return the ModuleStartup service configured to be used to start the system.
      Parameters:
      registry -
      serviceLocator -
      mainModuleName -
      context -
      Returns:
      Throws:
      BootException
    • createServiceLocator

      public org.glassfish.hk2.api.ServiceLocator createServiceLocator(ModulesRegistry mr, StartupContext context, List<org.glassfish.hk2.api.PopulatorPostProcessor> postProcessors, org.glassfish.hk2.api.DescriptorFileFinder descriptorFileFinder) throws BootException
      Throws:
      BootException
    • launch

      protected void launch(ModuleStartup startupCode, StartupContext context) throws BootException
      Throws:
      BootException
    • getServiceLocator

      public org.glassfish.hk2.api.ServiceLocator getServiceLocator()