mirror of
https://github.com/filoghost/HolographicDisplays.git
synced 2024-12-24 01:37:35 +01:00
Add null-related annotations to the API
This commit is contained in:
parent
b2cd0abfe7
commit
ee76d568dc
@ -11,6 +11,8 @@ import me.filoghost.holographicdisplays.api.line.TextLine;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
/**
|
||||
* An object made of various lines, that can be items or holograms.
|
||||
@ -28,7 +30,8 @@ public interface Hologram {
|
||||
* @return the new TextLine appended
|
||||
* @since 1
|
||||
*/
|
||||
TextLine appendTextLine(String text);
|
||||
@NotNull
|
||||
TextLine appendTextLine(@Nullable String text);
|
||||
|
||||
|
||||
/**
|
||||
@ -38,7 +41,8 @@ public interface Hologram {
|
||||
* @return the new ItemLine appended
|
||||
* @since 1
|
||||
*/
|
||||
ItemLine appendItemLine(ItemStack itemStack);
|
||||
@NotNull
|
||||
ItemLine appendItemLine(@NotNull ItemStack itemStack);
|
||||
|
||||
|
||||
/**
|
||||
@ -51,7 +55,8 @@ public interface Hologram {
|
||||
* @throws IndexOutOfBoundsException if the index is out of range (index < 0 || index >= size())
|
||||
* @since 1
|
||||
*/
|
||||
TextLine insertTextLine(int index, String text);
|
||||
@NotNull
|
||||
TextLine insertTextLine(int index, @Nullable String text);
|
||||
|
||||
|
||||
/**
|
||||
@ -64,7 +69,8 @@ public interface Hologram {
|
||||
* @throws IndexOutOfBoundsException if the index is out of range (index < 0 || index >= size())
|
||||
* @since 1
|
||||
*/
|
||||
ItemLine insertItemLine(int index, ItemStack itemStack);
|
||||
@NotNull
|
||||
ItemLine insertItemLine(int index, @NotNull ItemStack itemStack);
|
||||
|
||||
|
||||
/**
|
||||
@ -75,6 +81,7 @@ public interface Hologram {
|
||||
* @throws IndexOutOfBoundsException if the index is out of range (index < 0 || index >= size())
|
||||
* @since 1
|
||||
*/
|
||||
@NotNull
|
||||
HologramLine getLine(int index);
|
||||
|
||||
/**
|
||||
@ -119,7 +126,7 @@ public interface Hologram {
|
||||
* @param location the new location
|
||||
* @since 1
|
||||
*/
|
||||
void teleport(Location location);
|
||||
void teleport(@NotNull Location location);
|
||||
|
||||
|
||||
/**
|
||||
@ -132,7 +139,7 @@ public interface Hologram {
|
||||
* @param z the Z coordinate
|
||||
* @since 1
|
||||
*/
|
||||
void teleport(World world, double x, double y, double z);
|
||||
void teleport(@NotNull World world, double x, double y, double z);
|
||||
|
||||
/**
|
||||
* Returns the position of the hologram.
|
||||
@ -140,6 +147,7 @@ public interface Hologram {
|
||||
* @return the Location of the hologram
|
||||
* @since 1
|
||||
*/
|
||||
@NotNull
|
||||
Location getLocation();
|
||||
|
||||
/**
|
||||
@ -175,6 +183,7 @@ public interface Hologram {
|
||||
* @return the world of the hologram
|
||||
* @since 1
|
||||
*/
|
||||
@NotNull
|
||||
World getWorld();
|
||||
|
||||
|
||||
@ -186,6 +195,7 @@ public interface Hologram {
|
||||
* @return the VisibilityManager of this hologram
|
||||
* @since 1
|
||||
*/
|
||||
@NotNull
|
||||
VisibilityManager getVisibilityManager();
|
||||
|
||||
|
||||
|
@ -10,6 +10,7 @@ import me.filoghost.holographicdisplays.api.placeholder.PlaceholderReplacer;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.entity.Entity;
|
||||
import org.bukkit.plugin.Plugin;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
@ -39,7 +40,8 @@ public interface HolographicDisplaysAPI {
|
||||
return 1;
|
||||
}
|
||||
|
||||
static HolographicDisplaysAPI get(Plugin plugin) {
|
||||
@NotNull
|
||||
static HolographicDisplaysAPI get(@NotNull Plugin plugin) {
|
||||
return HolographicDisplaysAPIProvider.getImplementation().getHolographicDisplaysAPI(plugin);
|
||||
}
|
||||
|
||||
@ -50,7 +52,8 @@ public interface HolographicDisplaysAPI {
|
||||
* @return the created hologram
|
||||
* @since 1
|
||||
*/
|
||||
Hologram createHologram(Location source);
|
||||
@NotNull
|
||||
Hologram createHologram(@NotNull Location source);
|
||||
|
||||
/**
|
||||
* Returns all the active holograms. A hologram is no longer active after {@link Hologram#delete()} is invoked.
|
||||
@ -58,12 +61,13 @@ public interface HolographicDisplaysAPI {
|
||||
* @return an immutable collection of active holograms
|
||||
* @since 1
|
||||
*/
|
||||
@NotNull
|
||||
Collection<Hologram> getHolograms();
|
||||
|
||||
/**
|
||||
* @since 1
|
||||
*/
|
||||
void registerPlaceholder(String identifier, int refreshIntervalTicks, PlaceholderReplacer replacer);
|
||||
void registerPlaceholder(@NotNull String identifier, int refreshIntervalTicks, @NotNull PlaceholderReplacer replacer);
|
||||
|
||||
/**
|
||||
* Returns all the registered placeholder identifiers.
|
||||
@ -71,6 +75,7 @@ public interface HolographicDisplaysAPI {
|
||||
* @return a collection of placeholder identifiers
|
||||
* @since 1
|
||||
*/
|
||||
@NotNull
|
||||
Collection<String> getRegisteredPlaceholders();
|
||||
|
||||
/**
|
||||
@ -79,7 +84,7 @@ public interface HolographicDisplaysAPI {
|
||||
* @param identifier the identifier of the placeholder to remove
|
||||
* @since 1
|
||||
*/
|
||||
void unregisterPlaceholder(String identifier);
|
||||
void unregisterPlaceholder(@NotNull String identifier);
|
||||
|
||||
/**
|
||||
* Resets and removes all the registered placeholders.
|
||||
@ -97,7 +102,7 @@ public interface HolographicDisplaysAPI {
|
||||
* @return if the entity is part of a hologram
|
||||
* @since 1
|
||||
*/
|
||||
static boolean isHologramEntity(Entity entity) {
|
||||
static boolean isHologramEntity(@NotNull Entity entity) {
|
||||
return HolographicDisplaysAPIProvider.getImplementation().isHologramEntity(entity);
|
||||
}
|
||||
|
||||
|
@ -6,6 +6,7 @@
|
||||
package me.filoghost.holographicdisplays.api;
|
||||
|
||||
import org.bukkit.entity.Player;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* This object is used to manage the visibility of a hologram.
|
||||
@ -41,7 +42,7 @@ public interface VisibilityManager {
|
||||
* @param player the involved player
|
||||
* @since 1
|
||||
*/
|
||||
void showTo(Player player);
|
||||
void showTo(@NotNull Player player);
|
||||
|
||||
/**
|
||||
* Hides the hologram to a player, overriding the value of {@link #isVisibleByDefault()}.
|
||||
@ -50,7 +51,7 @@ public interface VisibilityManager {
|
||||
* @param player the involved player
|
||||
* @since 1
|
||||
*/
|
||||
void hideTo(Player player);
|
||||
void hideTo(@NotNull Player player);
|
||||
|
||||
/**
|
||||
* Checks if a hologram is visible to a player.
|
||||
@ -59,7 +60,7 @@ public interface VisibilityManager {
|
||||
* @return if the player can see the hologram
|
||||
* @since 1
|
||||
*/
|
||||
boolean isVisibleTo(Player player);
|
||||
boolean isVisibleTo(@NotNull Player player);
|
||||
|
||||
/**
|
||||
* Resets the visibility to the default value. If you previously called {@link #showTo(Player)}
|
||||
@ -69,7 +70,7 @@ public interface VisibilityManager {
|
||||
* @param player the involved player
|
||||
* @since 1
|
||||
*/
|
||||
void resetVisibility(Player player);
|
||||
void resetVisibility(@NotNull Player player);
|
||||
|
||||
/**
|
||||
* Resets the visibility for all the players. See {@link #resetVisibility(Player)} for more details.
|
||||
|
@ -6,6 +6,7 @@
|
||||
package me.filoghost.holographicdisplays.api.handler;
|
||||
|
||||
import org.bukkit.entity.Player;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Interface to handle items being picked up by players.
|
||||
@ -19,6 +20,6 @@ public interface PickupHandler {
|
||||
* @param player the player who picked up the item
|
||||
* @since 1
|
||||
*/
|
||||
void onPickup(Player player);
|
||||
void onPickup(@NotNull Player player);
|
||||
|
||||
}
|
||||
|
@ -6,6 +6,7 @@
|
||||
package me.filoghost.holographicdisplays.api.handler;
|
||||
|
||||
import org.bukkit.entity.Player;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Interface to handle touch holograms.
|
||||
@ -19,6 +20,6 @@ public interface TouchHandler {
|
||||
* @param player the player who interacts
|
||||
* @since 1
|
||||
*/
|
||||
void onTouch(Player player);
|
||||
void onTouch(@NotNull Player player);
|
||||
|
||||
}
|
||||
|
@ -6,6 +6,7 @@
|
||||
package me.filoghost.holographicdisplays.api.line;
|
||||
|
||||
import me.filoghost.holographicdisplays.api.handler.PickupHandler;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
/**
|
||||
* A line of a Hologram that can be picked up.
|
||||
@ -20,7 +21,7 @@ public interface CollectableLine extends HologramLine {
|
||||
* @param pickupHandler the new PickupHandler, can be null.
|
||||
* @since 1
|
||||
*/
|
||||
void setPickupHandler(PickupHandler pickupHandler);
|
||||
void setPickupHandler(@Nullable PickupHandler pickupHandler);
|
||||
|
||||
/**
|
||||
* Returns the current PickupHandler of this line.
|
||||
@ -28,6 +29,7 @@ public interface CollectableLine extends HologramLine {
|
||||
* @return the current PickupHandler, can be null.
|
||||
* @since 1
|
||||
*/
|
||||
@Nullable
|
||||
PickupHandler getPickupHandler();
|
||||
|
||||
}
|
||||
|
@ -6,6 +6,7 @@
|
||||
package me.filoghost.holographicdisplays.api.line;
|
||||
|
||||
import me.filoghost.holographicdisplays.api.Hologram;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* Interface to represent a line in a Hologram.
|
||||
@ -20,6 +21,7 @@ public interface HologramLine {
|
||||
* @return the parent Hologram.
|
||||
* @since 1
|
||||
*/
|
||||
@NotNull
|
||||
Hologram getParent();
|
||||
|
||||
/**
|
||||
|
@ -6,6 +6,7 @@
|
||||
package me.filoghost.holographicdisplays.api.line;
|
||||
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
/**
|
||||
* @since 1
|
||||
@ -18,6 +19,7 @@ public interface ItemLine extends CollectableLine, TouchableLine {
|
||||
* @return the ItemStack if this ItemLine.
|
||||
* @since 1
|
||||
*/
|
||||
@NotNull
|
||||
ItemStack getItemStack();
|
||||
|
||||
/**
|
||||
@ -26,6 +28,6 @@ public interface ItemLine extends CollectableLine, TouchableLine {
|
||||
* @param itemStack the new item, should not be null.
|
||||
* @since 1
|
||||
*/
|
||||
void setItemStack(ItemStack itemStack);
|
||||
void setItemStack(@NotNull ItemStack itemStack);
|
||||
|
||||
}
|
||||
|
@ -5,6 +5,8 @@
|
||||
*/
|
||||
package me.filoghost.holographicdisplays.api.line;
|
||||
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
/**
|
||||
* @since 1
|
||||
*/
|
||||
@ -16,6 +18,7 @@ public interface TextLine extends TouchableLine {
|
||||
* @return the current text of this line.
|
||||
* @since 1
|
||||
*/
|
||||
@Nullable
|
||||
String getText();
|
||||
|
||||
/**
|
||||
@ -24,6 +27,6 @@ public interface TextLine extends TouchableLine {
|
||||
* @param text the new text of this line.
|
||||
* @since 1
|
||||
*/
|
||||
void setText(String text);
|
||||
void setText(@Nullable String text);
|
||||
|
||||
}
|
||||
|
@ -6,6 +6,7 @@
|
||||
package me.filoghost.holographicdisplays.api.line;
|
||||
|
||||
import me.filoghost.holographicdisplays.api.handler.TouchHandler;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
/**
|
||||
* A line of a Hologram that can be touched (right click).
|
||||
@ -20,7 +21,7 @@ public interface TouchableLine extends HologramLine {
|
||||
* @param touchHandler the new TouchHandler, can be null.
|
||||
* @since 1
|
||||
*/
|
||||
void setTouchHandler(TouchHandler touchHandler);
|
||||
void setTouchHandler(@Nullable TouchHandler touchHandler);
|
||||
|
||||
/**
|
||||
* Returns the current TouchHandler of this line.
|
||||
@ -28,6 +29,7 @@ public interface TouchableLine extends HologramLine {
|
||||
* @return the current TouchHandler, can be null.
|
||||
* @since 1
|
||||
*/
|
||||
@Nullable
|
||||
TouchHandler getTouchHandler();
|
||||
|
||||
}
|
||||
|
@ -15,6 +15,7 @@ public interface PlaceholderFactory {
|
||||
/**
|
||||
* @since 1
|
||||
*/
|
||||
@Nullable
|
||||
Placeholder getPlaceholder(@Nullable String argument);
|
||||
|
||||
}
|
||||
|
@ -25,6 +25,7 @@ public interface PlaceholderReplacer {
|
||||
* @return the placeholder replacement
|
||||
* @since 1
|
||||
*/
|
||||
@Nullable
|
||||
String getReplacement(@Nullable String argument);
|
||||
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user