public void AsociateDirectorMovie(string movieName, string directorName) { var mov = movieDataAccess.GetMovie(movieName); var dir = directorDataAccess.GetDirector(directorName); asociationService.AsociateDirectorMovie(mov, dir); }
public void DeleteDirector(string name) { var dir = directorDataAccess.GetDirector(name); if (dir.DirectedMovies.Count() != 0) { throw new BussinesLogicException("Un director no puede ser borrado si esta asociado a una pelicula"); } directorDataAccess.DeleteDirector(name); }
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 Director GetDirector(string dirName) { return(directorDataAccess.GetDirector(dirName)); }