Index

A B C D E F G H I L M N R S T U V 
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form

A

addClient(String, String) - Method in interface io.github.marcopaglio.booking.presenter.BookingPresenter
Creates and inserts a new client in the repository and notifies the view(s) about the changes.
addClient(String, String) - Method in class io.github.marcopaglio.booking.presenter.served.ServedBookingPresenter
Validates and inserts a new client in the repository and notifies the view about the changes.
addReservation(Client, String) - Method in interface io.github.marcopaglio.booking.presenter.BookingPresenter
Creates and inserts a new reservation in the repository and notifies the view(s) about the changes.
addReservation(Client, String) - Method in class io.github.marcopaglio.booking.presenter.served.ServedBookingPresenter
Validates and inserts a new reservation in the repository and notifies the view about the changes.
allClients() - Method in interface io.github.marcopaglio.booking.presenter.BookingPresenter
Provides all the existing clients in the repository to the view(s).
allClients() - Method in class io.github.marcopaglio.booking.presenter.served.ServedBookingPresenter
Finds all the existing clients in the repository through the service layer and gives the list to the view for showing them.
allReservations() - Method in interface io.github.marcopaglio.booking.presenter.BookingPresenter
Provides all the existing reservations in the repository to the view(s).
allReservations() - Method in class io.github.marcopaglio.booking.presenter.served.ServedBookingPresenter
Finds all the existing reservations in the repository through the service layer and gives the list to the view for showing them.

B

BaseEntity - Class in io.github.marcopaglio.booking.model
Contains the necessary structure of a generic entity.
BaseEntity() - Constructor for class io.github.marcopaglio.booking.model.BaseEntity
Empty constructor.
BookingPresenter - Interface in io.github.marcopaglio.booking.presenter
This interface provides methods for operating on the booking application and notifies the view(s) about changes.
BookingService - Interface in io.github.marcopaglio.booking.service
This interface provides methods for operating on repositories of the booking application.
BookingSwingApp - Class in io.github.marcopaglio.booking.app.swing
Implementation of BookingApp using Java Swing as GUI and MongoDB or PostgreSQL as DBMS.
BookingSwingApp() - Constructor for class io.github.marcopaglio.booking.app.swing.BookingSwingApp
 
BookingSwingView - Class in io.github.marcopaglio.booking.view.swing
A concrete implementation of the view for the booking application using Swing.
BookingSwingView() - Constructor for class io.github.marcopaglio.booking.view.swing.BookingSwingView
Create the frame.
BookingView - Interface in io.github.marcopaglio.booking.view
This interface provides methods for operating on a user interface for the booking application.

C

call() - Method in class io.github.marcopaglio.booking.app.swing.BookingSwingApp
Main content of the application.
Client - Class in io.github.marcopaglio.booking.model
This entity represents the customer's model of the booking application.
Client() - Constructor for class io.github.marcopaglio.booking.model.Client
Empty constructor needed for database purposes.
Client(String, String) - Constructor for class io.github.marcopaglio.booking.model.Client
Constructs a client for the booking application with a name, a surname and an identifier.
CLIENT_TABLE_DB - Static variable in class io.github.marcopaglio.booking.model.Client
Table name used in a database to access Client entities.
clientAdded(Client) - Method in interface io.github.marcopaglio.booking.view.BookingView
Displays the client just inserted into the repository on the user interface.
clientAdded(Client) - Method in class io.github.marcopaglio.booking.view.swing.BookingSwingView
Displays the client just inserted into the repository on the user interface through Swing.
CLIENTID_DB - Static variable in class io.github.marcopaglio.booking.model.Reservation
Field name used in a database to access the clientId attribute.
ClientMongoRepository - Class in io.github.marcopaglio.booking.repository.mongo
Implementation of repository layer through MongoDB for Client entities of the booking application.
ClientMongoRepository(MongoClient, ClientSession, String) - Constructor for class io.github.marcopaglio.booking.repository.mongo.ClientMongoRepository
Constructs a repository layer for Client entities using MongoDB database.
ClientPostgresRepository - Class in io.github.marcopaglio.booking.repository.postgres
Implementation of repository layer through PostgreSQL for Client entities of the booking application.
ClientPostgresRepository(EntityManager) - Constructor for class io.github.marcopaglio.booking.repository.postgres.ClientPostgresRepository
Constructs a repository layer for Client entities using PostgreSQL database.
clientRemoved(Client) - Method in interface io.github.marcopaglio.booking.view.BookingView
Makes the just deleted client disappear from the user interface.
clientRemoved(Client) - Method in class io.github.marcopaglio.booking.view.swing.BookingSwingView
Makes the just deleted client disappear from the user interface through Swing.
clientRenamed(Client, Client) - Method in interface io.github.marcopaglio.booking.view.BookingView
Displays the changes of the client just renamed on the user interface.
clientRenamed(Client, Client) - Method in class io.github.marcopaglio.booking.view.swing.BookingSwingView
Displays the changes of the client just renamed on the user interface through Swing.
ClientRepository - Interface in io.github.marcopaglio.booking.repository
Facade of repository layer for Client entities.
clientRepositoryFactory - Variable in class io.github.marcopaglio.booking.transaction.manager.TransactionManager
Used for creation of ClientPostgresRepository instances.
ClientRepositoryFactory - Class in io.github.marcopaglio.booking.repository.factory
A factory of repositories for Client entities.
ClientRepositoryFactory() - Constructor for class io.github.marcopaglio.booking.repository.factory.ClientRepositoryFactory
Empty constructor.
ClientReservationTransactionCode<R> - Interface in io.github.marcopaglio.booking.transaction.code
This interface provides code that involves both ClientRepository's and ReservationRepository's methods.
ClientTransactionCode<R> - Interface in io.github.marcopaglio.booking.transaction.code
This interface provides code that involves the ClientRepository's method(s).
ClientValidator - Interface in io.github.marcopaglio.booking.validator
Facade of validator for client entities.
closeHandler() - Method in class io.github.marcopaglio.booking.transaction.handler.mongo.TransactionMongoHandler
Closes the session, if still open.
closeHandler() - Method in class io.github.marcopaglio.booking.transaction.handler.postgres.TransactionPostgresHandler
Closes the entity manager, if still open.
closeHandler() - Method in class io.github.marcopaglio.booking.transaction.handler.TransactionHandler
Closes the handler connection, if still open.
collection - Variable in class io.github.marcopaglio.booking.repository.mongo.MongoRepository
Collection of entities of type T used by the repository layer.
commitTransaction() - Method in class io.github.marcopaglio.booking.transaction.handler.mongo.TransactionMongoHandler
Commits changes of the active MongoDB transaction via the session.
commitTransaction() - Method in class io.github.marcopaglio.booking.transaction.handler.postgres.TransactionPostgresHandler
Commits changes of the active PostgreSQL transaction via the entity manager.
commitTransaction() - Method in class io.github.marcopaglio.booking.transaction.handler.TransactionHandler
Commits changes of the active transaction.
createClientRepository(MongoClient, ClientSession, String) - Method in class io.github.marcopaglio.booking.repository.factory.ClientRepositoryFactory
Creates a new repository for Client entities using a MongoDB client and session.
createClientRepository(EntityManager) - Method in class io.github.marcopaglio.booking.repository.factory.ClientRepositoryFactory
Creates a new repository for Client entities using PostgresSQL and a JPA provider.
createReservationRepository(MongoClient, ClientSession, String) - Method in class io.github.marcopaglio.booking.repository.factory.ReservationRepositoryFactory
Creates a new repository for Reservation entities using a MongoDB client and session.
createReservationRepository(EntityManager) - Method in class io.github.marcopaglio.booking.repository.factory.ReservationRepositoryFactory
Creates a new repository for Reservation entities using PostgresSQL and a JPA provider.
createTransactionHandler(MongoClient, TransactionOptions) - Method in class io.github.marcopaglio.booking.transaction.handler.factory.TransactionHandlerFactory
Creates a new session for handling MongoDB transactions using a client.
createTransactionHandler(EntityManagerFactory) - Method in class io.github.marcopaglio.booking.transaction.handler.factory.TransactionHandlerFactory
Creates a new entity manager for handling PostgreSQL transactions using an EntityManagerFactory.

