- java.lang.Object
-
- org.redkale.boot.Application
-
public final class Application extends Object
进程启动类,全局对象。
程序启动执行步骤: 1、读取application.xml 2、进行classpath扫描动态加载Service、WebSocket与Servlet 3、优先加载所有SNCP协议的服务,再加载其他协议服务, 最后加载WATCH协议的服务 4、最后进行Service、Servlet与其他资源之间的依赖注入
详情见: https://redkale.org
- 作者:
- zhangjx
-
-
字段概要
字段 修饰符和类型 字段 说明 static Set<String>
REDKALE_RESNAMES
static String
RESNAME_APP_ADDR
当前进程节点的IP地址, 类型:InetSocketAddress、InetAddress、Stringstatic String
RESNAME_APP_CLIENT_ASYNCGROUP
使用RESNAME_APP_CLIENT_IOGROUP代替static String
RESNAME_APP_CONF_DIR
当前进程的配置目录URI,如果不是绝对路径则视为HOME目录下的相对路径 类型:String、URI、File、Path
若配置目录不是本地文件夹, 则File、Path类型的值为nullstatic String
RESNAME_APP_EXECUTOR
当前进程的work线程池, 类型:Executor、ExecutorServicestatic String
RESNAME_APP_HOME
当前进程的根目录, 类型:String、File、Path、URIstatic String
RESNAME_APP_NAME
当前进程服务的名称, 类型:Stringstatic String
RESNAME_APP_NODEID
当前进程节点的nodeid, 类型:Stringstatic String
RESNAME_APP_TIME
当前进程启动的时间, 类型: longstatic String
RESNAME_SERVER_RESFACTORY
当前Server的ResourceFactorystatic String
RESNAME_SERVER_ROOT
"SERVER_ROOT" 当前Server的ROOT目录类型:String、File、Pathstatic String
RESNAME_SNCP_ADDRESS
当前Service所属的SNCP Server的地址 类型: SocketAddress、InetSocketAddress、Stringstatic String
RESNAME_SNCP_GROUP
当前Service所属的SNCP Server所属的组 类型: Stringstatic String
SYSNAME_APP_CONF_DIR
static String
SYSNAME_APP_HOME
static String
SYSNAME_APP_NAME
static String
SYSNAME_APP_NODEID
-
方法概要
-
-
-
字段详细资料
-
RESNAME_APP_HOME
public static final String RESNAME_APP_HOME
当前进程的根目录, 类型:String、File、Path、URI- 另请参阅:
- 常量字段值
-
RESNAME_APP_CONF_DIR
public static final String RESNAME_APP_CONF_DIR
当前进程的配置目录URI,如果不是绝对路径则视为HOME目录下的相对路径 类型:String、URI、File、Path
若配置目录不是本地文件夹, 则File、Path类型的值为null- 另请参阅:
- 常量字段值
-
RESNAME_APP_NODEID
public static final String RESNAME_APP_NODEID
当前进程节点的nodeid, 类型:String- 另请参阅:
- 常量字段值
-
RESNAME_APP_ADDR
public static final String RESNAME_APP_ADDR
当前进程节点的IP地址, 类型:InetSocketAddress、InetAddress、String- 另请参阅:
- 常量字段值
-
RESNAME_APP_EXECUTOR
public static final String RESNAME_APP_EXECUTOR
当前进程的work线程池, 类型:Executor、ExecutorService- 从以下版本开始:
- 2.3.0
- 另请参阅:
- 常量字段值
-
RESNAME_APP_CLIENT_ASYNCGROUP
public static final String RESNAME_APP_CLIENT_ASYNCGROUP
使用RESNAME_APP_CLIENT_IOGROUP代替- 从以下版本开始:
- 2.3.0
- 另请参阅:
- 常量字段值
-
RESNAME_SNCP_ADDRESS
public static final String RESNAME_SNCP_ADDRESS
当前Service所属的SNCP Server的地址 类型: SocketAddress、InetSocketAddress、String- 另请参阅:
- 常量字段值
-
RESNAME_SNCP_GROUP
public static final String RESNAME_SNCP_GROUP
当前Service所属的SNCP Server所属的组 类型: String- 另请参阅:
- 常量字段值
-
RESNAME_SERVER_ROOT
public static final String RESNAME_SERVER_ROOT
"SERVER_ROOT" 当前Server的ROOT目录类型:String、File、Path- 另请参阅:
- 常量字段值
-
RESNAME_SERVER_RESFACTORY
public static final String RESNAME_SERVER_RESFACTORY
当前Server的ResourceFactory- 另请参阅:
- 常量字段值
-
-
方法详细资料
-
singleton
public static <T extends Service> T singleton(Class<T> serviceClass, Class<? extends Service>... extServiceClasses) throws Exception
实例化单个Service- 类型参数:
T
- 泛型- 参数:
serviceClass
- 指定的service类extServiceClasses
- 需要排除的service类- 返回:
- Service对象
- 抛出:
Exception
- 异常
-
singleton
public static <T extends Service> T singleton(String name, Class<T> serviceClass, Class<? extends Service>... extServiceClasses) throws Exception
实例化单个Service- 类型参数:
T
- 泛型- 参数:
name
- Service的资源名serviceClass
- 指定的service类extServiceClasses
- 需要排除的service类- 返回:
- Service对象
- 抛出:
Exception
- 异常
-
create
public static Application create(boolean singleton) throws IOException
- 抛出:
IOException
-
loadClassByFilters
public void loadClassByFilters(ClassFilter... filters)
-
loadServerClassFilters
public void loadServerClassFilters(ClassFilter... filters)
-
loadDataSource
public DataSource loadDataSource(String sourceName, boolean autoMemory)
-
loadCacheSource
public CacheSource loadCacheSource(String sourceName, boolean autoMemory)
-
getWorkExecutor
public ExecutorService getWorkExecutor()
-
isVirtualWorkExecutor
public boolean isVirtualWorkExecutor()
-
getClientAsyncGroup
public AsyncGroup getClientAsyncGroup()
-
getResourceFactory
public ResourceFactory getResourceFactory()
-
getClassLoader
public RedkaleClassLoader getClassLoader()
-
getServerClassLoader
public RedkaleClassLoader getServerClassLoader()
-
getNodeServers
public List<NodeServer> getNodeServers()
-
getSncpRpcGroups
public SncpRpcGroups getSncpRpcGroups()
-
getNodeid
public String getNodeid()
-
getName
public String getName()
-
getHome
public File getHome()
-
getConfDir
public URI getConfDir()
-
getStartTime
public long getStartTime()
-
getEnvironment
public Environment getEnvironment()
-
getAppConfig
public AnyValue getAppConfig()
-
isCompileMode
public boolean isCompileMode()
-
isSingletonMode
public boolean isSingletonMode()
-
-