public static void Delete(byte[] frame)
        {
            IMovieDataAccess movieDataAccess = new MovieDataAccess();
            IMovieService    movieService    = new MovieService(movieDataAccess);

            IGenreDataAccess genreData    = new GenreDataAccess();
            IGenreService    genreService = new GenreService(genreData);

            IAsociationHandler asociationHandler = new AssociationHandler();
            IAsociationService asociationService = new AsociationService(asociationHandler);

            IParser parser = new Parser();

            var data          = parser.GetDataObject(frame);
            var name          = data[0];
            var movieToDelete = movieService.GetMovie(name);

            foreach (var genreName in movieToDelete.Genres)
            {
                var genreToDesaciate = genreService.GetGenre(genreName);
                asociationService.DeAsociateGenreMovie(movieToDelete, genreToDesaciate);
            }

            movieService.Delete(movieToDelete);
        }
Example #2
0
        public static void DeleteGenre(byte[] frame)
        {
            IGenreDataAccess genreDataAccess = new GenreDataAccess();
            IGenreService    genreService    = new GenreService(genreDataAccess);
            IParser          parser          = new Parser();

            var data          = parser.GetDataObject(frame);
            var name          = data[0];
            var genreToDelete = genreService.GetGenre(name);

            genreService.Delete(genreToDelete);
        }
Example #3
0
        public static void UploadGenre(byte[] frame)
        {
            IGenreDataAccess genreDataAccess = new GenreDataAccess();
            IGenreService    genreService    = new GenreService(genreDataAccess);
            IParser          parser          = new Parser();

            var   data  = parser.GetDataObject(frame);
            Genre genre = new Genre
            {
                Name          = data[0],
                Description   = data[1],
                MoviesOfGenre = new List <string>()
            };

            genreService.Upload(genre);
        }
Example #4
0
        public static void DisplayGenres()
        {
            IGenreDataAccess genreDataAccess = new GenreDataAccess();
            IGenreService    genreService    = new GenreService(genreDataAccess);
            var genreList = genreService.GetGenres();

            foreach (var genre in genreList)
            {
                Console.WriteLine("Nombre: " + genre.Name + "  Descripción: " + genre.Description +
                                  "  Lista de películas de este género: ");
                var movieList = genre.MoviesOfGenre;
                foreach (var movie in movieList)
                {
                    Console.Write(movie);
                }
            }
        }
        public static void DeAsociateGenreToMovie(byte[] frame)
        {
            IGenreDataAccess genreDataAccess = new GenreDataAccess();
            IGenreService    genreService    = new GenreService(genreDataAccess);

            IMovieDataAccess movieDataAccess = new MovieDataAccess();
            IMovieService    movieService    = new MovieService(movieDataAccess);

            IAsociationHandler asociationHandler = new AssociationHandler();
            IAsociationService asociationService = new AsociationService(asociationHandler);

            IParser parser = new Parser();


            var movieAndGenreNames = parser.GetDataObject(frame);
            var movieToAsociate    = movieService.GetMovie(movieAndGenreNames[0]);
            var genreToAsociate    = genreService.GetGenre(movieAndGenreNames[1]);

            asociationService.DeAsociateGenreMovie(movieToAsociate, genreToAsociate);
        }
Example #6
0
        public void Upload(Movie movieToUpload)
        {
            IGenreDataAccess genreDataAccess = new GenreDataAccess();
            IGenreService    genreService    = new GenreService(genreDataAccess);

            if (movieToUpload.Genres.Count() < 1)
            {
                throw new BussinesLogicException("Una pelicula debe tener uno o mas generos asociados");
            }
            bool existsGenre = false;

            foreach (var genre in movieToUpload.Genres)
            {
                existsGenre = genreService.Exists(genre);
            }
            if (!existsGenre)
            {
                throw new BussinesLogicException("Ningun genero especificado coincide con el/los brindado/s");
            }
            movieDataA.Upload(movieToUpload);
        }
