mldong/jeeflow-core/spi does not have a README file
pub(open) trait ProcessExtRepository {
async fn find_design_by_id(Self, Int64) -> ProcessDesign? raise JeeflowError
async fn save_design(Self, ProcessDesign) -> Unit raise JeeflowError
async fn update_design(Self, ProcessDesign) -> Unit raise JeeflowError
async fn remove_design(Self, Int64) -> Unit raise JeeflowError
async fn page_designs(Self, PageQuery) -> PageResult[ProcessDesign] raise JeeflowError
async fn save_design_his(Self, ProcessDesignHis) -> Unit raise JeeflowError
async fn list_design_his(Self, Int64) -> Array[ProcessDesignHis] raise JeeflowError
async fn find_surrogate_by_id(Self, Int64) -> ProcessSurrogate? raise JeeflowError
async fn save_surrogate(Self, ProcessSurrogate) -> Unit raise JeeflowError
async fn update_surrogate(Self, ProcessSurrogate) -> Unit raise JeeflowError
async fn remove_surrogate(Self, Int64) -> Unit raise JeeflowError
async fn page_surrogates(Self, PageQuery) -> PageResult[ProcessSurrogate] raise JeeflowError
async fn get_surrogate(Self, String, String, String) -> ProcessSurrogate? raise JeeflowError
}pub(open) trait ProcessRepository {
async fn find_define_by_id(Self, Int64) -> ProcessDefine? raise JeeflowError
async fn save_define(Self, ProcessDefine) -> Unit raise JeeflowError
async fn update_define(Self, ProcessDefine) -> Unit raise JeeflowError
async fn update_define_state(Self, Int64, Int) -> Unit raise JeeflowError
async fn remove_define(Self, Int64) -> Unit raise JeeflowError
async fn find_instance_by_id(Self, Int64) -> ProcessInstance? raise JeeflowError
async fn save_instance(Self, ProcessInstance) -> Unit raise JeeflowError
async fn update_instance(Self, ProcessInstance) -> Unit raise JeeflowError
async fn find_task_by_id(Self, Int64) -> ProcessTask? raise JeeflowError
async fn save_task(Self, ProcessTask) -> Unit raise JeeflowError
async fn update_task(Self, ProcessTask) -> Unit raise JeeflowError
async fn find_doing_tasks(Self, Int64, Array[String]) -> Array[ProcessTask] raise JeeflowError
async fn find_done_tasks(Self, Int64, Array[String]) -> Array[ProcessTask] raise JeeflowError
async fn find_history_tasks(Self, Int64) -> Array[ProcessTask] raise JeeflowError
async fn find_task_actors(Self, Int64) -> Array[String] raise JeeflowError
async fn add_task_actor(Self, Int64, Array[String]) -> Unit raise JeeflowError
async fn remove_task_actor(Self, Int64, Array[String]) -> Unit raise JeeflowError
async fn create_cc_instance(Self, Int64, String, Array[String]) -> Unit raise JeeflowError
async fn update_cc_status(Self, Int64, String) -> Unit raise JeeflowError
async fn page_todo_tasks(Self, PageQuery) -> PageResult[TaskRow] raise JeeflowError
async fn page_done_tasks(Self, PageQuery) -> PageResult[TaskRow] raise JeeflowError
async fn page_instances(Self, PageQuery) -> PageResult[InstanceRow] raise JeeflowError
async fn page_cc_instances(Self, PageQuery) -> PageResult[InstanceRow] raise JeeflowError
async fn page_defines(Self, PageQuery) -> PageResult[DefineRow] raise JeeflowError
async fn count_todo_tasks(Self, String) -> Int64 raise JeeflowError
async fn get_all_instances(Self) -> Array[ProcessInstance] raise JeeflowError
async fn get_all_tasks(Self) -> Array[ProcessTask] raise JeeflowError
}pub(all) struct Ctx[R, E] {
repository : R
ext_repository : E
user_provider : (String) -> UserInfo? raise JeeflowError?
org_user_provider : OrgUserProviderFns?
user_search_provider : UserSearchProviderFns?
json_provider : JsonProviderFns?
expression_evaluator : (String, Map[String, Json]) -> Json raise JeeflowError?
id_generator : () -> Int64 raise JeeflowError?
action_permission_provider : (String) -> Array[String]?
biz_data_reader : (String, Int64) -> Map[String, Json]? raise JeeflowError?
assignment_handlers : Map[String, (Execution) -> String raise JeeflowError]
decision_handlers : Map[String, (Execution) -> String raise JeeflowError]
interceptors : Array[InterceptorFn]
event_listeners : Array[(ProcessEvent) -> Unit raise]
}fn[R, E] Ctx::find_assignment_handler(self : Ctx[R, E], name : String) -> (Execution) -> String raise JeeflowError?fn[R, E] Ctx::find_decision_handler(self : Ctx[R, E], name : String) -> (Execution) -> String raise JeeflowError?fn[R, E] Ctx::register_assignment_handler(self : Ctx[R, E], name : String, handler : (Execution) -> String raise JeeflowError) -> Unitfn[R, E] Ctx::register_decision_handler(self : Ctx[R, E], name : String, handler : (Execution) -> String raise JeeflowError) -> Unitfn[R, E] Ctx::with_user_provider(self : Ctx[R, E], p : (String) -> UserInfo? raise JeeflowError) -> Ctx[R, E]pub(all) struct JsonProviderFns {
to_json : (Json) -> String
from_json : (String) -> Json raise JeeflowError
is_json : (String) -> Bool
}pub(all) struct NoExtRepository {
}impl ProcessExtRepository for NoExtRepositoryasync fn find_design_by_id(_self : NoExtRepository, _id : Int64) -> ProcessDesign? raise JeeflowErrorasync fn find_surrogate_by_id(_self : NoExtRepository, _id : Int64) -> ProcessSurrogate? raise JeeflowErrorasync fn get_surrogate(_self : NoExtRepository, _op : String, _name : String, _time : String) -> ProcessSurrogate? raise JeeflowErrorasync fn list_design_his(_self : NoExtRepository, _id : Int64) -> Array[ProcessDesignHis] raise JeeflowErrorasync fn page_designs(_self : NoExtRepository, _q : PageQuery) -> PageResult[ProcessDesign] raise JeeflowErrorasync fn page_surrogates(_self : NoExtRepository, _q : PageQuery) -> PageResult[ProcessSurrogate] raise JeeflowErrorasync fn update_surrogate(_self : NoExtRepository, _s : ProcessSurrogate) -> Unit raise JeeflowErrorpub(all) struct OrgUserProviderFns {
find_dept_leaders : (String) -> Array[String] raise JeeflowError
find_dept_main_leaders : (String) -> Array[String] raise JeeflowError
find_by_role : (String) -> Array[String] raise JeeflowError
}pub(all) struct UserSearchProviderFns {
page : (PageQuery) -> PageResult[Map[String, Json]] raise JeeflowError
find_by_id : (String) -> Map[String, Json]? raise JeeflowError
}Install
Download zipjeeflow workflow engine core (MoonBit port, zero registry deps)
Dependencies