Interface CommandListUpdateAction
- All Superinterfaces:
RestAction<List<Command>>
Specialized
Any commands that currently exist and are not listed through
RestAction used to replace existing commands of a guild or globally.
Any commands that currently exist and are not listed through
addCommands(CommandData...) will be DELETED!
This operation is idempotent. Commands will persist between restarts of your bot, you only have to create a command once.
-
Method Summary
Modifier and TypeMethodDescriptionaddCheck(BooleanSupplier checks) Shortcut forsetCheck(() -> getCheck().getAsBoolean() && checks.getAsBoolean()).addCommands(Collection<? extends CommandData> commands) default CommandListUpdateActionaddCommands(CommandData... commands) deadline(long timestamp) Similar toRestAction.timeout(long, TimeUnit)but schedules a deadline at which the request has to be completed.setCheck(BooleanSupplier checks) Sets the last-second checks before finally executing the http request in the queue.Timeout for this RestAction instance.Methods inherited from interface net.dv8tion.jda.api.requests.RestAction
and, and, complete, complete, completeAfter, delay, delay, delay, delay, flatMap, flatMap, getCheck, getJDA, map, mapToResult, onErrorFlatMap, onErrorFlatMap, onErrorMap, onErrorMap, onSuccess, queue, queue, queue, queueAfter, queueAfter, queueAfter, queueAfter, queueAfter, queueAfter, submit, submit, submitAfter, submitAfter, zip
-
Method Details
-
timeout
Description copied from interface:RestActionTimeout for this RestAction instance.
If the request doesn't get executed within the timeout it will fail.When a RestAction times out, it will fail with a
TimeoutException. This is the same asdeadline(System.currentTimeMillis() + unit.toMillis(timeout)).Example
action.timeout(10, TimeUnit.SECONDS) // 10 seconds from now .queueAfter(20, SECONDS); // request will not be executed within deadline and timeout immediately after 20 seconds- Specified by:
timeoutin interfaceRestAction<List<Command>>- Parameters:
timeout- The timeout to useunit-Unitfor the timeout value- Returns:
- The same RestAction instance with the applied timeout
- See Also:
-
deadline
Description copied from interface:RestActionSimilar toRestAction.timeout(long, TimeUnit)but schedules a deadline at which the request has to be completed.
If the deadline is reached, the request will fail with aTimeoutException.This does not mean that the request will immediately timeout when the deadline is reached. JDA will check the deadline right before executing the request or within intervals in a worker thread. This only means the request will timeout if the deadline has passed.
Example
action.deadline(System.currentTimeMillis() + 10000) // 10 seconds from now .queueAfter(20, SECONDS); // request will not be executed within deadline and timeout immediately after 20 seconds- Specified by:
deadlinein interfaceRestAction<List<Command>>- Parameters:
timestamp- Millisecond timestamp at which the request will timeout- Returns:
- The same RestAction with the applied deadline
- See Also:
-
setCheck
Description copied from interface:RestActionSets the last-second checks before finally executing the http request in the queue.
If the provided supplier evaluates tofalseor throws an exception this will not be finished. When an exception is thrown from the supplier it will be provided to the failure callback.- Specified by:
setCheckin interfaceRestAction<List<Command>>- Parameters:
checks- The checks to run before executing the request, ornullto run no checks- Returns:
- The current RestAction for chaining convenience
- See Also:
-
addCheck
Description copied from interface:RestActionShortcut forsetCheck(() -> getCheck().getAsBoolean() && checks.getAsBoolean()).- Specified by:
addCheckin interfaceRestAction<List<Command>>- Parameters:
checks- Other checks to run- Returns:
- The current RestAction for chaining convenience
- See Also:
-
addCommands
@Nonnull @CheckReturnValue CommandListUpdateAction addCommands(@Nonnull Collection<? extends CommandData> commands) Adds up to 100 slash commands, 5 user context commands, and 5 message context commands.When a command is not listed in this request, it will be deleted.
- Parameters:
commands- Thecommandsto add- Returns:
- The CommandUpdateAction instance, for chaining
- Throws:
IllegalArgumentException- If null or more than 100 slash commands, 5 user context commands, or 5 message context commands, are provided- See Also:
-
addCommands
@Nonnull @CheckReturnValue default CommandListUpdateAction addCommands(@Nonnull CommandData... commands) Adds up to 100 slash commands, 5 user context commands, and 5 message context commands.When a command is not listed in this request, it will be deleted.
- Parameters:
commands- Thecommandsto add- Returns:
- The CommandUpdateAction instance, for chaining
- Throws:
IllegalArgumentException- If null or more than 100 slash commands, 5 user context commands, or 5 message context commands, are provided- See Also:
-