Create a small library management system. Thisapplication will help the librarians manage the book catalogs fortheir library. You have been asked to build the classes required to meet thegiven requirements: The library identifies each item that it checks outs as alibraryItem. A libraryItem can be either a book, or a video. A library item has the following attributes: a numericcallNumber, title and availability status. No libraryItem should be created without a callNumber- and thatmeans there are no default constructors for this class. In addition to the getters and setters there are two methods:checkout() and return() that sets the availability to false andtrue, respectively. The book entity is defined by the following attributes: ISBN,Book author, book publisher The video entity is defined by the following attributes: studio,artist. A catalog is a collection of all the libraryItems belonging tothe library. The catalog class will contain a reference variable pointing tothe collection of (either as an array, or as an ArrayList). The catalog should implement the interface: searchable andviewable to meet each of the requirements: It should be searchableusing the library item’s call number. It should be searchable usingthe library item’s title. It should be searchable using the libraryitems author, or artist’s name. It should be viewable, such that information about the books andthe video items must be displayed to the user. A checkOutItem extends the library item. The checkOutItem hasadditional attributes – due date, accountHolderId. A transactionentity contains a list of checkOutItems checked out. The collectionof checkOutItems can be modeled either as an array, or as anArrayList. The transaction entity implements the interfaces:addable and removable, such that each checkOutItems can be added,or removed from the list. When an item is removed from the list,the available status of the libraryItem in the catalog is set to“true”, by calling the checkout method. When an item is added tothe transaction list, the available status of the libraryItem inthe catalog is set to “false” by calling the return method. Whilethe basic requirements for the library system is outlines as above,you may add additional attributes and methods as required tosupport the program. Your application should be able to perform thefollowing functions: 1) The user should create a transaction object 2) The application should be able to create a catalog object bypopulating an array/ array list with several samples libraryItems-both books and videos. 3) The catalog should be viewed/ printed out for the user tosee. 4) The user should be able to search the catalog to obtain theappropriate libraryItem. The user should provide values for any ofthe following during the search: callNumber, title. 5) The user should be asked by the system if he/she wants tosearch a book , or a video and depending on the answer, take theauthor, or artist’s name to search. 6) The user should be able to create a checkOutItem object usingthe libraryItem , a due date, and an accountHolderId value. 7) The user should be able to add the checkOutItem to thetransaction. The available status of the libraryItem on the catalogshould appear as false after this step 8) The user should be able to create and add a few morecheckOutItems to the transaction. 9) The user should be able to remove a libraryItem from thetransaction. The available status of the libraryItem on the catalogshould appear as true after this step

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question

 Create a small library management system. Thisapplication will help the librarians manage the book catalogs fortheir library.

You have been asked to build the classes required to meet thegiven requirements:

The library identifies each item that it checks outs as alibraryItem.

A libraryItem can be either a book, or a video.

A library item has the following attributes: a numericcallNumber, title and availability status.

No libraryItem should be created without a callNumber- and thatmeans there are no default constructors for this class.

In addition to the getters and setters there are two methods:checkout() and return() that sets the availability to false andtrue, respectively.

The book entity is defined by the following attributes: ISBN,Book author, book publisher

The video entity is defined by the following attributes: studio,artist.

A catalog is a collection of all the libraryItems belonging tothe library.

The catalog class will contain a reference variable pointing tothe collection of (either as an array, or as an ArrayList).

The catalog should implement the interface: searchable andviewable to meet each of the requirements: It should be searchableusing the library item’s call number. It should be searchable usingthe library item’s title. It should be searchable using the libraryitems author, or artist’s name.

It should be viewable, such that information about the books andthe video items must be displayed to the user.

A checkOutItem extends the library item. The checkOutItem hasadditional attributes – due date, accountHolderId. A transactionentity contains a list of checkOutItems checked out. The collectionof checkOutItems can be modeled either as an array, or as anArrayList. The transaction entity implements the interfaces:addable and removable, such that each checkOutItems can be added,or removed from the list. When an item is removed from the list,the available status of the libraryItem in the catalog is set to“true”, by calling the checkout method. When an item is added tothe transaction list, the available status of the libraryItem inthe catalog is set to “false” by calling the return method. Whilethe basic requirements for the library system is outlines as above,you may add additional attributes and methods as required tosupport the program. Your application should be able to perform thefollowing functions:

1) The user should create a transaction object

2) The application should be able to create a catalog object bypopulating an array/ array list with several samples libraryItems-both books and videos.

3) The catalog should be viewed/ printed out for the user tosee.

4) The user should be able to search the catalog to obtain theappropriate libraryItem. The user should provide values for any ofthe following during the search: callNumber, title.

5) The user should be asked by the system if he/she wants tosearch a book , or a video and depending on the answer, take theauthor, or artist’s name to search.

6) The user should be able to create a checkOutItem object usingthe libraryItem , a due date, and an accountHolderId value.

7) The user should be able to add the checkOutItem to thetransaction. The available status of the libraryItem on the catalogshould appear as false after this step

8) The user should be able to create and add a few morecheckOutItems to the transaction.

9) The user should be able to remove a libraryItem from thetransaction. The available status of the libraryItem on the catalogshould appear as true after this step

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 10 steps

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY