Esempio 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);
        }
Esempio n. 2
0
 ///
 /// <param name="temaMusical"></param>
 public void DeleteTemaMusical(TemaMusical temaMusical)
 {
     throw new NotImplementedException();
 }
Esempio n. 3
0
 ///
 /// <param name="temaMusical"></param>
 public void SaveOrUpdateTemaMusical(TemaMusical temaMusical)
 {
     this.HibernateTemplate.SaveOrUpdate(temaMusical);
 }
Esempio n. 4
0
        /// <see cref="IMusicaDao.BuscarTemasMusicales(TemaMusical)"/>
        public IList BuscarTemasMusicales(TemaMusical template)
        {
            ICriteria criteria = this.HibernateTemplate.Session.CreateCriteria(typeof(TemaMusical));

            return(criteria.Add(Example.Create(template)).List());
        }
Esempio n. 5
0
 public IList BuscarTemasMusicales(TemaMusical template)
 {
     throw new NotImplementedException();
 }
Esempio n. 6
0
        /// <see cref="IMusicaService.BuscarTemasMusicales(string)"/>
        public IList BuscarTemasMusicales(string nombreTemaMusical)
        {
            TemaMusical template = new TemaMusical(nombreTemaMusical);

            return(musicaDao.BuscarTemasMusicales(template));
        }
Esempio n. 7
0
 /// <see cref="IMusicaService.DeleteTemaMusical(TemaMusical)"/>
 public void DeleteTemaMusical(TemaMusical temaMusical)
 {
     this.musicaDao.DeleteTemaMusical(temaMusical);
 }
Esempio n. 8
0
 /// <see cref="IMusicaService.SaveOrUpdateTemaMusical(TemaMusical)"/>
 public void SaveOrUpdateTemaMusical(TemaMusical temaMusical)
 {
     this.musicaDao.SaveOrUpdateTemaMusical(temaMusical);
 }
Esempio n. 9
0
		/// 
		/// <param name="temaMusical"></param>
		public void DeleteTemaMusical(TemaMusical temaMusical) {}
Esempio n. 10
0
		/// 
		/// <param name="temaMusical"></param>
		public void SaveOrUpdateTemaMusical(TemaMusical temaMusical) {}