All Classes and Interfaces

Class
Description
AbstractAggregateRoot<ID extends org.jmolecules.ddd.types.Identifier>
Base class for Aggregate root entities.
AbstractEntity<ID extends org.jmolecules.ddd.types.Identifier>
Base class for Salespoint entities to uniquely define AbstractEntity.equals(Object) and AbstractEntity.hashCode().
An application service to manage AccountancyEntrys and to create basic financial statistics.
This class represents an accountancy entry.
AccountancyEntry.AccountancyEntryIdentifier serves as an identifier type and primary key for AccountancyEntry objects.
All events published by the accountancy.
Published whenever an AccountancyEntry is created within the system.
Application component for authentication related use cases.
Component to allow access to the current business time.
A DomainEvent published on each day.
A DomainEvent published on the last day of the month.
Abstraction of a shopping cart.
A CartItem consists of a Product and a Quantity.
The cash PaymentMethod is used to designate all payments made in cash.
Catalog<T extends Product>
Repository interface for Products
A charge line represents extra expenses, such as shipping, for an Order as a whole.
A ChargeLine that's attached to an OrderLine.
ChargeLine.ChargeLineIdentifier serves as an identifier type for ChargeLine objects.
A is a written bill of exchange (or draft), a written order by the drawer (the writer of the cheque) to the drawee (usually the bank), to pay a specified amount of money to a payee.
MailSender implementation writing the SimpleMailMessage to be sent into the logs.
A credit card.
Interface to contain CurrencyUnit constants.
Callback interface for components that shall be initialized on application startup.
A debit card provides the holder with electronic access to his or her bank account.
Annotation to enable Salespoint for a Spring Boot application.
 
An application service to store NamedBinary instances and obtain them as Resources.
An event published when a NamedBinary gets stored.
Simple value object to represent time intervals.
 
Value object to represent a list o Intervals.
Base interface for InventoryItem implementations.
Events published by the inventory module.
Event being thrown if the stock for particular Product falls below the threshold configured in InventoryProperties.
An InventoryItem associates a product with a Quantity to keep track of how many items per product are available.
InventoryItemIdentifier serves as an identifier type for UniqueInventoryItem objects.
An abstraction over a collection of InventoryItems.
A Predicate to allow defining whether the OrderLines should be post processed by the InventoryListeners.InventoryOrderEventListener.
Annotation to mark the method parameter with that shall get the UserAccount of the currently logged in user injected.
All available metrics.
 
An Inventory that stores MultiInventoryItems, i.e.
An MultiInventoryItem that establishes a many-to-one relationship to a Product instance, i.e.
An abstraction for files originating from different sources.
 
Order.OrderIdentifier serves as an identifier type for Order objects.
Exception to be thrown if a listener for OrderEvents.OrderCompleted event wants to indicate failure of the completion.
 
The status of a completion.
The completion status of an OrderLine.
Events published by the order module.
 
 
 
An order line represents the price and the Quantity of a Product that is intended to be purchased as part of an Order.
A service to manage Orders.
A OrderPaymentEntry is used to store information of payments of orders.
 
 
An encrypted password.
An unencrypted password.
A PaymentCard is used to charge the cost of goods or services to an account, belonging to the party identified on the card.
A PaymentMethod specifies a medium by which a payment has or will be made.
A product.
{link ProductIdentifier} serves as an identifier type for Product objects.
A value object to represent a quantity.
A MailSender implementation that allows looking up all SimpleMailMessages that have been sent.
A Role is only identified by a name.
SalespointRepository<T,ID extends org.jmolecules.ddd.types.Identifier>
Base interface for repositories.
Totalable<T extends org.salespointframework.order.Priced>
An extension ofStreamable of Priced objects that expose a Totalable.getTotal() method so that the combined price can be calculated easily.
An InventoryItem that requires a unique one-to-one relationship to a Product instance.
A user account aggregate.
 
UserAccount.UserAccountIdentifier serves as an identifier type for UserAccount objects.
Central service to manager UserAccount instances.