Index
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form
B
- body() - Method in record class com.cotani.mail.api.MailMessage
-
Returns the value of the
bodyrecord component. - body() - Method in record class com.cotani.mail.api.MailSendRequest
-
Returns the value of the
bodyrecord component.
C
- close() - Method in interface com.cotani.mail.api.MailService
-
Starts asynchronous shutdown and rejects new operations.
- com.cotani.mail - package com.cotani.mail
- com.cotani.mail.api - package com.cotani.mail.api
- com.cotani.mail.storage - package com.cotani.mail.storage
- CotaniMails - Class in com.cotani.mail
-
Factories for the
cotani-mailmodule. - create(UUID, UUID, String, String, Duration) - Static method in record class com.cotani.mail.api.MailSendRequest
-
Creates a request with a fresh idempotency key.
- create(UUID, UUID, String, String, Duration, Instant) - Static method in record class com.cotani.mail.api.MailSendRequest
-
Creates a request with a caller-supplied timestamp for deterministic retries and tests.
- CreateMailIndexesMigration - Class in com.cotani.mail.storage
-
Adds indexes for inbox pagination, unread counts and expiration cleanup.
- CreateMailIndexesMigration() - Constructor for class com.cotani.mail.storage.CreateMailIndexesMigration
- CreateMailTablesMigration - Class in com.cotani.mail.storage
-
Creates the SQL table used by
StorageMailRepository. - CreateMailTablesMigration() - Constructor for class com.cotani.mail.storage.CreateMailTablesMigration
D
- defaults() - Static method in record class com.cotani.mail.api.MailServiceOptions
- defaultTimeToLive() - Method in record class com.cotani.mail.api.MailServiceOptions
-
Returns the value of the
defaultTimeToLiverecord component. - deleteAsync(UUID, MailId) - Method in interface com.cotani.mail.api.MailRepository
-
Deletes a recipient-owned message.
- deleteAsync(UUID, MailId) - Method in interface com.cotani.mail.api.MailService
-
Deletes one recipient-owned message.
- deleteAsync(UUID, MailId) - Method in class com.cotani.mail.storage.StorageMailRepository
- description() - Method in class com.cotani.mail.storage.CreateMailIndexesMigration
- description() - Method in class com.cotani.mail.storage.CreateMailTablesMigration
- description() - Method in class com.cotani.mail.storage.MigrateMailBodyTextMigration
E
- equals(Object) - Method in record class com.cotani.mail.api.MailId
-
Indicates whether some other object is "equal to" this one.
- equals(Object) - Method in record class com.cotani.mail.api.MailMessage
-
Indicates whether some other object is "equal to" this one.
- equals(Object) - Method in record class com.cotani.mail.api.MailPage
-
Indicates whether some other object is "equal to" this one.
- equals(Object) - Method in record class com.cotani.mail.api.MailQuery
-
Indicates whether some other object is "equal to" this one.
- equals(Object) - Method in record class com.cotani.mail.api.MailSendRequest
-
Indicates whether some other object is "equal to" this one.
- equals(Object) - Method in record class com.cotani.mail.api.MailServiceOptions
-
Indicates whether some other object is "equal to" this one.
- expiresAt() - Method in exception class com.cotani.mail.api.MailExpiredException
- expiresAt() - Method in record class com.cotani.mail.api.MailMessage
-
Returns the value of the
expiresAtrecord component.
F
- firstPage(int) - Static method in record class com.cotani.mail.api.MailQuery
- fromRepository(MailRepository) - Static method in class com.cotani.mail.CotaniMails
-
Creates a service over a caller-owned repository.
- fromRepository(MailRepository, MailServiceOptions) - Static method in class com.cotani.mail.CotaniMails
-
Creates a service over a caller-owned repository with explicit options.
H
- hashCode() - Method in record class com.cotani.mail.api.MailId
-
Returns a hash code value for this object.
- hashCode() - Method in record class com.cotani.mail.api.MailMessage
-
Returns a hash code value for this object.
- hashCode() - Method in record class com.cotani.mail.api.MailPage
-
Returns a hash code value for this object.
- hashCode() - Method in record class com.cotani.mail.api.MailQuery
-
Returns a hash code value for this object.
- hashCode() - Method in record class com.cotani.mail.api.MailSendRequest
-
Returns a hash code value for this object.
- hashCode() - Method in record class com.cotani.mail.api.MailServiceOptions
-
Returns a hash code value for this object.
- hasMore() - Method in record class com.cotani.mail.api.MailPage
-
Returns the value of the
hasMorerecord component. - hasSameContentAs(MailMessage) - Method in record class com.cotani.mail.api.MailMessage
-
Returns whether two messages represent the same idempotent send, ignoring read state.
I
- id() - Method in exception class com.cotani.mail.api.MailConflictException
- id() - Method in exception class com.cotani.mail.api.MailExpiredException
- id() - Method in record class com.cotani.mail.api.MailMessage
-
Returns the value of the
idrecord component. - id() - Method in exception class com.cotani.mail.api.MailNotFoundException
- id() - Method in record class com.cotani.mail.api.MailSendRequest
-
Returns the value of the
idrecord component. - inboxAsync(UUID, MailQuery) - Method in interface com.cotani.mail.api.MailService
-
Loads a bounded recipient inbox; expired messages are omitted.
- inboxAsync(UUID, MailQuery, Instant) - Method in interface com.cotani.mail.api.MailRepository
-
Lists a recipient's non-expired messages in newest-first order at the supplied instant.
- inboxAsync(UUID, MailQuery, Instant) - Method in class com.cotani.mail.storage.StorageMailRepository
- inMemory() - Static method in class com.cotani.mail.CotaniMails
-
Creates a mail service backed by an isolated in-memory repository.
- inMemory(MailServiceOptions) - Static method in class com.cotani.mail.CotaniMails
-
Creates an in-memory mail service with explicit options.
- isExpired(Instant) - Method in record class com.cotani.mail.api.MailMessage
-
Returns whether the message is expired at the supplied instant.
M
- MailConflictException - Exception Class in com.cotani.mail.api
-
Raised when an idempotency key is reused with different message data.
- MailConflictException(MailId) - Constructor for exception class com.cotani.mail.api.MailConflictException
- MailException - Exception Class in com.cotani.mail.api
-
Base exception for expected mail-domain failures.
- MailException(String) - Constructor for exception class com.cotani.mail.api.MailException
- MailExpiredException - Exception Class in com.cotani.mail.api
-
Raised when a send request has already expired before it can be persisted.
- MailExpiredException(MailId, Instant) - Constructor for exception class com.cotani.mail.api.MailExpiredException
- MailId - Record Class in com.cotani.mail.api
-
Stable idempotency key for one mail message.
- MailId(UUID) - Constructor for record class com.cotani.mail.api.MailId
-
Creates an instance of a
MailIdrecord class. - MailMessage - Record Class in com.cotani.mail.api
-
Immutable mail message with bounded text and an explicit expiration time.
- MailMessage(MailId, UUID, UUID, String, String, Instant, Instant, boolean) - Constructor for record class com.cotani.mail.api.MailMessage
-
Creates an instance of a
MailMessagerecord class. - MailNotFoundException - Exception Class in com.cotani.mail.api
-
Raised when a message is absent or does not belong to the requested recipient.
- MailNotFoundException(UUID, MailId) - Constructor for exception class com.cotani.mail.api.MailNotFoundException
- MailPage - Record Class in com.cotani.mail.api
-
Immutable paginated inbox result.
- MailPage(List, boolean, int) - Constructor for record class com.cotani.mail.api.MailPage
-
Creates an instance of a
MailPagerecord class. - MailQuery - Record Class in com.cotani.mail.api
-
Bounded page query for a recipient's inbox.
- MailQuery(int, int, boolean) - Constructor for record class com.cotani.mail.api.MailQuery
-
Creates an instance of a
MailQueryrecord class. - MailRepository - Interface in com.cotani.mail.api
-
Asynchronous persistence SPI for idempotent mail messages.
- MailSendRequest - Record Class in com.cotani.mail.api
-
Idempotent request for sending one mail message.
- MailSendRequest(MailId, UUID, UUID, String, String, Instant, Duration) - Constructor for record class com.cotani.mail.api.MailSendRequest
-
Creates an instance of a
MailSendRequestrecord class. - MailService - Interface in com.cotani.mail.api
-
Asynchronous persistent inbox and player-to-player mail use cases.
- MailServiceOptions - Record Class in com.cotani.mail.api
-
Operational limits and repository timeout for a mail service.
- MailServiceOptions(int, Duration, Duration) - Constructor for record class com.cotani.mail.api.MailServiceOptions
-
Creates an instance of a
MailServiceOptionsrecord class. - markRead() - Method in record class com.cotani.mail.api.MailMessage
-
Returns an equivalent message marked as read.
- markReadAsync(UUID, MailId) - Method in interface com.cotani.mail.api.MailService
-
Marks one recipient-owned message as read.
- markReadAsync(UUID, MailId, Instant) - Method in interface com.cotani.mail.api.MailRepository
-
Marks a recipient-owned message as read.
- markReadAsync(UUID, MailId, Instant) - Method in class com.cotani.mail.storage.StorageMailRepository
- MAX_BODY_LENGTH - Static variable in record class com.cotani.mail.api.MailMessage
- MAX_SUBJECT_LENGTH - Static variable in record class com.cotani.mail.api.MailMessage
- maxPageSize() - Method in record class com.cotani.mail.api.MailServiceOptions
-
Returns the value of the
maxPageSizerecord component. - messages() - Method in record class com.cotani.mail.api.MailPage
-
Returns the value of the
messagesrecord component. - migrate(Schema) - Method in class com.cotani.mail.storage.CreateMailIndexesMigration
- migrate(Schema) - Method in class com.cotani.mail.storage.CreateMailTablesMigration
- migrate(Schema) - Method in class com.cotani.mail.storage.MigrateMailBodyTextMigration
- MigrateMailBodyTextMigration - Class in com.cotani.mail.storage
-
Upgrades development schemas that originally created the body as a short VARCHAR column.
- MigrateMailBodyTextMigration() - Constructor for class com.cotani.mail.storage.MigrateMailBodyTextMigration
- migrations() - Static method in class com.cotani.mail.storage.StorageMailRepository
P
- page() - Method in record class com.cotani.mail.api.MailQuery
-
Returns the value of the
pagerecord component. - pageSize() - Method in record class com.cotani.mail.api.MailQuery
-
Returns the value of the
pageSizerecord component. - purgeExpiredAsync() - Method in interface com.cotani.mail.api.MailService
-
Purges expired messages from the repository.
- purgeExpiredAsync(Instant) - Method in interface com.cotani.mail.api.MailRepository
-
Removes expired messages and completes when cleanup is durable.
- purgeExpiredAsync(Instant) - Method in class com.cotani.mail.storage.StorageMailRepository
R
- random() - Static method in record class com.cotani.mail.api.MailId
- read() - Method in record class com.cotani.mail.api.MailMessage
-
Returns the value of the
readrecord component. - recipientId() - Method in record class com.cotani.mail.api.MailMessage
-
Returns the value of the
recipientIdrecord component. - recipientId() - Method in exception class com.cotani.mail.api.MailNotFoundException
- recipientId() - Method in record class com.cotani.mail.api.MailSendRequest
-
Returns the value of the
recipientIdrecord component. - repositoryTimeout() - Method in record class com.cotani.mail.api.MailServiceOptions
-
Returns the value of the
repositoryTimeoutrecord component.
S
- saveAsync(MailMessage) - Method in interface com.cotani.mail.api.MailRepository
-
Persists one message.
- saveAsync(MailMessage) - Method in class com.cotani.mail.storage.StorageMailRepository
- sendAsync(MailSendRequest) - Method in interface com.cotani.mail.api.MailService
-
Sends an idempotent request using the timestamp and TTL embedded in the request.
- sendAsync(UUID, UUID, String, String) - Method in interface com.cotani.mail.api.MailService
-
Sends a new message using the configured default TTL.
- senderId() - Method in record class com.cotani.mail.api.MailMessage
-
Returns the value of the
senderIdrecord component. - senderId() - Method in record class com.cotani.mail.api.MailSendRequest
-
Returns the value of the
senderIdrecord component. - sentAt() - Method in record class com.cotani.mail.api.MailMessage
-
Returns the value of the
sentAtrecord component. - sentAt() - Method in record class com.cotani.mail.api.MailSendRequest
-
Returns the value of the
sentAtrecord component. - StorageMailRepository - Class in com.cotani.mail.storage
-
SQL-backed repository with idempotent message writes and indexed inbox queries.
- StorageMailRepository(CotaniStorage) - Constructor for class com.cotani.mail.storage.StorageMailRepository
- subject() - Method in record class com.cotani.mail.api.MailMessage
-
Returns the value of the
subjectrecord component. - subject() - Method in record class com.cotani.mail.api.MailSendRequest
-
Returns the value of the
subjectrecord component.
T
- timeToLive() - Method in record class com.cotani.mail.api.MailSendRequest
-
Returns the value of the
timeToLiverecord component. - toMessage() - Method in record class com.cotani.mail.api.MailSendRequest
-
Materializes this request with unread state.
- toString() - Method in record class com.cotani.mail.api.MailId
-
Returns a string representation of this record class.
- toString() - Method in record class com.cotani.mail.api.MailMessage
-
Returns a string representation of this record class.
- toString() - Method in record class com.cotani.mail.api.MailPage
-
Returns a string representation of this record class.
- toString() - Method in record class com.cotani.mail.api.MailQuery
-
Returns a string representation of this record class.
- toString() - Method in record class com.cotani.mail.api.MailSendRequest
-
Returns a string representation of this record class.
- toString() - Method in record class com.cotani.mail.api.MailServiceOptions
-
Returns a string representation of this record class.
U
- unread() - Method in record class com.cotani.mail.api.MailQuery
- unreadCount() - Method in record class com.cotani.mail.api.MailPage
-
Returns the value of the
unreadCountrecord component. - unreadOnly() - Method in record class com.cotani.mail.api.MailQuery
-
Returns the value of the
unreadOnlyrecord component.
V
- value() - Method in record class com.cotani.mail.api.MailId
-
Returns the value of the
valuerecord component. - version() - Method in class com.cotani.mail.storage.CreateMailIndexesMigration
- version() - Method in class com.cotani.mail.storage.CreateMailTablesMigration
- version() - Method in class com.cotani.mail.storage.MigrateMailBodyTextMigration
W
- withDefaultTimeToLive(Duration) - Method in record class com.cotani.mail.api.MailServiceOptions
- withMaxPageSize(int) - Method in record class com.cotani.mail.api.MailServiceOptions
- withRepositoryTimeout(Duration) - Method in record class com.cotani.mail.api.MailServiceOptions
- withRepositoryTimeout(CompletionStage) - Method in record class com.cotani.mail.api.MailServiceOptions
-
Applies the timeout to the visible stage without cancelling the repository operation.
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form