D

DatabaseException - Exception in io.github.marcopaglio.booking.exception
Thrown when there is a failure in querying the database.
DatabaseException() - Constructor for exception io.github.marcopaglio.booking.exception.DatabaseException
Default constructor.
DatabaseException(String) - Constructor for exception io.github.marcopaglio.booking.exception.DatabaseException
Constructs a DatabaseException with the specified detail message.
DatabaseException(String, Throwable) - Constructor for exception io.github.marcopaglio.booking.exception.DatabaseException
Constructs a DatabaseException with the specified detail message and the cause.
DATE_DB - Static variable in class io.github.marcopaglio.booking.model.Reservation
Field name used in a database to access the date attribute.
delete(Client) - Method in interface io.github.marcopaglio.booking.repository.ClientRepository
Removes the unique specified client from the database, if it exists, otherwise it does nothing.
delete(Client) - Method in class io.github.marcopaglio.booking.repository.mongo.ClientMongoRepository
Removes the unique specified client from the MongoDB database, if it exists, otherwise it does nothing.
delete(Client) - Method in class io.github.marcopaglio.booking.repository.postgres.ClientPostgresRepository
Removes the unique specified client from the PostgreSQL database, if it exists, otherwise it does nothing.
delete(Reservation) - Method in class io.github.marcopaglio.booking.repository.mongo.ReservationMongoRepository
Removes the unique specified reservation from the MongoDB database, if it exists, otherwise it does nothing.
delete(Reservation) - Method in class io.github.marcopaglio.booking.repository.postgres.ReservationPostgresRepository
Removes the unique specified reservation from the PostgreSQL database, if it exists, otherwise it does nothing.
delete(Reservation) - Method in interface io.github.marcopaglio.booking.repository.ReservationRepository
Removes the unique specified reservation from the database, if it exists, otherwise it does nothing.
deleteClient(Client) - Method in interface io.github.marcopaglio.booking.presenter.BookingPresenter
Removes an existing client and all his reservations from the repository and notifies the view(s) about the changes.
deleteClient(Client) - Method in class io.github.marcopaglio.booking.presenter.served.ServedBookingPresenter
Removes an existing client and all his reservations from the repository and notifies the view about the changes.
deleteReservation(Reservation) - Method in interface io.github.marcopaglio.booking.presenter.BookingPresenter
Removes an existing reservation from the repository and notifies the view(s) about the changes.
deleteReservation(Reservation) - Method in class io.github.marcopaglio.booking.presenter.served.ServedBookingPresenter
Removes an existing reservation from the repository and notifies the view about the changes.
doInTransaction(ClientReservationTransactionCode<R>) - Method in class io.github.marcopaglio.booking.transaction.manager.mongo.TransactionMongoManager
Prepares to execution of code that involves both ClientRepository's and ReservationRepository's methods on MongoDB in a single transaction.
doInTransaction(ClientReservationTransactionCode<R>) - Method in class io.github.marcopaglio.booking.transaction.manager.postgres.TransactionPostgresManager
Prepares to execution of code that involves both ClientRepository's and ReservationRepository's methods on PostgreSQL in a single transaction.
doInTransaction(ClientReservationTransactionCode<R>) - Method in class io.github.marcopaglio.booking.transaction.manager.TransactionManager
Prepares to execution of code that involves both ClientRepository's and ReservationRepository's methods in a single transaction.
doInTransaction(ClientTransactionCode<R>) - Method in class io.github.marcopaglio.booking.transaction.manager.mongo.TransactionMongoManager
Prepares to execution of code that involves the ClientRepository's method(s) on MongoDB in a single transaction.
doInTransaction(ClientTransactionCode<R>) - Method in class io.github.marcopaglio.booking.transaction.manager.postgres.TransactionPostgresManager
Prepares to execution of code that involves the ClientRepository's method(s) on PostgreSQL in a single transaction.
doInTransaction(ClientTransactionCode<R>) - Method in class io.github.marcopaglio.booking.transaction.manager.TransactionManager
Prepares to execution of code that involves the ClientRepository's method(s) in a single transaction.
doInTransaction(ReservationTransactionCode<R>) - Method in class io.github.marcopaglio.booking.transaction.manager.mongo.TransactionMongoManager
Prepares to execution of code that involves the ReservationRepository's method(s) on MongoDB in a single transaction.
doInTransaction(ReservationTransactionCode<R>) - Method in class io.github.marcopaglio.booking.transaction.manager.postgres.TransactionPostgresManager
Prepares to execution of code that involves the ReservationRepository's method(s) on PostgreSQL in a single transaction.
doInTransaction(ReservationTransactionCode<R>) - Method in class io.github.marcopaglio.booking.transaction.manager.TransactionManager
Prepares to execution of code that involves the ReservationRepository's method(s) in a single transaction.

