Klasse InactivityReleaseService
java.lang.Object
de.delinkedde.areashopreborn.application.InactivityReleaseService
Executes conservative, journaled ownership returns for proven inactive parcel owners.
-
Konstruktorübersicht
KonstruktorenKonstruktorBeschreibungInactivityReleaseService(Database database, PlayerActivityRepository activity, InactivityReleaseRepository releases, EstateRepository estates, PermissionGateway permissions, WorldGuardGateway worldGuard, ThreadBridge threads) Creates the inactivity release workflow.InactivityReleaseService(Database database, PlayerActivityRepository activity, InactivityReleaseRepository releases, EstateRepository estates, PermissionGateway permissions, WorldGuardGateway worldGuard, ThreadBridge threads, int recoveryBatchSize) Creates the workflow with an explicit restart-recovery batch size.InactivityReleaseService(Database database, PlayerActivityRepository activity, InactivityReleaseRepository releases, EstateRepository estates, PermissionGateway permissions, WorldGuardGateway worldGuard, ThreadBridge threads, int recoveryBatchSize, int maximumRegionsPerRun) Creates the workflow with explicit recovery and destructive work ceilings. -
Methodenübersicht
Modifizierer und TypMethodeBeschreibungreleaseEligible(Duration inactiveFor, int maximumOwners) Returns eligible parcels owned by tracked players inactive beyond the threshold.Retries only the WorldGuard stage of a quarantined release action.
-
Konstruktordetails
-
InactivityReleaseService
public InactivityReleaseService(Database database, PlayerActivityRepository activity, InactivityReleaseRepository releases, EstateRepository estates, PermissionGateway permissions, WorldGuardGateway worldGuard, ThreadBridge threads) Creates the inactivity release workflow.- Parameter:
database- asynchronous database executoractivity- player activity repositoryreleases- release journal repositoryestates- estate state repositorypermissions- offline-capable permission adapterworldGuard- protection adapterthreads- server-thread bridge
-
InactivityReleaseService
public InactivityReleaseService(Database database, PlayerActivityRepository activity, InactivityReleaseRepository releases, EstateRepository estates, PermissionGateway permissions, WorldGuardGateway worldGuard, ThreadBridge threads, int recoveryBatchSize) Creates the workflow with an explicit restart-recovery batch size.- Parameter:
database- asynchronous database executoractivity- player activity repositoryreleases- release journal repositoryestates- estate state repositorypermissions- offline-capable permission adapterworldGuard- protection adapterthreads- server-thread bridgerecoveryBatchSize- maximum DB-applied actions recovered per SQLite task
-
InactivityReleaseService
public InactivityReleaseService(Database database, PlayerActivityRepository activity, InactivityReleaseRepository releases, EstateRepository estates, PermissionGateway permissions, WorldGuardGateway worldGuard, ThreadBridge threads, int recoveryBatchSize, int maximumRegionsPerRun) Creates the workflow with explicit recovery and destructive work ceilings.- Parameter:
database- asynchronous database executoractivity- player activity repositoryreleases- release journal repositoryestates- estate state repositorypermissions- offline-capable permission adapterworldGuard- protection adapterthreads- server-thread bridgerecoveryBatchSize- maximum DB-applied actions recovered per SQLite taskmaximumRegionsPerRun- maximum new release candidates processed per scan
-
-
Methodendetails
-
releaseEligible
public CompletableFuture<InactivityReleaseReport> releaseEligible(Duration inactiveFor, int maximumOwners) Returns eligible parcels owned by tracked players inactive beyond the threshold.No refund is created. Ownership returns to the recorded landlord, or to the virtual server identity when no landlord exists. Cities, rentals, listings, unexpected states, and bypassed players are skipped.
- Parameter:
inactiveFor- required inactivity durationmaximumOwners- maximum owners inspected in this batch- Gibt zurück:
- future containing a detailed processing report
-
retry
Retries only the WorldGuard stage of a quarantined release action.- Parameter:
actionId- journal action identifier- Gibt zurück:
- completion future
-