Index
All Classes and Interfaces|All Packages|Serialized Form
A
- AchievementCriterion - Record Class in com.cotani.achievement.api
-
Immutable threshold criterion backed by one player statistic.
- AchievementCriterion(StatisticId, long) - Constructor for record class com.cotani.achievement.api.AchievementCriterion
-
Creates an instance of a
AchievementCriterionrecord class. - AchievementDefinition - Record Class in com.cotani.achievement.api
-
Immutable achievement definition composed of statistic thresholds and an optional reward.
- AchievementDefinition(AchievementId, List, Optional) - Constructor for record class com.cotani.achievement.api.AchievementDefinition
-
Creates an instance of a
AchievementDefinitionrecord class. - AchievementException - Exception Class in com.cotani.achievement.api
-
Base exception for expected achievement-domain failures.
- AchievementException(String) - Constructor for exception class com.cotani.achievement.api.AchievementException
- AchievementException(String, Throwable) - Constructor for exception class com.cotani.achievement.api.AchievementException
- achievementId() - Method in exception class com.cotani.achievement.api.AchievementNotFoundException
- achievementId() - Method in exception class com.cotani.achievement.api.AchievementNotUnlockedException
- achievementId() - Method in record class com.cotani.achievement.api.AchievementProgress
-
Returns the value of the
achievementIdrecord component. - achievementId() - Method in exception class com.cotani.achievement.api.AchievementRewardNotConfiguredException
- achievementId() - Method in record class com.cotani.achievement.api.event.AchievementUnlockedEvent
-
Returns the value of the
achievementIdrecord component. - AchievementId - Record Class in com.cotani.achievement.api
-
Stable identifier for one achievement definition.
- AchievementId(String) - Constructor for record class com.cotani.achievement.api.AchievementId
-
Creates an instance of a
AchievementIdrecord class. - AchievementNotFoundException - Exception Class in com.cotani.achievement.api
-
Raised when an achievement id is not registered.
- AchievementNotFoundException(AchievementId) - Constructor for exception class com.cotani.achievement.api.AchievementNotFoundException
- AchievementNotUnlockedException - Exception Class in com.cotani.achievement.api
-
Raised when a player attempts to claim an achievement reward before unlocking it.
- AchievementNotUnlockedException(UUID, AchievementId) - Constructor for exception class com.cotani.achievement.api.AchievementNotUnlockedException
- AchievementProgress - Record Class in com.cotani.achievement.api
-
Immutable per-player achievement unlock state and persistence revision.
- AchievementProgress(UUID, AchievementId, boolean, Optional, Optional, long) - Constructor for record class com.cotani.achievement.api.AchievementProgress
-
Creates an instance of a
AchievementProgressrecord class. - AchievementProgressConflictException - Exception Class in com.cotani.achievement.api
-
Raised when an optimistic achievement progress write observes a newer revision.
- AchievementProgressConflictException(AchievementProgress, long) - Constructor for exception class com.cotani.achievement.api.AchievementProgressConflictException
- AchievementRepository - Interface in com.cotani.achievement.api
-
Bukkit-free optimistic persistence SPI for per-player achievement state.
- AchievementRewardNotConfiguredException - Exception Class in com.cotani.achievement.api
-
Raised when an achievement has no reward configured for a reward claim request.
- AchievementRewardNotConfiguredException(AchievementId) - Constructor for exception class com.cotani.achievement.api.AchievementRewardNotConfiguredException
- AchievementService - Interface in com.cotani.achievement.api
-
Asynchronous achievement evaluation, unlock and idempotent reward claim use cases.
- AchievementServiceOptions - Record Class in com.cotani.achievement.api
-
Operational limits for achievement reads, events, retries and pending mutations.
- AchievementServiceOptions(Duration, int) - Constructor for record class com.cotani.achievement.api.AchievementServiceOptions
- AchievementServiceOptions(Duration, int, Duration) - Constructor for record class com.cotani.achievement.api.AchievementServiceOptions
- AchievementServiceOptions(Duration, int, Duration, int) - Constructor for record class com.cotani.achievement.api.AchievementServiceOptions
-
Creates an instance of a
AchievementServiceOptionsrecord class. - AchievementUnlockedEvent - Record Class in com.cotani.achievement.api.event
-
Published once after an achievement unlock is durably accepted.
- AchievementUnlockedEvent(UUID, AchievementId, Optional, AchievementProgress) - Constructor for record class com.cotani.achievement.api.event.AchievementUnlockedEvent
-
Creates an instance of a
AchievementUnlockedEventrecord class.
C
- claimRewardAsync(UUID, AchievementId) - Method in interface com.cotani.achievement.api.AchievementService
-
Claims the configured reward using the stable claim id persisted at unlock time.
- close() - Method in interface com.cotani.achievement.api.AchievementService
-
Starts asynchronous shutdown and rejects new operations.
- com.cotani.achievement - package com.cotani.achievement
- com.cotani.achievement.api - package com.cotani.achievement.api
- com.cotani.achievement.api.event - package com.cotani.achievement.api.event
- com.cotani.achievement.storage - package com.cotani.achievement.storage
- CotaniAchievements - Class in com.cotani.achievement
-
Factories for the
cotani-achievementmodule. - CreateAchievementIndexesMigration - Class in com.cotani.achievement.storage
-
Adds indexes used by achievement progress administration and recovery queries.
- CreateAchievementIndexesMigration() - Constructor for class com.cotani.achievement.storage.CreateAchievementIndexesMigration
- CreateAchievementTablesMigration - Class in com.cotani.achievement.storage
-
Creates the SQL table used by
StorageAchievementRepository. - CreateAchievementTablesMigration() - Constructor for class com.cotani.achievement.storage.CreateAchievementTablesMigration
- criteria() - Method in record class com.cotani.achievement.api.AchievementDefinition
-
Returns the value of the
criteriarecord component. - current() - Method in exception class com.cotani.achievement.api.AchievementProgressConflictException
D
- defaults() - Static method in record class com.cotani.achievement.api.AchievementServiceOptions
- description() - Method in class com.cotani.achievement.storage.CreateAchievementIndexesMigration
- description() - Method in class com.cotani.achievement.storage.CreateAchievementTablesMigration
E
- equals(Object) - Method in record class com.cotani.achievement.api.AchievementCriterion
-
Indicates whether some other object is "equal to" this one.
- equals(Object) - Method in record class com.cotani.achievement.api.AchievementDefinition
-
Indicates whether some other object is "equal to" this one.
- equals(Object) - Method in record class com.cotani.achievement.api.AchievementId
-
Indicates whether some other object is "equal to" this one.
- equals(Object) - Method in record class com.cotani.achievement.api.AchievementProgress
-
Indicates whether some other object is "equal to" this one.
- equals(Object) - Method in record class com.cotani.achievement.api.AchievementServiceOptions
-
Indicates whether some other object is "equal to" this one.
- equals(Object) - Method in record class com.cotani.achievement.api.event.AchievementUnlockedEvent
-
Indicates whether some other object is "equal to" this one.
- evaluateAsync(UUID, AchievementId) - Method in interface com.cotani.achievement.api.AchievementService
-
Evaluates every criterion and unlocks the achievement once all thresholds are satisfied.
- eventTimeout() - Method in record class com.cotani.achievement.api.AchievementServiceOptions
-
Returns the value of the
eventTimeoutrecord component. - expectedRevision() - Method in exception class com.cotani.achievement.api.AchievementProgressConflictException
F
- findAsync(UUID, AchievementId) - Method in interface com.cotani.achievement.api.AchievementRepository
-
Loads one progress snapshot; absence means the player has not unlocked the achievement.
- findAsync(UUID, AchievementId) - Method in class com.cotani.achievement.storage.StorageAchievementRepository
- findDefinition(AchievementId) - Method in interface com.cotani.achievement.api.AchievementService
-
Returns a registered definition, if present.
- findProgressAsync(UUID, AchievementId) - Method in interface com.cotani.achievement.api.AchievementService
-
Loads one player's progress after previously accepted mutations have settled.
- fromRepository(AchievementRepository, StatisticService, RewardService, EventBus) - Static method in class com.cotani.achievement.CotaniAchievements
-
Creates a service over a caller-owned repository.
- fromRepository(AchievementRepository, StatisticService, RewardService, EventBus, AchievementServiceOptions) - Static method in class com.cotani.achievement.CotaniAchievements
-
Creates a service over a repository with explicit operational options.
- fromRepository(AchievementRepository, StatisticService, RewardService, EventBus, AchievementServiceOptions, Clock) - Static method in class com.cotani.achievement.CotaniAchievements
-
Creates a service with explicit operational options and clock.
H
- hashCode() - Method in record class com.cotani.achievement.api.AchievementCriterion
-
Returns a hash code value for this object.
- hashCode() - Method in record class com.cotani.achievement.api.AchievementDefinition
-
Returns a hash code value for this object.
- hashCode() - Method in record class com.cotani.achievement.api.AchievementId
-
Returns a hash code value for this object.
- hashCode() - Method in record class com.cotani.achievement.api.AchievementProgress
-
Returns a hash code value for this object.
- hashCode() - Method in record class com.cotani.achievement.api.AchievementServiceOptions
-
Returns a hash code value for this object.
- hashCode() - Method in record class com.cotani.achievement.api.event.AchievementUnlockedEvent
-
Returns a hash code value for this object.
- hasRewardClaim() - Method in record class com.cotani.achievement.api.AchievementProgress
I
- id() - Method in record class com.cotani.achievement.api.AchievementDefinition
-
Returns the value of the
idrecord component. - initial(UUID, AchievementId) - Static method in record class com.cotani.achievement.api.AchievementProgress
- inMemory(StatisticService, RewardService, EventBus) - Static method in class com.cotani.achievement.CotaniAchievements
-
Creates an isolated in-memory achievement service.
M
- maxMutationAttempts() - Method in record class com.cotani.achievement.api.AchievementServiceOptions
-
Returns the value of the
maxMutationAttemptsrecord component. - maxPendingMutations() - Method in record class com.cotani.achievement.api.AchievementServiceOptions
-
Returns the value of the
maxPendingMutationsrecord component. - migrate(Schema) - Method in class com.cotani.achievement.storage.CreateAchievementIndexesMigration
- migrate(Schema) - Method in class com.cotani.achievement.storage.CreateAchievementTablesMigration
- migrations() - Static method in class com.cotani.achievement.CotaniAchievements
-
Returns the migrations required by the SQL adapter.
- migrations() - Static method in class com.cotani.achievement.storage.StorageAchievementRepository
O
- of(String) - Static method in record class com.cotani.achievement.api.AchievementId
P
- playerId() - Method in exception class com.cotani.achievement.api.AchievementNotUnlockedException
- playerId() - Method in record class com.cotani.achievement.api.AchievementProgress
-
Returns the value of the
playerIdrecord component. - playerId() - Method in record class com.cotani.achievement.api.event.AchievementUnlockedEvent
-
Returns the value of the
playerIdrecord component. - progress() - Method in record class com.cotani.achievement.api.event.AchievementUnlockedEvent
-
Returns the value of the
progressrecord component.
R
- register(AchievementDefinition) - Method in interface com.cotani.achievement.api.AchievementService
-
Registers a process-local definition; duplicate ids are rejected.
- repositoryTimeout() - Method in record class com.cotani.achievement.api.AchievementServiceOptions
-
Returns the value of the
repositoryTimeoutrecord component. - requiredValue() - Method in record class com.cotani.achievement.api.AchievementCriterion
-
Returns the value of the
requiredValuerecord component. - revision() - Method in record class com.cotani.achievement.api.AchievementProgress
-
Returns the value of the
revisionrecord component. - rewardClaimId() - Method in record class com.cotani.achievement.api.AchievementProgress
-
Returns the value of the
rewardClaimIdrecord component. - rewardId() - Method in record class com.cotani.achievement.api.AchievementDefinition
-
Returns the value of the
rewardIdrecord component. - rewardId() - Method in record class com.cotani.achievement.api.event.AchievementUnlockedEvent
-
Returns the value of the
rewardIdrecord component.
S
- saveAsync(AchievementProgress, long) - Method in interface com.cotani.achievement.api.AchievementRepository
-
Saves a snapshot only when its stored revision equals the expected revision.
- saveAsync(AchievementProgress, long) - Method in class com.cotani.achievement.storage.StorageAchievementRepository
- statisticId() - Method in record class com.cotani.achievement.api.AchievementCriterion
-
Returns the value of the
statisticIdrecord component. - storage(CotaniStorage, StatisticService, RewardService, EventBus) - Static method in class com.cotani.achievement.CotaniAchievements
-
Creates a SQL-backed service over caller-owned Cotani storage.
- storage(CotaniStorage, StatisticService, RewardService, EventBus, AchievementServiceOptions) - Static method in class com.cotani.achievement.CotaniAchievements
-
Creates a SQL-backed service with explicit operational options.
- StorageAchievementRepository - Class in com.cotani.achievement.storage
-
SQL-backed optimistic repository for per-player achievement progress.
- StorageAchievementRepository(CotaniStorage) - Constructor for class com.cotani.achievement.storage.StorageAchievementRepository
T
- toString() - Method in record class com.cotani.achievement.api.AchievementCriterion
-
Returns a string representation of this record class.
- toString() - Method in record class com.cotani.achievement.api.AchievementDefinition
-
Returns a string representation of this record class.
- toString() - Method in record class com.cotani.achievement.api.AchievementId
-
Returns a string representation of this record class.
- toString() - Method in record class com.cotani.achievement.api.AchievementProgress
-
Returns a string representation of this record class.
- toString() - Method in record class com.cotani.achievement.api.AchievementServiceOptions
-
Returns a string representation of this record class.
- toString() - Method in record class com.cotani.achievement.api.event.AchievementUnlockedEvent
-
Returns a string representation of this record class.
U
- unlocked() - Method in record class com.cotani.achievement.api.AchievementProgress
-
Returns the value of the
unlockedrecord component. - unlockedAt() - Method in record class com.cotani.achievement.api.AchievementProgress
-
Returns the value of the
unlockedAtrecord component.
V
- value() - Method in record class com.cotani.achievement.api.AchievementId
-
Returns the value of the
valuerecord component. - version() - Method in class com.cotani.achievement.storage.CreateAchievementIndexesMigration
- version() - Method in class com.cotani.achievement.storage.CreateAchievementTablesMigration
W
- withEventTimeout(Duration) - Method in record class com.cotani.achievement.api.AchievementServiceOptions
- withEventTimeout(CompletionStage) - Method in record class com.cotani.achievement.api.AchievementServiceOptions
-
Applies a best-effort timeout to event publication.
- withMaxMutationAttempts(int) - Method in record class com.cotani.achievement.api.AchievementServiceOptions
- withMaxPendingMutations(int) - Method in record class com.cotani.achievement.api.AchievementServiceOptions
- withRepositoryTimeout(Duration) - Method in record class com.cotani.achievement.api.AchievementServiceOptions
- withRepositoryTimeout(CompletionStage) - Method in record class com.cotani.achievement.api.AchievementServiceOptions
-
Applies a caller-visible timeout without cancelling the underlying operation.
- withRevision(long) - Method in record class com.cotani.achievement.api.AchievementProgress
All Classes and Interfaces|All Packages|Serialized Form