protected ApplicationInfo createApplicationInfo(String appClassName, ServletConfig servletConfig) throws ServletException { Application customApp = createApplicationInstance(appClassName, servletConfig); if (customApp != null) { return new ApplicationInfo(customApp, getBus()); } Map<String, List<String>> props = new HashMap<>(); appClassName = getClassNameAndProperties(appClassName, props); Class<?> appClass = loadApplicationClass(appClassName); ApplicationInfo appInfo = (ApplicationInfo)createSingletonInstance(appClass, props, servletConfig); Map<String, Object> servletProps = new HashMap<>(); ServletContext servletContext = servletConfig.getServletContext(); for (Enumeration<String> names = servletContext.getInitParameterNames(); names.hasMoreElements();) { String name = names.nextElement(); servletProps.put(name, servletContext.getInitParameter(name)); } for (Enumeration<String> names = servletConfig.getInitParameterNames(); names.hasMoreElements();) { String name = names.nextElement(); servletProps.put(name, servletConfig.getInitParameter(name)); } appInfo.setOverridingProps(servletProps); return appInfo; }
if (c.getParameterTypes().length == 0) { if (isApplication) { provider = new ApplicationInfo((Application)c.newInstance(), getBus()); } else { provider = new ProviderInfo<>(c.newInstance(), getBus(), false, true); values.put(ServletContext.class, sc.getServletContext()); values.put(ServletConfig.class, sc); provider = ProviderFactory.createProviderFromConstructor(c, values, getBus(), isApplication, true);
public static void installRest(ServletContextHandler context, Object... providers) { initSwagger(); BrooklynRestApp app = new BrooklynRestApp(); for (Object o : providers) { app.singleton(o); } CXFNonSpringJaxrsServlet servlet = new CXFNonSpringJaxrsServlet(app); servlet.setBus(BusFactory.newInstance().createBus()); servlet.getBus().getInInterceptors().add(new GZIPInInterceptor()); servlet.getBus().getInFaultInterceptors().add(new GZIPInInterceptor()); servlet.getBus().getOutInterceptors().add(new GZIPOutInterceptor()); final ServletHolder servletHolder = new ServletHolder(servlet); context.addServlet(servletHolder, "/v1/*"); }
bean.setBus(getBus());
bean.setBus(getBus());
protected void createServerFromApplication(String cName, ServletConfig servletConfig) throws ServletException { Application app = createApplicationInstance(cName, servletConfig); String ignoreParam = servletConfig.getInitParameter(IGNORE_APP_PATH_PARAM); JAXRSServerFactoryBean bean = ResourceUtils.createApplication(app, MessageUtils.isTrue(ignoreParam), getStaticSubResolutionValue(servletConfig)); String splitChar = getParameterSplitChar(servletConfig); setAllInterceptors(bean, servletConfig, splitChar); setInvoker(bean, servletConfig); setExtensions(bean, servletConfig); setDocLocation(bean, servletConfig); setSchemasLocations(bean, servletConfig); bean.setBus(getBus()); bean.create(); }
getStaticSubResolutionValue(servletConfig), isAppResourceLifecycleASingleton(app, servletConfig), getBus()); String splitChar = getParameterSplitChar(servletConfig); setAllInterceptors(bean, servletConfig, splitChar); bean.setFeatures(features); bean.setBus(getBus()); bean.setApplicationInfo(providerApp); bean.create();
protected void createServerFromApplication(ServletConfig servletConfig) throws ServletException { Application app = getApplication(); JAXRSServerFactoryBean bean = ResourceUtils.createApplication( app, isIgnoreApplicationPath(servletConfig), getStaticSubResolutionValue(servletConfig), isAppResourceLifecycleASingleton(app, servletConfig), getBus()); String splitChar = getParameterSplitChar(servletConfig); setAllInterceptors(bean, servletConfig, splitChar); setInvoker(bean, servletConfig); setExtensions(bean, servletConfig); setDocLocation(bean, servletConfig); setSchemasLocations(bean, servletConfig); List<?> providers = getProviders(servletConfig, splitChar); bean.setProviders(providers); List<? extends Feature> features = getFeatures(servletConfig, splitChar); bean.setFeatures(features); bean.setBus(getBus()); bean.setApplication(getApplication()); bean.create(); }