public IRepositoryImages GetStrategy(int iTypeExtension) { IRepositoryImages repositoryImages = null; switch (iTypeExtension) { case 1: repositoryImages = new JPEGStrategy(); break; case 2: repositoryImages = new PNGStrategy(); break; case 3: repositoryImages = new BMPStrategy(); break; default: break; } return(repositoryImages); }
static void Main(string[] args) { IRepositoryImages repositoryImage = null; IRepositoryImagesFactory repositoryImages = new RepositoryImagesFactory(); Console.ForegroundColor = ConsoleColor.Blue; Console.WriteLine("Captura el nombre de la imagen: "); Console.ResetColor(); string cName = Convert.ToString(Console.ReadLine()); ShowTypesExtension(); int iTypeExtension = Convert.ToInt32(Console.ReadLine()); repositoryImage = repositoryImages.GetStrategy(iTypeExtension); string cTypeExtension = GetNameExtension(iTypeExtension); string cResult = repositoryImage.SaveImage(cName, cTypeExtension); Console.ForegroundColor = ConsoleColor.DarkYellow; Console.WriteLine(cResult); Console.ResetColor(); Console.ForegroundColor = ConsoleColor.Green; Console.WriteLine("\r\nPresione una tecla para salir."); Console.ReadKey(); }