Index
All Classes and Interfaces|All Packages|Serialized Form
A
- ADMIN - Enum constant in enum class com.equipmentrental.equipment_rental_system.model.UserRole
- AVAILABLE - Enum constant in enum class com.equipmentrental.equipment_rental_system.model.EquipmentStatus
B
- BOOKED - Enum constant in enum class com.equipmentrental.equipment_rental_system.model.EquipmentStatus
- Booking - Class in com.equipmentrental.equipment_rental_system.model
-
Represents a reservation of an equipment item for a specific date range.
- Booking(LocalDate, LocalDate, String, BookingStatus, Equipment, User) - Constructor for class com.equipmentrental.equipment_rental_system.model.Booking
-
Creates a new booking with all required fields.
- BookingConflictException - Exception Class in com.equipmentrental.equipment_rental_system.exception
-
Thrown when a new booking conflicts with an existing confirmed booking for the same equipment item (BR-02).
- BookingConflictException(String, String, String) - Constructor for exception class com.equipmentrental.equipment_rental_system.exception.BookingConflictException
-
Creates a new exception describing the conflict.
- BookingController - Class in com.equipmentrental.equipment_rental_system.controller
- BookingController(BookingService, EquipmentService, UserService) - Constructor for class com.equipmentrental.equipment_rental_system.controller.BookingController
- BookingRepository - Interface in com.equipmentrental.equipment_rental_system.repository
-
Spring Data JPA repository for
Bookingentities. - BookingService - Class in com.equipmentrental.equipment_rental_system.service
-
Service layer for managing
Bookingentities. - BookingService(BookingRepository, EquipmentService, UserService) - Constructor for class com.equipmentrental.equipment_rental_system.service.BookingService
- BookingStatus - Enum Class in com.equipmentrental.equipment_rental_system.model
-
Defines the lifecycle status of a booking.
C
- cancel() - Method in class com.equipmentrental.equipment_rental_system.model.Booking
-
Cancels this booking by setting its status to
BookingStatus.CANCELLED. - cancel(Long, RedirectAttributes) - Method in class com.equipmentrental.equipment_rental_system.controller.BookingController
- cancelBooking(Long) - Method in class com.equipmentrental.equipment_rental_system.service.BookingService
-
Cancels an existing booking and updates the equipment status if appropriate (BR-08).
- CANCELLED - Enum constant in enum class com.equipmentrental.equipment_rental_system.model.BookingStatus
- Category - Class in com.equipmentrental.equipment_rental_system.model
-
Represents an equipment category used to group items by type.
- Category(String, String) - Constructor for class com.equipmentrental.equipment_rental_system.model.Category
-
Creates a new category with the specified name and description.
- CategoryController - Class in com.equipmentrental.equipment_rental_system.controller
- CategoryController(CategoryService) - Constructor for class com.equipmentrental.equipment_rental_system.controller.CategoryController
- CategoryRepository - Interface in com.equipmentrental.equipment_rental_system.repository
-
Spring Data JPA repository for
Categoryentities. - CategoryService - Class in com.equipmentrental.equipment_rental_system.service
-
Service layer for managing
Categoryentities. - CategoryService(CategoryRepository, EquipmentRepository) - Constructor for class com.equipmentrental.equipment_rental_system.service.CategoryService
- com.equipmentrental.equipment_rental_system - package com.equipmentrental.equipment_rental_system
- com.equipmentrental.equipment_rental_system.config - package com.equipmentrental.equipment_rental_system.config
- com.equipmentrental.equipment_rental_system.controller - package com.equipmentrental.equipment_rental_system.controller
- com.equipmentrental.equipment_rental_system.exception - package com.equipmentrental.equipment_rental_system.exception
- com.equipmentrental.equipment_rental_system.model - package com.equipmentrental.equipment_rental_system.model
- com.equipmentrental.equipment_rental_system.repository - package com.equipmentrental.equipment_rental_system.repository
- com.equipmentrental.equipment_rental_system.service - package com.equipmentrental.equipment_rental_system.service
- CONFIRMED - Enum constant in enum class com.equipmentrental.equipment_rental_system.model.BookingStatus
- createBooking(Booking) - Method in class com.equipmentrental.equipment_rental_system.service.BookingService
-
Creates a new booking after validating all business rules.
D
- dashboard(Model) - Method in class com.equipmentrental.equipment_rental_system.controller.DashboardController
- DashboardController - Class in com.equipmentrental.equipment_rental_system.controller
- DashboardController(EquipmentService, BookingService, CategoryService, UserService) - Constructor for class com.equipmentrental.equipment_rental_system.controller.DashboardController
- DataInitialiser - Class in com.equipmentrental.equipment_rental_system.config
-
Populates the database with sample data on application startup.
- DataInitialiser(CategoryRepository, UserRepository, EquipmentRepository, BookingRepository) - Constructor for class com.equipmentrental.equipment_rental_system.config.DataInitialiser
- delete(Long, RedirectAttributes) - Method in class com.equipmentrental.equipment_rental_system.controller.CategoryController
- delete(Long, RedirectAttributes) - Method in class com.equipmentrental.equipment_rental_system.controller.EquipmentController
- delete(Long, RedirectAttributes) - Method in class com.equipmentrental.equipment_rental_system.controller.UserController
- deleteById(Long) - Method in class com.equipmentrental.equipment_rental_system.service.CategoryService
-
Deletes a category if no equipment items are assigned to it (BR-06).
- deleteById(Long) - Method in class com.equipmentrental.equipment_rental_system.service.EquipmentService
-
Deletes an equipment item if it has no active (confirmed) bookings (BR-07).
- deleteById(Long) - Method in class com.equipmentrental.equipment_rental_system.service.UserService
-
Deletes a user if they have no active (confirmed) bookings.
- DeletionBlockedException - Exception Class in com.equipmentrental.equipment_rental_system.exception
-
Thrown when an entity cannot be deleted because it has dependent records.
- DeletionBlockedException(String, String) - Constructor for exception class com.equipmentrental.equipment_rental_system.exception.DeletionBlockedException
-
Creates a new exception explaining why deletion was blocked.
E
- Equipment - Class in com.equipmentrental.equipment_rental_system.model
-
Represents a physical equipment item available for booking.
- Equipment(String, String, String, String, EquipmentStatus, LocalDate, BigDecimal, Category) - Constructor for class com.equipmentrental.equipment_rental_system.model.Equipment
-
Creates a new equipment item with all fields.
- EquipmentController - Class in com.equipmentrental.equipment_rental_system.controller
- EquipmentController(EquipmentService, CategoryService) - Constructor for class com.equipmentrental.equipment_rental_system.controller.EquipmentController
- EquipmentNotAvailableException - Exception Class in com.equipmentrental.equipment_rental_system.exception
-
Thrown when a booking is attempted on equipment that is not available (BR-01).
- EquipmentNotAvailableException(String, EquipmentStatus) - Constructor for exception class com.equipmentrental.equipment_rental_system.exception.EquipmentNotAvailableException
-
Creates a new exception describing the unavailable equipment.
- EquipmentRentalSystemApplication - Class in com.equipmentrental.equipment_rental_system
- EquipmentRentalSystemApplication() - Constructor for class com.equipmentrental.equipment_rental_system.EquipmentRentalSystemApplication
- EquipmentRepository - Interface in com.equipmentrental.equipment_rental_system.repository
-
Spring Data JPA repository for
Equipmententities. - EquipmentService - Class in com.equipmentrental.equipment_rental_system.service
-
Service layer for managing
Equipmententities. - EquipmentService(EquipmentRepository, BookingRepository) - Constructor for class com.equipmentrental.equipment_rental_system.service.EquipmentService
- EquipmentStatus - Enum Class in com.equipmentrental.equipment_rental_system.model
-
Defines the availability status of an equipment item.
- existsByName(String) - Method in interface com.equipmentrental.equipment_rental_system.repository.CategoryRepository
-
Checks whether a category with the given name already exists.
- existsByUsername(String) - Method in interface com.equipmentrental.equipment_rental_system.repository.UserRepository
-
Checks whether a user with the given username already exists.
F
- findAll() - Method in class com.equipmentrental.equipment_rental_system.service.BookingService
-
Returns all bookings in the system.
- findAll() - Method in class com.equipmentrental.equipment_rental_system.service.CategoryService
-
Returns all categories in the system.
- findAll() - Method in class com.equipmentrental.equipment_rental_system.service.EquipmentService
-
Returns all equipment items in the system.
- findAll() - Method in class com.equipmentrental.equipment_rental_system.service.UserService
-
Returns all registered users.
- findByCategoryId(Long) - Method in interface com.equipmentrental.equipment_rental_system.repository.EquipmentRepository
-
Finds all equipment items belonging to a specific category.
- findByCategoryId(Long) - Method in class com.equipmentrental.equipment_rental_system.service.EquipmentService
-
Finds all equipment items belonging to a specific category.
- findByEquipmentId(Long) - Method in interface com.equipmentrental.equipment_rental_system.repository.BookingRepository
-
Finds all bookings for a specific equipment item.
- findByEquipmentId(Long) - Method in class com.equipmentrental.equipment_rental_system.service.BookingService
-
Finds all bookings for a specific equipment item.
- findById(Long) - Method in class com.equipmentrental.equipment_rental_system.service.BookingService
-
Finds a booking by its ID.
- findById(Long) - Method in class com.equipmentrental.equipment_rental_system.service.CategoryService
-
Finds a category by its ID.
- findById(Long) - Method in class com.equipmentrental.equipment_rental_system.service.EquipmentService
-
Finds an equipment item by its ID.
- findById(Long) - Method in class com.equipmentrental.equipment_rental_system.service.UserService
-
Finds a user by their ID.
- findByName(String) - Method in interface com.equipmentrental.equipment_rental_system.repository.CategoryRepository
-
Finds a category by its unique name.
- findByNameContainingIgnoreCase(String) - Method in interface com.equipmentrental.equipment_rental_system.repository.EquipmentRepository
-
Searches for equipment items whose name contains the given text (case-insensitive).
- findByStatus(BookingStatus) - Method in interface com.equipmentrental.equipment_rental_system.repository.BookingRepository
-
Finds all bookings with a specific status.
- findByStatus(EquipmentStatus) - Method in interface com.equipmentrental.equipment_rental_system.repository.EquipmentRepository
-
Finds all equipment items with a specific availability status.
- findByStatus(EquipmentStatus) - Method in class com.equipmentrental.equipment_rental_system.service.EquipmentService
-
Finds all equipment items with a specific availability status.
- findByUserId(Long) - Method in interface com.equipmentrental.equipment_rental_system.repository.BookingRepository
-
Finds all bookings created by a specific user.
- findByUserId(Long) - Method in class com.equipmentrental.equipment_rental_system.service.BookingService
-
Finds all bookings created by a specific user.
- findByUsername(String) - Method in interface com.equipmentrental.equipment_rental_system.repository.UserRepository
-
Finds a user by their unique username.
- findByUsername(String) - Method in class com.equipmentrental.equipment_rental_system.service.UserService
-
Finds a user by their unique username.
- findConflictingBookings(Long, LocalDate, LocalDate) - Method in interface com.equipmentrental.equipment_rental_system.repository.BookingRepository
-
Finds confirmed bookings for a given equipment item that overlap with the specified date range.
G
- getDurationDays() - Method in class com.equipmentrental.equipment_rental_system.model.Booking
-
Calculates the duration of this booking in days (inclusive of both start and end dates).
- getEquipmentCount() - Method in class com.equipmentrental.equipment_rental_system.model.Category
-
Returns the number of equipment items currently assigned to this category.
- getFullName() - Method in class com.equipmentrental.equipment_rental_system.model.User
-
Returns the user's full name by combining first and last name.
- GlobalExceptionHandler - Class in com.equipmentrental.equipment_rental_system.controller
-
Centralised exception handler for all controllers in the application.
- GlobalExceptionHandler() - Constructor for class com.equipmentrental.equipment_rental_system.controller.GlobalExceptionHandler
H
- handleBookingConflict(BookingConflictException, Model) - Method in class com.equipmentrental.equipment_rental_system.controller.GlobalExceptionHandler
-
Handles booking date conflicts (BR-02).
- handleDeletionBlocked(DeletionBlockedException, Model) - Method in class com.equipmentrental.equipment_rental_system.controller.GlobalExceptionHandler
-
Handles attempts to delete entities with dependent records (BR-06, BR-07).
- handleEquipmentNotAvailable(EquipmentNotAvailableException, Model) - Method in class com.equipmentrental.equipment_rental_system.controller.GlobalExceptionHandler
-
Handles attempts to book equipment that is not available (BR-01).
- handleGenericException(Exception, Model) - Method in class com.equipmentrental.equipment_rental_system.controller.GlobalExceptionHandler
-
Catches any unhandled exception, including missing static resources (favicon.ico).
- handleInvalidBookingDates(InvalidBookingDatesException, Model) - Method in class com.equipmentrental.equipment_rental_system.controller.GlobalExceptionHandler
-
Handles invalid booking date ranges (BR-05).
- handleResourceNotFound(ResourceNotFoundException, Model) - Method in class com.equipmentrental.equipment_rental_system.controller.GlobalExceptionHandler
-
Handles cases where a requested entity was not found by its ID.
- hasConflictWith(Booking) - Method in class com.equipmentrental.equipment_rental_system.model.Booking
-
Checks whether this booking's date range overlaps with another booking.
- help(Model) - Method in class com.equipmentrental.equipment_rental_system.controller.HelpController
- HelpController - Class in com.equipmentrental.equipment_rental_system.controller
- HelpController() - Constructor for class com.equipmentrental.equipment_rental_system.controller.HelpController
I
- InvalidBookingDatesException - Exception Class in com.equipmentrental.equipment_rental_system.exception
-
Thrown when a booking is submitted with an invalid date range (BR-05).
- InvalidBookingDatesException(String, String) - Constructor for exception class com.equipmentrental.equipment_rental_system.exception.InvalidBookingDatesException
-
Creates a new exception describing the invalid date range.
- isActive() - Method in class com.equipmentrental.equipment_rental_system.model.Booking
-
Checks whether this booking is currently active (confirmed and not cancelled).
- isAvailable() - Method in class com.equipmentrental.equipment_rental_system.model.Equipment
-
Checks whether this equipment item has AVAILABLE status.
L
- list(String, Long, EquipmentStatus, Model) - Method in class com.equipmentrental.equipment_rental_system.controller.EquipmentController
- list(Model) - Method in class com.equipmentrental.equipment_rental_system.controller.BookingController
- list(Model) - Method in class com.equipmentrental.equipment_rental_system.controller.CategoryController
- list(Model) - Method in class com.equipmentrental.equipment_rental_system.controller.UserController
M
- main(String[]) - Static method in class com.equipmentrental.equipment_rental_system.EquipmentRentalSystemApplication
- MAINTENANCE - Enum constant in enum class com.equipmentrental.equipment_rental_system.model.EquipmentStatus
O
- onCreate() - Method in class com.equipmentrental.equipment_rental_system.model.Booking
-
Automatically sets the creation timestamp when the booking is first persisted.
R
- ResourceNotFoundException - Exception Class in com.equipmentrental.equipment_rental_system.exception
-
Thrown when a requested entity cannot be found by its ID.
- ResourceNotFoundException(String, Long) - Constructor for exception class com.equipmentrental.equipment_rental_system.exception.ResourceNotFoundException
-
Creates a new exception with a descriptive message.
- run(String...) - Method in class com.equipmentrental.equipment_rental_system.config.DataInitialiser
S
- save(Category, BindingResult, Model, RedirectAttributes) - Method in class com.equipmentrental.equipment_rental_system.controller.CategoryController
- save(Equipment, BindingResult, Long, Model, RedirectAttributes) - Method in class com.equipmentrental.equipment_rental_system.controller.EquipmentController
- save(User, BindingResult, Model, RedirectAttributes) - Method in class com.equipmentrental.equipment_rental_system.controller.UserController
- save(Booking, Long, Long, Model, RedirectAttributes) - Method in class com.equipmentrental.equipment_rental_system.controller.BookingController
- save(Category) - Method in class com.equipmentrental.equipment_rental_system.service.CategoryService
-
Saves a new or updated category.
- save(Equipment) - Method in class com.equipmentrental.equipment_rental_system.service.EquipmentService
-
Saves a new or updated equipment item.
- save(User) - Method in class com.equipmentrental.equipment_rental_system.service.UserService
-
Saves a new or updated user.
- searchByName(String) - Method in class com.equipmentrental.equipment_rental_system.service.EquipmentService
-
Searches for equipment items whose name contains the given text (case-insensitive).
- showCreateForm(Model) - Method in class com.equipmentrental.equipment_rental_system.controller.BookingController
- showCreateForm(Model) - Method in class com.equipmentrental.equipment_rental_system.controller.CategoryController
- showCreateForm(Model) - Method in class com.equipmentrental.equipment_rental_system.controller.EquipmentController
- showCreateForm(Model) - Method in class com.equipmentrental.equipment_rental_system.controller.UserController
- showEditForm(Long, Model) - Method in class com.equipmentrental.equipment_rental_system.controller.CategoryController
- showEditForm(Long, Model) - Method in class com.equipmentrental.equipment_rental_system.controller.EquipmentController
- showEditForm(Long, Model) - Method in class com.equipmentrental.equipment_rental_system.controller.UserController
- STAFF - Enum constant in enum class com.equipmentrental.equipment_rental_system.model.UserRole
U
- UNAVAILABLE - Enum constant in enum class com.equipmentrental.equipment_rental_system.model.EquipmentStatus
- updateStatus(EquipmentStatus) - Method in class com.equipmentrental.equipment_rental_system.model.Equipment
-
Updates the equipment status to the specified value.
- updateStatus(Long, EquipmentStatus) - Method in class com.equipmentrental.equipment_rental_system.service.EquipmentService
-
Updates the availability status of an equipment item (BR-08).
- User - Class in com.equipmentrental.equipment_rental_system.model
-
Represents a staff member who can create and manage equipment bookings.
- User(String, String, String, String, UserRole, String, String, String) - Constructor for class com.equipmentrental.equipment_rental_system.model.User
-
Creates a new user with all required and optional fields.
- UserController - Class in com.equipmentrental.equipment_rental_system.controller
- UserController(UserService) - Constructor for class com.equipmentrental.equipment_rental_system.controller.UserController
- UserRepository - Interface in com.equipmentrental.equipment_rental_system.repository
-
Spring Data JPA repository for
Userentities. - UserRole - Enum Class in com.equipmentrental.equipment_rental_system.model
-
Defines the access level of a system user.
- UserService - Class in com.equipmentrental.equipment_rental_system.service
-
Service layer for managing
Userentities. - UserService(UserRepository, BookingRepository) - Constructor for class com.equipmentrental.equipment_rental_system.service.UserService
V
- valueOf(String) - Static method in enum class com.equipmentrental.equipment_rental_system.model.BookingStatus
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class com.equipmentrental.equipment_rental_system.model.EquipmentStatus
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class com.equipmentrental.equipment_rental_system.model.UserRole
-
Returns the enum constant of this class with the specified name.
- values() - Static method in enum class com.equipmentrental.equipment_rental_system.model.BookingStatus
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class com.equipmentrental.equipment_rental_system.model.EquipmentStatus
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class com.equipmentrental.equipment_rental_system.model.UserRole
-
Returns an array containing the constants of this enum class, in the order they are declared.
- verifyAvailableForBooking(Equipment) - Method in class com.equipmentrental.equipment_rental_system.service.EquipmentService
-
Verifies that an equipment item is available for booking (BR-01).
All Classes and Interfaces|All Packages|Serialized Form