Skip to content

IResourceStorage

Package: com.hypixel.hytale.component

public interface IResourceStorage

Interface for loading, saving, and removing per-store resources. Implementations provide the persistence backend for Resource instances. Each Store is created with an IResourceStorage that handles resource lifecycle.

@Nonnull
<T extends Resource<ECS_TYPE>, ECS_TYPE> CompletableFuture<T> load(@Nonnull Store<ECS_TYPE> store, @Nonnull ComponentRegistry.Data<ECS_TYPE> data, @Nonnull ResourceType<ECS_TYPE, T> resourceType)

Loads a resource for the given store. Returns a completed future with a default instance if no persisted data exists.

@Nonnull
<T extends Resource<ECS_TYPE>, ECS_TYPE> CompletableFuture<Void> save(@Nonnull Store<ECS_TYPE> store, @Nonnull ComponentRegistry.Data<ECS_TYPE> data, @Nonnull ResourceType<ECS_TYPE, T> resourceType, T resource)

Saves a resource to persistent storage.

@Nonnull
<T extends Resource<ECS_TYPE>, ECS_TYPE> CompletableFuture<Void> remove(@Nonnull Store<ECS_TYPE> store, @Nonnull ComponentRegistry.Data<ECS_TYPE> data, @Nonnull ResourceType<ECS_TYPE, T> resourceType)

Removes a persisted resource.

Hydex is an independent community resource. Hytale is a trademark of Hypixel Studios. Hydex is not affiliated with or endorsed by Hypixel Studios.