E

equals(Object) - Method in class io.github.marcopaglio.booking.model.BaseEntity
Enforces overriding in entity classes based on equality.
equals(Object) - Method in class io.github.marcopaglio.booking.model.Client
Overridden method for indicating whether some other client object is "equal to" this one.
equals(Object) - Method in class io.github.marcopaglio.booking.model.Reservation
Overridden method for indicating whether some other reservation object is "equal to" this one.
executeInTransaction(ClientReservationTransactionCode<R>, TransactionHandler<?>, ClientRepository, ReservationRepository) - Method in class io.github.marcopaglio.booking.transaction.manager.TransactionManager
Executes code that involves both ClientRepository's and ReservationRepository's methods in a single transaction managed by a TransactionHandler.
executeInTransaction(ClientTransactionCode<R>, TransactionHandler<?>, ClientRepository) - Method in class io.github.marcopaglio.booking.transaction.manager.TransactionManager
Executes code that involves the ClientRepository's method(s) in a single transaction managed by a TransactionHandler.
executeInTransaction(ReservationTransactionCode<R>, TransactionHandler<?>, ReservationRepository) - Method in class io.github.marcopaglio.booking.transaction.manager.TransactionManager
Executes code that involves the ReservationRepository's method(s) in a single transaction managed by a TransactionHandler.

F

findAll() - Method in interface io.github.marcopaglio.booking.repository.ClientRepository
Retrieves all the clients from the database in a list.
findAll() - Method in class io.github.marcopaglio.booking.repository.mongo.ClientMongoRepository
Retrieves all the clients from the MongoDB database in a list.
findAll() - Method in class io.github.marcopaglio.booking.repository.mongo.ReservationMongoRepository
Retrieves all the reservations from the database in a list.
findAll() - Method in class io.github.marcopaglio.booking.repository.postgres.ClientPostgresRepository
Retrieves all the clients from the PostgreSQL database in a list.
findAll() - Method in class io.github.marcopaglio.booking.repository.postgres.ReservationPostgresRepository
Retrieves all the reservations from the PostgreSQL database in a list.
findAll() - Method in interface io.github.marcopaglio.booking.repository.ReservationRepository
Retrieves all the reservations from the database in a list.
findAllClients() - Method in interface io.github.marcopaglio.booking.service.BookingService
Retrieves all the clients saved in the database.
findAllClients() - Method in class io.github.marcopaglio.booking.service.transactional.TransactionalBookingService
Retrieves all the clients saved in the database within a transaction.
findAllReservations() - Method in interface io.github.marcopaglio.booking.service.BookingService
Retrieves all the reservations saved in the database.
findAllReservations() - Method in class io.github.marcopaglio.booking.service.transactional.TransactionalBookingService
Retrieves all the reservations saved in the database within a transaction.
findByClient(UUID) - Method in class io.github.marcopaglio.booking.repository.mongo.ReservationMongoRepository
Retrieves all the reservations associated with the specified client's identifier from the MongoDB database in a list.
findByClient(UUID) - Method in class io.github.marcopaglio.booking.repository.postgres.ReservationPostgresRepository
Retrieves all the reservations associated with the specified client's identifier from the PostgreSQL database in a list.
findByClient(UUID) - Method in interface io.github.marcopaglio.booking.repository.ReservationRepository
Retrieves all the reservations associated with the specified client's identifier from the database in a list.
findByDate(LocalDate) - Method in class io.github.marcopaglio.booking.repository.mongo.ReservationMongoRepository
Retrieves the unique reservation of the specified date from the MongoDB database, if it exists.
findByDate(LocalDate) - Method in class io.github.marcopaglio.booking.repository.postgres.ReservationPostgresRepository
Retrieves the unique reservation of the specified date from the PostgreSQL database, if it exists.
findByDate(LocalDate) - Method in interface io.github.marcopaglio.booking.repository.ReservationRepository
Retrieves the unique reservation of the specified date from the database, if it exists.
findById(UUID) - Method in interface io.github.marcopaglio.booking.repository.ClientRepository
Retrieves the unique client with the specified identifier from the database, if it exists.
findById(UUID) - Method in class io.github.marcopaglio.booking.repository.mongo.ClientMongoRepository
Retrieves the unique client with the specified identifier from the MongoDB database, if it exists.
findById(UUID) - Method in class io.github.marcopaglio.booking.repository.mongo.ReservationMongoRepository
Retrieves the unique reservation with the specified identifier from the MongoDB database, if it exists.
findById(UUID) - Method in class io.github.marcopaglio.booking.repository.postgres.ClientPostgresRepository
Retrieves the unique client with the specified identifier from the PostgreSQL database, if it exists.
findById(UUID) - Method in class io.github.marcopaglio.booking.repository.postgres.ReservationPostgresRepository
Retrieves the unique reservation with the specified identifier from the PostgreSQL database, if it exists.
findById(UUID) - Method in interface io.github.marcopaglio.booking.repository.ReservationRepository
Retrieves the unique reservation with the specified identifier from the database, if it exists.
findByName(String, String) - Method in interface io.github.marcopaglio.booking.repository.ClientRepository
Retrieves the unique client with the specified name and surname from the database, if it exists.
findByName(String, String) - Method in class io.github.marcopaglio.booking.repository.mongo.ClientMongoRepository
Retrieves the unique client with the specified name and surname from the MongoDB database, if it exists.
findByName(String, String) - Method in class io.github.marcopaglio.booking.repository.postgres.ClientPostgresRepository
Retrieves the unique client with the specified name and surname from the PostgreSQL database, if it exists.
findClient(UUID) - Method in interface io.github.marcopaglio.booking.service.BookingService
Retrieves the client with the specified id from the database.
findClient(UUID) - Method in class io.github.marcopaglio.booking.service.transactional.TransactionalBookingService
Retrieves the client with the specified id from the database within a transaction.
findClientNamed(String, String) - Method in interface io.github.marcopaglio.booking.service.BookingService
Retrieves the client with specified name and surname from the database.
findClientNamed(String, String) - Method in class io.github.marcopaglio.booking.service.transactional.TransactionalBookingService
Retrieves the client with specified name and surname from the database within a transaction.
findReservation(UUID) - Method in interface io.github.marcopaglio.booking.service.BookingService
Retrieves the reservation with the specified id from the database.
findReservation(UUID) - Method in class io.github.marcopaglio.booking.service.transactional.TransactionalBookingService
Retrieves the reservation with the specified id from the database within a transaction.
findReservationOn(LocalDate) - Method in interface io.github.marcopaglio.booking.service.BookingService
Retrieves the reservation of the specified date from the database.
findReservationOn(LocalDate) - Method in class io.github.marcopaglio.booking.service.transactional.TransactionalBookingService
Retrieves the reservation of the specified date from the database within a transaction.
FIRSTNAME_DB - Static variable in class io.github.marcopaglio.booking.model.Client
Field name used in a database to access the firstName attribute.

