flowable EngineConfiguration的實現分析(2)
阿新 • • 發佈:2018-11-14
EngineConfiguration的實現類是一個抽象類:AbstractEngineConfiguration
一、引擎配置的分類
繼承 AbsractEngineConfiguration的子類實現不同方面的功能,包括:
1、身份管理引擎配置
2、表單引擎配置
3、決策引擎配置
4、內容引擎配置
5、流程引擎配置
下圖是除了流程引擎配置之外的4個引擎配置的繼承關係圖,流程引擎配置後面單獨介紹。
二、具體實現
下面從自底向上的順序,分析一下程式碼:
1、StandaloneInMem 引擎配置
上圖最下面的四個類都是以 StandaloneInMem 開始的類。這些類都是主要為了測試目的而存在的。
這些類預設使用 H2 作為引擎資料庫。
而在這些類中,只有一句:
his.jdbcUrl = "jdbc:h2:mem:flowable";
這句賦值語句指定了h2資料庫的 jdbc url 引數。
每個 StandaloneInMem 開始的類,只有一個構造方法。
每個類的構造方法列舉如下:
public StandaloneInMemContentEngineConfiguration() {
this.jdbcUrl = "jdbc:h2:mem:flowable";
}
public StandaloneInMemDmnEngineConfiguration () {
setJdbcUrl("jdbc:h2:mem:flowable");
}
public StandaloneInMemFormEngineConfiguration() {
this.jdbcUrl = "jdbc:h2:mem:flowable";
}
public StandaloneInMemIdmEngineConfiguration() {
this.jdbcUrl = "jdbc:h2:mem:flowable";
}
2、Standalone 引擎配置
Standalone 引擎配置是為了與Spring引擎配置區分而設定的。
實際上,Standalone 出了繼承父類之外,沒有增加任何其他的程式碼。
列舉如下:
public class StandaloneIdmEngineConfiguration extends IdmEngineConfiguration {
}
public class StandaloneFormEngineConfiguration extends FormEngineConfiguration {
}
public class StandaloneDmnEngineConfiguration extends DmnEngineConfiguration {
}
public class StandaloneContentEngineConfiguration extends ContentEngineConfiguration {
}
3、Spring 引擎配置
所有的Spring引擎配置都實現了Spring的 ApplicationContextAware
介面。
所有的Spring引擎配置,在後面例項執行時再詳細分析。
4、引擎配置實現類
後面逐一分析。