using Elsa.Features.Abstractions;
using Elsa.Features.Services;
using Elsa.KeyValues.Contracts;
using Elsa.KeyValues.Stores;
using Microsoft.Extensions.DependencyInjection;
namespace Elsa.KeyValues.Features;
///
/// Installs and configures instance management features.
///
public class KeyValueFeature : FeatureBase
{
///
public KeyValueFeature(IModule module) : base(module)
{
}
///
/// A factory that instantiates an .
///
public Func KeyValueStore { get; set; } = sp => ActivatorUtilities.CreateInstance(sp);
///
public override void Apply()
{
Services.AddScoped(KeyValueStore);
}
}