G

Generated - Annotation Interface in io.github.marcopaglio.booking.annotation
The Generated annotation is used to mark source code that has been generated.
getClientId() - Method in class io.github.marcopaglio.booking.model.Reservation
Retrieves the identifier of the associated client of the reservation.
getCollection() - Method in class io.github.marcopaglio.booking.repository.mongo.MongoRepository
Retrieves the collection of entities of type T used by the repository layer.
getDate() - Method in class io.github.marcopaglio.booking.model.Reservation
Retrieves the date of the reservation.
getFirstName() - Method in class io.github.marcopaglio.booking.model.Client
Retrieves the name of the client.
getHandler() - Method in class io.github.marcopaglio.booking.transaction.handler.TransactionHandler
Retrieves the handler of type T used for using transactions.
getId() - Method in class io.github.marcopaglio.booking.model.BaseEntity
Retrieves the identifier of the entity.
getLastName() - Method in class io.github.marcopaglio.booking.model.Client
Retrieves the surname of the client.

H

handler - Variable in class io.github.marcopaglio.booking.transaction.handler.TransactionHandler
The handler for starting, committing and aborting transactions.
hashCode() - Method in class io.github.marcopaglio.booking.model.BaseEntity
Enforces overriding in entity classes based on equality.
hashCode() - Method in class io.github.marcopaglio.booking.model.Client
Overridden method for returning a hash code value for the client object.
hashCode() - Method in class io.github.marcopaglio.booking.model.Reservation
Overridden method for returning a hash code value for the reservation object.

I

