java.lang.Object
net.i2p.util.SimpleTimer2.TimedEvent
net.i2p.router.startup.LoadClientAppsJob.DelayedRunClient
All Implemented Interfaces:
Runnable
Direct Known Subclasses:
LoadClientAppsJob.WaitForRunningClient, PluginStarter.TrackedDelayedClient
Enclosing class:
LoadClientAppsJob

public static class LoadClientAppsJob.DelayedRunClientextends SimpleTimer2.TimedEvent
Public for router console only, not for use by others, subject to change.
  • Field Details

    • _ctx

      protected final RouterContext _ctx
      The router context used to start the app when this event fires.
    • _className

      private final String _className
      Class name of the app to load.
    • _clientName

      private final String _clientName
      Name of the client from the config.
    • _args

      private final String[] _args
      Arguments passed to the app.
    • _log

      private final Log _log
      Logger for the app loading.
    • _threadGroup

      private final ThreadGroup _threadGroup
      Thread group for the app's threads.
    • _cl

      private final ClassLoader _cl
      Class loader for the app's classes.
  • Constructor Details

    • DelayedRunClient

      public DelayedRunClient(SimpleTimer2 pool, RouterContext enclosingContext, String className, String clientName, String[] args)
      Caller must call schedule() before this event fires.
      Parameters:
      pool - the timer this event is scheduled on
      enclosingContext - the router context handed to the client application
      className - the client class to run, which must declare a static main(String[])
      clientName - the name given to the client thread, may be null
      args - the arguments passed to main(), may be null for none
    • DelayedRunClient

      public DelayedRunClient(SimpleTimer2 pool, RouterContext enclosingContext, String className, String clientName, String[] args, ThreadGroup threadGroup, ClassLoader cl)
      Caller must call schedule() before this event fires.
      Parameters:
      pool - the timer this event is scheduled on
      enclosingContext - the router context handed to the client application
      className - the client class to run, which must declare a static main(String[])
      clientName - the name given to the client thread, may be null
      args - the arguments passed to main(), may be null for none
      threadGroup - the group the client thread joins, null for the default group
      cl - the loader used to resolve the class, null for the system loader
  • Method Details