mirror of
https://github.com/BlueMap-Minecraft/BlueMapAPI.git
synced 2024-09-27 06:02:42 +02:00
Tidy up
This commit is contained in:
parent
8b179fb5e0
commit
ec97711349
@ -85,13 +85,12 @@ tasks.javadoc {
|
|||||||
options {
|
options {
|
||||||
(this as? StandardJavadocDocletOptions)?.apply {
|
(this as? StandardJavadocDocletOptions)?.apply {
|
||||||
links(
|
links(
|
||||||
"https://docs.oracle.com/javase/8/docs/api/",
|
"https://docs.oracle.com/en/java/javase/16/docs/api/",
|
||||||
"https://javadoc.io/doc/com.flowpowered/flow-math/1.0.3/",
|
"https://javadoc.io/doc/com.flowpowered/flow-math/1.0.3/",
|
||||||
"https://javadoc.io/doc/com.google.code.gson/gson/2.8.0/",
|
"https://javadoc.io/doc/com.google.code.gson/gson/2.8.0/",
|
||||||
)
|
)
|
||||||
addStringOption("Xdoclint:none", "-quiet")
|
addStringOption("Xdoclint:none", "-quiet")
|
||||||
if (JavaVersion.current().isJava9Compatible)
|
addBooleanOption("html5", true)
|
||||||
addBooleanOption("html5", true)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -35,6 +35,7 @@
|
|||||||
/**
|
/**
|
||||||
* A storage that is able to hold any "asset"-data for a map. For example images, icons, scripts or json-files.
|
* A storage that is able to hold any "asset"-data for a map. For example images, icons, scripts or json-files.
|
||||||
*/
|
*/
|
||||||
|
@SuppressWarnings("unused")
|
||||||
public interface AssetStorage {
|
public interface AssetStorage {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -28,6 +28,7 @@
|
|||||||
import com.google.gson.JsonElement;
|
import com.google.gson.JsonElement;
|
||||||
import com.google.gson.JsonObject;
|
import com.google.gson.JsonObject;
|
||||||
import de.bluecolored.bluemap.api.plugin.Plugin;
|
import de.bluecolored.bluemap.api.plugin.Plugin;
|
||||||
|
import org.jetbrains.annotations.ApiStatus;
|
||||||
|
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
import java.io.InputStreamReader;
|
import java.io.InputStreamReader;
|
||||||
@ -42,6 +43,7 @@
|
|||||||
* An API to control the running instance of BlueMap.
|
* An API to control the running instance of BlueMap.
|
||||||
* <p>This API is thread-save, so you <b>can</b> use it async, off the main-server-thread, to save performance!</p>
|
* <p>This API is thread-save, so you <b>can</b> use it async, off the main-server-thread, to save performance!</p>
|
||||||
*/
|
*/
|
||||||
|
@SuppressWarnings({"unused", "UnusedReturnValue"})
|
||||||
public abstract class BlueMapAPI {
|
public abstract class BlueMapAPI {
|
||||||
|
|
||||||
@SuppressWarnings("unused")
|
@SuppressWarnings("unused")
|
||||||
@ -57,6 +59,7 @@ public abstract class BlueMapAPI {
|
|||||||
gitHash = element.get("git-hash").getAsString();
|
gitHash = element.get("git-hash").getAsString();
|
||||||
} catch (Exception ex) {
|
} catch (Exception ex) {
|
||||||
System.err.println("Failed to load version from resources!");
|
System.err.println("Failed to load version from resources!");
|
||||||
|
//noinspection CallToPrintStackTrace
|
||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -191,39 +194,33 @@ public static synchronized boolean unregisterListener(Consumer<BlueMapAPI> consu
|
|||||||
* @return <code>true</code> if the instance has been registered, <code>false</code> if there already was an instance registered
|
* @return <code>true</code> if the instance has been registered, <code>false</code> if there already was an instance registered
|
||||||
* @throws ExecutionException if a listener threw an exception during the registration
|
* @throws ExecutionException if a listener threw an exception during the registration
|
||||||
*/
|
*/
|
||||||
protected static synchronized boolean registerInstance(BlueMapAPI instance) throws ExecutionException {
|
@ApiStatus.Internal
|
||||||
|
protected static synchronized boolean registerInstance(BlueMapAPI instance) throws Exception {
|
||||||
if (BlueMapAPI.instance != null) return false;
|
if (BlueMapAPI.instance != null) return false;
|
||||||
|
|
||||||
BlueMapAPI.instance = instance;
|
BlueMapAPI.instance = instance;
|
||||||
|
|
||||||
List<Throwable> thrownExceptions = new ArrayList<>(0);
|
List<Exception> thrownExceptions = new ArrayList<>(0);
|
||||||
|
|
||||||
for (Consumer<BlueMapAPI> listener : BlueMapAPI.onEnableConsumers) {
|
for (Consumer<BlueMapAPI> listener : BlueMapAPI.onEnableConsumers) {
|
||||||
try {
|
try {
|
||||||
listener.accept(BlueMapAPI.instance);
|
listener.accept(BlueMapAPI.instance);
|
||||||
} catch (Throwable ex) {
|
} catch (Exception ex) {
|
||||||
thrownExceptions.add(ex);
|
thrownExceptions.add(ex);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!thrownExceptions.isEmpty()) {
|
return throwAsOne(thrownExceptions);
|
||||||
ExecutionException ex = new ExecutionException(thrownExceptions.get(0));
|
|
||||||
for (int i = 1; i < thrownExceptions.size(); i++) {
|
|
||||||
ex.addSuppressed(thrownExceptions.get(i));
|
|
||||||
}
|
|
||||||
throw ex;
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Used by BlueMap to unregister the API and call the listeners properly.
|
* Used by BlueMap to unregister the API and call the listeners properly.
|
||||||
* @param instance the {@link BlueMapAPI} instance
|
* @param instance the {@link BlueMapAPI} instance
|
||||||
* @return <code>true</code> if the instance was unregistered, <code>false</code> if there was no or an other instance registered
|
* @return <code>true</code> if the instance was unregistered, <code>false</code> if there was no or another instance registered
|
||||||
* @throws ExecutionException if a listener threw an exception during the un-registration
|
* @throws ExecutionException if a listener threw an exception during the un-registration
|
||||||
*/
|
*/
|
||||||
protected static synchronized boolean unregisterInstance(BlueMapAPI instance) throws ExecutionException {
|
@ApiStatus.Internal
|
||||||
|
protected static synchronized boolean unregisterInstance(BlueMapAPI instance) throws Exception {
|
||||||
if (BlueMapAPI.instance != instance) return false;
|
if (BlueMapAPI.instance != instance) return false;
|
||||||
|
|
||||||
List<Exception> thrownExceptions = new ArrayList<>(0);
|
List<Exception> thrownExceptions = new ArrayList<>(0);
|
||||||
@ -238,8 +235,12 @@ protected static synchronized boolean unregisterInstance(BlueMapAPI instance) th
|
|||||||
|
|
||||||
BlueMapAPI.instance = null;
|
BlueMapAPI.instance = null;
|
||||||
|
|
||||||
|
return throwAsOne(thrownExceptions);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static boolean throwAsOne(List<Exception> thrownExceptions) throws Exception {
|
||||||
if (!thrownExceptions.isEmpty()) {
|
if (!thrownExceptions.isEmpty()) {
|
||||||
ExecutionException ex = new ExecutionException(thrownExceptions.get(0));
|
Exception ex = thrownExceptions.get(0);
|
||||||
for (int i = 1; i < thrownExceptions.size(); i++) {
|
for (int i = 1; i < thrownExceptions.size(); i++) {
|
||||||
ex.addSuppressed(thrownExceptions.get(i));
|
ex.addSuppressed(thrownExceptions.get(i));
|
||||||
}
|
}
|
||||||
|
@ -28,6 +28,7 @@
|
|||||||
import com.flowpowered.math.vector.Vector3d;
|
import com.flowpowered.math.vector.Vector3d;
|
||||||
import com.flowpowered.math.vector.Vector3i;
|
import com.flowpowered.math.vector.Vector3i;
|
||||||
import de.bluecolored.bluemap.api.markers.MarkerSet;
|
import de.bluecolored.bluemap.api.markers.MarkerSet;
|
||||||
|
import org.jetbrains.annotations.ApiStatus;
|
||||||
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.function.Predicate;
|
import java.util.function.Predicate;
|
||||||
@ -36,6 +37,7 @@
|
|||||||
* This class represents a map that is rendered by BlueMap of a specific world ({@link BlueMapWorld}).
|
* This class represents a map that is rendered by BlueMap of a specific world ({@link BlueMapWorld}).
|
||||||
* Each map belongs to a map configured in BlueMap's configuration file (in the <code>maps: []</code> list).
|
* Each map belongs to a map configured in BlueMap's configuration file (in the <code>maps: []</code> list).
|
||||||
*/
|
*/
|
||||||
|
@SuppressWarnings("unused")
|
||||||
public interface BlueMapMap {
|
public interface BlueMapMap {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -91,6 +93,7 @@ public interface BlueMapMap {
|
|||||||
* <p>Any previously set filters will get overwritten with the new one. You can get the current filter using {@link #getTileFilter()} and combine them if you wish.</p>
|
* <p>Any previously set filters will get overwritten with the new one. You can get the current filter using {@link #getTileFilter()} and combine them if you wish.</p>
|
||||||
* @param filter The filter that will be used from now on.
|
* @param filter The filter that will be used from now on.
|
||||||
*/
|
*/
|
||||||
|
@ApiStatus.Experimental
|
||||||
void setTileFilter(Predicate<Vector2i> filter);
|
void setTileFilter(Predicate<Vector2i> filter);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -109,6 +112,7 @@ public interface BlueMapMap {
|
|||||||
/**
|
/**
|
||||||
* Returns the currently set TileFilter. The default TileFilter is equivalent to <code>t -> true</code>.
|
* Returns the currently set TileFilter. The default TileFilter is equivalent to <code>t -> true</code>.
|
||||||
*/
|
*/
|
||||||
|
@ApiStatus.Experimental
|
||||||
Predicate<Vector2i> getTileFilter();
|
Predicate<Vector2i> getTileFilter();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -26,12 +26,12 @@
|
|||||||
|
|
||||||
import com.flowpowered.math.vector.Vector2i;
|
import com.flowpowered.math.vector.Vector2i;
|
||||||
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The {@link RenderManager} is used to schedule tile-renders and process them on a number of different threads.
|
* The {@link RenderManager} is used to schedule tile-renders and process them on a number of different threads.
|
||||||
*/
|
*/
|
||||||
|
@SuppressWarnings("unused")
|
||||||
public interface RenderManager {
|
public interface RenderManager {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -66,9 +66,8 @@ default boolean scheduleMapUpdateTask(BlueMapMap map) {
|
|||||||
* An update-task will be scheduled right after the purge, to get the map up-to-date again.
|
* An update-task will be scheduled right after the purge, to get the map up-to-date again.
|
||||||
* @param map the map to be purged
|
* @param map the map to be purged
|
||||||
* @return true if a new task has been scheduled, false if not (usually because there is already an update-task for this map scheduled)
|
* @return true if a new task has been scheduled, false if not (usually because there is already an update-task for this map scheduled)
|
||||||
* @throws IOException if an IOException occurs while trying to create the task.
|
|
||||||
*/
|
*/
|
||||||
boolean scheduleMapPurgeTask(BlueMapMap map) throws IOException;
|
boolean scheduleMapPurgeTask(BlueMapMap map);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Getter for the current size of the render-queue.
|
* Getter for the current size of the render-queue.
|
||||||
|
@ -24,6 +24,8 @@
|
|||||||
*/
|
*/
|
||||||
package de.bluecolored.bluemap.api;
|
package de.bluecolored.bluemap.api;
|
||||||
|
|
||||||
|
import org.jetbrains.annotations.ApiStatus;
|
||||||
|
|
||||||
import java.awt.image.BufferedImage;
|
import java.awt.image.BufferedImage;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.nio.file.Path;
|
import java.nio.file.Path;
|
||||||
@ -31,6 +33,7 @@
|
|||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
import java.util.function.Consumer;
|
import java.util.function.Consumer;
|
||||||
|
|
||||||
|
@SuppressWarnings("unused")
|
||||||
public interface WebApp {
|
public interface WebApp {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -44,6 +47,7 @@ public interface WebApp {
|
|||||||
* @param player the UUID of the player
|
* @param player the UUID of the player
|
||||||
* @param visible true if the player-marker should be visible, false if it should be hidden
|
* @param visible true if the player-marker should be visible, false if it should be hidden
|
||||||
*/
|
*/
|
||||||
|
@ApiStatus.Experimental
|
||||||
void setPlayerVisibility(UUID player, boolean visible);
|
void setPlayerVisibility(UUID player, boolean visible);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -51,6 +55,7 @@ public interface WebApp {
|
|||||||
* @see #setPlayerVisibility(UUID, boolean)
|
* @see #setPlayerVisibility(UUID, boolean)
|
||||||
* @param player the UUID of the player
|
* @param player the UUID of the player
|
||||||
*/
|
*/
|
||||||
|
@ApiStatus.Experimental
|
||||||
boolean getPlayerVisibility(UUID player);
|
boolean getPlayerVisibility(UUID player);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -49,8 +49,9 @@ public final class MarkerGson {
|
|||||||
.setLenient()
|
.setLenient()
|
||||||
.create();
|
.create();
|
||||||
|
|
||||||
/* This class can not be instantiated. */
|
private MarkerGson() {
|
||||||
private MarkerGson() {}
|
throw new UnsupportedOperationException("Utility class");
|
||||||
|
}
|
||||||
|
|
||||||
public static GsonBuilder addAdapters(GsonBuilder builder) {
|
public static GsonBuilder addAdapters(GsonBuilder builder) {
|
||||||
return builder
|
return builder
|
||||||
|
@ -24,6 +24,7 @@
|
|||||||
*/
|
*/
|
||||||
package de.bluecolored.bluemap.api.plugin;
|
package de.bluecolored.bluemap.api.plugin;
|
||||||
|
|
||||||
|
@SuppressWarnings("unused")
|
||||||
public interface Plugin {
|
public interface Plugin {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
Reference in New Issue
Block a user