Exemplo n.º 1
0
        public static void Main(string[] args)
        {
            logger.Info("Program started");
            MovieFile movieFile = new MovieFile("../../movies.scrubbed.csv");
            AlbumFile albumFile = new AlbumFile("../../albums.csv");
            BookFile  bookFile  = new BookFile("../../books.csv");
            string    menuInput;

            //loop main menu while input is within bounds for the menu
            do
            {
                Menu();
                menuInput = Console.ReadLine();
                switch (menuInput)
                {
                case "1":
                    movieFile.AddMovie();
                    break;

                case "2":
                    movieFile.DisplayMovies();
                    break;

                case "3":
                    movieFile.SearchMovies();
                    break;

                case "4":
                    albumFile.AddAlbum();
                    break;

                case "5":
                    albumFile.DisplayAlbums();
                    break;

                case "6":
                    albumFile.SearchAlbums();
                    break;

                case "7":
                    bookFile.AddBooks();
                    break;

                case "8":
                    bookFile.DisplayBooks();
                    break;

                case "9":
                    bookFile.SearchBooks();
                    break;
                }
            } while (menuInput != "0");

            logger.Info("Program ended");
        }
        public static void Main(string[] args)
        {
            logger.Info("Program started");

            string    scrubbedFile  = FileScrubber.ScrubMovies("../../movies.csv");
            string    albumFileName = "../../albums.csv";
            string    bookFileName  = "../../books.csv";
            MovieFile movieFile     = new MovieFile(scrubbedFile);
            AlbumFile albumFile     = new AlbumFile(albumFileName);
            BookFile  bookFile      = new BookFile(bookFileName);

            string choice = "";

            do
            {
                // display choices to user
                Console.WriteLine("\n1) Add Movie");
                Console.WriteLine("2) Search Movie");
                Console.WriteLine("3) Display All Movies");
                Console.WriteLine("4) Add Album");
                Console.WriteLine("5) Search Album");
                Console.WriteLine("6) Display All Albums");
                Console.WriteLine("7) Add Book");
                Console.WriteLine("8) Search Book");
                Console.WriteLine("9) Display All Books");
                Console.WriteLine("\nEnter to quit");
                // input selection
                choice = Console.ReadLine();
                logger.Info("User choice: {Choice}", choice);
                if (choice == "1")
                {
                    // Add movie
                    Movie movie = new Movie();
                    // ask user to input movie title
                    Console.WriteLine("Enter movie title");
                    // input title
                    movie.title = Console.ReadLine();
                    // verify title is unique
                    if (movieFile.isUniqueTitle(movie.title))
                    {
                        // input genres
                        string input;
                        do
                        {
                            // ask user to enter genre
                            Console.WriteLine("Enter genre (or done to quit)");
                            // input genre
                            input = Console.ReadLine();
                            // if user enters "done"
                            // or does not enter a genre do not add it to list
                            if (input != "done" && input.Length > 0)
                            {
                                movie.genres.Add(input);
                            }
                        } while (input != "done");
                        // specify if no genres are entered
                        if (movie.genres.Count == 0)
                        {
                            movie.genres.Add("(no genres listed)");
                        }
                        // ask user to enter director
                        Console.WriteLine("Enter movie director");
                        input          = Console.ReadLine();
                        movie.director = input.Length == 0 ? "unassigned" : input;
                        // ask user to enter running time
                        Console.WriteLine("Enter running time (h:m:s)");
                        input             = Console.ReadLine();
                        movie.runningTime = input.Length == 0 ? new TimeSpan(0) : TimeSpan.Parse(input);
                        // add movie
                        movieFile.AddMovie(movie);
                    }
                    else
                    {
                        Console.WriteLine("Movie title already exists\n");
                    }
                }
                else if (choice == "2")
                {
                    // search movie
                    Console.WriteLine("Enter Movie Title: ");
                    String movieSearch = "";
                    movieSearch = Console.ReadLine();
                    var movie = movieFile.Movies.Where(m => m.title.Contains(movieSearch)).Select(m => m.title);

                    Console.WriteLine($"Here are your movies...\n");
                    foreach (string m in movie)
                    {
                        Console.WriteLine(m);
                    }
                }
                else if (choice == "3")
                {
                    // Display All Movies
                    foreach (Movie m in movieFile.Movies)
                    {
                        Console.WriteLine(m.Display());
                    }
                }
                else if (choice == "4")
                {
                    // Add Album
                    Album album = new Album();
                    // ask user to input album title
                    Console.WriteLine("Enter album title");
                    // input title
                    album.title = Console.ReadLine();
                    // verify title is unique
                    if (albumFile.isUniqueTitle(album.title))
                    {
                        // input genres
                        string input;
                        do
                        {
                            // ask user to enter genre
                            Console.WriteLine("Enter genre (or done to quit)");
                            // input genre
                            input = Console.ReadLine();
                            // if user enters "done"
                            // or does not enter a genre do not add it to list
                            if (input != "done" && input.Length > 0)
                            {
                                album.genres.Add(input);
                            }
                        } while (input != "done");
                        // specify if no genres are entered
                        if (album.genres.Count == 0)
                        {
                            album.genres.Add("(no genres listed)");
                        }
                        // ask user to enter director
                        Console.WriteLine("Enter album artist");
                        input        = Console.ReadLine();
                        album.artist = input.Length == 0 ? "unassigned" : input;
                        // ask user to enter record label
                        Console.WriteLine("Enter record label");
                        input             = Console.ReadLine();
                        album.recordLabel = input.Length == 0 ? "unassigned" : input;
                        // add album
                        albumFile.AddAlbum(album);
                    }
                    else
                    {
                        Console.WriteLine("Album title already exists\n");
                    }
                }
                else if (choice == "5")
                {
                    // search album
                    Console.WriteLine("Enter Album Title: ");
                    String albumSearch = "";
                    albumSearch = Console.ReadLine();
                    var album = albumFile.Albums.Where(m => m.title.Contains(albumSearch)).Select(m => m.title);

                    Console.WriteLine($"Here are your albums...\n");
                    foreach (string a in album)
                    {
                        Console.WriteLine(a);
                    }
                }
                else if (choice == "6")
                {
                    // Display All Albums
                    foreach (Album a in albumFile.Albums)
                    {
                        Console.WriteLine(a.Display());
                    }
                }
                else if (choice == "7")
                {
                    // Add Book
                    Book book = new Book();
                    // ask user to input book title
                    Console.WriteLine("Enter book title");
                    // input title
                    book.title = Console.ReadLine();
                    // verify title is unique
                    if (bookFile.isUniqueTitle(book.title))
                    {
                        // input genres
                        string input;
                        do
                        {
                            // ask user to enter genre
                            Console.WriteLine("Enter genre (or done to quit)");
                            // input genre
                            input = Console.ReadLine();
                            // if user enters "done"
                            // or does not enter a genre do not add it to list
                            if (input != "done" && input.Length > 0)
                            {
                                book.genres.Add(input);
                            }
                        } while (input != "done");
                        // specify if no genres are entered
                        if (book.genres.Count == 0)
                        {
                            book.genres.Add("(no genres listed)");
                        }
                        // ask user to enter author
                        Console.WriteLine("Enter book author");
                        input       = Console.ReadLine();
                        book.author = input.Length == 0 ? "unassigned" : input;
                        // ask user to enter publisher
                        Console.WriteLine("Enter publisher");
                        input          = Console.ReadLine();
                        book.publisher = input.Length == 0 ? "unassigned" : input;
                        // ask user to enter number of pages
                        Console.WriteLine("Enter number of pages");
                        input          = Console.ReadLine();
                        book.pageCount = input.Length == 0 ? (UInt16)0 : UInt16.Parse(input);
                        // add book
                        bookFile.AddBook(book);
                    }
                    else
                    {
                        Console.WriteLine("Book title already exists\n");
                    }
                }
                else if (choice == "8")
                {
                    // Search Book
                    Console.WriteLine("Enter Book Title: ");
                    String bookSearch = "";
                    bookSearch = Console.ReadLine();
                    var book = bookFile.Books.Where(m => m.title.Contains(bookSearch)).Select(m => m.title);

                    Console.WriteLine($"Here are your books...\n");
                    foreach (string b in book)
                    {
                        Console.WriteLine(b);
                    }
                }
                else if (choice == "9")
                {
                    // Display All Books
                    foreach (Book b in bookFile.Books)
                    {
                        Console.WriteLine(b.Display());
                    }
                }
            } while (choice == "1" || choice == "2" || choice == "3" || choice == "4" || choice == "5" || choice == "6" || choice == "7" || choice == "8" || choice == "9");

            logger.Info("Program ended");
        }
