using Abp.Dependency;
namespace VberZero.Workflow.StepBodies
{
public class WorkflowStepBodyManager : VberStepBodyDefinitionContextBase, ISingletonDependency
{
private readonly IVberStepBodyConfiguration _baseCodeTypeConfiguration;
private readonly IIocManager _iocManager;
public WorkflowStepBodyManager(IVberStepBodyConfiguration baseCodeTypeConfiguration, IIocManager iocManager)
{
_baseCodeTypeConfiguration = baseCodeTypeConfiguration;
_iocManager = iocManager;
}
///
/// 初始化
///
internal void Initialize()
{
foreach (var providerType in _baseCodeTypeConfiguration.Providers)
{
using var provider = _iocManager.ResolveAsDisposable(providerType);
provider.Object.Build(this);
}
}
}
}