Index
All Classes and Interfaces|All Packages|Serialized Form
A
- addCapacity(Integer) - Method in class main.domain.models.events.Event
-
Adds capacity to the event's box office.
- AdminRegistering - Class in main.domain.contexts.user
-
Context for registering an admin user.
- AdminRegistering(Users) - Constructor for class main.domain.contexts.user.AdminRegistering
-
Constructor that initializes the repository.
- amount() - Method in class main.domain.models.purchases.PaymentDetails
-
Returns the formatted payment amount as a string.
- asAdmin() - Method in class main.domain.models.users.User
-
Promotes the user to admin.
- attributes() - Method in class main.domain.models.email.Html
-
Sets the attributes of the HTML element.
- author() - Method in class main.domain.models.evaluations.Evaluation
-
Returns the user ID of the author of the evaluation.
- available() - Method in class main.domain.models.events.BoxOffice
-
Returns the number of available tickets.
- AvailableEventsListing - Class in main.domain.contexts.events
-
Context for listing available events starting from today.
- AvailableEventsListing(Events) - Constructor for class main.domain.contexts.events.AvailableEventsListing
-
Constructor with the specified events repository.
- availableFor() - Method in class main.domain.models.events.Ticket
-
Returns the number of persons the ticket is available for.
- availableOn(LocalDate) - Method in class main.infra.json.EventsJson
- availableOn(LocalDate) - Method in class main.infra.virtual.EventsInMemory
- availableOn(LocalDate) - Method in interface main.roles.repositories.Events
-
Lists all events available on a specific date.
- availables() - Method in class main.domain.contexts.events.AvailableEventsListing
-
Retrieves the list of available events starting from the set date.
B
- beingToday(LocalDate) - Method in class main.domain.contexts.events.AvailableEventsListing
-
Sets the current date for the context.
- body() - Method in class main.domain.models.email.EmailDocument
-
Returns the body content of the email as a string.
- boxOffice() - Method in class main.domain.models.events.Event
-
Returns the box office details of the event.
- BoxOffice - Class in main.domain.models.events
-
Represents a box office for selling and refunding event tickets.
- BoxOffice(Ticket) - Constructor for class main.domain.models.events.BoxOffice
-
Constructs a new BoxOffice with the specified ticket sample and default capacity and sales.
- br() - Static method in class main.domain.models.email.Html
-
Creates an empty HTML line break element.
- buy(Integer) - Method in class main.domain.contexts.purchases.TicketBuying
-
Executes the ticket purchase.
- buyer - Variable in class main.domain.contexts.purchases.internal.Purchase
- buyTicket(Ticket) - Method in class main.domain.models.users.User
-
Buys a ticket and adds it to the user's bought tickets.
- by(User) - Method in class main.domain.contexts.events.EventRegistering
-
Sets the author of the event.
- by(UserId) - Method in class main.domain.contexts.events.EventEvaluation
-
Sets the author ID for the evaluation.
- by(UserId) - Method in class main.domain.contexts.purchases.TicketBuying
-
Sets the customer who is buying the tickets.
- byId(EventId) - Method in class main.infra.json.EventsJson
- byId(EventId) - Method in class main.infra.virtual.EventsInMemory
- byId(EventId) - Method in interface main.roles.repositories.Events
-
Retrieves an event by its ID.
- byId(UserId) - Method in class main.infra.json.UsersJson
- byId(UserId) - Method in class main.infra.virtual.UsersInMemory
- byId(UserId) - Method in interface main.roles.repositories.Users
-
Retrieves an user by their ID.
C
- CantRegisterPastEvent - Exception Class in main.domain.exceptions
-
Exception thrown when attempting to register an event scheduled for a past date.
- CantRegisterPastEvent() - Constructor for exception class main.domain.exceptions.CantRegisterPastEvent
-
Constructs a new CantRegisterPastEvent with no detail message.
- capacity() - Method in class main.domain.models.events.BoxOffice
-
Returns the capacity of the event.
- changing() - Method in class main.domain.contexts.user.UserEditing
-
Prepares to change the specified user.
- comment() - Method in class main.domain.models.evaluations.Evaluation
-
Returns the evaluation comment.
- content(String) - Method in class main.domain.models.email.Html
-
Sets the content of the HTML element.
- Context - Interface in main.roles
-
Marker interface for contexts within the application, aligning with DDD and Clean Architecture principles.
- copy() - Method in class main.domain.models.events.Ticket
-
Creates a copy of the current ticket.
- copy() - Method in class main.domain.models.users.User
- cpf() - Method in class main.domain.models.users.Person
-
Returns the CPF of the person.
- cpf(String) - Method in class main.domain.contexts.user.forms.PersonalInformation
-
Sets the CPF for the personal information.
- cpf(String) - Method in class main.domain.contexts.user.UserEditing.EditingWithTarget
-
Updates the user's CPF.
- cpnj() - Method in class main.domain.models.purchases.EventManagementBusiness
-
Returns the CNPJ of the Event Management Business.
D
- date() - Method in class main.domain.models.events.Poster
-
Returns the schedule date of the event.
- description() - Method in class main.domain.models.events.Poster
-
Returns the description of the event.
- description(String) - Method in class main.domain.contexts.events.forms.EventInformation
-
Sets the description of the event.
- DisabledEmailService - Class in main.infra
-
A mock implementation of the EmailService interface used for testing purposes.
- DisabledEmailService() - Constructor for class main.infra.DisabledEmailService
E
- edit() - Method in class main.domain.contexts.user.UserEditing.EditingWithTarget
-
Commits the changes to the user.
- EditingWithTarget(Users, User) - Constructor for class main.domain.contexts.user.UserEditing.EditingWithTarget
-
Constructs an EditingWithTarget instance with the specified repository and user.
- email() - Method in class main.domain.models.purchases.EventManagementBusiness
-
Returns the email of the Event Management Business.
- email() - Method in class main.domain.models.purchases.Participant
-
Returns the email of the participant.
- email() - Method in class main.domain.models.users.Login
-
Returns the email address of the user.
- email() - Method in class main.infra.DisabledEmailService
-
Returns the captured email document.
- email(String) - Method in class main.domain.contexts.user.forms.LoginInformation
-
Sets the email for the login information.
- email(String) - Method in class main.domain.contexts.user.UserEditing.EditingWithTarget
-
Updates the user's email.
- EmailAddress - Class in main.domain.models.users.values
- EmailAddress(String) - Constructor for class main.domain.models.users.values.EmailAddress
- EmailAlreadyExists - Exception Class in main.domain.exceptions
-
Exception thrown when attempting to register an email that already exists in the system.
- EmailAlreadyExists() - Constructor for exception class main.domain.exceptions.EmailAlreadyExists
-
Constructs a new EmailAlreadyExists exception with no detail message.
- EmailDocument - Class in main.domain.models.email
-
Represents an email document, including metadata and the body content.
- EmailDocument(EmailMetadata, Html) - Constructor for class main.domain.models.email.EmailDocument
-
Constructs a new EmailDocument with the specified metadata and body.
- EmailMetadata - Class in main.domain.models.email
-
Represents the metadata of an email, including sender, recipient, and subject.
- EmailMetadata(EmailAddress, EmailAddress, String) - Constructor for class main.domain.models.email.EmailMetadata
-
Constructs a new EmailMetadata with the specified sender, recipient, and subject.
- EmailService - Interface in main.roles
-
Interface for sending emails within the application.
- empty() - Method in class main.domain.models.email.Html
-
Creates an empty HTML element.
- Entity<Id> - Interface in main.roles
-
Represents a generic entity within the domain.
- EntityId - Class in main.roles
-
Represents the unique identifier for an entity within the domain.
- EntityId() - Constructor for class main.roles.EntityId
-
Constructs a new EntityId with a randomly generated UUID.
- EntityId(UUID) - Constructor for class main.roles.EntityId
-
Constructs a new EntityId with the specified UUID.
- equals(Object) - Method in class main.domain.models.users.Login
- equals(Object) - Method in class main.domain.models.users.Person
-
Checks if the current object is equal to another object.
- equals(Object) - Method in class main.domain.models.users.User
- equals(Object) - Method in class main.domain.models.users.values.EmailAddress
- equals(Object) - Method in class main.domain.models.users.values.Password
- equals(Object) - Method in class main.roles.EntityId
- equals(String) - Method in class main.domain.models.users.values.EmailAddress
- equals(String) - Method in class main.domain.models.users.values.Password
- equals(Login) - Method in class main.domain.models.users.Login
- equals(Person) - Method in class main.domain.models.users.Person
-
Checks if the current person is equal to another person.
- equals(User) - Method in class main.domain.models.users.User
- equals(EmailAddress) - Method in class main.domain.models.users.values.EmailAddress
- evaluateWith(String) - Method in class main.domain.contexts.events.EventEvaluation
-
Submits the evaluation with the given comment.
- Evaluation - Class in main.domain.models.evaluations
-
Represents an evaluation of an event, including the event ID, author ID, and comment.
- Evaluation(EvaluationId, EventId, UserId, String) - Constructor for class main.domain.models.evaluations.Evaluation
-
Constructs a new Evaluation with the specified evaluation ID, event ID, author ID, and comment.
- Evaluation(EventId, UserId, String) - Constructor for class main.domain.models.evaluations.Evaluation
-
Constructs a new Evaluation with the specified event ID, author ID, and comment.
- EvaluationId - Class in main.domain.models.evaluations
- EvaluationId() - Constructor for class main.domain.models.evaluations.EvaluationId
- evaluations() - Method in class main.domain.models.events.Event
-
Returns the list of evaluations for the event.
- event - Variable in class main.domain.contexts.purchases.internal.Purchase
- event() - Method in class main.domain.models.evaluations.Evaluation
-
Returns the event ID being evaluated.
- event() - Method in class main.domain.models.events.Ticket
-
Returns the event ID associated with the ticket.
- event(String, LocalDate) - Method in class main.infra.json.EventsJson
- event(String, LocalDate) - Method in class main.infra.virtual.EventsInMemory
- event(String, LocalDate) - Method in interface main.roles.repositories.Events
-
Retrieves an event by its title and date.
- Event - Class in main.domain.models.events
-
Represents an event with its poster, box office details, and evaluations.
- Event(Poster) - Constructor for class main.domain.models.events.Event
-
Constructs a new Event with the specified poster and a default ticket price.
- Event(Poster, Double) - Constructor for class main.domain.models.events.Event
-
Constructs a new Event with the specified poster and ticket price.
- EventAlreadyRegistered - Exception Class in main.domain.exceptions
-
Exception thrown when attempting to register an event that is already registered.
- EventAlreadyRegistered() - Constructor for exception class main.domain.exceptions.EventAlreadyRegistered
-
Constructs a new EventAlreadyRegistered exception with no detail message.
- EventEvaluation - Class in main.domain.contexts.events
-
Context for evaluating an event.
- EventEvaluation(Events, LocalDate) - Constructor for class main.domain.contexts.events.EventEvaluation
-
Constructor with the specified events repository.
- EventId - Class in main.domain.models.events
- EventId() - Constructor for class main.domain.models.events.EventId
- EventInformation - Class in main.domain.contexts.events.forms
-
Represents the information required for an event, including the title, description, and schedule.
- EventInformation() - Constructor for class main.domain.contexts.events.forms.EventInformation
- EventManagementBusiness - Class in main.domain.models.purchases
-
Represents constant information for the Event Management Business, including email, CNPJ, and company name.
- EventManagementBusiness() - Constructor for class main.domain.models.purchases.EventManagementBusiness
- EventRegistering - Class in main.domain.contexts.events
-
Context for registering an event.
- EventRegistering(Events) - Constructor for class main.domain.contexts.events.EventRegistering
-
Constructor with the specified events repository.
- Events - Interface in main.roles.repositories
-
Interface for managing Event entities.
- EventsInMemory - Class in main.infra.virtual
-
In-memory implementation of the Events repository.
- EventsInMemory() - Constructor for class main.infra.virtual.EventsInMemory
-
Constructs a new EventsInMemory with an empty list of events.
- EventsInMemory(List<Event>) - Constructor for class main.infra.virtual.EventsInMemory
-
Constructs a new EventsInMemory with a list of events.
- EventsJson - Class in main.infra.json
-
Implementation of the Events repository using JSON for persistence.
- EventsJson(JsonFile) - Constructor for class main.infra.json.EventsJson
-
Constructor initializing the repository with a file path.
- EventsJson(JsonFile, EventsInMemory) - Constructor for class main.infra.json.EventsJson
-
Constructor initializing the repository with a file and in-memory repository.
H
- has(String, LocalDate) - Method in class main.infra.json.EventsJson
- has(String, LocalDate) - Method in class main.infra.virtual.EventsInMemory
- has(String, LocalDate) - Method in interface main.roles.repositories.Events
-
Checks if an event exists by its title and date.
- has(EventId) - Method in class main.infra.json.EventsJson
- has(EventId) - Method in class main.infra.virtual.EventsInMemory
- has(EventId) - Method in interface main.roles.repositories.Events
-
Checks if an event exists by its ID.
- has(EmailAddress) - Method in class main.infra.json.UsersJson
- has(EmailAddress) - Method in class main.infra.virtual.UsersInMemory
- has(EmailAddress) - Method in interface main.roles.repositories.Users
-
Checks if an user exists by their email.
- hashCode() - Method in class main.domain.models.users.Login
- hashCode() - Method in class main.domain.models.users.Person
-
Returns the hash code of the person.
- hashCode() - Method in class main.domain.models.users.User
- hashCode() - Method in class main.domain.models.users.values.EmailAddress
- hashCode() - Method in class main.domain.models.users.values.Password
- hashCode() - Method in class main.roles.EntityId
- html() - Method in class main.domain.models.purchases.PaymentDetails
-
Returns the HTML representation of the payment method.
- html() - Method in class main.domain.models.purchases.PaymentMethod
-
Returns the HTML representation of the payment method.
- Html - Class in main.domain.models.email
-
Represents an HTML element with tag, content, attributes, and closure information.
I
- id() - Method in class main.domain.models.evaluations.Evaluation
-
Returns the evaluation ID.
- id() - Method in class main.domain.models.events.Event
-
Returns the event ID.
- id() - Method in class main.domain.models.purchases.Transaction
-
Returns the transaction ID.
- id() - Method in class main.domain.models.users.User
-
Returns the user ID.
- id() - Method in interface main.roles.Entity
-
Returns the unique identifier of the entity.
- InexistentUser - Exception Class in main.domain.exceptions
-
Exception thrown when an operation is attempted on a user that does not exist.
- InexistentUser() - Constructor for exception class main.domain.exceptions.InexistentUser
-
Constructs a new InexistentUser exception with no detail message.
- InvalidRefundDueToInactiveEvent - Exception Class in main.domain.exceptions
- InvalidRefundDueToInactiveEvent() - Constructor for exception class main.domain.exceptions.InvalidRefundDueToInactiveEvent
- isActive() - Method in class main.infra.Session
-
Checks if a user is currently logged in.
- isAdmin() - Method in class main.domain.models.users.User
-
Checks if the user is an admin.
- isAvailableFor(LocalDate) - Method in class main.domain.models.events.Event
-
Checks if the event is available on the specified date.
- isOwnerOf(Login) - Method in class main.domain.models.users.User
-
Checks if the user owns the specified login.
- isSoldOut() - Method in class main.domain.models.events.BoxOffice
-
Checks if the event is sold out.
J
- JsonFile - Class in main.infra.json
- JsonFile(String, String) - Constructor for class main.infra.json.JsonFile
L
- list() - Method in class main.domain.contexts.user.ListTickets
-
Retrieves the list of tickets owned by the user.
- list() - Method in class main.infra.json.EventsJson
- list() - Method in class main.infra.json.UsersJson
- list() - Method in class main.infra.virtual.EventsInMemory
- list() - Method in class main.infra.virtual.UsersInMemory
-
Returns a list of all users.
- list() - Method in interface main.roles.repositories.Events
-
Lists all events.
- list() - Method in interface main.roles.repositories.Users
-
Lists all users.
- ListTickets - Class in main.domain.contexts.user
-
Context for listing tickets owned by a user.
- logAs(Login) - Method in class main.domain.contexts.user.UserLogin
-
Logs in the user with the specified email and password.
- loggedAs(User) - Static method in class main.infra.Session
-
Creates a session logged in as the specified user.
- loggedUser() - Method in class main.infra.Session
-
Returns the currently logged-in user.
- login() - Method in class main.domain.models.users.User
-
Returns the login details.
- login(Login) - Method in class main.domain.contexts.user.AdminRegistering
-
Sets the login information for the admin user.
- login(Login) - Method in class main.domain.contexts.user.UserRegistering
-
Sets the login information for the user.
- Login - Class in main.domain.models.users
-
Represents the login information for a user, including email and password.
- Login(String, String) - Constructor for class main.domain.models.users.Login
- Login(EmailAddress, Password) - Constructor for class main.domain.models.users.Login
-
Constructs a new Login with the specified email and password.
- logInAs(User) - Method in class main.infra.Session
-
Logs in as the specified user.
- LoginInformation - Class in main.domain.contexts.user.forms
-
Represents the login information for a user, including email and password.
- LoginInformation() - Constructor for class main.domain.contexts.user.forms.LoginInformation
- logOut() - Method in class main.domain.contexts.user.UserLogin
-
Logs out the current session.
- logOut() - Method in class main.infra.Session
-
Logs out the current user.
M
- main.domain.contexts.events - package main.domain.contexts.events
- main.domain.contexts.events.forms - package main.domain.contexts.events.forms
- main.domain.contexts.purchases - package main.domain.contexts.purchases
- main.domain.contexts.purchases.internal - package main.domain.contexts.purchases.internal
- main.domain.contexts.user - package main.domain.contexts.user
- main.domain.contexts.user.forms - package main.domain.contexts.user.forms
- main.domain.exceptions - package main.domain.exceptions
- main.domain.models.email - package main.domain.models.email
- main.domain.models.evaluations - package main.domain.models.evaluations
- main.domain.models.events - package main.domain.models.events
- main.domain.models.purchases - package main.domain.models.purchases
- main.domain.models.users - package main.domain.models.users
- main.domain.models.users.values - package main.domain.models.users.values
- main.infra - package main.infra
- main.infra.json - package main.infra.json
- main.infra.virtual - package main.infra.virtual
- main.roles - package main.roles
- main.roles.repositories - package main.roles.repositories
- makeOf(Integer) - Method in class main.domain.contexts.purchases.internal.Purchase
-
Makes a purchase of a specified amount of tickets.
- metadata() - Method in class main.domain.models.email.EmailDocument
-
Returns the metadata of the email.
N
- name() - Method in class main.domain.models.purchases.EventManagementBusiness
-
Returns the company name of the Event Management Business.
- name() - Method in class main.domain.models.users.Person
-
Returns the name of the person.
- name(String) - Method in class main.domain.contexts.user.forms.PersonalInformation
-
Sets the name for the personal information.
- name(String) - Method in class main.domain.contexts.user.UserEditing.EditingWithTarget
-
Updates the user's name.
- node(String) - Static method in class main.domain.models.email.Html
-
Creates an HTML element with the specified tag.
O
- of(String, String) - Static method in class main.domain.models.users.Login
- of(Purchase) - Method in class main.domain.contexts.purchases.internal.PurchaseMail
-
Sets the purchase details for the email.
- of(EventId) - Method in class main.domain.contexts.events.EventEvaluation
-
Sets the event ID for the evaluation.
- of(EventId) - Method in class main.domain.contexts.purchases.TicketBuying
-
Sets the event for which tickets are being bought.
- of(User) - Method in class main.domain.contexts.user.UserEditing
-
Specifies the user to be edited.
- ofCapacity(Integer) - Method in class main.domain.models.events.BoxOffice
-
Creates a BoxOffice with the specified capacity.
- on(LocalDate) - Method in class main.domain.contexts.events.EventRegistering
-
Sets the current day for the context.
- ownedBy(User) - Static method in class main.domain.contexts.user.ListTickets
-
Static factory method for creating a ListTickets context for a specific user.
- ownerOf(Login) - Method in class main.infra.json.UsersJson
- ownerOf(Login) - Method in class main.infra.virtual.UsersInMemory
- ownerOf(Login) - Method in interface main.roles.repositories.Users
-
Retrieves an user by their email and password.
- owning(Ticket) - Method in class main.domain.contexts.purchases.TicketRefund
-
Sets the ticket to be refunded.
P
- packedFor(Integer) - Method in class main.domain.models.events.Ticket
-
Creates a ticket for the specified number of persons.
- Participant - Class in main.domain.models.purchases
-
Represents a participant in a transaction, including email, name, and tax ID.
- Participant(String, String, String) - Constructor for class main.domain.models.purchases.Participant
- Participant(User) - Constructor for class main.domain.models.purchases.Participant
-
Constructs a new Participant based on a user's information.
- password(String) - Method in class main.domain.contexts.user.forms.LoginInformation
-
Sets the password for the login information.
- password(String) - Method in class main.domain.contexts.user.UserEditing.EditingWithTarget
-
Updates the user's password.
- Password - Class in main.domain.models.users.values
- Password(String) - Constructor for class main.domain.models.users.values.Password
- PaymentDetails - Class in main.domain.models.purchases
-
Represents the details of a payment, including the payment method and amount.
- PaymentDetails(PaymentMethod, Double) - Constructor for class main.domain.models.purchases.PaymentDetails
-
Constructs a new PaymentDetails object with the specified payment method and amount.
- PaymentMethod - Class in main.domain.models.purchases
-
Represents a payment method with details, and provides HTML representation for display.
- PaymentMethod(String, String) - Constructor for class main.domain.models.purchases.PaymentMethod
-
Constructs a new PaymentMethod with the specified method and details.
- PermissionDenied - Exception Class in main.domain.exceptions
-
Exception thrown when a user attempts to perform an operation without the necessary permissions.
- PermissionDenied(String) - Constructor for exception class main.domain.exceptions.PermissionDenied
-
Constructs a new PermissionDenied exception with the specified detail message.
- person() - Method in class main.domain.models.users.User
-
Returns the personal details.
- person(Person) - Method in class main.domain.contexts.user.AdminRegistering
-
Sets the personal information for the admin user.
- person(Person) - Method in class main.domain.contexts.user.UserRegistering
-
Sets the personal information for the user.
- Person - Class in main.domain.models.users
-
Represents a person with a name and CPF.
- Person(String, String) - Constructor for class main.domain.models.users.Person
-
Constructs a new Person with the specified name and CPF.
- PersonalInformation - Class in main.domain.contexts.user.forms
-
Represents the personal information for a user, including name and CPF.
- PersonalInformation() - Constructor for class main.domain.contexts.user.forms.PersonalInformation
- poster() - Method in class main.domain.models.events.Event
-
Returns the event poster.
- poster(Poster) - Method in class main.domain.contexts.events.EventRegistering
-
Sets the poster for the event.
- Poster - Class in main.domain.models.events
-
Represents an event poster with a title, description, and schedule date.
- Poster(String, String, LocalDate) - Constructor for class main.domain.models.events.Poster
-
Constructs a new Poster with the specified title, description, and schedule date.
- price() - Method in class main.domain.models.events.Ticket
-
Returns the total price of the ticket based on availability.
- Purchase - Class in main.domain.contexts.purchases.internal
-
Represents a purchase transaction, including buying and refunding tickets.
- Purchase() - Constructor for class main.domain.contexts.purchases.internal.Purchase
- PurchaseForInactiveEvent - Exception Class in main.domain.exceptions
- PurchaseForInactiveEvent() - Constructor for exception class main.domain.exceptions.PurchaseForInactiveEvent
- purchaseMail() - Method in class main.domain.contexts.purchases.internal.PurchaseMail
-
Creates an email document for the purchase.
- PurchaseMail - Class in main.domain.contexts.purchases.internal
-
Manages the creation of purchase and refund emails.
- PurchaseMail() - Constructor for class main.domain.contexts.purchases.internal.PurchaseMail
R
- receiveEvaluation(Evaluation) - Method in class main.domain.models.events.Event
-
Receives an evaluation and adds it to the event.
- recipient() - Method in class main.domain.models.email.EmailMetadata
-
Returns the recipient's email address.
- refund() - Method in class main.domain.contexts.purchases.internal.Purchase
-
Refunds the purchased ticket.
- refund() - Method in class main.domain.contexts.purchases.TicketRefund
-
Executes the refund process.
- refund(Ticket) - Method in class main.domain.models.events.BoxOffice
-
Refunds the specified ticket.
- refundMail() - Method in class main.domain.contexts.purchases.internal.PurchaseMail
-
Creates an email document for the refund.
- register() - Method in class main.domain.contexts.events.EventRegistering
-
Registers the event.
- register() - Method in class main.domain.contexts.user.AdminRegistering
-
Registers the admin user.
- register() - Method in class main.domain.contexts.user.UserRegistering
-
Registers the user in the repository.
- register(Event) - Method in class main.infra.json.EventsJson
- register(Event) - Method in class main.infra.virtual.EventsInMemory
- register(Event) - Method in interface main.roles.repositories.Events
-
Registers a new event.
- register(User) - Method in class main.infra.json.UsersJson
- register(User) - Method in class main.infra.virtual.UsersInMemory
- register(User) - Method in interface main.roles.repositories.Users
-
Registers a new user.
- returnTicket(Ticket) - Method in class main.domain.models.users.User
-
Returns a ticket and removes it from the user's bought tickets.
S
- sales() - Method in class main.domain.models.events.BoxOffice
-
Returns the number of tickets sold.
- sameEvent(Ticket) - Method in class main.domain.models.events.Ticket
-
Checks if the ticket is for the same event as another ticket.
- scheduledFor(LocalDate) - Method in class main.domain.contexts.events.forms.EventInformation
-
Sets the schedule date of the event.
- self() - Static method in class main.domain.models.purchases.Participant
-
Creates a Participant representing the Event Management Business itself.
- sell(Ticket) - Method in class main.domain.models.events.BoxOffice
-
Sells the specified ticket.
- send(EmailDocument) - Method in class main.infra.DisabledEmailService
-
Captures the email document instead of sending it.
- send(EmailDocument) - Method in interface main.roles.EmailService
-
Sends an email document.
- sender() - Method in class main.domain.models.email.EmailMetadata
-
Returns the sender's email address.
- Session - Class in main.infra
-
Manages the session state for a logged-in user.
- Session() - Constructor for class main.infra.Session
-
Constructs an empty session.
- shouldBeSellable() - Method in class main.domain.contexts.purchases.internal.Purchase
-
Ensures that the purchase is sellable.
- shouldBeSold() - Method in class main.domain.contexts.purchases.internal.Purchase
-
Ensures that the ticket has been sold.
- shouldOwnTicket() - Method in class main.domain.contexts.purchases.internal.Purchase
-
Ensures that the buyer owns the ticket.
- SoldOut - Exception Class in main.domain.exceptions
-
Exception thrown when an event is sold out.
- SoldOut() - Constructor for exception class main.domain.exceptions.SoldOut
-
Constructs a new SoldOut exception with no detail message.
- subject() - Method in class main.domain.models.email.EmailMetadata
-
Returns the subject of the email.
- submit() - Method in class main.domain.contexts.events.forms.EventInformation
-
Submits the event information and returns a Poster object containing the title, description, and schedule.
- submit() - Method in class main.domain.contexts.user.forms.LoginInformation
-
Submits the login information and returns a Login object.
- submit() - Method in class main.domain.contexts.user.forms.PersonalInformation
-
Submits the personal information and returns a Person object.
T
- ticket - Variable in class main.domain.contexts.purchases.internal.Purchase
- ticket(Integer) - Method in class main.domain.models.events.BoxOffice
-
Creates a ticket with the specified amount of available seats.
- Ticket - Class in main.domain.models.events
-
Represents a ticket for an event, including event ID, price, and availability.
- Ticket(EventId) - Constructor for class main.domain.models.events.Ticket
-
Constructs a new Ticket with the specified event ID and a default price of 0.0.
- Ticket(EventId, Double) - Constructor for class main.domain.models.events.Ticket
-
Constructs a new Ticket with the specified event ID and price.
- TicketBuying - Class in main.domain.contexts.purchases
-
Context for buying tickets for an event.
- TicketBuying(EmailService, Events, Users, LocalDate) - Constructor for class main.domain.contexts.purchases.TicketBuying
-
Constructor with specified email service.
- TicketBuying(Events, Users, LocalDate) - Constructor for class main.domain.contexts.purchases.TicketBuying
-
Constructor with default email service.
- TicketRefund - Class in main.domain.contexts.purchases
-
Context for processing ticket refunds.
- TicketRefund(EmailService, Events, Users, LocalDate) - Constructor for class main.domain.contexts.purchases.TicketRefund
-
Constructor with specified email service.
- TicketRefund(Events, Users, LocalDate) - Constructor for class main.domain.contexts.purchases.TicketRefund
-
Constructor with default email service.
- tickets() - Method in class main.domain.models.users.User
-
Returns the list of bought tickets.
- title() - Method in class main.domain.models.events.Poster
-
Returns the title of the event.
- title(String) - Method in class main.domain.contexts.events.forms.EventInformation
-
Sets the title of the event.
- to(UserId) - Method in class main.domain.contexts.purchases.TicketRefund
-
Sets the customer who will receive the refund.
- toEmail() - Method in class main.domain.models.purchases.Transaction
-
Converts the transaction details to an email document.
- toString() - Method in class main.domain.models.email.Html
- toString() - Method in class main.domain.models.purchases.Participant
- toString() - Method in class main.domain.models.users.values.EmailAddress
- Transaction - Class in main.domain.models.purchases
-
Represents a transaction including payer, recipient, payment details, and description.
- Transaction(Participant, Participant, PaymentDetails, String) - Constructor for class main.domain.models.purchases.Transaction
-
Constructs a new Transaction with the specified payer, recipient, payment details, and description.
- Transaction(TransactionId, Participant, Participant, PaymentDetails, String) - Constructor for class main.domain.models.purchases.Transaction
-
Constructs a new Transaction with the specified ID, payer, recipient, payment details, and description.
- TransactionId - Class in main.domain.models.purchases
- TransactionId() - Constructor for class main.domain.models.purchases.TransactionId
- TransactionId(UUID) - Constructor for class main.domain.models.purchases.TransactionId
- TryingToEvaluateActiveEvent - Exception Class in main.domain.exceptions
- TryingToEvaluateActiveEvent() - Constructor for exception class main.domain.exceptions.TryingToEvaluateActiveEvent
U
- update(Event) - Method in class main.infra.json.EventsJson
- update(Event) - Method in class main.infra.virtual.EventsInMemory
- update(Event) - Method in interface main.roles.repositories.Events
-
Updates an existing event.
- update(User, User) - Method in class main.infra.json.UsersJson
- update(User, User) - Method in class main.infra.virtual.UsersInMemory
- update(User, User) - Method in interface main.roles.repositories.Users
-
Updates an existing user.
- User - Class in main.domain.models.users
-
Represents a user, including login details, personal details, and purchased tickets.
- User(Login, Person) - Constructor for class main.domain.models.users.User
-
Constructor for creating a new user with login and personal details.
- User(UserId, Login, Person) - Constructor for class main.domain.models.users.User
-
Constructor for creating a new user with a specified ID, login, and personal details.
- UserEditing - Class in main.domain.contexts.user
-
Context for editing user details.
- UserEditing(Users) - Constructor for class main.domain.contexts.user.UserEditing
-
Constructs a UserEditing context with the specified user repository.
- UserEditing.EditingWithTarget - Class in main.domain.contexts.user
-
Inner class representing the editing operations for a specific user.
- UserId - Class in main.domain.models.users
- UserId() - Constructor for class main.domain.models.users.UserId
- UserId(UUID) - Constructor for class main.domain.models.users.UserId
- UserLogin - Class in main.domain.contexts.user
-
Context for managing user login operations.
- UserLogin(Users) - Constructor for class main.domain.contexts.user.UserLogin
-
Constructs a UserLogin context with the specified user repository.
- UserRegistering - Class in main.domain.contexts.user
-
Allows registering a User into a Repository.
- UserRegistering(Users) - Constructor for class main.domain.contexts.user.UserRegistering
-
Constructor that initializes the repository.
- Users - Interface in main.roles.repositories
-
Interface for managing User entities.
- UsersInMemory - Class in main.infra.virtual
-
In-memory implementation of the Users repository.
- UsersInMemory() - Constructor for class main.infra.virtual.UsersInMemory
-
Constructs a new UsersInMemory with an empty list of users.
- UsersInMemory(List<User>) - Constructor for class main.infra.virtual.UsersInMemory
-
Constructs a new UsersInMemory with a list of users.
- UsersJson - Class in main.infra.json
-
Implementation of the Users repository using JSON for persistence.
- UsersJson(JsonFile) - Constructor for class main.infra.json.UsersJson
-
Constructor initializing the repository with a file path.
- UsersJson(JsonFile, UsersInMemory) - Constructor for class main.infra.json.UsersJson
-
Constructor initializing the repository with a file and in-memory repository.
V
- value() - Method in class main.domain.models.users.values.EmailAddress
- value() - Method in class main.roles.EntityId
-
Returns the UUID value of the entity ID.
- via(PaymentMethod) - Method in class main.domain.contexts.purchases.internal.PurchaseMail
-
Sets the payment method for the email.
- via(PaymentMethod) - Method in class main.domain.contexts.purchases.TicketBuying
-
Sets the payment method for the purchase.
- via(PaymentMethod) - Method in class main.domain.contexts.purchases.TicketRefund
-
Sets the payment method for the refund.
W
- with(Login) - Method in class main.domain.models.users.User
-
Sets the login details for the user.
- with(Person) - Method in class main.domain.models.users.User
-
Sets the personal details for the user.
- with(EmailAddress) - Method in class main.domain.models.users.Login
- with(Password) - Method in class main.domain.models.users.Login
- withCpf(String) - Method in class main.domain.models.users.Person
-
Creates a new Person with the specified CPF, keeping the current name.
- withName(String) - Method in class main.domain.models.users.Person
-
Creates a new Person with the specified name, keeping the current CPF.
- withSession(Session) - Method in class main.domain.contexts.user.UserLogin
-
Associates the current login context with a session.
- withTickets(List<Ticket>) - Method in class main.domain.models.users.User
-
Sets the tickets for the user.
All Classes and Interfaces|All Packages|Serialized Form