流程返回值改为FlowResult,记录节点信息、上下文信息,为以后的流程调用回溯做准备

This commit is contained in:
fengjiayi
2025-03-21 18:26:01 +08:00
parent 9941f24c5d
commit f99aff3c2c
30 changed files with 916 additions and 752 deletions

View File

@@ -54,22 +54,21 @@ namespace Serein.Library.Api
/// <summary>
/// 获取节点的数据(当前节点需要获取上一节点数据时,需要从 运行时上一节点 的Guid 通过这个方法进行获取
/// </summary>
/// <param name="nodeGuid"></param>
/// <param name="nodeModel"></param>
/// <returns></returns>
object GetFlowData(string nodeGuid);
FlowResult GetFlowData(NodeModelBase nodeModel);
/// <summary>
/// 上一节点数据透传到下一节点
/// </summary>
/// <param name="nodeModel"></param>
object TransmissionData(NodeModelBase nodeModel);
FlowResult TransmissionData(NodeModelBase nodeModel);
/// <summary>
/// 添加或更新当前节点的数据
/// </summary>
/// <param name="nodeGuid"></param>
/// <param name="nodeModel"></param>
/// <param name="flowData"></param>
void AddOrUpdate(string nodeGuid, object flowData);
void AddOrUpdate(NodeModelBase nodeModel, FlowResult flowData);
/// <summary>
/// 重置流程状态(用于对象池回收)

View File

@@ -950,6 +950,13 @@ namespace Serein.Library.Api
#endregion
#region
/// <summary>
/// 获取节点信息
/// </summary>
/// <param name="nodeGuid"></param>
/// <param name="nodeModel"></param>
/// <returns></returns>
bool TryGetNodeModel(string nodeGuid, out NodeModelBase nodeModel);
/// <summary>
/// 获取方法描述信息
@@ -1026,7 +1033,7 @@ namespace Serein.Library.Api
/// <param name="context">调用时的上下文</param>
/// <param name="nodeGuid">节点Guid</param>
/// <returns></returns>
Task<object> InvokeNodeAsync(IDynamicContext context, string nodeGuid);
// Task<object> InvokeNodeAsync(IDynamicContext context, string nodeGuid);
#endregion

View File

@@ -26,13 +26,13 @@ namespace Serein.Library.Api
/// <param name="context"></param>
/// <param name="index"></param>
/// <returns></returns>
object GetArgData(IDynamicContext context, int index);
//object GetArgData(IDynamicContext context, int index);
/// <summary>
/// 获取流程当前传递的数据
/// </summary>
/// <param name="context"></param>
/// <returns></returns>
object GetFlowData(IDynamicContext context);
/// FlowResult GetFlowData(IDynamicContext context);
/// <summary>
/// 获取全局数据