コード例 #1
0
 public override void BuildGenero(Genero genero)
 {
     materialDiscografico.Genero = genero;
 }
コード例 #2
0
 public abstract void BuildGenero(Genero genero);
コード例 #3
0
        static void Main(string[] args)
        {
            int numeroDeCancion = 1;

            // MATERIAL DISCOGRAFICO
            String nombre;
            Double precio;
            int    stock;

            // AUTOR
            Autor  autor;
            String nombreArtista;
            String descripcionArtista;

            // GENERO
            Genero genero;
            String descripcionGenero;

            // TIPO MATERIAL DISCOGRAFICO
            String nombreMaterialDiscografico;

            // CANCIONES
            List <Cancion> canciones = new List <Cancion>();
            Cancion        cancion;
            String         nombreCancion;
            int            duracionSegundos;

            char respuesta;

            // MATERIAL DISCOGRAFICO
            Console.Write("Ingrese el nombre del nuevo material: ");
            nombre = Console.ReadLine();
            Console.Write("Ingrese el precio del nuevo material: ");
            precio = Convert.ToDouble(Console.ReadLine());
            Console.Write("Ingrese el stock del nuevo material: ");
            stock = Convert.ToInt32(Console.ReadLine());

            // AUTOR
            Console.Write("Ingrese el nombre del artista: ");
            nombreArtista = Console.ReadLine();
            Console.Write("Ingrese descripcion del artista: ");
            descripcionArtista = Console.ReadLine();
            autor = new Autor(nombreArtista, descripcionArtista);

            // GENERO
            Console.Write("Ingrese el nombre del genero: ");
            descripcionGenero = Console.ReadLine();
            genero            = new Genero(descripcionGenero);

            do
            {
                // CANCIONES
                Console.WriteLine("\nCancion " + numeroDeCancion.ToString());
                Console.Write("Ingrese el nombre de la canción: ");
                nombreCancion = Console.ReadLine();
                Console.Write("Ingrese la duracion de la cancion en segundos: ");
                duracionSegundos = Convert.ToInt32(Console.ReadLine());

                cancion = new Cancion(nombreCancion, duracionSegundos);
                canciones.Add(cancion);

                numeroDeCancion++;

                Console.Write("Desea seguir agregando canciones? (S/N): ");
                respuesta = Console.ReadKey().KeyChar;
                Console.ReadKey();
            } while (respuesta == 'S');

            // BUILDER MATERIAL DISCOGRAFICO
            MaterialDiscograficoBuilder materialDiscograficoBuilder;
            Director director = new Director();

            Console.Write("Ingrese DISCO (D) O VINILO (V): ");
            respuesta = Console.ReadKey().KeyChar;

            Console.Clear();

            if (respuesta == 'D')
            {
                materialDiscograficoBuilder = new DiscoCompactoBuilder();
            }
            else
            {
                materialDiscograficoBuilder = new ViniloBuilder();
            }


            director.Construir(materialDiscograficoBuilder, nombre, precio, stock, genero, autor, canciones);

            // MOSTRAR DATOS
            Console.WriteLine(materialDiscograficoBuilder.MaterialDiscografico.reportarDatos());

            Console.ReadKey();
        }
コード例 #4
0
        static void Main(string[] args)
        {
            int numeroDeCancion = 1;

            // MATERIAL DISCOGRAFICO
            String nombre;
            Double precio;
            int    stock;

            // AUTOR
            Autor  autor;
            String nombreArtista;
            String descripcionArtista;

            // GENERO
            Genero genero;
            String descripcionGenero;

            // TIPO MATERIAL DISCOGRAFICO
            TipoMaterialDiscografico tipoMaterialDiscografico;
            String nombreMaterialDiscografico;

            // CANCIONES
            List <Cancion> canciones = new List <Cancion>();
            Cancion        cancion;
            String         nombreCancion;
            int            duracionSegundos;

            char respuesta;

            // MATERIAL DISCOGRAFICO
            Console.Write("Ingrese el nombre del nuevo material: ");
            nombre = Console.ReadLine();
            Console.Write("Ingrese el precio del nuevo material: ");
            precio = Convert.ToDouble(Console.ReadLine());
            Console.Write("Ingrese el stock del nuevo material: ");
            stock = Convert.ToInt32(Console.ReadLine());

            // AUTOR
            Console.Write("Ingrese el nombre del artista: ");
            nombreArtista = Console.ReadLine();
            Console.Write("Ingrese descripcion del artista: ");
            descripcionArtista = Console.ReadLine();
            autor = new Autor(nombreArtista, descripcionArtista);

            // GENERO
            Console.Write("Ingrese el nombre del genero: ");
            descripcionGenero = Console.ReadLine();
            genero            = new Genero(descripcionGenero);

            // TIPO MATERIAL DISCOGRAFICO
            Console.Write("Ingrese el nombre del tipo de material discografico: ");
            nombreMaterialDiscografico = Console.ReadLine();
            tipoMaterialDiscografico   = new TipoMaterialDiscografico(nombreMaterialDiscografico);

            do
            {
                // CANCIONES
                Console.WriteLine("\nCancion " + numeroDeCancion.ToString());
                Console.Write("Ingrese el nombre de la canción: ");
                nombreCancion = Console.ReadLine();
                Console.Write("Ingrese la duracion de la cancion en segundos: ");
                duracionSegundos = Convert.ToInt32(Console.ReadLine());

                cancion = new Cancion(nombreCancion, duracionSegundos);
                canciones.Add(cancion);

                numeroDeCancion++;

                Console.Write("Desea seguir agregando canciones? (S/N): ");
                respuesta = Console.ReadKey().KeyChar;
                Console.ReadKey();
            } while (respuesta == 'S');

            Console.Clear();

            // BUILDER MATERIAL DISCOGRAFICO
            MaterialDiscograficoBuilder builderMaterialDiscografico = new MaterialDiscograficoBuilder();
            MaterialDiscografico        materialDiscografico        = builderMaterialDiscografico
                                                                      .ConNombre(nombre)
                                                                      .TienePrecio(precio)
                                                                      .EnStock(stock)
                                                                      .ComoAutor(autor)
                                                                      .ComoCanciones(canciones)
                                                                      .ComoGenero(genero)
                                                                      .ComoTipoMaterialDiscografico(tipoMaterialDiscografico)
                                                                      .BuildMaterialDiscografico();

            // REPORTAR
            Console.Write(materialDiscografico.reportarDatos());

            Console.ReadKey();
        }
コード例 #5
0
 public void Construir(MaterialDiscograficoBuilder materialDiscograficoBuilder, String nombre, Double precio, int stock, Genero genero, Autor autor, List <Cancion> canciones)
 {
     materialDiscograficoBuilder.BuildNombre(nombre);
     materialDiscograficoBuilder.BuildPrecio(precio);
     materialDiscograficoBuilder.BuildStock(stock);
     materialDiscograficoBuilder.BuildGenero(genero);
     materialDiscograficoBuilder.BuildAutor(autor);
     materialDiscograficoBuilder.BuildCanciones(canciones);
 }