Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Project Media Rental System PLEASE USE ECLIPSE IDE ENVIROMENT ENSURE YOU PROVIDE SCREENSHOT OF ECLIPSE IDE ENVIROMENT OF EVERY PROGRAM SEPARATELY Design and implement Java

Project

Media Rental System

PLEASE USE ECLIPSE IDE ENVIROMENT

ENSURE YOU PROVIDE SCREENSHOT OF ECLIPSE IDE ENVIROMENT OF EVERY PROGRAM SEPARATELY

Design and implement Java program as follows:

Media hierarchy:

Create Media, EBook, MovieDVD, and MusicCD classes from Week 3 -> Practice Exercise - Inheritance solution.

Add an attribute to Media class to store indication when media object is rented versus available. Add code to constructor and create get and set methods as appropriate.

Add any additional constructors and methods needed to support the below functionality

Design and implement Manager class which (Hint: check out Week 8 Reading and Writing files example):

stores a list of Media objects

has functionality to load Media objects from files

creates/updates Media files

has functionality to add new Media object to its Media list

has functionality to find all media objects for a specific title and returns that list

has functionality to rent Media based on id (updates rental status on media, updates file, returns rental fee)

Design and implement MediaRentalSystem which has the following functionality:

user interface which is either menu driven through console commands or GUI buttons or menus. Look at the bottom of this project file for sample look and feel. (Hint: for command-driven menu check out Week 2: Practice Exercise - EncapsulationPlus and for GUI check out Week 8: Files in GUI example)

selection to load Media files from a given directory (user supplies directory)

selection to find a media object for a specific title value (user supplies title and should display to user the media information once it finds it - should find all media with that title)

selection to rent a media object based on its id value (user supplies id and should display rental fee value to the user)

selection to exit program

Program should throw and catch Java built-in and user-defined exceptions as appropriate

Your classes must be coded with correct encapsulation: private/protected attributes, get methods, and set methods and value validation

There should be appropriate polymorphism: overloading, overriding methods, and dynamic binding

Program should take advantage of the inheritance properties as appropriate

Style and Documentation:

Make sure your Java program is using the recommended style such as:

Javadoc comment up front with your name as author, date, and brief purpose of the program

Comments for variables and blocks of code to describe major functionality

Meaningful variable names and prompts

Class names are written in upper CamelCase

Constants are written in All Capitals

Use proper spacing and empty lines to make code human readable

Capture execution:

You should capture and label screen captures associated with compiling your code, and running the a passing and failing scenario for each functionality

Submission requirements

Deliverables include Java program (.java files) and a single Word (or PDF) document. The Word/PDF files should be named appropriately for the assignment (as indicated in the SubmissionRequirements document.

The word (or PDF) document should include screen captures showing the successful compiling and running of each of the test scenario. Test scenarios should include all required functionality of the program. Each screen capture should be properly labeled clearly indicated what the screen capture represents.

Sample User interface - command driven:

Welcome to Media Rental System 1: Load Media objects...

2: Find Media object... 3: Rent Media object... 9: Quit

Enter your selection : 1

Enter path (directory) where to load from: blah

File cannot be opened: Could not load, no such directory

Welcome to Media Rental System 1: Load Media objects...

2: Find Media object... 3: Rent Media object... 9: Quit

Enter your selection : 1

Enter path (directory) where to load from: C:/tmp-umuc Welcome to Media Rental System

1: Load Media objects...

2: Find Media object... 3: Rent Media object... 9: Quit

Enter your selection : 2 Enter the title: blah

There is no media with this title: blah

Welcome to Media Rental System 1: Load Media objects...

2: Find Media object... 3: Rent Media object... 9: Quit

Enter your selection : 2

Enter the title: Forever Young

EBook [ id=123, title=Forever Young, year=2018, chapters=20 available=true] MovieDVD [ id=126, title=Forever Young, year=2020, size=140.0MB available=false]

Welcome to Media Rental System 1: Load Media objects...

2: Find Media object... 3: Rent Media object... 9: Quit

Enter your selection : 3 Enter the id: 123

Media was successfully rented. Rental fee = $2.00

Welcome to Media Rental System 1: Load Media objects...

2: Find Media object... 3: Rent Media object... 9: Quit

Enter your selection : 2 Enter the title: Forever Young

EBook [ id=123, title=Forever Young, year=2018, chapters=20 available=false] MovieDVD [ id=126, title=Forever Young, year=2020, size=140.0MB available=false]

Welcome to Media Rental System 1: Load Media objects...

2: Find Media object... 3: Rent Media object... 9: Quit

Enter your selection : 3 Enter the id: 999

The media object id=999 is not found

Welcome to Media Rental System 1: Load Media objects...

2: Find Media object... 3: Rent Media object... 9: Quit

Enter your selection : 9

Thank you for using the p

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

MongoDB Applied Design Patterns Practical Use Cases With The Leading NoSQL Database

Authors: Rick Copeland

1st Edition

1449340040, 978-1449340049

More Books

Students also viewed these Databases questions

Question

=+j Describe an effective crisis management program.

Answered: 1 week ago