using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Cryptography.X509Certificates;
using System.Text;
using System.Threading.Tasks;
using Model;
namespace ConsoleApp.Menu
{
///
/// An utility to find a recipe.
///
internal class SearcherRecipe : Menu
{
private readonly RecipeCollection _recipeCollectionOnSearch;
public SearcherRecipe(RecipeCollection recipeCollection) : base("Search recipe")
{
_recipeCollectionOnSearch = recipeCollection;
_allSelectors = ConvertRecipeCollectionInSelectors();
_selectList = _allSelectors;
}
#region Methods
private List> ConvertRecipeCollectionInSelectors()
{
List> newSelectors = new List>();
foreach (Recipe recipe in _recipeCollectionOnSearch)
{
newSelectors.Add(new Selector(recipe, $"[{recipe.Id}]: {recipe.Title}"));
}
return newSelectors;
}
public override IMenu? Return()
{
if (CurrentSelected == null)
throw new ArgumentNullException("CurrentSelected");
return new PlainText(CurrentSelected.ToString());
}
#endregion
}
}