Class AbstractClaimIOService<T extends su.nightexpress.excellentclaims.api.claim.Claim, B extends AbstractClaimBuilder<T,B>>

java.lang.Object
su.nightexpress.excellentclaims.core.claim.io.AbstractClaimIOService<T,B>
Direct Known Subclasses:
AbstractOwnableClaimIOSerivce

@NullMarked public abstract class AbstractClaimIOService<T extends su.nightexpress.excellentclaims.api.claim.Claim, B extends AbstractClaimBuilder<T,B>> extends Object
  • Field Details

    • logger

      protected final Logger logger
    • directory

      protected final Path directory
    • domain

      protected final su.nightexpress.excellentclaims.api.core.id.Identifier domain
  • Constructor Details

    • AbstractClaimIOService

      public AbstractClaimIOService(Logger logger, Path directory, su.nightexpress.excellentclaims.api.core.id.Identifier domain)
  • Method Details

    • createBuilder

      protected abstract B createBuilder(DefaultClaimIdentity identity)
    • getClaimsDirectory

      public Path getClaimsDirectory(su.nightexpress.nightcore.bridge.key.AdaptedKey worldKey)
    • getClaimFile

      public Path getClaimFile(@NonNull T claim)
    • getClaimFile

      public Path getClaimFile(String id, su.nightexpress.nightcore.bridge.key.AdaptedKey worldKey)
    • readClaims

      public Collection<T> readClaims(su.nightexpress.nightcore.bridge.key.AdaptedKey worldKey)
    • loadClaim

      public T loadClaim(su.nightexpress.nightcore.bridge.key.AdaptedKey worldKey, Path file) throws su.nightexpress.nightcore.exception.ModelLoadException
      Throws:
      su.nightexpress.nightcore.exception.ModelLoadException
    • loadAdditionalData

      protected abstract void loadAdditionalData(@NonNull B builder, su.nightexpress.nightcore.config.FileConfig config) throws su.nightexpress.nightcore.exception.ModelLoadException
      Throws:
      su.nightexpress.nightcore.exception.ModelLoadException
    • createClaim

      public T createClaim(su.nightexpress.excellentclaims.api.core.id.Identifier id, org.bukkit.World world)
    • createAdditionalData

      protected abstract void createAdditionalData(@NonNull B builder)
    • deleteClaimFile

      public boolean deleteClaimFile(@NonNull T claim)
    • writeClaim

      public void writeClaim(@NonNull T claim)
    • saveCommonData

      protected void saveCommonData(@NonNull T claim, su.nightexpress.nightcore.config.FileConfig config)
    • saveAdditionalData

      protected abstract void saveAdditionalData(@NonNull T claim, su.nightexpress.nightcore.config.FileConfig config)