ID_MONGODB - Static variable in class io.github.marcopaglio.booking.model.BaseEntity
Field name used in a MongoDB database to access the id attribute.
ID_POSTGRESQL - Static variable in class io.github.marcopaglio.booking.model.BaseEntity
Field name used in a PostgreSQL database to access the id attribute.
insertNewClient(Client) - Method in interface io.github.marcopaglio.booking.service.BookingService
Adds a new client in the database.
insertNewClient(Client) - Method in class io.github.marcopaglio.booking.service.transactional.TransactionalBookingService
Adds a new client in the database within a transaction.
insertNewReservation(Reservation) - Method in interface io.github.marcopaglio.booking.service.BookingService
Adds a new reservation in the database.
insertNewReservation(Reservation) - Method in class io.github.marcopaglio.booking.service.transactional.TransactionalBookingService
Adds a new reservation in the database within a transaction.
InstanceAlreadyExistsException - Exception in io.github.marcopaglio.booking.exception
Thrown when you try to create or insert an already existing entity in the repository.
InstanceAlreadyExistsException() - Constructor for exception io.github.marcopaglio.booking.exception.InstanceAlreadyExistsException
Default constructor.
InstanceAlreadyExistsException(String) - Constructor for exception io.github.marcopaglio.booking.exception.InstanceAlreadyExistsException
Constructs a InstanceAlreadyExistsException with the specified detail message.
InstanceAlreadyExistsException(String, Throwable) - Constructor for exception io.github.marcopaglio.booking.exception.InstanceAlreadyExistsException
Constructs a InstanceAlreadyExistsException with the specified detail message and the cause.
InstanceNotFoundException - Exception in io.github.marcopaglio.booking.exception
Thrown when you try to update or remove an entity that does not exist in the repository.
InstanceNotFoundException() - Constructor for exception io.github.marcopaglio.booking.exception.InstanceNotFoundException
Default constructor.
InstanceNotFoundException(String) - Constructor for exception io.github.marcopaglio.booking.exception.InstanceNotFoundException
Constructs a InstanceNotFoundException with the specified detail message.
InstanceNotFoundException(String, Throwable) - Constructor for exception io.github.marcopaglio.booking.exception.InstanceNotFoundException
Constructs a InstanceNotFoundException with the specified detail message and the cause.
io.github.marcopaglio.booking.annotation - package io.github.marcopaglio.booking.annotation
Provides some useful custom annotations for marking methods.
io.github.marcopaglio.booking.app.swing - package io.github.marcopaglio.booking.app.swing
Contains main classes for running BookingApp with different databases.
io.github.marcopaglio.booking.exception - package io.github.marcopaglio.booking.exception
Provides some meaningful custom exceptions for using by methods at any level.
io.github.marcopaglio.booking.model - package io.github.marcopaglio.booking.model
Contains entities' models for the booking application.
io.github.marcopaglio.booking.presenter - package io.github.marcopaglio.booking.presenter
Provides interfaces for facing the presenter for the booking application.
io.github.marcopaglio.booking.presenter.served - package io.github.marcopaglio.booking.presenter.served
Contains implementations of the presenter for the booking application using the service layer.
io.github.marcopaglio.booking.repository - package io.github.marcopaglio.booking.repository
Provides interfaces for facing database level of any entity.
io.github.marcopaglio.booking.repository.factory - package io.github.marcopaglio.booking.repository.factory
Provides factories of repositories for entities used in the booking application.
io.github.marcopaglio.booking.repository.mongo - package io.github.marcopaglio.booking.repository.mongo
Contains implementations for using the repository layer through MongoDB for entities of the booking application.
io.github.marcopaglio.booking.repository.postgres - package io.github.marcopaglio.booking.repository.postgres
Contains implementations for using the repository layer through PostegreSQL for entities of the booking application.
io.github.marcopaglio.booking.service - package io.github.marcopaglio.booking.service
Provides interfaces for facing the service layer of the booking application.
io.github.marcopaglio.booking.service.transactional - package io.github.marcopaglio.booking.service.transactional
Contains transactional implementations of the service layer for the booking application.
io.github.marcopaglio.booking.transaction.code - package io.github.marcopaglio.booking.transaction.code
Provides interfaces for executing code within a transaction.
io.github.marcopaglio.booking.transaction.handler - package io.github.marcopaglio.booking.transaction.handler
Provides facades for using transactions in the booking application.
io.github.marcopaglio.booking.transaction.handler.factory - package io.github.marcopaglio.booking.transaction.handler.factory
Provides factories of transaction handlers used in the booking application.
io.github.marcopaglio.booking.transaction.handler.mongo - package io.github.marcopaglio.booking.transaction.handler.mongo
Contains implementations for using transactions through MongoDB in the booking application.
io.github.marcopaglio.booking.transaction.handler.postgres - package io.github.marcopaglio.booking.transaction.handler.postgres
Contains implementations for using transactions through PostgreSQL in the booking application.
io.github.marcopaglio.booking.transaction.manager - package io.github.marcopaglio.booking.transaction.manager
Provides facades for managing transactions in the booking application.
io.github.marcopaglio.booking.transaction.manager.mongo - package io.github.marcopaglio.booking.transaction.manager.mongo
Contains implementations for managing transactions in MongoDB in the booking application.
io.github.marcopaglio.booking.transaction.manager.postgres - package io.github.marcopaglio.booking.transaction.manager.postgres
Contains implementations for managing transactions in PostgreSQL in the booking application.
io.github.marcopaglio.booking.validator - package io.github.marcopaglio.booking.validator
Provides interfaces for facing to validators of entities for the booking application.
io.github.marcopaglio.booking.validator.restricted - package io.github.marcopaglio.booking.validator.restricted
Defines some rules to check for creating entity objects for the booking application.
io.github.marcopaglio.booking.view - package io.github.marcopaglio.booking.view
Provides the interface of a view of the user interface for the booking application.
io.github.marcopaglio.booking.view.swing - package io.github.marcopaglio.booking.view.swing
Contains implementations of the view for the booking application using Swing.

L

LASTNAME_DB - Static variable in class io.github.marcopaglio.booking.model.Client
Field name used in a database to access the lastName attribute.
LOGGER - Static variable in class io.github.marcopaglio.booking.transaction.manager.TransactionManager
Creates meaningful logs on behalf of the class.

M

main(String[]) - Static method in class io.github.marcopaglio.booking.app.swing.BookingSwingApp
Main method using Picocli framework for managing arguments.
MongoRepository<T> - Class in io.github.marcopaglio.booking.repository.mongo
Facade of repository layer for using with MongoDB database.
MongoRepository(MongoCollection<T>, ClientSession) - Constructor for class io.github.marcopaglio.booking.repository.mongo.MongoRepository
Sets the collection of entities of type T and the session used by the repository layer.

N

NotNullConstraintViolationException - Exception in io.github.marcopaglio.booking.exception
Thrown when you try to insert an entity that violates not-null constraints in the repository.
NotNullConstraintViolationException() - Constructor for exception io.github.marcopaglio.booking.exception.NotNullConstraintViolationException
Default constructor.
NotNullConstraintViolationException(String) - Constructor for exception io.github.marcopaglio.booking.exception.NotNullConstraintViolationException
Constructs an NotNullConstraintViolationException with the specified detail message.
NotNullConstraintViolationException(String, Throwable) - Constructor for exception io.github.marcopaglio.booking.exception.NotNullConstraintViolationException
Constructs a NotNullConstraintViolationException with the specified detail message and the cause.

R

