Search in sources :

Example 1 with SingleKeySymbolProvider

use of org.apache.tapestry5.http.internal.SingleKeySymbolProvider in project tapestry-5 by apache.

the class TapestryFilter method init.

/**
 * Initializes the filter using the {@link TapestryAppInitializer}. The application name is the
 * capitalization of
 * the filter name (as specified in web.xml).
 */
public final void init(FilterConfig filterConfig) throws ServletException {
    config = filterConfig;
    final ServletContext context = config.getServletContext();
    String filterName = config.getFilterName();
    SymbolProvider combinedProvider = new DelegatingSymbolProvider(new SystemPropertiesSymbolProvider(), new SingleKeySymbolProvider(TapestryHttpSymbolConstants.CONTEXT_PATH, context.getContextPath()), new ServletContextSymbolProvider(context), new SingleKeySymbolProvider(TapestryHttpSymbolConstants.EXECUTION_MODE, "production"));
    String executionMode = combinedProvider.valueForSymbol(TapestryHttpSymbolConstants.EXECUTION_MODE);
    TapestryAppInitializer appInitializer = new TapestryAppInitializer(logger, combinedProvider, filterName, executionMode);
    appInitializer.addModules(provideExtraModuleDefs(context));
    appInitializer.addModules(provideExtraModuleClasses(context));
    registry = appInitializer.createRegistry();
    context.setAttribute(REGISTRY_CONTEXT_NAME, registry);
    ServletApplicationInitializer ai = registry.getService("ServletApplicationInitializer", ServletApplicationInitializer.class);
    ai.initializeApplication(context);
    registry.performRegistryStartup();
    handler = registry.getService("HttpServletRequestHandler", HttpServletRequestHandler.class);
    asyncRequestService = registry.getService("AsyncRequestService", AsyncRequestService.class);
    init(registry);
    appInitializer.announceStartup();
    registry.cleanupThread();
}
Also used : TapestryAppInitializer(org.apache.tapestry5.http.internal.TapestryAppInitializer) ServletApplicationInitializer(org.apache.tapestry5.http.services.ServletApplicationInitializer) ServletContextSymbolProvider(org.apache.tapestry5.http.internal.ServletContextSymbolProvider) SystemPropertiesSymbolProvider(org.apache.tapestry5.ioc.internal.services.SystemPropertiesSymbolProvider) DelegatingSymbolProvider(org.apache.tapestry5.http.internal.util.DelegatingSymbolProvider) SymbolProvider(org.apache.tapestry5.ioc.services.SymbolProvider) SingleKeySymbolProvider(org.apache.tapestry5.http.internal.SingleKeySymbolProvider) SingleKeySymbolProvider(org.apache.tapestry5.http.internal.SingleKeySymbolProvider) AsyncRequestService(org.apache.tapestry5.http.internal.AsyncRequestService) ServletContext(javax.servlet.ServletContext) DelegatingSymbolProvider(org.apache.tapestry5.http.internal.util.DelegatingSymbolProvider) SystemPropertiesSymbolProvider(org.apache.tapestry5.ioc.internal.services.SystemPropertiesSymbolProvider) ServletContextSymbolProvider(org.apache.tapestry5.http.internal.ServletContextSymbolProvider) HttpServletRequestHandler(org.apache.tapestry5.http.services.HttpServletRequestHandler)

Example 2 with SingleKeySymbolProvider

use of org.apache.tapestry5.http.internal.SingleKeySymbolProvider in project tapestry-5 by apache.

the class TapestryAppInitializer method addSyntheticSymbolSourceModule.

private void addSyntheticSymbolSourceModule(String appPackage) {
    ContributionDef appPathContribution = new SyntheticSymbolSourceContributionDef("AppPath", new SingleKeySymbolProvider(TapestryHttpInternalSymbols.APP_PACKAGE_PATH, appPackage.replace('.', '/')));
    ContributionDef symbolSourceContribution = new SyntheticSymbolSourceContributionDef("ServletContext", appProvider, "before:ApplicationDefaults", "after:EnvironmentVariables");
    ContributionDef appNameContribution = new SyntheticSymbolSourceContributionDef("AppName", new SingleKeySymbolProvider(TapestryHttpInternalSymbols.APP_NAME, appName), "before:ServletContext");
    builder.add(new SyntheticModuleDef(symbolSourceContribution, appNameContribution, appPathContribution));
}
Also used : ContributionDef(org.apache.tapestry5.ioc.def.ContributionDef)

Aggregations

ServletContext (javax.servlet.ServletContext)1 AsyncRequestService (org.apache.tapestry5.http.internal.AsyncRequestService)1 ServletContextSymbolProvider (org.apache.tapestry5.http.internal.ServletContextSymbolProvider)1 SingleKeySymbolProvider (org.apache.tapestry5.http.internal.SingleKeySymbolProvider)1 TapestryAppInitializer (org.apache.tapestry5.http.internal.TapestryAppInitializer)1 DelegatingSymbolProvider (org.apache.tapestry5.http.internal.util.DelegatingSymbolProvider)1 HttpServletRequestHandler (org.apache.tapestry5.http.services.HttpServletRequestHandler)1 ServletApplicationInitializer (org.apache.tapestry5.http.services.ServletApplicationInitializer)1 ContributionDef (org.apache.tapestry5.ioc.def.ContributionDef)1 SystemPropertiesSymbolProvider (org.apache.tapestry5.ioc.internal.services.SystemPropertiesSymbolProvider)1 SymbolProvider (org.apache.tapestry5.ioc.services.SymbolProvider)1