Exemplo n.º 1
0
        /// <see cref="IEscuchaService.RegistrarEscucha(string, string, string, string, string, DateTime, short)" />
        public void RegistrarEscucha(string nombreUsuario, string password, string nombreArtista, string nombreAlbum, string nombreTemaMusical, DateTime inicio, short valoracion)
        {
            Validate.NotEmpty(nombreUsuario, "El nombre de Usuario debe ser especificado.");
            Validate.NotEmpty(password, "El password debe ser especificado.");
            Validate.NotEmpty(nombreArtista, "El nombre del Artista debe ser especificado.");
            Validate.NotEmpty(nombreAlbum, "El nombre del Album debe ser especificado.");
            Validate.NotEmpty(nombreTemaMusical, "El nombre del Tema Musical debe ser especificado.");

            // Primero autentico el usuario
            Usuario usuario = this.usuarioService.AutenticarUsuario(nombreUsuario, password);

            // Busco el Artista por nombre
            Artista artista;
            IList   artistas = musicaService.BuscarArtistas(nombreArtista);

            if (artistas.Count == 0)
            {
                artista = new Artista(nombreArtista);
            }
            else
            {
                // Asumo los nombres de los artistas únicos
                artista = (Artista)artistas[0];
            }

            // Busco el álbum entre los álbumes del artista
            Album album = artista.BuscarAlbum(nombreAlbum);

            if (album == null)
            {
                album         = new Album(nombreAlbum);
                album.Artista = artista;

                artista.Albumes.Add(album);
            }

            // Busco el tema musical por nombre
            TemaMusical temaMusical = album.BuscarTemaMusical(nombreTemaMusical);

            if (temaMusical == null)
            {
                temaMusical       = new TemaMusical(nombreTemaMusical);
                temaMusical.Album = album;
                temaMusical.Autor = artista;

                album.TemasMusicales.Add(temaMusical);
            }

            // Creo la escucha
            Escucha escucha = new Escucha(usuario, temaMusical, inicio, valoracion);

            usuario.Escuchas.Add(escucha);

            this.musicaService.SaveOrUpdateArtista(artista);
            this.musicaService.SaveOrUpdateAlbum(album);
            this.musicaService.SaveOrUpdateTemaMusical(temaMusical);
            this.escuchaDao.SaveOrUpdateEscucha(escucha);
            this.usuarioService.SaveOrUpdate(usuario);
        }
Exemplo n.º 2
0
 /// <see cref="IUsuarioDao.BuscarPorEscuchaMusical(Escucha)" />
 public IList BuscarPorEscuchaMusical(Escucha templateEscuchaMusical)
 {
     throw new NotImplementedException("IUsuarioDao.BuscarPorEscuchaMusical(Escucha)");
 }
Exemplo n.º 3
0
		/// 
		/// <param name="escucha"></param>
		public void SaveOrUpdateEscucha(Escucha escucha) {}
Exemplo n.º 4
0
 /// <see cref="IEscuchaService.SaveOrUpdateEscucha(Escucha)" />
 public void SaveOrUpdateEscucha(Escucha escucha)
 {
     this.escuchaDao.SaveOrUpdateEscucha(escucha);
 }
Exemplo n.º 5
0
 ///
 /// <param name="templateEscuchaMusical"></param>
 public IList BuscarPorEscuchaMusical(Escucha templateEscuchaMusical)
 {
     return(null);
 }
Exemplo n.º 6
0
 /// <see cref="IEscuchaDao.SaveOrUpdateEscucha(Escucha)" />
 public void SaveOrUpdateEscucha(Escucha escucha)
 {
     base.SaveOrUpdate(escucha);
 }