How wenyueivyxie/library-management-system works
This is a desktop library-management application. Its principal workflow starts when the application loads an inventory and opens a Swing interface; customers search, borrow, reserve, or return items, while employees submit use requests and a master librarian approves or rejects them. Inventory tracks catalog availability, reservations, and requests; loans record checkout dates and returns. The graph preserves the catalog’s distinct media types and the inventory table. README content is absent, and several files are represented only by source-index references, so undocumented connections are omitted.
Main entry points: Inventory.java Inventory · LibraryItem.java Catalog item · UseRequest.java Use request · LibraryGUI.java Library interface
Components 18
Application UI
- Startup
Main.java - Inventory loader
InventoryLoader.java - Library interface
LibraryGUI.java - Inventory table
InventoryTable.java
Catalog
Circulation
- User accounts
User.java - Loans
Loan.java - Reservations
Reservation.java
Staff Requests
- Employee
Employee.java - Use request
UseRequest.java - Use purpose
UsePurpose.java - Master librarian
MasterLibrarian.java
Other components
- Library user
Connections 29
- Library user → Library interface: uses
- Startup → Inventory loader: loads
Main.java - Startup → Library interface: opens
Main.java - Startup → Inventory: initializes
Main.java - Library interface → Inventory table: creates
LibraryGUI.java - Library interface → Inventory: manages
LibraryGUI.java - Inventory table → Inventory: reads
InventoryTable.java - Inventory → Catalog item: stores
Inventory.java - Inventory → Reservations: tracks
Inventory.java - Inventory → Use request: tracks
Inventory.java - Inventory → Book: identifies
Inventory.java - Inventory → Audiobook: identifies
Inventory.java - Inventory → Magazine: identifies
Inventory.java - Inventory → Movie: identifies
Inventory.java - User accounts → Inventory: returns items
User.java - User accounts → Loans: creates
User.java - User accounts → Reservations: creates
User.java - Employee → Use request: submits
Employee.java - Employee → Inventory: records request
Employee.java - Master librarian → Inventory: approves changes
MasterLibrarian.java - Master librarian → Use request: approves or rejects
MasterLibrarian.java - Master librarian → Loans: creates
MasterLibrarian.java - Use request → Use purpose: specifies
UseRequest.java - Use request → Catalog item: concerns
UseRequest.java - Loans → Catalog item: records checkout
Loan.java - Book → Catalog item: extends
Book.java - Audiobook → Catalog item: extends
AudioBook.java - Magazine → Catalog item: extends
Magazine.java - Movie → Catalog item: extends
Movie.java