Class ApplicationInfo

java.lang.Object
org.glassfish.internal.data.ModuleInfo
org.glassfish.internal.data.ApplicationInfo

public class ApplicationInfo extends ModuleInfo
Information about a running application. Applications are composed of modules. Modules run in an individual container.
Author:
Jerome Dochez
  • Field Details

    • APP_SERVICE_LOCATOR_PREFIX

      public static final String APP_SERVICE_LOCATOR_PREFIX
      The prefix that will be given to the service locator, followed by the name of the application
      See Also:
  • Constructor Details

    • ApplicationInfo

      public ApplicationInfo(org.glassfish.api.event.Events events, org.glassfish.api.deployment.archive.ReadableArchive source, String name)
      Creates a new instance of an ApplicationInfo
      Parameters:
      events -
      source - the archive for this application
      name - name of the application
  • Method Details

    • add

      public void add(EngineRef engine)
    • addTransientAppMetaData

      public void addTransientAppMetaData(String metaDataKey, Object metaDataValue)
    • getTransientAppMetaData

      public <T> T getTransientAppMetaData(String key, Class<T> metadataType)
    • getName

      public String getName()
      Returns the registration name for this application
      Overrides:
      getName in class ModuleInfo
      Returns:
      the application registration name
    • getLibraries

      public String getLibraries()
      Returns the deployment time libraries for this application
      Returns:
      the libraries
    • setLibraries

      public void setLibraries(String libraries)
      Sets the deployment time libraries for this application
      Parameters:
      libraries - the libraries
    • getAppClassLoader

      public ClassLoader getAppClassLoader()
      Returns the application classloader for this application.
      Returns:
      The application classloader for this application.
    • setAppClassLoader

      public void setAppClassLoader(ClassLoader cLoader)
      Sets the application classloader for this application
      Parameters:
      cLoader - application classloader
    • getAppServiceLocator

      public org.glassfish.hk2.api.ServiceLocator getAppServiceLocator()
      Returns the application scoped ServiceLocator
      Returns:
      The application scoped ServiceLocator
    • isJakartaEEApp

      public boolean isJakartaEEApp()
      Returns whether this application is a JavaEE application
      Returns:
      the isJavaEEApp flag
    • detectIfJakartaEEApp

      public void detectIfJakartaEEApp(List<EngineInfo<?,?>> engineInfos)
      Sets whether this application is a Jakarta EE application
      Parameters:
      engineInfos - the engine info list
    • getSource

      public org.glassfish.api.deployment.archive.ReadableArchive getSource()
      Returns the directory where the application bits are located
      Returns:
      the application bits directory
    • getModuleInfos

      public Collection<ModuleInfo> getModuleInfos()
      Returns the modules of this application
      Returns:
      the modules of this application
    • getSniffers

      public Collection<org.glassfish.api.container.Sniffer> getSniffers()
      Returns the list of sniffers that participated in loaded this application
      Overrides:
      getSniffers in class ModuleInfo
      Returns:
      array of sniffer that loaded the application's module
    • getEngineRefsForContainer

      public <T extends org.glassfish.api.container.Container> Collection<EngineRef> getEngineRefsForContainer(Class<T> type)
      Returns the EngineRef for a particular container type
      Parameters:
      type - the container type
      Returns:
      the module info is this application as a module implemented with the passed container type
    • getSubContext

      protected ExtendedDeploymentContext getSubContext(ModuleInfo info, ExtendedDeploymentContext context)
    • load

      public void load(ExtendedDeploymentContext context, ProgressTracker tracker) throws Exception
      Overrides:
      load in class ModuleInfo
      Throws:
      Exception
    • start

      public void start(ExtendedDeploymentContext context, ProgressTracker tracker) throws Exception
      Throws:
      Exception
    • stop

      public void stop(ExtendedDeploymentContext context, Logger logger)
      Overrides:
      stop in class ModuleInfo
    • unload

      public void unload(ExtendedDeploymentContext context)
      Overrides:
      unload in class ModuleInfo
    • suspend

      public boolean suspend(Logger logger)
      Overrides:
      suspend in class ModuleInfo
    • resume

      public boolean resume(Logger logger)
      Overrides:
      resume in class ModuleInfo
    • clean

      public void clean(ExtendedDeploymentContext context) throws Exception
      Overrides:
      clean in class ModuleInfo
      Throws:
      Exception
    • save

      public void save(com.sun.enterprise.config.serverbeans.Application app) throws org.jvnet.hk2.config.TransactionFailure, PropertyVetoException
      Saves its state to the configuration. this method must be called within a transaction to the configured Application instance.
      Parameters:
      app - the application being persisted
      Throws:
      org.jvnet.hk2.config.TransactionFailure
      PropertyVetoException
    • addModule

      public void addModule(ModuleInfo info)
    • isLoaded

      public boolean isLoaded()