Exemplo n.º 3
0
        public static void Main(string[] args)
        {
            string file   = "../../movies.scrubbed.csv";
            string bkfile = "books.csv";
            string cdfile = "cd.csv";

            logger.Info("Program started");

            MovieFile movieFile = new MovieFile(file);
            BookFile  bookFile  = new BookFile(bkfile);
            AlbumFile albumFile = new AlbumFile(cdfile);
            string    choice    = "";
            string    mchoice   = "";
            string    bchoice   = "";
            string    achoice   = "";

            do
            {
                Console.WriteLine("1) Movie");
                Console.WriteLine("2) Book");
                Console.WriteLine("3) Album");
                Console.WriteLine("Enter to quit");
                choice = Console.ReadLine();
                logger.Info("User choice: {Choice}", choice);

                if (choice == "1")
                {
                    do
                    {
                        Console.WriteLine("1) Add Movie");
                        Console.WriteLine("2) Display All Movies");
                        Console.WriteLine("3) Enter to quit");
                        mchoice = Console.ReadLine();
                        logger.Info("User choice: {Choice}", mchoice);
                        if (mchoice == "1")
                        {
                            Movie movie = new Movie();
                            Console.WriteLine("Enter movie title");
                            movie.title = Console.ReadLine();
                            if (movieFile.isUniqueTitle(movie.title))
                            {
                                string input;
                                do
                                {
                                    Console.WriteLine("Enter Genre (or done to quit)");
                                    input = Console.ReadLine();
                                    if (input != "done" && input.Length > 0)
                                    {
                                        movie.genres.Add(input);
                                    }
                                } while (input != "done");
                                if (movie.genres.Count == 0)
                                {
                                    movie.genres.Add("(no genres listed)");
                                }
                                Console.WriteLine("Enter movie Director");
                                movie.director = Console.ReadLine();
                                Console.WriteLine("Enter running time");
                                movie.runningTime = TimeSpan.Parse(Console.ReadLine());
                                movieFile.AddMovie(movie);
                            }
                            else
                            {
                                Console.WriteLine("Movie title already exists\n");
                            }
                        }
                        else if (mchoice == "2")
                        {
                            foreach (Movie m in movieFile.Movies)
                            {
                                Console.WriteLine(m.Display());
                            }
                        }
                    } while (mchoice == "1" || mchoice == "2");
                }
                else if (choice == "2")
                {
                    Console.WriteLine("1) Add Book");
                    Console.WriteLine("2) Display All Books");
                    Console.WriteLine("3) Enter to quit");
                    bchoice = Console.ReadLine();
                    logger.Info("User choice: {Choice}", bchoice);
                    do
                    {
                        if (mchoice == "1")
                        {
                            Book book = new Book();
                            Console.WriteLine("Enter book title");
                            book.title = Console.ReadLine();
                            if (bookFile.isUniqueTitle(book.title))
                            {
                                string input;
                                do
                                {
                                    Console.WriteLine("Enter Genre (or done to quit");
                                    input = Console.ReadLine();
                                    if (input != "done" && input.Length > 0)
                                    {
                                        book.genres.Add(input);
                                    }
                                } while (input != "done");

                                if (book.genres.Count == 0)
                                {
                                    book.genres.Add("(no genres listed)");
                                }
                                Console.WriteLine("Enter book author");
                                book.author = Console.ReadLine();
                                Console.WriteLine("Enter book publisher");
                                book.publisher = Console.ReadLine();
                                Console.WriteLine("Enter the amount of pages");
                                book.pageCount = UInt16.Parse(Console.ReadLine());
                                bookFile.AddBook(book);
                            }
                            else
                            {
                                Console.WriteLine("Book title already exists\n");
                            }
                        }
                        else if (bchoice == "2")
                        {
                            foreach (Book b in bookFile.Books)
                            {
                                Console.WriteLine(b.Display());
                            }
                        }
                    } while (bchoice == "1" || bchoice == "2");
                }
                else if (choice == "3")
                {
                    Console.WriteLine("1) Add Album");
                    Console.WriteLine("2) Display All Albums");
                    Console.WriteLine("3) Enter to quit");
                    bchoice = Console.ReadLine();
                    logger.Info("User choice: {Choice}", bchoice);
                    do
                    {
                        if (achoice == "1")
                        {
                            Album album = new Album();
                            Console.WriteLine("Enter Album title");
                            album.title = Console.ReadLine();
                            if (albumFile.isUniqueTitle(album.title))
                            {
                                string input;
                                do
                                {
                                    Console.WriteLine("Enter Genre (or done to quit");
                                    input = Console.ReadLine();
                                    if (input != "done" && input.Length > 0)
                                    {
                                        album.genres.Add(input);
                                    }
                                } while (input != "done");

                                if (album.genres.Count == 0)
                                {
                                    album.genres.Add("(no genres listed)");
                                }
                                Console.WriteLine("Enter album artist");
                                album.artist = Console.ReadLine();
                                Console.WriteLine("Enter record label");
                                album.recordLabel = Console.ReadLine();
                                albumFile.AddAlbum(album);
                            }
                            else
                            {
                                Console.WriteLine("Album title already exists\n");
                            }
                        }
                        else if (achoice == "2")
                        {
                            foreach (Album a in albumFile.Albums)
                            {
                                Console.WriteLine(a.Display());
                            }
                        }
                    } while (achoice == "1" || achoice == "2");
                }
            } while ((choice == "1" || choice == "2" || choice == "3"));
            logger.Info("Program Ended");
        }
