public void onStartup()

in winegrower-extension/winegrower-servlet/src/main/java/org/apache/winegrower/servlet/service/ServletHttpServiceDeployer.java [63:100]


    public void onStartup(final Set<Class<?>> c, final ServletContext servletContext) {
        if (getClass() == ServletHttpServiceDeployer.class &&
                is(servletContext, "winegrower.servlet.ripener.skip", false)) {
            return;
        }
        final Ripener.Configuration configuration = createConfiguration(servletContext);
        final Ripener.Impl ripener = new Ripener.Impl(configuration);
        onRipenerCreated(ripener);
        if (is(servletContext, "winegrower.servlet.services.http.register", true)) {
            final ServletHttpService service = new ServletHttpService(servletContext);
            ripener.registerBuiltInService(HttpService.class, service, new Hashtable<>());
            final BundleContext rootBundle = ripener.getRegistry().getBundles().get(0L).getBundle().getBundleContext();
            Stream.of(Servlet.class, HttpServlet.class).forEach(base -> registerServletTracker(service, rootBundle, base));
            registerFilterTracker(service, rootBundle);
            Stream.of(
                    ServletContextListener.class, ServletContextAttributeListener.class,
                    HttpSessionListener.class, HttpSessionAttributeListener.class,
                    HttpSessionActivationListener.class, HttpSessionBindingListener.class,
                    HttpSessionIdListener.class,
                    ServletRequestListener.class, ServletRequestAttributeListener.class)
                    .forEach(base -> registerListenerTracker(service, rootBundle, base));
        }
        servletContext.setAttribute(Ripener.class.getName(), ripener.start());
        onRipenerStarted(ripener);
        servletContext.addListener(new ServletContextListener() {

            @Override
            public void contextDestroyed(final ServletContextEvent sce) {
                ofNullable(sce.getServletContext().getAttribute(Ripener.class.getName()))
                        .map(Ripener.class::cast)
                        .map(it -> {
                            onRipenerWillStop(it);
                            return it;
                        })
                        .ifPresent(Ripener::stop);
            }
        });
    }