removeClient(UUID) - Method in interface io.github.marcopaglio.booking.service.BookingService
Deletes the client with the specified id and all his reservation from the database.
removeClient(UUID) - Method in class io.github.marcopaglio.booking.service.transactional.TransactionalBookingService
Deletes the client with the specified id and all his reservation from the database within a transaction.
removeClientNamed(String, String) - Method in interface io.github.marcopaglio.booking.service.BookingService
Deletes the client with specified name and surname and all his reservation from the database.
removeClientNamed(String, String) - Method in class io.github.marcopaglio.booking.service.transactional.TransactionalBookingService
Deletes the client with specified name and surname and all his reservation from the database within a transaction.
removeReservation(UUID) - Method in interface io.github.marcopaglio.booking.service.BookingService
Deletes the reservation with the specified id from the database.
removeReservation(UUID) - Method in class io.github.marcopaglio.booking.service.transactional.TransactionalBookingService
Deletes the reservation with the specified id from the database within a transaction.
removeReservationOn(LocalDate) - Method in interface io.github.marcopaglio.booking.service.BookingService
Deletes the reservation on the specified date from the database.
removeReservationOn(LocalDate) - Method in class io.github.marcopaglio.booking.service.transactional.TransactionalBookingService
Deletes the reservation of the specified date from the database within a transaction.
renameClient(Client, String, String) - Method in interface io.github.marcopaglio.booking.presenter.BookingPresenter
Modifies names of an existing client and notifies the view(s) about the changes.
renameClient(Client, String, String) - Method in class io.github.marcopaglio.booking.presenter.served.ServedBookingPresenter
Validates and modifies names of an existing client and notifies the view about the changes.
renameClient(UUID, String, String) - Method in interface io.github.marcopaglio.booking.service.BookingService
Changes name and surname of the client with the specified id in the database.
renameClient(UUID, String, String) - Method in class io.github.marcopaglio.booking.service.transactional.TransactionalBookingService
Changes name and surname of the client with the specified id in the database within a transaction.
rescheduleReservation(Reservation, String) - Method in interface io.github.marcopaglio.booking.presenter.BookingPresenter
Modifies the date of an existing reservation and notifies the view(s) about the changes.
rescheduleReservation(Reservation, String) - Method in class io.github.marcopaglio.booking.presenter.served.ServedBookingPresenter
Modifies the date of an existing reservation and notifies the view about the changes.
rescheduleReservation(UUID, LocalDate) - Method in interface io.github.marcopaglio.booking.service.BookingService
Changes date of the reservation with the specified id in the database.
rescheduleReservation(UUID, LocalDate) - Method in class io.github.marcopaglio.booking.service.transactional.TransactionalBookingService
Changes date of the reservation with the specified id in the database within a transaction.
Reservation - Class in io.github.marcopaglio.booking.model
This entity represents the reservation's model of the booking application.
Reservation() - Constructor for class io.github.marcopaglio.booking.model.Reservation
Empty constructor needed for database purposes.
Reservation(UUID, LocalDate) - Constructor for class io.github.marcopaglio.booking.model.Reservation
Constructs a reservation for the booking application from the associated client's identifier and a date.
RESERVATION_TABLE_DB - Static variable in class io.github.marcopaglio.booking.model.Reservation
Table name used in a database to access Reservation entities.
reservationAdded(Reservation) - Method in interface io.github.marcopaglio.booking.view.BookingView
Displays the reservation just inserted into the repository on the user interface.
reservationAdded(Reservation) - Method in class io.github.marcopaglio.booking.view.swing.BookingSwingView
Displays the reservation just inserted into the repository on the user interface through Swing.
ReservationMongoRepository - Class in io.github.marcopaglio.booking.repository.mongo
Implementation of repository layer through MongoDB for Reservation entities of the booking application.
ReservationMongoRepository(MongoClient, ClientSession, String) - Constructor for class io.github.marcopaglio.booking.repository.mongo.ReservationMongoRepository
Constructs a repository layer for Reservation entities using MongoDB database.
ReservationPostgresRepository - Class in io.github.marcopaglio.booking.repository.postgres
Implementation of repository layer through PostgreSQL for Reservation entities of the booking application.
ReservationPostgresRepository(EntityManager) - Constructor for class io.github.marcopaglio.booking.repository.postgres.ReservationPostgresRepository
Constructs a repository layer for Reservation entities using PostgreSQL database.
reservationRemoved(Reservation) - Method in interface io.github.marcopaglio.booking.view.BookingView
Makes the just deleted reservation disappear from the user interface.
reservationRemoved(Reservation) - Method in class io.github.marcopaglio.booking.view.swing.BookingSwingView
Makes the just deleted reservation disappear from the user interface through Swing.
ReservationRepository - Interface in io.github.marcopaglio.booking.repository
Facade for repository layer for Reservation entities.
reservationRepositoryFactory - Variable in class io.github.marcopaglio.booking.transaction.manager.TransactionManager
Used for creation of ReservationPostgresRepository instances.
ReservationRepositoryFactory - Class in io.github.marcopaglio.booking.repository.factory
A factory of repositories for Reservation entities.
ReservationRepositoryFactory() - Constructor for class io.github.marcopaglio.booking.repository.factory.ReservationRepositoryFactory
Empty constructor.
reservationRescheduled(Reservation, Reservation) - Method in interface io.github.marcopaglio.booking.view.BookingView
Displays the changes of the reservation just rescheduled on the user interface.
reservationRescheduled(Reservation, Reservation) - Method in class io.github.marcopaglio.booking.view.swing.BookingSwingView
Displays the changes of the reservation just rescheduled on the user interface through Swing.
ReservationTransactionCode<R> - Interface in io.github.marcopaglio.booking.transaction.code
This interface provides code that involves the ReservationRepository's method(s).
ReservationValidator - Interface in io.github.marcopaglio.booking.validator
Facade of validator for reservation entities.
RestrictedClientValidator - Class in io.github.marcopaglio.booking.validator.restricted
An implementation of validator for client entities that verifies if parameters are not null or empty string neither they contain non-alphabetic characters, and fixes them if possible.
RestrictedClientValidator() - Constructor for class io.github.marcopaglio.booking.validator.restricted.RestrictedClientValidator
 
RestrictedReservationValidator - Class in io.github.marcopaglio.booking.validator.restricted
An implementation of validator for reservation entities that verifies if parameters are not null neither date string contains non-valid characters, or are in a non-valid format or out of range.
RestrictedReservationValidator() - Constructor for class io.github.marcopaglio.booking.validator.restricted.RestrictedReservationValidator
 
