All Classes and Interfaces

Class
Description
Enhanced factory for creating Material instances with advanced validation and type-safe property extraction.
Observer that collects analytics data from material events.
Comprehensive analytics data container.
Represents an audio book that implements both Material and Media interfaces.
Observer that maintains an audit log of all material events.
Represents a single audit log entry.
Statistics for the audit log.
Represents an immutable book in the bookstore inventory.
Utility class for array-based operations on Book objects.
Defines the contract for bookstore operations.
Spring Boot application entry point for the Bookstore Management System.
ArrayList-based implementation of the BookstoreAPI.
Service for managing material bundles using the Composite pattern.
Statistics class for bundle analysis.
Service that integrates Trie-based prefix search with LRU caching for optimal performance.
Builder interface for creating MaterialComponent instances.
Thread-safe implementation of MaterialStore using synchronization primitives.
Decorator that adds digital annotation functionality to materials.
Director-level discount approval handler.
Service for managing discount approval using the Chain of Responsibility pattern.
Statistics class for approval analysis.
Abstract base class for discount approval handlers in the Chain of Responsibility pattern.
Request object for discount approval in the Chain of Responsibility pattern.
Represents an electronic book (e-book) in the bookstore system.
Builder for creating EBook instances with a fluent interface.
Decorator that adds expedited delivery functionality to materials.
Decorator that adds gift wrapping functionality to materials.
Observer that tracks inventory changes for materials.
JSON-based implementation of MaterialRepository (Adapter in hexagonal architecture).
Factory for creating SLF4J loggers with consistent configuration.
Represents a magazine in the store inventory.
Frequency of magazine publication.
Manager-level discount approval handler.
Abstract base class representing any material in the store inventory.
Enumeration of material types for polymorphic behavior.
Event that occurs when a material is added to the system.
Builder interface for creating Material instances.
Composite component in the Composite pattern.
Builder for creating MaterialBundle instances with a fluent interface.
Component interface for the Composite pattern.
REST Controller for Material management operations.
Abstract base class for material decorators in the Decorator pattern.
Director class that orchestrates the construction of complex Material objects using various builders.
Service for managing material enhancements using the Decorator pattern.
Base interface for material-related domain events in the Observer pattern.
Concrete implementation of MaterialSubject that publishes material events to observers.
Factory class for creating Material instances.
Iterator interface for traversing collections of materials.
Factory for creating different types of material iterators.
Leaf component in the Composite pattern.
Observer interface for material-related events in the Observer pattern.
Port interface for material persistence operations in hexagonal architecture.
Domain service that orchestrates business logic for material management.
Exception thrown when a material is invalid according to business rules.
Exception thrown when a requested material is not found.
Interface defining operations for a polymorphic material store that demonstrates interface segregation and dependency inversion principles.
Statistics class for inventory analysis.
Implementation of MaterialStore using ArrayList with polymorphic handling.
Subject interface for material events in the Observer pattern.
Wrapper class to ensure proper JSON serialization of Material polymorphic types.
Trie (Prefix Tree) data structure for efficient prefix-based material searching.
Iterator that filters materials by type.
Visitor interface for implementing the Visitor pattern.
Interface for materials with multimedia content.
Quality levels for media content.
Modern thread-safe implementation of MaterialStore using best practices.
Modern JSON-based implementation of MaterialRepository using best practices.
Modern interface for polymorphic material store with async operations.
Batch operation result record.
Modern InventoryStats using Java record for immutability.
Search criteria record for complex searches.
Builder for SearchCriteria.
Modern high-performance cache implementation with advanced features.
Cache statistics record.
Demonstration class showing polymorphism and OOP best practices.
Event that occurs when a material's price changes.
Iterator that filters materials by price range.
Iterator that returns materials sorted by price.
Represents a physical printed book in the bookstore inventory.
Exception thrown when repository operations fail.
LRU (Least Recently Used) cache for search results.
Statistics class for cache performance monitoring.
Concrete visitor implementation for calculating shipping costs.
Represents video content (movies, documentaries, educational videos).
Types of video content.
VP-level discount approval handler.