ChipDemo/Core/Features/DefaultFeature.cs

27 lines
606 B
C#

using Demo.Models;
namespace Demo.Features;
/// <summary>
/// 默认的功能类,做委托容器用
/// </summary>
/// <typeparam name="TMetadata"></typeparam>
public sealed class DefaultFeature : Feature
{
public DefaultFeature(string name,
FeatureFunction? executeFunction = null,
int order = 1)
{
_executeFunction = executeFunction;
Name = name;
Order = order;
}
private readonly FeatureFunction? _executeFunction;
public override void Execute(IMetadata metadata)
{
_executeFunction?.Invoke(this, metadata);
}
}