public static AppContext newStandalone() { return initStandalone(null, true); }
private AppClassLoader(ClassLoader parent) { this.parent = parent; this.testing = AppContextInitializer.isTesting(); try { parentLoaderDefineClass = ClassLoader.class.getDeclaredMethod("defineClass", new Class[] {String.class, byte[].class, int.class,int.class}); parentLoaderDefineClass.setAccessible(true); parentFindLoadedClass = ClassLoader.class.getDeclaredMethod("findLoadedClass", String.class); parentFindLoadedClass.setAccessible(true); } catch (Exception e) { throw Exceptions.uncheck(e); } }
AppClassLoader appCl = null; if (!instrumentDisabled) { ClassLoader parent = getClassLoader(); appCl = AppClassLoader.init(parent); Thread.currentThread().setContextClassLoader(appCl); BeanFactoryInternal factory = createStandaloneAppFactory(config, externalAppFactory); initSysContext(context, config); onInited(context);
ClassLoader parent = getClassLoader(); appCl = AppClassLoader.init(parent); Thread.currentThread().setContextClassLoader(appCl); initSysContext(context, config); onInited(context);
public SimpleMonitorProvider() { AppConfig appConfig = AppContextInitializer.getInitialConfig(); if(null == appConfig) { log.warn("App config not found, monitoring disabled!!!"); }else{ config = appConfig.getExtension(MonitorConfig.class); } }
AppContextInitializer.initExternal( sc,
() -> Strings.firstNotEmpty(AppContextInitializer.getBasePackage(), DEFAULT_BASE_PACKAGE)); config.properties.put(INIT_PROPERTY_BASE_PACKAGE,config.basePackage);
protected static void startServer() { synchronized (WebTestRunner.class) { if(null == server) { if(null == httpClient) { httpClient = new OkTHttpClient(httpPort); } if(null == httpsClient) { httpsClient = new OkTHttpClient(httpsPort, true); } if (null == server) { AppContextInitializer.markTesting(); server = new TWebServer(httpPort, httpsPort, true); if(duplicateRootContext) { server.duplicateContext("", ROOT_CONTEXT_PATH); } server.start(); httpClient.addContextPaths(server.getContextPaths()); httpsClient.addContextPaths(server.getContextPaths()); } rootServletContext = server.tryGetServletContext(""); if(null != rootServletContext) { context = AppContext.get(rootServletContext); }else if(server.getServletContexts().size() == 1){ context = AppContext.get(server.getServletContexts().values()); } setup(); } } }
public static void initStandalone() { initStandalone(null); }
public static void initStandalone(BeanFactory externalAppFactory) { initStandalone(externalAppFactory, true); }
@Override public void run(String args, Instrumentation inst) throws Exception { if(Strings.isEmpty(args)) { log.info("\nStart app context by javaagent!\n"); AppContextInitializer.initStandalone(); } }
/** * Initializes standalone app context if current context did not initialized. * * @see AppContextInitializer#initStandalone(); */ public static AppContext initStandalone(){ if(tryGetCurrent() == null){ AppContextInitializer.initStandalone(); } return current(); }