Uses of Class
com.university.bookstore.model.Material
Packages that use Material
Package
Description
-
Uses of Material in com.university.bookstore.api
Methods in com.university.bookstore.api that return types with arguments of type MaterialModifier and TypeMethodDescriptionModernMaterialStore.advancedSearchAsync(ModernMaterialStore.SearchCriteria criteria) Performs advanced search with multiple criteria.MaterialStore.filterMaterials(Predicate<Material> predicate) Filters materials by a custom predicate.MaterialStore.findByCreators(String... creators) Finds materials by multiple creators (OR condition).Finds a material by its ID.ModernMaterialStore.findByIdAsync(String id) Finds material by ID asynchronously.MaterialStore.findRecentMaterials(int years) Finds materials published in the last N years.MaterialStore.findWithPredicate(Predicate<Material> condition) Finds materials with custom filtering using predicate.MaterialStore.getAllMaterials()Gets all materials (unsorted).MaterialStore.getAllMaterialsSorted()Gets all materials sorted by title.MaterialStore.getMaterialsByPriceRange(double minPrice, double maxPrice) Gets materials within a price range.MaterialStore.getMaterialsByType(Material.MaterialType type) Gets all materials of a specific type.MaterialStore.getMaterialsByYear(int year) Gets materials published/released in a specific year.MaterialStore.getSorted(Comparator<Material> comparator) Gets materials sorted by custom comparator.MaterialStore.removeMaterial(String id) Removes a material by its ID.MaterialStore.searchByCreator(String creator) Searches materials by creator (author/director/publisher).MaterialStore.searchByTitle(String title) Searches materials by title (case-insensitive partial match).ModernMaterialStore.searchByTitleAsync(String title) Searches by title asynchronously.Methods in com.university.bookstore.api with parameters of type MaterialModifier and TypeMethodDescriptionbooleanMaterialStore.addMaterial(Material material) Adds a material to the store inventory.ModernMaterialStore.addMaterialAsync(Material material) Adds material asynchronously.Method parameters in com.university.bookstore.api with type arguments of type MaterialModifier and TypeMethodDescriptionModernMaterialStore.addMaterialsBatchAsync(List<Material> materials) Adds multiple materials in batch.MaterialStore.filterMaterials(Predicate<Material> predicate) Filters materials by a custom predicate.MaterialStore.findWithPredicate(Predicate<Material> condition) Finds materials with custom filtering using predicate.MaterialStore.getSorted(Comparator<Material> comparator) Gets materials sorted by custom comparator. -
Uses of Material in com.university.bookstore.builder
Classes in com.university.bookstore.builder with type parameters of type MaterialModifier and TypeInterfaceDescriptioninterfaceMaterialBuilder<T extends Material>Builder interface for creating Material instances.Methods in com.university.bookstore.builder that return MaterialModifier and TypeMethodDescriptionMaterialDirector.buildBasicEBook(String id, String title, String author, double price) Constructs a basic EBook with minimal features.MaterialDirector.buildPremiumEBook(String id, String title, String author, double price) Constructs a premium EBook with all features enabled.MaterialDirector.buildStudentEBook(String id, String title, String author, double price) Constructs a student EBook with educational features.Methods in com.university.bookstore.builder with parameters of type MaterialModifier and TypeMethodDescriptionMaterialBundleBuilder.addMaterial(Material material) Adds a material to the bundle.MaterialBundleBuilder.removeMaterial(Material material) Removes a material from the bundle.Method parameters in com.university.bookstore.builder with type arguments of type MaterialModifier and TypeMethodDescriptionMaterialBundleBuilder.addMaterials(List<Material> materials) Adds multiple materials to the bundle.MaterialDirector.buildCourseBundle(String bundleName, List<Material> materials) Constructs a course bundle with a 25% discount.MaterialDirector.buildCustomBundle(String bundleName, List<Material> materials, double discount) Constructs a custom bundle with specified parameters.MaterialDirector.buildPremiumBundle(String bundleName, List<Material> materials) Constructs a premium bundle with a 30% discount.MaterialDirector.buildStarterBundle(String bundleName, List<Material> materials) Constructs a starter bundle with a 10% discount.MaterialDirector.buildTextbookBundle(String bundleName, List<Material> materials) Constructs a textbook bundle with a 20% discount. -
Uses of Material in com.university.bookstore.chain
Methods in com.university.bookstore.chain that return MaterialModifier and TypeMethodDescriptionDiscountRequest.getMaterial()Gets the material for which discount is requested.Methods in com.university.bookstore.chain with parameters of type MaterialModifier and TypeMethodDescriptionDiscountApprovalService.getRequestsForMaterial(Material material) Gets discount requests for a specific material.DiscountApprovalService.requestDiscount(Material material, double discountPercent, String customerId, String reason) Processes a discount request through the approval chain.Constructors in com.university.bookstore.chain with parameters of type MaterialModifierConstructorDescriptionDiscountRequest(Material material, double requestedDiscount, String customerId, String reason) Creates a new discount request. -
Uses of Material in com.university.bookstore.composite
Methods in com.university.bookstore.composite that return MaterialMethods in com.university.bookstore.composite that return types with arguments of type MaterialModifier and TypeMethodDescriptionMaterialBundle.getMaterials()MaterialComponent.getMaterials()Gets all materials contained in this component.MaterialLeaf.getMaterials()MaterialBundle.getMaterialsByType(Material.MaterialType type) Gets all materials of the specified type in this bundle.Methods in com.university.bookstore.composite with parameters of type MaterialModifier and TypeMethodDescriptionvoidBundleService.addToBundle(String bundleName, Material material) Adds a material to the specified bundle.booleanMaterialBundle.containsMaterial(Material material) Checks if this bundle contains the specified material.booleanBundleService.removeFromBundle(String bundleName, Material material) Removes a material from the specified bundle.Constructors in com.university.bookstore.composite with parameters of type MaterialModifierConstructorDescriptionMaterialLeaf(Material material) Creates a new material leaf wrapping the specified material. -
Uses of Material in com.university.bookstore.controller
Methods in com.university.bookstore.controller that return types with arguments of type MaterialModifier and TypeMethodDescriptionorg.springframework.http.ResponseEntity<Material> MaterialController.createMaterial(Material material) POST /api/materials - Create a new materialMaterialController.getAllMaterials()GET /api/materials - Retrieve all materialsorg.springframework.http.ResponseEntity<Material> MaterialController.getMaterialById(String id) GET /api/materials/{id} - Retrieve a specific material by IDMaterialController.getMaterialsByPriceRange(double min, double max) Get materials by price range.MaterialController.getMaterialsByType(Material.MaterialType type) GET /api/materials/type/{type} - Get materials by typeMaterialController.getRecentMaterials(int years) GET /api/materials/recent?years={years} - Get recent materialsMaterialController.searchByCreator(String q) GET /api/materials/search/creator?q={query} - Search materials by creatorMaterialController.searchByTitle(String q) GET /api/materials/search/title?q={query} - Search materials by titleorg.springframework.http.ResponseEntity<Material> MaterialController.updateMaterial(String id, Material material) PUT /api/materials/{id} - Update an existing materialMethods in com.university.bookstore.controller with parameters of type MaterialModifier and TypeMethodDescriptionorg.springframework.http.ResponseEntity<Material> MaterialController.createMaterial(Material material) POST /api/materials - Create a new materialorg.springframework.http.ResponseEntity<Material> MaterialController.updateMaterial(String id, Material material) PUT /api/materials/{id} - Update an existing material -
Uses of Material in com.university.bookstore.decorator
Subclasses of Material in com.university.bookstore.decoratorModifier and TypeClassDescriptionclassDecorator that adds digital annotation functionality to materials.classDecorator that adds expedited delivery functionality to materials.classDecorator that adds gift wrapping functionality to materials.classAbstract base class for material decorators in the Decorator pattern.Methods in com.university.bookstore.decorator that return MaterialModifier and TypeMethodDescriptionMaterialEnhancementService.addDigitalAnnotations(Material material) Adds digital annotations to a material.MaterialEnhancementService.addExpeditedDelivery(Material material, int deliveryDays) Adds expedited delivery to a material.MaterialEnhancementService.addGiftWrapping(Material material, String style) Adds gift wrapping to a material.MaterialEnhancementService.createDigitalPackage(Material material) Creates a digital package with digital annotations (for e-books only).MaterialEnhancementService.createGiftPackage(Material material, String giftStyle, int deliveryDays) Creates a gift package with gift wrapping and expedited delivery.MaterialEnhancementService.createPremiumPackage(Material material, String giftStyle, int deliveryDays) Creates a premium package with multiple enhancements.MaterialDecorator.getBaseMaterial()Gets the base material (unwraps all decorators).MaterialEnhancementService.getBaseMaterial(Material material) Gets the base material (unwraps all decorators).MaterialDecorator.getDecoratedMaterial()Gets the decorated material.Methods in com.university.bookstore.decorator with parameters of type MaterialModifier and TypeMethodDescriptionMaterialEnhancementService.addDigitalAnnotations(Material material) Adds digital annotations to a material.MaterialEnhancementService.addExpeditedDelivery(Material material, int deliveryDays) Adds expedited delivery to a material.MaterialEnhancementService.addGiftWrapping(Material material, String style) Adds gift wrapping to a material.doubleMaterialEnhancementService.calculateEnhancementCost(Material original, Material enhanced) Calculates the total enhancement cost for a material.MaterialEnhancementService.createDigitalPackage(Material material) Creates a digital package with digital annotations (for e-books only).MaterialEnhancementService.createGiftPackage(Material material, String giftStyle, int deliveryDays) Creates a gift package with gift wrapping and expedited delivery.MaterialEnhancementService.createPremiumPackage(Material material, String giftStyle, int deliveryDays) Creates a premium package with multiple enhancements.MaterialEnhancementService.getBaseMaterial(Material material) Gets the base material (unwraps all decorators).doubleMaterialEnhancementService.getBasePrice(Material material) Gets the base price of a material (without decorators).intMaterialEnhancementService.getEnhancementCount(Material material) Gets the number of decorators applied to a material.MaterialEnhancementService.getEnhancementSummary(Material material) Gets a summary of enhancements applied to a material.booleanMaterialEnhancementService.hasEnhancement(Material material, Class<? extends MaterialDecorator> enhancementType) Checks if a material has a specific type of enhancement.booleanMaterialEnhancementService.hasEnhancements(Material material) Checks if a material has any enhancements applied.Constructors in com.university.bookstore.decorator with parameters of type MaterialModifierConstructorDescriptionDigitalAnnotationDecorator(Material material) Creates a new digital annotation decorator.ExpeditedDeliveryDecorator(Material material, int deliveryDays) Creates a new expedited delivery decorator.GiftWrappingDecorator(Material material, String wrappingStyle) Creates a new gift wrapping decorator.MaterialDecorator(Material material) Creates a new material decorator wrapping the specified material. -
Uses of Material in com.university.bookstore.factory
Methods in com.university.bookstore.factory that return MaterialModifier and TypeMethodDescriptionstatic MaterialAdvancedMaterialFactory.createMaterial(String type, Map<String, Object> properties) Creates a Material instance based on the specified type and properties.static MaterialMaterialFactory.createMaterial(String type, Map<String, Object> properties) Creates a Material instance based on the specified type and properties. -
Uses of Material in com.university.bookstore.impl
Methods in com.university.bookstore.impl that return types with arguments of type MaterialModifier and TypeMethodDescriptionConcurrentMaterialStore.filterMaterials(Predicate<Material> predicate) MaterialStoreImpl.filterMaterials(Predicate<Material> predicate) ModernConcurrentMaterialStore.filterMaterials(Predicate<Material> predicate) ConcurrentMaterialStore.findByCreators(String... creators) MaterialStoreImpl.findByCreators(String... creators) ModernConcurrentMaterialStore.findByCreators(String... creators) ModernConcurrentMaterialStore.findByIdAsync(String id) Finds material by ID asynchronously.ModernConcurrentMaterialStore.findByIdsAsync(List<String> ids) Finds multiple materials by IDs asynchronously.ConcurrentMaterialStore.findRecentMaterials(int years) MaterialStoreImpl.findRecentMaterials(int years) ModernConcurrentMaterialStore.findRecentMaterials(int years) ConcurrentMaterialStore.findWithPredicate(Predicate<Material> condition) MaterialStoreImpl.findWithPredicate(Predicate<Material> condition) ModernConcurrentMaterialStore.findWithPredicate(Predicate<Material> condition) ConcurrentMaterialStore.getAllMaterials()MaterialStoreImpl.getAllMaterials()ModernConcurrentMaterialStore.getAllMaterials()ConcurrentMaterialStore.getAllMaterialsSorted()MaterialStoreImpl.getAllMaterialsSorted()ModernConcurrentMaterialStore.getAllMaterialsSorted()ConcurrentMaterialStore.getDiscountedMaterials()Gets materials with active discounts (thread-safe).MaterialStoreImpl.getDiscountedMaterials()Gets materials with active discounts.ModernConcurrentMaterialStore.getDiscountedMaterials()Gets materials with active discounts.ConcurrentMaterialStore.getMaterialsByPriceRange(double minPrice, double maxPrice) MaterialStoreImpl.getMaterialsByPriceRange(double minPrice, double maxPrice) ModernConcurrentMaterialStore.getMaterialsByPriceRange(double minPrice, double maxPrice) ConcurrentMaterialStore.getMaterialsByType(Material.MaterialType type) MaterialStoreImpl.getMaterialsByType(Material.MaterialType type) ModernConcurrentMaterialStore.getMaterialsByType(Material.MaterialType type) ConcurrentMaterialStore.getMaterialsByYear(int year) MaterialStoreImpl.getMaterialsByYear(int year) ModernConcurrentMaterialStore.getMaterialsByYear(int year) ConcurrentMaterialStore.getSorted(Comparator<Material> comparator) MaterialStoreImpl.getSorted(Comparator<Material> comparator) ModernConcurrentMaterialStore.getSorted(Comparator<Material> comparator) ConcurrentMaterialStore.groupByType()Groups materials by type for reporting (thread-safe).MaterialStoreImpl.groupByType()Groups materials by type for reporting.ModernConcurrentMaterialStore.groupByType()Groups materials by type for reporting.ModernConcurrentMaterialStore.parallelSearchAsync(String title, String creator, Material.MaterialType type) Performs parallel search across multiple criteria.ConcurrentMaterialStore.removeMaterial(String id) MaterialStoreImpl.removeMaterial(String id) ModernConcurrentMaterialStore.removeMaterial(String id) ConcurrentMaterialStore.searchByCreator(String creator) MaterialStoreImpl.searchByCreator(String creator) ModernConcurrentMaterialStore.searchByCreator(String creator) ConcurrentMaterialStore.searchByTitle(String title) MaterialStoreImpl.searchByTitle(String title) ModernConcurrentMaterialStore.searchByTitle(String title) ModernConcurrentMaterialStore.searchByTitleAsync(String title) Searches by title asynchronously.Methods in com.university.bookstore.impl with parameters of type MaterialModifier and TypeMethodDescriptionbooleanConcurrentMaterialStore.addMaterial(Material material) booleanMaterialStoreImpl.addMaterial(Material material) booleanModernConcurrentMaterialStore.addMaterial(Material material) ModernConcurrentMaterialStore.addMaterialAsync(Material material) Adds material asynchronously.Method parameters in com.university.bookstore.impl with type arguments of type MaterialModifier and TypeMethodDescriptionModernConcurrentMaterialStore.addMaterialsBatchAsync(Collection<Material> materials) Adds multiple materials in batch asynchronously.ConcurrentMaterialStore.filterMaterials(Predicate<Material> predicate) MaterialStoreImpl.filterMaterials(Predicate<Material> predicate) ModernConcurrentMaterialStore.filterMaterials(Predicate<Material> predicate) ConcurrentMaterialStore.findWithPredicate(Predicate<Material> condition) MaterialStoreImpl.findWithPredicate(Predicate<Material> condition) ModernConcurrentMaterialStore.findWithPredicate(Predicate<Material> condition) ConcurrentMaterialStore.getSorted(Comparator<Material> comparator) MaterialStoreImpl.getSorted(Comparator<Material> comparator) ModernConcurrentMaterialStore.getSorted(Comparator<Material> comparator) Constructor parameters in com.university.bookstore.impl with type arguments of type MaterialModifierConstructorDescriptionConcurrentMaterialStore(Collection<Material> initialMaterials) Creates a material store with initial materials.MaterialStoreImpl(Collection<Material> initialMaterials) Creates a material store with initial materials.ModernConcurrentMaterialStore(Collection<Material> initialMaterials) Creates a material store with initial materials. -
Uses of Material in com.university.bookstore.iterator
Methods in com.university.bookstore.iterator that return MaterialModifier and TypeMethodDescriptionMaterialIterator.next()Gets the next material in the iteration.MaterialTypeIterator.next()PriceRangeIterator.next()PriceSortedIterator.next()PriceSortedIterator.peek()Gets the current material without advancing the iterator.PriceSortedIterator.peekNext()Gets the next material without advancing the iterator.Methods in com.university.bookstore.iterator that return types with arguments of type MaterialModifier and TypeMethodDescriptionMaterialIteratorFactory.collectAll(MaterialIterator iterator) Collects all materials from an iterator into a list.MaterialIteratorFactory.findAll(MaterialIterator iterator, Predicate<Material> predicate) Finds all materials matching a predicate.MaterialIteratorFactory.findFirst(MaterialIterator iterator, Predicate<Material> predicate) Finds the first material matching a predicate.Method parameters in com.university.bookstore.iterator with type arguments of type MaterialModifier and TypeMethodDescriptionbooleanMaterialIteratorFactory.allMatch(MaterialIterator iterator, Predicate<Material> predicate) Checks if all materials match a predicate.booleanMaterialIteratorFactory.anyMatch(MaterialIterator iterator, Predicate<Material> predicate) Checks if any material matches a predicate.intMaterialIteratorFactory.count(MaterialIterator iterator, Predicate<Material> predicate) Counts materials matching a predicate.MaterialIteratorFactory.createAudioBookIterator(List<Material> materials) Creates an audio book iterator.MaterialIteratorFactory.createBookIterator(List<Material> materials) Creates a book iterator.MaterialIteratorFactory.createCheapIterator(List<Material> materials, double threshold) Creates a cheap materials iterator.MaterialIteratorFactory.createEBookIterator(List<Material> materials) Creates an e-book iterator.MaterialIteratorFactory.createExpensiveIterator(List<Material> materials, double threshold) Creates an expensive materials iterator.MaterialIteratorFactory.createMagazineIterator(List<Material> materials) Creates a magazine iterator.MaterialIteratorFactory.createPriceRangeIterator(List<Material> materials, double minPrice, double maxPrice) Creates a price range iterator.MaterialIteratorFactory.createPriceSortedIterator(List<Material> materials, boolean ascending) Creates a price-sorted iterator.MaterialIteratorFactory.createTypeIterator(List<Material> materials, Material.MaterialType type) Creates a type-filtering iterator.MaterialIteratorFactory.createVideoIterator(List<Material> materials) Creates a video iterator.MaterialIteratorFactory.findAll(MaterialIterator iterator, Predicate<Material> predicate) Finds all materials matching a predicate.MaterialIteratorFactory.findFirst(MaterialIterator iterator, Predicate<Material> predicate) Finds the first material matching a predicate.Constructor parameters in com.university.bookstore.iterator with type arguments of type MaterialModifierConstructorDescriptionMaterialTypeIterator(List<Material> materials, Material.MaterialType targetType) Creates a new material type iterator.PriceRangeIterator(List<Material> materials, double minPrice, double maxPrice) Creates a new price range iterator.PriceSortedIterator(List<Material> materials, boolean ascending) Creates a new price sorted iterator. -
Uses of Material in com.university.bookstore.model
Subclasses of Material in com.university.bookstore.modelModifier and TypeClassDescriptionclassRepresents an audio book that implements both Material and Media interfaces.classRepresents an electronic book (e-book) in the bookstore system.classRepresents a magazine in the store inventory.classRepresents a physical printed book in the bookstore inventory.classRepresents video content (movies, documentaries, educational videos).Classes in com.university.bookstore.model that implement interfaces with type arguments of type MaterialModifier and TypeClassDescriptionclassAbstract base class representing any material in the store inventory.Methods in com.university.bookstore.model with parameters of type Material -
Uses of Material in com.university.bookstore.observer
Methods in com.university.bookstore.observer that return MaterialModifier and TypeMethodDescriptionMaterialAddedEvent.getMaterial()MaterialEvent.getMaterial()Gets the material associated with this event.PriceChangedEvent.getMaterial()Methods in com.university.bookstore.observer with parameters of type MaterialModifier and TypeMethodDescriptionvoidMaterialEventPublisher.publishMaterialAdded(Material material) Publishes a material added event.voidMaterialEventPublisher.publishPriceChanged(Material material, double oldPrice, double newPrice) Publishes a price changed event.Constructors in com.university.bookstore.observer with parameters of type MaterialModifierConstructorDescriptionMaterialAddedEvent(Material material) Creates a new material added event.PriceChangedEvent(Material material, double oldPrice, double newPrice) Creates a new price changed event. -
Uses of Material in com.university.bookstore.repository
Methods in com.university.bookstore.repository that return types with arguments of type MaterialModifier and TypeMethodDescriptionJsonMaterialRepository.findAll()MaterialRepository.findAll()Retrieves all materials from the repository.ModernJsonMaterialRepository.findAll()Finds a material by its unique identifier.MaterialsWrapper.getMaterials()Methods in com.university.bookstore.repository with parameters of type MaterialModifier and TypeMethodDescriptionvoidvoidSaves a material to the repository.voidMethod parameters in com.university.bookstore.repository with type arguments of type MaterialModifier and TypeMethodDescriptionvoidModernJsonMaterialRepository.saveAll(Collection<Material> materialsToSave) Saves multiple materials in batch for better performance.voidMaterialsWrapper.setMaterials(List<Material> materials) Constructor parameters in com.university.bookstore.repository with type arguments of type Material -
Uses of Material in com.university.bookstore.search
Methods in com.university.bookstore.search that return types with arguments of type MaterialModifier and TypeMethodDescriptionGets a value from the cache or loads it if not present.Retrieves cached search results for the given key.MaterialTrie.getAllMaterials()Gets all materials in the trie.ModernSearchCache.getAsync(String key, Function<String, CompletableFuture<List<Material>>> asyncLoader) Gets a value from the cache or loads it asynchronously.Refreshes a cache entry asynchronously.CachedSearchService.searchByPrefix(String prefix) Searches for materials by title prefix with caching.MaterialTrie.searchByPrefix(String prefix) Searches for materials with titles that start with the given prefix.CachedSearchService.searchByPrefixWithLimit(String prefix, int limit) Searches for materials by title prefix with result limit and caching.MaterialTrie.searchByPrefixWithLimit(String prefix, int limit) Searches for materials with titles that start with the given prefix, limited to a maximum number of results.Methods in com.university.bookstore.search with parameters of type MaterialModifier and TypeMethodDescriptionvoidCachedSearchService.addMaterial(Material material) Adds a material to the search index and invalidates relevant cache entries.voidInserts a material into the trie using its title as the key.booleanRemoves a material from the trie.voidCachedSearchService.removeMaterial(Material material) Removes a material from the search index and invalidates relevant cache entries.Method parameters in com.university.bookstore.search with type arguments of type MaterialModifier and TypeMethodDescriptionGets a value from the cache or loads it if not present.ModernSearchCache.getAsync(String key, Function<String, CompletableFuture<List<Material>>> asyncLoader) Gets a value from the cache or loads it asynchronously.voidPuts a value in the cache.voidStores search results in the cache with the given key.Refreshes a cache entry asynchronously.Warms up the cache with predefined keys. -
Uses of Material in com.university.bookstore.service
Methods in com.university.bookstore.service that return MaterialModifier and TypeMethodDescriptionMaterialService.findMaterial(String id) Finds a material by its ID.Methods in com.university.bookstore.service that return types with arguments of type MaterialModifier and TypeMethodDescriptionMaterialService.findMaterialOptional(String id) Finds a material by its ID, returning Optional.MaterialService.getAllMaterials()Gets all materials in the system.Methods in com.university.bookstore.service with parameters of type MaterialModifier and TypeMethodDescriptionvoidMaterialService.addMaterial(Material material) Adds a material to the system with business logic validation.voidMaterialService.updateMaterial(Material material) Updates an existing material with business logic validation. -
Uses of Material in com.university.bookstore.visitor
Methods in com.university.bookstore.visitor with parameters of type MaterialModifier and TypeMethodDescriptiondoubleShippingCostCalculator.calculateShippingCost(Material material) Calculates shipping cost for a single material.