using Serein.Library; using System; using System.Collections.Generic; using System.Diagnostics.CodeAnalysis; using System.Reflection; namespace Serein.Library.Api { /// /// 流程依赖程序集管理 /// public interface IFlowLibraryService { /// /// 是否加载了基础依赖 /// bool IsLoadedBaseLibrary { get; } /// /// 加载基础依赖 /// /// FlowLibraryInfo LoadBaseLibrary(); /// /// 获取已加载的方法信息 /// /// List GetAllLibraryInfo(); /// /// 加载指定依赖 /// /// /// FlowLibraryInfo? LoadFlowLibrary(string libraryfilePath); /// /// 卸载程序集 /// /// /// bool UnloadLibrary(string assemblyName); /// /// 获取委托 /// /// /// /// /// bool TryGetDelegateDetails(string assemblyName, string methodName, out DelegateDetails dd); /// /// 获取方法描述 /// /// /// /// /// bool TryGetMethodDetails(string assemblyName, string methodName, out MethodDetails md); /// /// 获取反射方法信息 /// /// /// /// /// bool TryGetMethodInfo(string assemblyName, string methodName, out MethodInfo methodInfo); /// /// 获取依赖程序集中的类型 /// /// /// /// bool TryGetType(string fullName, out Type? type); /// /// 获取依赖程序集中的类型 /// /// /// Type? GetType(string fullName); /// /// 获取某个节点类型对应的方法描述 /// /// /// List GetMdsOnFlowStart(NodeType nodeType); } }