初始化式样¶
许可机构在系统启动时进行多个组件的初始化处理。
初始化处理中,会使用ServiceLoader读取带有下述接口的类 ,按照下述 Level 的顺序执行。
Level0 ( jp.co.intra_mart.foundation.authz.initialize.phases.Level0 )
基于XML设定信息进行可动作组件的初始化。初始化对象基本上是不需要访问DB的组件。无法在此级别使用ResourceManager或SubjectManager等管理器API。
- 读取在路由器表中使用的许可资源映射器扩展
- 读取许可判断功能的许可判断模块扩展
- 公式解析器的初始化
- 读取资源类型扩展
- 读取SubjectType扩展
- 读取策略解释器设定
Level1 ( jp.co.intra_mart.foundation.authz.initialize.phases.Level1 )
基于XML设定信息对使用可动作组件(在Level0初始化的组件)的组件进行初始化。需要在管理器API中进行初始化的组件在此级别被初始化。但是,若到最后为止都未完成Tenant环境安装,则即使此级别的初始化结束也可能无法正常动作。
- Subject解决系列的初始化
- 读取Subject解决器扩展
Level2 ( jp.co.intra_mart.foundation.authz.initialize.phases.Level2 )
对需要使用管理器API的组件进行初始化。
添加插件或扩展等时,若需要启动时的初始化,请在适当时间进行初始化。