Package org.apache.tapestry5.http.internal

## Class TapestryAppInitializer

- java.lang.Object
- - org.apache.tapestry5.http.internal.TapestryAppInitializer

-     public class TapestryAppInitializer
      extends Object

  This class is used to build the `Registry`. The Registry contains `TapestryIOCModule` and `TapestryHttpModule`, any modules identified by `addModules(Class[])` )}, plus the application module. The application module is optional. The application module is identified as package.services.appNameModule, where package and the appName are specified by the caller.

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `TapestryAppInitializer​(org.slf4j.Logger logger, String appPackage, String appName)` |
    `TapestryAppInitializer​(org.slf4j.Logger logger, SymbolProvider appProvider, String appName, String executionModes)` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addModules​(Class... moduleClasses)` |
    `void` | `addModules​(ModuleDef... moduleDefs)` | Adds additional modules.
    `void` | `announceStartup()` | Announce application startup, by logging (at INFO level) the names of all pages, components, mixins and services.
    `Registry` | `createRegistry()` |
    `static String[]` | `splitAtCommas​(String value)` | Splits a value around commas.

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

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

- - ### Constructor Detail

    - #### TapestryAppInitializer

          public TapestryAppInitializer​(org.slf4j.Logger logger,
                                        String appPackage,
                                        String appName)

      Parameters:
        `logger` - logger for output confirmation
        `appPackage` - root package name to search for pages and components
        `appName` - the name of the application (i.e., the name of the application servlet)

    - #### TapestryAppInitializer

          public TapestryAppInitializer​(org.slf4j.Logger logger,
                                        SymbolProvider appProvider,
                                        String appName,
                                        String executionModes)

      Parameters:
        `logger` - logger for output confirmation
        `appProvider` - provides symbols for the application (normally, from the ServletContext init parameters), plus (as of 5.4) the value for symbol `TapestryHttpSymbolConstants.CONTEXT_PATH`
        `appName` - the name of the application (i.e., the name of the application servlet)
        `executionModes` - an optional, comma-separated list of execution modes, each of which is used to find a list of additional module classes to load (key `tapestry.name-modules` in appProvider, i.e., the servlet context)

  - ### Method Detail

    - #### addModules

          public void addModules​(ModuleDef... moduleDefs)

      Adds additional modules.
      Parameters:
        `moduleDefs` -

    - #### addModules

          public void addModules​(Class... moduleClasses)

    - #### createRegistry

          public Registry createRegistry()

    - #### announceStartup

          public void announceStartup()

      Announce application startup, by logging (at INFO level) the names of all pages, components, mixins and services.

    - #### splitAtCommas

          public static String[] splitAtCommas​(String value)

      Splits a value around commas. Whitespace around the commas is removed, as is leading and trailing whitespace.
      Since:
        5.1.0.0