Class AsyncTabCompleteEvent
java.lang.Object
org.bukkit.event.Event
com.destroystokyo.paper.event.server.AsyncTabCompleteEvent
- All Implemented Interfaces:
Cancellable
Allows plugins to compute tab completion results asynchronously. If this event provides completions, then the standard synchronous process will not be fired to populate the results. However, the synchronous TabCompleteEvent will fire with the Async results.
Only 1 process will be allowed to provide completions, the Async Event, or the standard process.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic interface
A rich tab completion, consisting of a string suggestion, and a nullableComponent
tooltip.Nested classes/interfaces inherited from class org.bukkit.event.Event
Event.Result
-
Constructor Summary
ConstructorDescriptionAsyncTabCompleteEvent
(@NotNull CommandSender sender, @NotNull String buffer, boolean isCommand, @Nullable Location loc) AsyncTabCompleteEvent
(@NotNull CommandSender sender, @NotNull List<String> completions, @NotNull String buffer, boolean isCommand, @Nullable Location loc) Deprecated. -
Method Summary
Modifier and TypeMethodDescriptionThe list ofcompletions
which will be offered to the sender, in order.void
completions
(@NotNull List<AsyncTabCompleteEvent.Completion> newCompletions) Set thecompletions
offered, overriding any already set.Return the entire buffer which formed the basis of this completion.The list of completions which will be offered to the sender, in order.static @NotNull HandlerList
Get the sender completing this command.boolean
Gets the cancellation state of this event.boolean
boolean
If true, the standard process of callingCommand.tabComplete(CommandSender, String, String[])
or current player names will not be called.void
setCancelled
(boolean cancelled) Will provide no completions, and will not fire the synchronous processvoid
setCompletions
(@NotNull List<String> completions) Set the completions offered, overriding any already set.void
setHandled
(boolean handled) Sets whether or not to consider the completion request handled.Methods inherited from class org.bukkit.event.Event
asynchronous, callEvent, getEventName, isAsynchronous
-
Constructor Details
-
Method Details
-
getSender
Get the sender completing this command.- Returns:
- the
CommandSender
instance
-
getCompletions
The list of completions which will be offered to the sender, in order. This list is mutable and reflects what will be offered. If this collection is not empty after the event is fired, then the standard process of callingCommand.tabComplete(CommandSender, String, String[])
or current player names will not be called.- Returns:
- a list of offered completions
-
setCompletions
Set the completions offered, overriding any already set. If this collection is not empty after the event is fired, then the standard process of callingCommand.tabComplete(CommandSender, String, String[])
or current player names will not be called. The passed collection will be cloned to a new List. You must call {getCompletions()
} to mutate from here- Parameters:
completions
- the new completions
-
completions
The list ofcompletions
which will be offered to the sender, in order. This list is mutable and reflects what will be offered.If this collection is not empty after the event is fired, then the standard process of calling
Command.tabComplete(CommandSender, String, String[])
or current player names will not be called.- Returns:
- a list of offered completions
-
completions
Set thecompletions
offered, overriding any already set. If this collection is not empty after the event is fired, then the standard process of callingCommand.tabComplete(CommandSender, String, String[])
or current player names will not be called.The passed collection will be cloned to a new List. You must call {
completions()
} to mutate from here- Parameters:
newCompletions
- the new completions
-
getBuffer
Return the entire buffer which formed the basis of this completion.- Returns:
- command buffer, as entered
-
isCommand
public boolean isCommand()- Returns:
- True if it is a command being tab completed, false if it is a chat message.
-
getLocation
- Returns:
- The position looked at by the sender, or null if none
-
isHandled
public boolean isHandled()If true, the standard process of callingCommand.tabComplete(CommandSender, String, String[])
or current player names will not be called.- Returns:
- Is completions considered handled. Always true if completions is not empty.
-
setHandled
public void setHandled(boolean handled) Sets whether or not to consider the completion request handled. If true, the standard process of callingCommand.tabComplete(CommandSender, String, String[])
or current player names will not be called.- Parameters:
handled
- if this completion should be marked as being handled
-
isCancelled
public boolean isCancelled()Description copied from interface:Cancellable
Gets the cancellation state of this event. A cancelled event will not be executed in the server, but will still pass to other plugins- Specified by:
isCancelled
in interfaceCancellable
- Returns:
- true if this event is cancelled
-
setCancelled
public void setCancelled(boolean cancelled) Will provide no completions, and will not fire the synchronous process- Specified by:
setCancelled
in interfaceCancellable
- Parameters:
cancelled
- true if you wish to cancel this event
-
getHandlers
- Specified by:
getHandlers
in classEvent
-
getHandlerList
-