rollbackTransaction() - Method in class io.github.marcopaglio.booking.transaction.handler.mongo.TransactionMongoHandler
Rolls back changes of the active MongoDB transaction via the session.
rollbackTransaction() - Method in class io.github.marcopaglio.booking.transaction.handler.postgres.TransactionPostgresHandler
Rolls back changes of the active PostgreSQL transaction via the entity manager.
rollbackTransaction() - Method in class io.github.marcopaglio.booking.transaction.handler.TransactionHandler
Rolls back changes of the active transaction.

S

save(Client) - Method in interface io.github.marcopaglio.booking.repository.ClientRepository
Inserts a new Client in the database or saves changes of an existing one.
save(Client) - Method in class io.github.marcopaglio.booking.repository.mongo.ClientMongoRepository
Inserts a new Client in the MongoDB database or saves changes of an existing one.
save(Client) - Method in class io.github.marcopaglio.booking.repository.postgres.ClientPostgresRepository
Inserts a new Client in the PostgreSQL database or saves changes of an existing one.
save(Reservation) - Method in class io.github.marcopaglio.booking.repository.mongo.ReservationMongoRepository
Insert a new reservation in the MongoDB database or saves changes of an existing one.
save(Reservation) - Method in class io.github.marcopaglio.booking.repository.postgres.ReservationPostgresRepository
Insert a new reservation in the PostgreSQL database or saves changes of an existing one.
save(Reservation) - Method in interface io.github.marcopaglio.booking.repository.ReservationRepository
Insert a new reservation in the database or saves changes of an existing one.
ServedBookingPresenter - Class in io.github.marcopaglio.booking.presenter.served
A concrete implementation of the presenter for the booking application using a single view and delegating operations on repositories to a service layer.
ServedBookingPresenter(BookingView, BookingService, ClientValidator, ReservationValidator) - Constructor for class io.github.marcopaglio.booking.presenter.served.ServedBookingPresenter
Constructs a presenter for the booking application with a view and a service.
session - Variable in class io.github.marcopaglio.booking.repository.mongo.MongoRepository
Session used to communicate with MongoDB database.
setBookingPresenter(BookingPresenter) - Method in class io.github.marcopaglio.booking.view.swing.BookingSwingView
Sets the presenter called to carry out the actions of the controls.
setClientId(UUID) - Method in class io.github.marcopaglio.booking.model.Reservation
Sets the client's identifier of the reservation.
setDate(LocalDate) - Method in class io.github.marcopaglio.booking.model.Reservation
Sets the date of the reservation.
setFirstName(String) - Method in class io.github.marcopaglio.booking.model.Client
Sets the name of the client.
setId(UUID) - Method in class io.github.marcopaglio.booking.model.BaseEntity
Sets the identifier of the entity.
setLastName(String) - Method in class io.github.marcopaglio.booking.model.Client
Sets the surname of the client.
showAllClients(List<Client>) - Method in interface io.github.marcopaglio.booking.view.BookingView
Displays the clients of the given list on the user interface.
showAllClients(List<Client>) - Method in class io.github.marcopaglio.booking.view.swing.BookingSwingView
Displays the clients of the given list on the graphical user interface through Swing.
showAllReservations(List<Reservation>) - Method in interface io.github.marcopaglio.booking.view.BookingView
Displays the reservations of the given list on the user interface.
showAllReservations(List<Reservation>) - Method in class io.github.marcopaglio.booking.view.swing.BookingSwingView
Displays the reservations of the given list on the user interface through Swing.
showFormError(String) - Method in interface io.github.marcopaglio.booking.view.BookingView
Displays an error message that involves input forms.
showFormError(String) - Method in class io.github.marcopaglio.booking.view.swing.BookingSwingView
Displays an error message that involves input forms through Swing.
showOperationError(String) - Method in interface io.github.marcopaglio.booking.view.BookingView
Displays an error message that involves operation results.
showOperationError(String) - Method in class io.github.marcopaglio.booking.view.swing.BookingSwingView
Displays an error message that involves operation results through Swing.
startTransaction() - Method in class io.github.marcopaglio.booking.transaction.handler.mongo.TransactionMongoHandler
Starts a new MongoDB transaction via the session and using options if provided, if one isn't already active.
startTransaction() - Method in class io.github.marcopaglio.booking.transaction.handler.postgres.TransactionPostgresHandler
Starts a new PostgreSQL transaction via the entity manager, if one isn't already active.
startTransaction() - Method in class io.github.marcopaglio.booking.transaction.handler.TransactionHandler
Starts a new transaction, if one isn't already active.

T

