using Serein.Library;
using static Serein.Proto.WebSocket.SereinWebSocketService;
namespace Serein.Proto.WebSocket.Handle
{
///
/// socket模块处理数据配置
///
public class MethodInvokeConfiguration
{
///
/// Emit委托
///
public DelegateDetails? DelegateDetails { get; set; }
///
/// 所使用的实例
///
public Func? InstanceFactory { get; set; }
///
/// 是否需要返回
///
public bool IsReturnValue { get; set; } = true;
///
/// 是否使用Data整体内容作为入参参数
///
public bool[] UseData { get; set; } = [];
///
/// 是否使用Request整体内容作为入参参数
///
public bool[] UseRequest { get; set; } = [];
///
/// 是否需要发送消息的委托
///
public bool[] IsNeedSendDelegate { get; set; } = [];
///
/// 发送消息的委托类型
///
public SendType[] SendDelegateType { get; set; } = [];
///
/// 缓存的发送委托数组
///
public Delegate?[] CachedSendDelegates ;
///
/// 是否使用消息ID作为入参参数
///
public bool[] UseMsgId { get; set; } = [];
///
/// 是否使用上下文作为参数
///
public bool[] UseContent { get; set; } = [];
///
/// 参数名称
///
public string[] ParameterName { get; set; } = [];
///
/// 参数类型
///
public Type[] ParameterType { get; set; } = [];
}
}