Interface WorldManager
-
public interface WorldManager
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Deprecated Methods Modifier and Type Method Description java.util.concurrent.CompletableFuture<java.lang.Boolean>
copyWorld(ResourceKey key, ResourceKey copyKey)
Copies world data under the providedkey
to a provided key.ServerWorld
defaultWorld()
Deprecated.Useworld(ResourceKey)
withDefaultWorldKeys.DEFAULT
insteadjava.util.concurrent.CompletableFuture<java.lang.Boolean>
deleteWorld(ResourceKey key)
Deletes world data under the providedkey
.java.util.concurrent.CompletableFuture<java.util.Optional<ServerWorldProperties>>
loadProperties(ResourceKey key)
Loads an offlineproperties
.java.util.concurrent.CompletableFuture<java.util.Optional<WorldTemplate>>
loadTemplate(ResourceKey key)
java.util.concurrent.CompletableFuture<ServerWorld>
loadWorld(ResourceKey key)
java.util.concurrent.CompletableFuture<ServerWorld>
loadWorld(WorldTemplate template)
java.util.concurrent.CompletableFuture<java.lang.Boolean>
moveWorld(ResourceKey key, ResourceKey moveKey)
Moves world data under the providedkey
to another key.default java.util.List<ResourceKey>
offlineWorldKeys()
java.util.concurrent.CompletableFuture<java.lang.Boolean>
saveProperties(ServerWorldProperties properties)
Saves aproperties
.java.util.concurrent.CompletableFuture<java.lang.Boolean>
saveTemplate(WorldTemplate template)
Saves atemplate
.Server
server()
Gets theServer
.boolean
templateExists(ResourceKey key)
java.util.List<ResourceKey>
templateKeys()
java.util.concurrent.CompletableFuture<java.lang.Boolean>
unloadWorld(ResourceKey key)
java.util.concurrent.CompletableFuture<java.lang.Boolean>
unloadWorld(ServerWorld world)
Unloads aworld
.java.util.Optional<ServerWorld>
world(ResourceKey key)
java.util.Optional<java.nio.file.Path>
worldDirectory(ResourceKey key)
Gets adirectory
that exists for the providedworld key
.boolean
worldExists(ResourceKey key)
Gets if akey
exists as an actual world, offline or online.java.util.Optional<ResourceKey>
worldKey(java.util.UUID uniqueId)
Gets akey
byunique id
.java.util.List<ResourceKey>
worldKeys()
java.util.Collection<ServerWorld>
worlds()
Gets all currently loadedworlds
.java.util.Collection<ServerWorld>
worldsOfType(WorldType type)
-
-
-
Method Detail
-
world
java.util.Optional<ServerWorld> world(ResourceKey key)
- Parameters:
key
- The key- Returns:
- The world, if found
-
worldDirectory
java.util.Optional<java.nio.file.Path> worldDirectory(ResourceKey key)
Gets adirectory
that exists for the providedworld key
.It is not required for the implementation to validate that the directory contains a proper world, only that the directory exists.
- Parameters:
key
- The key- Returns:
- The directory or
Optional.empty()
if not found
-
defaultWorld
@Deprecated ServerWorld defaultWorld()
Deprecated.Useworld(ResourceKey)
withDefaultWorldKeys.DEFAULT
insteadGets thedefault world
.If the default world isn't loaded, an
IllegalStateException
will be thrown as this means the manager is not loaded yet.It is up to the implementation to define what the default world actually is.
- Returns:
- The default world
-
worlds
java.util.Collection<ServerWorld> worlds()
Gets all currently loadedworlds
.- Returns:
- The worlds
-
worldKeys
java.util.List<ResourceKey> worldKeys()
Gets thekeys
of both online and offlineworlds
.It is up to the implementation to determine how offline keys are provided to the developer.
- Returns:
- The keys
-
templateKeys
java.util.List<ResourceKey> templateKeys()
Gets thekeys
oftemplates
.It is up to the implementation to determine how template keys are provided to the developer.
- Returns:
- The keys
-
offlineWorldKeys
default java.util.List<ResourceKey> offlineWorldKeys()
Gets thekeys
of offlineworlds
.It is up to the implementation to determine how offline keys are provided to the developer.
- Returns:
- The keys
-
worldExists
boolean worldExists(ResourceKey key)
Gets if akey
exists as an actual world, offline or online.- Parameters:
key
- The key- Returns:
- True if existed, false if not
-
worldKey
java.util.Optional<ResourceKey> worldKey(java.util.UUID uniqueId)
Gets akey
byunique id
.- Parameters:
uniqueId
- The unique id- Returns:
- The key or
Optional.empty()
if not found
-
worldsOfType
java.util.Collection<ServerWorld> worldsOfType(WorldType type)
- Parameters:
type
- The type- Returns:
- The
worlds
-
loadWorld
java.util.concurrent.CompletableFuture<ServerWorld> loadWorld(WorldTemplate template)
Loads aworld
from atemplate
.If a world is already loaded by the
key
of the template, the world will be returned instead.- Parameters:
template
- The template- Returns:
- The world
-
loadWorld
java.util.concurrent.CompletableFuture<ServerWorld> loadWorld(ResourceKey key)
Loads aworld
by akey
.If a world with the given name is already loaded then it is returned instead.
- Parameters:
key
- The key- Returns:
- The world
-
unloadWorld
java.util.concurrent.CompletableFuture<java.lang.Boolean> unloadWorld(ResourceKey key)
Unloads aworld
by akey
.The default Minecraft world cannot be unloaded. Additional conditions for how and when a world may be unloaded are left up to the implementation to define.
- Parameters:
key
- The key to unload- Returns:
- Whether the operation was successful
-
unloadWorld
java.util.concurrent.CompletableFuture<java.lang.Boolean> unloadWorld(ServerWorld world)
Unloads aworld
.The default Minecraft world cannot be unloaded. Additional conditions for how and when a world may be unloaded are left up to the implementation to define.
- Parameters:
world
- The world to unload- Returns:
- Whether the operation was successful
-
templateExists
boolean templateExists(ResourceKey key)
- Parameters:
key
- The key- Returns:
- True if it exists, false if not
-
loadTemplate
java.util.concurrent.CompletableFuture<java.util.Optional<WorldTemplate>> loadTemplate(ResourceKey key)
- Parameters:
key
- The key- Returns:
- The template or
Optional.empty()
if not found
-
saveTemplate
java.util.concurrent.CompletableFuture<java.lang.Boolean> saveTemplate(WorldTemplate template)
Saves atemplate
.It is left up to the implementation on how exactly templates are saved, if at all.
- Parameters:
template
- The template- Returns:
- Whether the operation was successful
-
loadProperties
java.util.concurrent.CompletableFuture<java.util.Optional<ServerWorldProperties>> loadProperties(ResourceKey key)
Loads an offlineproperties
.It is left up to the implementation on what conditions cause a failure of loading properties.
- Parameters:
key
- The key- Returns:
- The properties
-
saveProperties
java.util.concurrent.CompletableFuture<java.lang.Boolean> saveProperties(ServerWorldProperties properties)
Saves aproperties
.- Parameters:
properties
- The properties- Returns:
- True if successful, false if not
-
copyWorld
java.util.concurrent.CompletableFuture<java.lang.Boolean> copyWorld(ResourceKey key, ResourceKey copyKey)
Copies world data under the providedkey
to a provided key.If the world is loaded, the following will occur:
- World is saved
- World saving is disabled
- World is copied
- World saving is enabled
It is left up to the implementation on exactly what is copied.
- Parameters:
key
- The keycopyKey
- The copied key for the new properties- Returns:
- The copied properties
-
moveWorld
java.util.concurrent.CompletableFuture<java.lang.Boolean> moveWorld(ResourceKey key, ResourceKey moveKey)
Moves world data under the providedkey
to another key.If the world is loaded, the following will occur:
- World is saved
- World is unloaded
- World is moved
The default Minecraft world cannot be moved. Additionally, it is left up to the implementation on exactly what is moved.
- Parameters:
key
- The keymoveKey
- The move key- Returns:
- True if the move was successful
-
deleteWorld
java.util.concurrent.CompletableFuture<java.lang.Boolean> deleteWorld(ResourceKey key)
Deletes world data under the providedkey
.If the world is loaded, the following will occur:
- World is unloaded
- World is deleted
The default Minecraft world cannot be deleted. Additionally, it is left up to the implementation on exactly what is deleted.
- Parameters:
key
- The key- Returns:
- True if the deletion was successful.
-
-