toString() - Method in class io.github.marcopaglio.booking.model.BaseEntity
Enforces overriding in entity classes based on descriptiveness.
toString() - Method in class io.github.marcopaglio.booking.model.Client
Overridden method for returning a string representation of the client.
toString() - Method in class io.github.marcopaglio.booking.model.Reservation
Overridden method for returning a string representation of the reservation.
TransactionalBookingService - Class in io.github.marcopaglio.booking.service.transactional
Implements methods for operating on repositories of the booking application using transactions.
TransactionalBookingService(TransactionManager) - Constructor for class io.github.marcopaglio.booking.service.transactional.TransactionalBookingService
Constructs a service for the booking application with a transaction manager.
TransactionException - Exception in io.github.marcopaglio.booking.exception
Thrown when a generic database transaction fails.
TransactionException() - Constructor for exception io.github.marcopaglio.booking.exception.TransactionException
Default constructor.
TransactionException(String) - Constructor for exception io.github.marcopaglio.booking.exception.TransactionException
Constructs a TransactionException with the specified detail message.
TransactionException(String, Throwable) - Constructor for exception io.github.marcopaglio.booking.exception.TransactionException
Constructs a TransactionException with the specified detail message and the cause.
transactionFailureMsg(String) - Method in class io.github.marcopaglio.booking.transaction.manager.TransactionManager
Generates a message for the failure of the transaction.
TransactionHandler<T> - Class in io.github.marcopaglio.booking.transaction.handler
Provides methods for using transactions in the booking application.
TransactionHandler(T) - Constructor for class io.github.marcopaglio.booking.transaction.handler.TransactionHandler
Constructs a handler for using transactions.
transactionHandlerFactory - Variable in class io.github.marcopaglio.booking.transaction.manager.TransactionManager
Used for creation of EntityManager instances.
TransactionHandlerFactory - Class in io.github.marcopaglio.booking.transaction.handler.factory
A factory of transaction handlers.
TransactionHandlerFactory() - Constructor for class io.github.marcopaglio.booking.transaction.handler.factory.TransactionHandlerFactory
Empty constructor.
TransactionManager - Class in io.github.marcopaglio.booking.transaction.manager
Provides methods for managing transactions in the booking application.
TransactionManager(TransactionHandlerFactory, ClientRepositoryFactory, ReservationRepositoryFactory) - Constructor for class io.github.marcopaglio.booking.transaction.manager.TransactionManager
Sets the handler and repository factories used by the service layer.
TransactionMongoHandler - Class in io.github.marcopaglio.booking.transaction.handler.mongo
An implementation of TransactionHandler for using MongoDB transactions via ClientSession.
TransactionMongoHandler(ClientSession, TransactionOptions) - Constructor for class io.github.marcopaglio.booking.transaction.handler.mongo.TransactionMongoHandler
Constructs a handler for MongoDB transactions using the session opened with MongoDB and some custom optional transaction options.
TransactionMongoManager - Class in io.github.marcopaglio.booking.transaction.manager.mongo
An implementation of TransactionManager for managing code executed on MongoDB within transactions.
TransactionMongoManager(MongoClient, String, TransactionHandlerFactory, ClientRepositoryFactory, ReservationRepositoryFactory) - Constructor for class io.github.marcopaglio.booking.transaction.manager.mongo.TransactionMongoManager
Constructs a manager for applying code that uses entity repositories using MongoDB transactions.
TransactionPostgresHandler - Class in io.github.marcopaglio.booking.transaction.handler.postgres
An implementation of TransactionHandler for using PostgreSQL transactions via EntityManager.
TransactionPostgresHandler(EntityManager) - Constructor for class io.github.marcopaglio.booking.transaction.handler.postgres.TransactionPostgresHandler
Constructs a handler for PostgreSQL transactions using an entity manager to interact with the PostgreSQL database.
TransactionPostgresManager - Class in io.github.marcopaglio.booking.transaction.manager.postgres
An implementation of TransactionManager for managing code executed on PostgreSQL within transactions.
TransactionPostgresManager(EntityManagerFactory, TransactionHandlerFactory, ClientRepositoryFactory, ReservationRepositoryFactory) - Constructor for class io.github.marcopaglio.booking.transaction.manager.postgres.TransactionPostgresManager
Constructs a manager for applying code that uses entity repositories using PostgreSQL transactions.
TXN_OPTIONS - Static variable in class io.github.marcopaglio.booking.transaction.manager.mongo.TransactionMongoManager
Options used to configure transactions.

U

UniquenessConstraintViolationException - Exception in io.github.marcopaglio.booking.exception
Thrown when you try to insert an entity that violates uniqueness constraints in the repository.
UniquenessConstraintViolationException() - Constructor for exception io.github.marcopaglio.booking.exception.UniquenessConstraintViolationException
Default constructor.
UniquenessConstraintViolationException(String) - Constructor for exception io.github.marcopaglio.booking.exception.UniquenessConstraintViolationException
Constructs an UniquenessConstraintViolationException with the specified detail message.
UniquenessConstraintViolationException(String, Throwable) - Constructor for exception io.github.marcopaglio.booking.exception.UniquenessConstraintViolationException
Constructs a UniquenessConstraintViolationException with the specified detail message and the cause.
UpdateFailureException - Exception in io.github.marcopaglio.booking.exception
Thrown when you try to update an entity that does not exist in the repository.
UpdateFailureException() - Constructor for exception io.github.marcopaglio.booking.exception.UpdateFailureException
Default constructor.
UpdateFailureException(String) - Constructor for exception io.github.marcopaglio.booking.exception.UpdateFailureException
Constructs a UpdateFailureException with the specified detail message.
UpdateFailureException(String, Throwable) - Constructor for exception io.github.marcopaglio.booking.exception.UpdateFailureException
Constructs a UpdateFailureException with the specified detail message and the cause.

V

validateClientId(UUID) - Method in interface io.github.marcopaglio.booking.validator.ReservationValidator
Checks if clientId is valid as identifier of associated client for a reservation entity.
validateClientId(UUID) - Method in class io.github.marcopaglio.booking.validator.restricted.RestrictedReservationValidator
Checks if clientId is a not null identifier for the creation of a reservation entity, and returns it.
validateDate(String) - Method in interface io.github.marcopaglio.booking.validator.ReservationValidator
Checks if stringDate is valid as date for a reservation entity.
validateDate(String) - Method in class io.github.marcopaglio.booking.validator.restricted.RestrictedReservationValidator
Checks if stringDate is valid as date for a reservation entity, and returns it.
validateFirstName(String) - Method in interface io.github.marcopaglio.booking.validator.ClientValidator
Checks if firstName is valid as name for a client entity.
validateFirstName(String) - Method in class io.github.marcopaglio.booking.validator.restricted.RestrictedClientValidator
Checks if firstName is valid as name for a client entity, and returns a fixed and valid alternative for it.
validateLastName(String) - Method in interface io.github.marcopaglio.booking.validator.ClientValidator
Checks if lastName is valid as surname for a client entity.
validateLastName(String) - Method in class io.github.marcopaglio.booking.validator.restricted.RestrictedClientValidator
Checks if lastName is valid as surname for a client entity, and returns a fixed and valid alternative for it.
A B C D E F G H I L M N R S T U V 
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form