修改了Library相关接口更改后,Workbench不能正确监听环境事件的问题

This commit is contained in:
fengjiayi
2024-12-31 21:47:01 +08:00
parent d3312f4989
commit 6c6d493f93
3 changed files with 58 additions and 50 deletions

View File

@@ -255,21 +255,28 @@ namespace Serein.Library
public override string ToString()
{
var tmp = this.MethodName.Split('.') ;
var methodName = tmp[tmp.Length - 1];
StringBuilder sb = new StringBuilder();
sb.AppendLine($"节点Guid{this.NodeModel.Guid}");
sb.AppendLine($"方法别名:{this.MethodAnotherName}");
sb.AppendLine($"方法名称:{this.MethodName}");
sb.AppendLine($"需要实例:{this.ActingInstanceType?.FullName}");
sb.AppendLine($"节点Guid");
sb.AppendLine($"\t{this.NodeModel.Guid}");
sb.AppendLine();
sb.AppendLine($"方法名称:");
sb.AppendLine($"\t{methodName}");
sb.AppendLine($"方法别名:");
sb.AppendLine($"\t{this.MethodAnotherName}");
sb.AppendLine($"需要实例:");
sb.AppendLine($"\t{this.ActingInstanceType?.FullName}");
sb.AppendLine($"");
sb.AppendLine($"入参参数信息:");
sb.AppendLine($"入参信息:");
for (int i = 0; i < ParameterDetailss.Length; i++)
{
ParameterDetails arg = this.ParameterDetailss[i];
sb.AppendLine(arg.ToString());
}
sb.AppendLine($"");
sb.AppendLine();
sb.AppendLine($"返回值信息:");
sb.AppendLine($" {this.ReturnType?.FullName}");
sb.AppendLine($"\t{this.ReturnType?.FullName}");
return sb.ToString();
}

View File

@@ -317,7 +317,7 @@ namespace Serein.Library
public override string ToString()
{
return $"[{this.Index}] {this.Name} : {this.ExplicitType?.FullName} -> {this.DataType?.FullName}";
return $"[{this.Index}] {this.Name} : {this.DataType?.FullName}";
}
}

View File

