Esempio n. 1
0
 /// <see cref="IUsuarioDao.BuscarPorEscuchaMusical(Escucha)" />
 public IList BuscarPorEscuchaMusical(Escucha templateEscuchaMusical)
 {
     throw new NotImplementedException("IUsuarioDao.BuscarPorEscuchaMusical(Escucha)");
 }
        /// <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);
        }
 /// <see cref="IEscuchaService.SaveOrUpdateEscucha(Escucha)" />
 public void SaveOrUpdateEscucha(Escucha escucha)
 {
     this.escuchaDao.SaveOrUpdateEscucha(escucha);
 }
 /// 
 /// <param name="templateEscuchaMusical"></param>
 public IList BuscarPorEscuchaMusical(Escucha templateEscuchaMusical)
 {
     return null;
 }
Esempio n. 5
0
 /// <see cref="IEscuchaDao.SaveOrUpdateEscucha(Escucha)" />
 public void SaveOrUpdateEscucha(Escucha escucha)
 {
     base.SaveOrUpdate(escucha);
 }
 /// 
 /// <param name="escucha"></param>
 public void SaveOrUpdateEscucha(Escucha escucha)
 {
 }