Klasse SellbackService

java.lang.Object
de.delinkedde.areashopreborn.application.SellbackService

public final class SellbackService extends Object
Returns player-owned parcels to their city landlord or the virtual server owner.

Vault cannot participate in the SQLite transaction, so the workflow records progress before touching money and compensates the payment when the database transition fails. Failures after ownership was committed are retained for administrator review.

  • Konstruktordetails

    • SellbackService

      public SellbackService(Database database, EstateRepository estates, SellbackRepository sellbacks, EconomyGateway economy, WorldGuardGateway worldGuard, ThreadBridge threads, BigDecimal payoutPercent)
      Creates the sellback workflow.
      Parameter:
      database - asynchronous database executor
      estates - estate repository
      sellbacks - sellback journal repository
      economy - Vault economy adapter
      worldGuard - WorldGuard adapter
      threads - server-thread bridge
      payoutPercent - percentage of the last completed purchase price paid to the owner
    • SellbackService

      public SellbackService(Database database, EstateRepository estates, SellbackRepository sellbacks, EconomyGateway economy, WorldGuardGateway worldGuard, ThreadBridge threads, BigDecimal payoutPercent, CompletableFuture<?> startupRecovery)
      Creates a sellback workflow gated by the startup recovery scan.
      Parameter:
      database - asynchronous database executor
      estates - estate repository
      sellbacks - sellback journal repository
      economy - Vault economy adapter
      worldGuard - WorldGuard adapter
      threads - server-thread bridge
      payoutPercent - percentage of the latest purchase price paid back
      startupRecovery - recovery gate completed before any new payment starts
    • SellbackService

      public SellbackService(Database database, EstateRepository estates, SellbackRepository sellbacks, EconomyGateway economy, WorldGuardGateway worldGuard, ThreadBridge threads, BigDecimal payoutPercent, EventPublisher events)
      Creates a sellback service with an explicit event publisher.
      Parameter:
      database - database executor
      estates - estate repository
      sellbacks - sellback journal repository
      economy - Vault economy adapter
      worldGuard - WorldGuard adapter
      threads - Paper thread bridge
      payoutPercent - percentage of the latest purchase price paid back
      events - synchronous platform event publisher
    • SellbackService

      public SellbackService(Database database, EstateRepository estates, SellbackRepository sellbacks, EconomyGateway economy, WorldGuardGateway worldGuard, ThreadBridge threads, BigDecimal payoutPercent, EventPublisher events, OfflinePlayerResolver players)
      Creates a sellback service with fully replaceable platform boundaries.
      Parameter:
      database - database executor
      estates - estate repository
      sellbacks - sellback journal repository
      economy - Vault economy adapter
      worldGuard - WorldGuard adapter
      threads - Paper thread bridge
      payoutPercent - percentage of the latest purchase price paid back
      events - synchronous platform event publisher
      players - Bukkit offline-player account resolver
    • SellbackService

      public SellbackService(Database database, EstateRepository estates, SellbackRepository sellbacks, EconomyGateway economy, WorldGuardGateway worldGuard, ThreadBridge threads, BigDecimal payoutPercent, CompletableFuture<?> startupRecovery, EventPublisher events, OfflinePlayerResolver players)
      Creates a sellback service with recovery and all platform boundaries replaceable.
      Parameter:
      database - database executor
      estates - estate repository
      sellbacks - sellback journal repository
      economy - Vault economy adapter
      worldGuard - WorldGuard adapter
      threads - Paper thread bridge
      payoutPercent - percentage of the latest purchase price paid back
      startupRecovery - recovery gate completed before new payments
      events - synchronous platform event publisher
      players - Bukkit offline-player account resolver
  • Methodendetails

    • sellBack

      public CompletableFuture<SellbackTransaction> sellBack(UUID sellerId, String regionName)
      Sells a parcel back using its latest completed purchase price as the reference amount.
      Parameter:
      sellerId - current parcel owner
      regionName - parcel display name or WorldGuard identifier
      Gibt zurück:
      future containing the completed journal snapshot
    • sellBack

      public CompletableFuture<SellbackTransaction> sellBack(UUID sellerId, String regionName, OperationCause cause)
      Sells a parcel back while exposing the initiating subsystem to Bukkit event listeners.
      Parameter:
      sellerId - current parcel owner
      regionName - parcel display name or WorldGuard identifier
      cause - initiating subsystem
      Gibt zurück:
      future containing the completed durable journal snapshot