예제 #1
0
 /// <see cref="IMusicaService.SaveOrUpdateAlbum(Album)"/>
 public void SaveOrUpdateAlbum(Album album)
 {
     this.musicaDao.SaveOrUpdateAlbum(album);
 }
예제 #2
0
 /// <see cref="IMusicaService.DeleteAlbum(Album)"/>
 public void DeleteAlbum(Album album)
 {
     this.musicaDao.DeleteAlbum(album);
 }
예제 #3
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);
        }
예제 #4
0
 /// 
 /// <param name="album"></param>
 public void DeleteAlbum(Album album)
 {
     throw new NotImplementedException();
 }
예제 #5
0
 /// 
 /// <param name="album"></param>
 public void SaveOrUpdateAlbum(Album album)
 {
     this.HibernateTemplate.SaveOrUpdate(album);
 }
예제 #6
0
 /// 
 /// <param name="album"></param>
 public void DeleteAlbum(Album album)
 {
 }
예제 #7
0
 /// 
 /// <param name="album"></param>
 public void SaveOrUpdateAlbum(Album album)
 {
 }