@@ -55,6 +55,7 @@ namespace Serein.Workbench
/// 流程环境装饰器,方便在本地与远程环境下切换
/// </summary>
private IFlowEnvironment EnvDecorator => ViewModel.FlowEnvironment;
private IFlowEnvironmentEvent EnvEventDecorator => ViewModel.FlowEnvironment as IFlowEnvironmentEvent;
private MainWindowViewModel ViewModel { get; set; }
@@ -192,27 +193,27 @@ namespace Serein.Workbench
/// </summary>
private void InitFlowEnvironmentEvent()
{
EnvDecorator.OnDllLoad += FlowEnvironment_DllLoadEvent;
EnvDecorator.OnProjectSaving += EnvDecorator_OnProjectSaving;
EnvDecorator.OnProjectLoaded += FlowEnvironment_OnProjectLoaded;
EnvDecorator.OnStartNodeChange += FlowEnvironment_StartNodeChangeEvent;
EnvDecorator.OnNodeConnectChange += FlowEnvironment_NodeConnectChangeEvemt;
EnvDecorator.OnNodeCreate += FlowEnvironment_NodeCreateEvent;
EnvDecorator.OnNodeRemove += FlowEnvironment_NodeRemoveEvent;
EnvDecorator.OnNodePlace += EnvDecorator_OnNodePlaceEvent;
EnvDecorator.OnNodeTakeOut += EnvDecorator_OnNodeTakeOutEvent;
EnvDecorator.OnFlowRunComplete += FlowEnvironment_OnFlowRunCompleteEvent;
EnvDecorator.OnMonitorObjectChange += FlowEnvironment_OnMonitorObjectChangeEvent;
EnvDecorator.OnNodeInterruptStateChange += FlowEnvironment_OnNodeInterruptStateChangeEvent;
EnvDecorator.OnInterruptTrigger += FlowEnvironment_OnInterruptTriggerEvent;
EnvDecorator.OnIOCMembersChanged += FlowEnvironment_OnIOCMembersChangedEvent;
EnvDecorator.OnNodeLocated += FlowEnvironment_OnNodeLocateEvent;
EnvDecorator.OnNodeMoved += FlowEnvironment_OnNodeMovedEvent;
EnvDecorator.OnEnvOut += FlowEnvironment_OnEnvOutEvent;
EnvEventDecorator.OnDllLoad += FlowEnvironment_DllLoadEvent;
EnvEventDecorator.OnProjectSaving += EnvDecorator_OnProjectSaving;
EnvEventDecorator.OnProjectLoaded += FlowEnvironment_OnProjectLoaded;
EnvEventDecorator.OnStartNodeChange += FlowEnvironment_StartNodeChangeEvent;
EnvEventDecorator.OnNodeConnectChange += FlowEnvironment_NodeConnectChangeEvemt;
EnvEventDecorator.OnNodeCreate += FlowEnvironment_NodeCreateEvent;
EnvEventDecorator.OnNodeRemove += FlowEnvironment_NodeRemoveEvent;
EnvEventDecorator.OnNodePlace += EnvDecorator_OnNodePlaceEvent;
EnvEventDecorator.OnNodeTakeOut += EnvDecorator_OnNodeTakeOutEvent;
EnvEventDecorator.OnFlowRunComplete += FlowEnvironment_OnFlowRunCompleteEvent;
EnvEventDecorator.OnMonitorObjectChange += FlowEnvironment_OnMonitorObjectChangeEvent;
EnvEventDecorator.OnNodeInterruptStateChange += FlowEnvironment_OnNodeInterruptStateChangeEvent;
EnvEventDecorator.OnInterruptTrigger += FlowEnvironment_OnInterruptTriggerEvent;
EnvEventDecorator.OnIOCMembersChanged += FlowEnvironment_OnIOCMembersChangedEvent;
EnvEventDecorator.OnNodeLocated += FlowEnvironment_OnNodeLocateEvent;
EnvEventDecorator.OnNodeMoved += FlowEnvironment_OnNodeMovedEvent;
EnvEventDecorator.OnEnvOut += FlowEnvironment_OnEnvOutEvent;
}
@@ -222,27 +223,27 @@ namespace Serein.Workbench
/// </summary>
private void ResetFlowEnvironmentEvent()
{
EnvDecorator.OnDllLoad -= FlowEnvironment_DllLoadEvent;
EnvDecorator.OnProjectSaving -= EnvDecorator_OnProjectSaving;
EnvDecorator.OnProjectLoaded -= FlowEnvironment_OnProjectLoaded;
EnvDecorator.OnStartNodeChange -= FlowEnvironment_StartNodeChangeEvent;
EnvDecorator.OnNodeConnectChange -= FlowEnvironment_NodeConnectChangeEvemt;
EnvDecorator.OnNodeCreate -= FlowEnvironment_NodeCreateEvent;
EnvDecorator.OnNodeRemove -= FlowEnvironment_NodeRemoveEvent;
EnvDecorator.OnNodePlace -= EnvDecorator_OnNodePlaceEvent;
EnvDecorator.OnNodeTakeOut -= EnvDecorator_OnNodeTakeOutEvent;
EnvDecorator.OnFlowRunComplete -= FlowEnvironment_OnFlowRunCompleteEvent;
EnvDecorator.OnMonitorObjectChange -= FlowEnvironment_OnMonitorObjectChangeEvent;
EnvDecorator.OnNodeInterruptStateChange -= FlowEnvironment_OnNodeInterruptStateChangeEvent;
EnvDecorator.OnInterruptTrigger -= FlowEnvironment_OnInterruptTriggerEvent;
EnvDecorator.OnIOCMembersChanged -= FlowEnvironment_OnIOCMembersChangedEvent;
EnvDecorator.OnNodeLocated -= FlowEnvironment_OnNodeLocateEvent;
EnvDecorator.OnNodeMoved -= FlowEnvironment_OnNodeMovedEvent;
EnvDecorator.OnEnvOut -= FlowEnvironment_OnEnvOutEvent;
EnvEventDecorator.OnDllLoad -= FlowEnvironment_DllLoadEvent;
EnvEventDecorator.OnProjectSaving -= EnvDecorator_OnProjectSaving;
EnvEventDecorator.OnProjectLoaded -= FlowEnvironment_OnProjectLoaded;
EnvEventDecorator.OnStartNodeChange -= FlowEnvironment_StartNodeChangeEvent;
EnvEventDecorator.OnNodeConnectChange -= FlowEnvironment_NodeConnectChangeEvemt;
EnvEventDecorator.OnNodeCreate -= FlowEnvironment_NodeCreateEvent;
EnvEventDecorator.OnNodeRemove -= FlowEnvironment_NodeRemoveEvent;
EnvEventDecorator.OnNodePlace -= EnvDecorator_OnNodePlaceEvent;
EnvEventDecorator.OnNodeTakeOut -= EnvDecorator_OnNodeTakeOutEvent;
EnvEventDecorator.OnFlowRunComplete -= FlowEnvironment_OnFlowRunCompleteEvent;
EnvEventDecorator.OnMonitorObjectChange -= FlowEnvironment_OnMonitorObjectChangeEvent;
EnvEventDecorator.OnNodeInterruptStateChange -= FlowEnvironment_OnNodeInterruptStateChangeEvent;
EnvEventDecorator.OnInterruptTrigger -= FlowEnvironment_OnInterruptTriggerEvent;
EnvEventDecorator.OnIOCMembersChanged -= FlowEnvironment_OnIOCMembersChangedEvent;
EnvEventDecorator.OnNodeLocated -= FlowEnvironment_OnNodeLocateEvent;
EnvEventDecorator.OnNodeMoved -= FlowEnvironment_OnNodeMovedEvent;
EnvEventDecorator.OnEnvOut -= FlowEnvironment_OnEnvOutEvent;
}