Example #7
0
        public static void ModifyGenre(byte[] frame)
        {
            IGenreDataAccess genreDataAccess = new GenreDataAccess();
            IGenreService    genreService    = new GenreService(genreDataAccess);
            IParser          parser          = new Parser();

            var data = parser.GetDataObject(frame);

            string oldName = data[0];

            var movieList = genreService.GetGenre(oldName).MoviesOfGenre;

            Genre genre = new Genre
            {
                Name          = data[1],
                Description   = data[2],
                MoviesOfGenre = movieList
            };

            genreService.Update(oldName, genre);
        }
Example #8
0
        public void Upload(Movie movieToUpload)
        {
            IGenreDataAccess genreDataAccess = new GenreDataAccess();
            IGenreService    genreService    = new GenreService(genreDataAccess);



            if (movieToUpload.Genres.Count() < 1)
            {
                throw new BussinesLogicException("Una pelicula debe tener uno o mas generos asociados");
            }
            bool existsGenre = false;

            foreach (var genre in movieToUpload.Genres)
            {
                existsGenre = genreService.Exists(genre);
            }
            if (!existsGenre)
            {
                throw new BussinesLogicException("Ningun genero especificado coincide con el/los brindado/s");
            }
            Director dir = new Director();

            try
            {
                dir = dirDa.GetDirector(movieToUpload.Director);
                UpdateDirectorMovies(dir, movieToUpload.Name);
            }
            catch (DataBaseException)
            {
                throw new BussinesLogicException($"El director especificado no existe ");
            }
            movieDataA.Upload(movieToUpload);
            foreach (var gen in movieToUpload.Genres)
            {
                var genInList = genreService.GetGenre(gen);
                genInList.MoviesOfGenre.Add(movieToUpload.Name);
                genreService.Update(gen, genInList);
            }
        }
        public static void Upload(byte[] frame)
        {
            IMovieDataAccess movieDataAccess = new MovieDataAccess();
            IMovieService    movieService    = new MovieService(movieDataAccess);

            IGenreDataAccess genreData    = new GenreDataAccess();
            IGenreService    genreService = new GenreService(genreData);

            IParser parser = new Parser();

            var   data  = parser.GetDataObject(frame);
            Movie movie = new Movie
            {
                Name     = data[0],
                Date     = DateTime.ParseExact(data[1], "yyyy-MM-dd", CultureInfo.InvariantCulture),
                Director = data[2],
                Files    = new List <string>(),
            };

            try
            {
                movie.Genres = parser.GetList(data[3]);
            }
            catch (IndexOutOfRangeException)
            {
                movie.Genres = new List <string>();
            }

            movieService.Upload(movie);

            //After uploading makes the movie and genre list consistent
            foreach (var genreInMovie in movie.Genres)
            {
                var genreThatNeedsToBeAsociatedToMovie = genreService.GetGenre(genreInMovie);
                genreThatNeedsToBeAsociatedToMovie.MoviesOfGenre.Add(movie.Name);
                genreService.Update(genreThatNeedsToBeAsociatedToMovie.Name, genreThatNeedsToBeAsociatedToMovie);
            }
        }
 public UnitTestGenreDataAccess()
 {
     _data = new GenreDataAccess(_conn);
 }
Example #11
0
 private void GetGenres()
 {
     _genres = GenreDataAccess.GetAllGenres();
 }
Example #12
0
 public Task <Genre> CreateAsync(GenreUpdateModel genreUpdateModel)
 {
     return(GenreDataAccess.InsertAsync(genreUpdateModel));
 }
Example #13
0
 /// <summary>
 /// Default Constructor: Makes new genre data access connection
 /// </summary>
 public Genre()
 {
     _genreDA        = new GenreDataAccess();
     base.DataAccess = _genreDA;
 }
Example #14
0
 public Task <Genre> UpdateAsync(GenreUpdateModel genreUpdateModel)
 {
     return(GenreDataAccess.UpdateAsync(genreUpdateModel));
 }
Example #15
0
 public GenreBusinessLogic()
 {
     _data = new GenreDataAccess();
 }
Example #16
0
 public GenreBusinessLogic(string conn)
 {
     _data = new GenreDataAccess(conn);
 }
Example #17
0
        public GenreController()
        {
            IGenreDataAccess da = new GenreDataAccess();

            genreService = new GenreService(da);
        }