net.i2p.router.web

## Class WebAppStarter

- java.lang.Object
- - net.i2p.router.web.WebAppStarter

-     public class WebAppStarter
      extends Object

  Add, start or stop a webapp. Add to the webapp classpath if specified in webapps.config. Sadly, setting Class-Path in MANIFEST.MF doesn't work for jetty wars. See WebAppConfiguration for more information. but let's just do it in webapps.config. No, wac.addClassPath() does not work. For more info see: http://servlets.com/archive/servlet/ReadMsg?msgId=511113&listName=jetty-support
  Since:
    0.7.12
  Author:
    zzz

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `(package private) static Map<String,Long>` | `warModTimes`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `WebAppStarter()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `(package private) static WebApplicationContext` | `addWebApp(I2PAppContext ctx, Server server, String appName, String warPath, File tmpdir)` add but don't start This is used only by RouterConsoleRunner, which adds all the webapps first and then starts all at once.
    `(package private) static Server` | `getConsoleServer()` see comments in ConfigClientsHandler
    `(package private) static boolean` | `isWebAppRunning(String appName)`
    `(package private) static void` | `startWebApp(I2PAppContext ctx, Server server, String appName, String warPath)` adds and starts
    `(package private) static void` | `stopWebApp(Server server, String appName)` stop it and remove the context

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### warModTimes

          static final Map<String,Long> warModTimes

  - ### Constructor Detail

    - #### WebAppStarter

          public WebAppStarter()

  - ### Method Detail

    - #### startWebApp

          static void startWebApp(I2PAppContext ctx,
                         Server server,
                         String appName,
                         String warPath)
                           throws Exception

      adds and starts
      Throws:
        `just` - about anything, caller would be wise to catch Throwable
        `Exception`

    - #### addWebApp

          static WebApplicationContext addWebApp(I2PAppContext ctx,
                                        Server server,
                                        String appName,
                                        String warPath,
                                        File tmpdir)
                                          throws IOException

      add but don't start This is used only by RouterConsoleRunner, which adds all the webapps first and then starts all at once.
      Throws:
        `IOException`

    - #### stopWebApp

          static void stopWebApp(Server server,
                        String appName)

      stop it and remove the context
      Throws:
        `just` - about anything, caller would be wise to catch Throwable

    - #### isWebAppRunning

          static boolean isWebAppRunning(String appName)

    - #### getConsoleServer

          static Server getConsoleServer()

      see comments in ConfigClientsHandler