mirror of
https://gitee.com/langsisi_admin/serein-flow
synced 2026-03-20 08:16:34 +08:00
refactor(temp) : 修复了一些命名和构造函数入参类型
This commit is contained in:
@@ -29,9 +29,10 @@ namespace Serein.NodeFlow.Env
|
||||
/// </summary>
|
||||
public LocalFlowEnvironment(IFlowEnvironment flowEnvironment,
|
||||
IFlowEnvironmentEvent flowEnvironmentEvent,
|
||||
FlowLibraryService flowLibraryManagement,
|
||||
IFlowLibraryService flowLibraryManagement,
|
||||
FlowOperationService flowOperationService,
|
||||
FlowModelService flowModelService,
|
||||
UIContextOperation uIContextOperation,
|
||||
IFlowControl flowControl,
|
||||
IFlowEdit flowEdit,
|
||||
ISereinIOC sereinIOC,
|
||||
@@ -42,7 +43,8 @@ namespace Serein.NodeFlow.Env
|
||||
FlowEdit = flowEdit;
|
||||
IOC = sereinIOC;
|
||||
FlowControl = flowControl;
|
||||
_flowLibraryService = flowLibraryManagement;
|
||||
FlowLibraryService = flowLibraryManagement;
|
||||
UIContextOperation = uIContextOperation;
|
||||
_flowModelService = flowModelService;
|
||||
_flowOperationService = flowOperationService;
|
||||
_IsGlobalInterrupt = false;
|
||||
@@ -114,6 +116,11 @@ namespace Serein.NodeFlow.Env
|
||||
/// </summary>
|
||||
public IFlowControl FlowControl { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 通过程序集名称管理动态加载的程序集,用于节点创建提供方法描述,流程运行时提供Emit委托
|
||||
/// </summary>
|
||||
public IFlowLibraryService FlowLibraryService { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// UI线程操作类
|
||||
/// </summary>
|
||||
@@ -184,10 +191,7 @@ namespace Serein.NodeFlow.Env
|
||||
/// </summary>
|
||||
private ISereinIOC _flowEnvIOC;
|
||||
|
||||
/// <summary>
|
||||
/// 通过程序集名称管理动态加载的程序集,用于节点创建提供方法描述,流程运行时提供Emit委托
|
||||
/// </summary>
|
||||
private readonly FlowLibraryService _flowLibraryService;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 流程节点操作服务
|
||||
@@ -302,9 +306,9 @@ namespace Serein.NodeFlow.Env
|
||||
}
|
||||
var projectData = flowProjectData ?? throw new ArgumentNullException(nameof(flowProjectData));
|
||||
|
||||
if (!_flowLibraryService.IsLoadedBaseLibrary)
|
||||
if (!FlowLibraryService.IsLoadedBaseLibrary)
|
||||
{
|
||||
var baseLibrary = _flowLibraryService.LoadBaseLibrary();
|
||||
var baseLibrary = FlowLibraryService.LoadBaseLibrary();
|
||||
if (baseLibrary.MethodInfos.Count > 0 && UIContextOperation is not null)
|
||||
{
|
||||
await UIContextOperation.InvokeAsync(() => Event.OnDllLoad(new LoadDllEventArgs(baseLibrary))); // 通知UI创建dll面板显示
|
||||
@@ -360,7 +364,7 @@ namespace Serein.NodeFlow.Env
|
||||
{
|
||||
var projectData = new SereinProjectData()
|
||||
{
|
||||
Librarys = this._flowLibraryService.GetAllLibraryInfo().ToArray(),
|
||||
Librarys = this.FlowLibraryService.GetAllLibraryInfo().ToArray(),
|
||||
Nodes = _flowModelService.GetAllNodeModel()
|
||||
.Select(node => node.ToInfo())
|
||||
.Where(info => info is not null)
|
||||
@@ -384,7 +388,8 @@ namespace Serein.NodeFlow.Env
|
||||
{
|
||||
try
|
||||
{
|
||||
var libraryInfo = _flowLibraryService.LoadFlowLibrary(dllPath);
|
||||
|
||||
var libraryInfo = FlowLibraryService.LoadFlowLibrary(dllPath);
|
||||
if (libraryInfo is not null && libraryInfo.MethodInfos.Count > 0)
|
||||
{
|
||||
UIContextOperation?.Invoke(() => Event.OnDllLoad(new LoadDllEventArgs(libraryInfo))); // 通知UI创建dll面板显示
|
||||
@@ -407,7 +412,7 @@ namespace Serein.NodeFlow.Env
|
||||
var groupedNodes = _flowModelService.GetAllNodeModel().Where(node => !string.IsNullOrWhiteSpace(node.MethodDetails.AssemblyName) && node.MethodDetails.AssemblyName.Equals(assemblyName)).ToArray();
|
||||
if (groupedNodes.Length == 0)
|
||||
{
|
||||
var isPass = _flowLibraryService.UnloadLibrary(assemblyName);
|
||||
var isPass = FlowLibraryService.UnloadLibrary(assemblyName);
|
||||
return isPass;
|
||||
}
|
||||
else
|
||||
@@ -508,7 +513,7 @@ namespace Serein.NodeFlow.Env
|
||||
|
||||
public bool TryGetMethodDetailsInfo(string assemblyName, string methodName, out MethodDetailsInfo? mdInfo)
|
||||
{
|
||||
var isPass = _flowLibraryService.TryGetMethodDetails(assemblyName, methodName, out var md);
|
||||
var isPass = FlowLibraryService.TryGetMethodDetails(assemblyName, methodName, out var md);
|
||||
if (!isPass || md is null)
|
||||
{
|
||||
mdInfo = null;
|
||||
@@ -534,7 +539,7 @@ namespace Serein.NodeFlow.Env
|
||||
/// <returns></returns>
|
||||
public bool TryGetDelegateDetails(string assemblyName, string methodName, out DelegateDetails? delegateDetails)
|
||||
{
|
||||
return _flowLibraryService.TryGetDelegateDetails(assemblyName, methodName, out delegateDetails);
|
||||
return FlowLibraryService.TryGetDelegateDetails(assemblyName, methodName, out delegateDetails);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -662,7 +667,6 @@ namespace Serein.NodeFlow.Env
|
||||
/// <returns></returns>
|
||||
public bool LoadNativeLibraryOfRuning(string file)
|
||||
{
|
||||
|
||||
return NativeDllHelper.LoadDll(file);
|
||||
}
|
||||
|
||||
@@ -685,6 +689,11 @@ namespace Serein.NodeFlow.Env
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
Task IFlowEnvironment.StartRemoteServerAsync(int port)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -251,7 +251,7 @@ namespace Serein.NodeFlow.Model.Nodes
|
||||
var index = node.MethodDetails.MethodName.IndexOf('(');
|
||||
var methodName = tempName[..(index - 1)];
|
||||
return GetApiInvokeName(node, methodName);*/
|
||||
FlowLibraryService service = node.Env.IOC.Get<FlowLibraryService>();
|
||||
IFlowLibraryService service = node.Env.IOC.Get<IFlowLibraryService>();
|
||||
if (service.TryGetMethodInfo(md.AssemblyName, md.MethodName, out var methodInfo))
|
||||
{
|
||||
|
||||
|
||||
@@ -196,7 +196,7 @@ namespace Serein.NodeFlow.Model.Nodes
|
||||
|
||||
string returnTypeName = nodeInfo.CustomData?.ReturnTypeName ?? typeof(object);
|
||||
|
||||
var flowLibService = Env.IOC.Get<FlowLibraryService>();
|
||||
var flowLibService = Env.IOC.Get<IFlowLibraryService>();
|
||||
|
||||
Type?[] argType = array.Select(info => string.IsNullOrWhiteSpace(info.ArgType) ? typeof(Unit)
|
||||
: Type.GetType(info.ArgType)
|
||||
|
||||
@@ -56,7 +56,7 @@ namespace Serein.NodeFlow.Model.Operations
|
||||
/// 流程依赖服务
|
||||
/// </summary>
|
||||
[AutoInjection]
|
||||
protected FlowLibraryService flowLibraryManagement;
|
||||
protected IFlowLibraryService flowLibraryManagement;
|
||||
|
||||
/// <summary>
|
||||
/// 流程事件服务
|
||||
|
||||
@@ -79,8 +79,9 @@
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Serein.Extend.NewtonsoftJson\Serein.Extend.NewtonsoftJson.csproj" />
|
||||
<ProjectReference Include="..\Serein.Library.MyGenerator\Serein.Library.NodeGenerator.csproj" OutputItemType="Analyzer" />
|
||||
|
||||
<ProjectReference Include="..\Serein.Library.NodeGenerator\Serein.Library.NodeGenerator.csproj" OutputItemType="Analyzer"/>
|
||||
|
||||
|
||||
<ProjectReference Include="..\Library\Serein.Library.csproj" />
|
||||
|
||||
<ProjectReference Include="..\Serein.Script\Serein.Script.csproj" />
|
||||
|
||||
Reference in New Issue
Block a user