29 lines
1.0 KiB
C#
29 lines
1.0 KiB
C#
namespace AlquilaFacil.StrategyBusquedaAdmin;
|
|
|
|
public class AdminBusquedaContext
|
|
{
|
|
private static readonly AdminBusquedaContext singleton = new();
|
|
public static AdminBusquedaContext Singleton {get { return singleton; } }
|
|
|
|
private readonly Dictionary<string, IAdminBusquedaStrategy> _estrategias;
|
|
|
|
public AdminBusquedaContext()
|
|
{
|
|
_estrategias = new Dictionary<string, IAdminBusquedaStrategy>
|
|
{
|
|
{ "000", new BusquedaSinParametros() },
|
|
{ "100", new BusquedaPorHabitaciones() },
|
|
{ "010", new BusquedaPorTipo() },
|
|
{ "001", new BusquedaPorServicios() },
|
|
{ "110", new BusquedaPorHabitacionesTipo() },
|
|
{ "101", new BusquedaPorHabitacionesServicios() },
|
|
{ "011", new BusquedaTipoServicios() },
|
|
{ "111", new BusquedaFull() }
|
|
};
|
|
}
|
|
|
|
public IAdminBusquedaStrategy ObtenerEstrategia(string clave)
|
|
{
|
|
return _estrategias.ContainsKey(clave) ? _estrategias[clave] : new BusquedaSinParametros();
|
|
}
|
|
} |