using Abp.Modules; using Abp.Reflection.Extensions; using VberZero.Workflow.StepBodies; using WorkflowCore.Interface; namespace VberZero.Workflow { public class VberWorkflowModule : AbpModule { public override void PreInitialize() { IocManager.Register(); IocManager.Register(); } public override void Initialize() { base.Initialize(); IocManager.RegisterAssemblyByConvention(typeof(VberWorkflowModule).GetAssembly()); } public override void PostInitialize() { base.PostInitialize(); if (Configuration.GetWorkflowConfiguration().IsEnabled) { //IocManager.IocContainer.Install(new WorkflowInstaller(IocManager)); IocManager.IocContainer.Install(new WorkflowInstaller()); IocManager.Resolve().Initialize(); var host = IocManager.Resolve(); host.Start(); IocManager.Resolve().Initialize(); } } public override void Shutdown() { base.Shutdown(); if (Configuration.GetWorkflowConfiguration().IsEnabled) { IocManager.Resolve().Stop(); } } } }