using System.ComponentModel.DataAnnotations;
using static Managing.Common.Enums;

namespace Managing.Domain.Workflows;

public class Workflow
{
    [Required]
    public string Name { get; set; }
    [Required]
    public WorkflowUsage Usage { get; set; }
    [Required]
    public List<IFlow> Flows { get; set; }
    [Required]
    public string Description { get; set; }

    public async Task Execute()
    {
        foreach (var flow in Flows)
        {
            await flow.Execute(string.Empty);
        }
    }
}