Exemplo n.º 4
0
        public static void Main(string[] args)
        {
            logger.Info("Program started");

            string    scrubbedFile  = FileScrubber.ScrubMovies("../../../movies.csv");
            string    albumFileName = "../../albums.csv";
            string    bookFileName  = "../../books.csv";
            MovieFile movieFile     = new MovieFile(scrubbedFile);
            AlbumFile albumFile     = new AlbumFile(albumFileName);
            BookFile  bookFile      = new BookFile(bookFileName);

            string choice = "";

            do
            {
                // display choices to user
                Console.WriteLine("1) Add Movie");
                Console.WriteLine("2) Display All Movies");
                Console.WriteLine("3) Add Album");
                Console.WriteLine("4) Display All Albums");
                Console.WriteLine("5) Add Book");
                Console.WriteLine("6) Display All Books");
                Console.WriteLine("7) Search for a Movie/Album/Book");
                Console.WriteLine("Enter to quit");
                // input selection
                choice = Console.ReadLine();
                logger.Info("User choice: {Choice}", choice);
                if (choice == "1")
                {
                    // Add movie
                    Movie movie = new Movie();
                    // ask user to input movie title
                    Console.WriteLine("Enter movie title");
                    // input title
                    movie.title = Console.ReadLine();
                    // verify title is unique
                    if (movieFile.isUniqueTitle(movie.title))
                    {
                        // input genres
                        string input;
                        do
                        {
                            // ask user to enter genre
                            Console.WriteLine("Enter genre (or done to quit)");
                            // input genre
                            input = Console.ReadLine();
                            // if user enters "done"
                            // or does not enter a genre do not add it to list
                            if (input != "done" && input.Length > 0)
                            {
                                movie.genres.Add(input);
                            }
                        } while (input != "done");
                        // specify if no genres are entered
                        if (movie.genres.Count == 0)
                        {
                            movie.genres.Add("(no genres listed)");
                        }
                        // ask user to enter director
                        Console.WriteLine("Enter movie director");
                        input          = Console.ReadLine();
                        movie.Director = input.Length == 0 ? "unassigned" : input;
                        // ask user to enter running time
                        Console.WriteLine("Enter running time (h:m:s)");
                        input             = Console.ReadLine();
                        movie.RunningTime = input.Length == 0 ? new TimeSpan(0) : TimeSpan.Parse(input);
                        // add movie
                        movieFile.AddMovie(movie);
                    }
                    else
                    {
                        Console.WriteLine("Movie title already exists\n");
                    }
                }
                else if (choice == "2")
                {
                    // Display All Movies
                    foreach (Movie m in movieFile.Movies)
                    {
                        Console.WriteLine(m.Display());
                    }
                }
                else if (choice == "3")
                {
                    // Add Album
                    Album album = new Album();
                    // ask user to input album title
                    Console.WriteLine("Enter album title");
                    // input title
                    album.title = Console.ReadLine();
                    // verify title is unique
                    if (albumFile.isUniqueTitle(album.title))
                    {
                        // input genres
                        string input;
                        do
                        {
                            // ask user to enter genre
                            Console.WriteLine("Enter genre (or done to quit)");
                            // input genre
                            input = Console.ReadLine();
                            // if user enters "done"
                            // or does not enter a genre do not add it to list
                            if (input != "done" && input.Length > 0)
                            {
                                album.genres.Add(input);
                            }
                        } while (input != "done");
                        // specify if no genres are entered
                        if (album.genres.Count == 0)
                        {
                            album.genres.Add("(no genres listed)");
                        }
                        // ask user to enter director
                        Console.WriteLine("Enter album artist");
                        input        = Console.ReadLine();
                        album.artist = input.Length == 0 ? "unassigned" : input;
                        // ask user to enter record label
                        Console.WriteLine("Enter record label");
                        input             = Console.ReadLine();
                        album.recordLabel = input.Length == 0 ? "unassigned" : input;
                        // add album
                        albumFile.AddAlbum(album);
                    }
                    else
                    {
                        Console.WriteLine("Album title already exists\n");
                    }
                }
                else if (choice == "4")
                {
                    // Display All Albums
                    foreach (Album a in albumFile.Albums)
                    {
                        Console.WriteLine(a.Display());
                    }
                }

                else if (choice == "5")
                {
                    // Add Book
                    Book book = new Book();
                    // ask user to input book title
                    Console.WriteLine("Enter book title");
                    // input title
                    book.title = Console.ReadLine();
                    // verify title is unique
                    if (bookFile.isUniqueTitle(book.title))
                    {
                        // input genres
                        string input;
                        do
                        {
                            // ask user to enter genre
                            Console.WriteLine("Enter genre (or done to quit)");
                            // input genre
                            input = Console.ReadLine();
                            // if user enters "done"
                            // or does not enter a genre do not add it to list
                            if (input != "done" && input.Length > 0)
                            {
                                book.genres.Add(input);
                            }
                        } while (input != "done");
                        // specify if no genres are entered
                        if (book.genres.Count == 0)
                        {
                            book.genres.Add("(no genres listed)");
                        }
                        // ask user to enter author
                        Console.WriteLine("Enter book author");
                        input       = Console.ReadLine();
                        book.author = input.Length == 0 ? "unassigned" : input;
                        // ask user to enter publisher
                        Console.WriteLine("Enter publisher");
                        input          = Console.ReadLine();
                        book.publisher = input.Length == 0 ? "unassigned" : input;
                        // ask user to enter number of pages
                        Console.WriteLine("Enter number of pages");
                        input          = Console.ReadLine();
                        book.pageCount = input.Length == 0 ? (UInt16)0 : UInt16.Parse(input);
                        // add book
                        bookFile.AddBook(book);
                    }
                    else
                    {
                        Console.WriteLine("Book title already exists\n");
                    }
                }
                else if (choice == "6")
                {
                    // Display All Books
                    foreach (Book b in bookFile.Books)
                    {
                        Console.WriteLine(b.Display());
                    }
                }
                else if (choice == "7")
                {
                    string userInput = "";

                    Console.WriteLine("Would you like to search for a Movie, Album or Book?? (1 for Movie, 2 for Album, 3 for Book)");
                    userInput = Console.ReadLine();

                    if (userInput == "1")
                    {
                        String userMovieInput;
                        Console.WriteLine("Enter part of or a whole movie title you would like to search for.");
                        userMovieInput = Console.ReadLine();

                        // LINQ - Where filter operator & Contains quantifier operator
                        //var Movies = movieFile.Movies.Where(m => m.title.Contains("(1990)"));
                        // LINQ - Count aggregation method
                        //Console.WriteLine($"There are {Movies.Count()} movies from 1990");


                        var userMovies = movieFile.Movies.Where(m => m.title.Contains(userMovieInput, StringComparison.OrdinalIgnoreCase)).Select(m => m.title);
                        foreach (string t in userMovies)
                        {
                            Console.WriteLine(t);
                        }
                    }
                    else if (userInput == "2")
                    {
                        Console.WriteLine("How would you like to search for your Album?");
                        String userAlbumInput = Console.ReadLine();

                        var userAlbum = albumFile.Albums.Where(m => m.title.Contains(userAlbumInput, StringComparison.OrdinalIgnoreCase)).Select(m => m.title);
                        foreach (string t in userAlbum)
                        {
                            Console.WriteLine(t);
                        }
                    }
                    else if (userInput == "3")
                    {
                        Console.WriteLine("How would you like to search for your Book?");
                        String userBookInput = Console.ReadLine();

                        var userBook = bookFile.Books.Where(m => m.title.Contains(userBookInput, StringComparison.OrdinalIgnoreCase)).Select(m => m.title);
                        foreach (string t in userBook)
                        {
                            Console.WriteLine(t);
                        }
                    }
                    else
                    {
                        Console.WriteLine("You entered something in wrong.");
                    }
                }
            } while (choice == "1" || choice == "2" || choice == "3" || choice == "4" || choice == "5" || choice == "6");

            logger.Info("Program ended");
        }