Interface FluentAuditableRestAction<T,R extends FluentAuditableRestAction<T,R>>
- Type Parameters:
T- The result type of the AuditableRestActionR- The concrete AuditableRestAction type used for chaining (fluent interface)
- All Superinterfaces:
AuditableRestAction<T>,RestAction<T>
- All Known Subinterfaces:
ChannelAction<T>,ScheduledEventAction,ThreadChannelAction
public interface FluentAuditableRestAction<T,R extends FluentAuditableRestAction<T,R>>
extends AuditableRestAction<T>
Interface used to mixin the customization parameters for
This simply fixes the return types to be the concrete implementation instead of the base interface.
AuditableRestActions.
This simply fixes the return types to be the concrete implementation instead of the base interface.
-
Field Summary
Fields inherited from interface net.dv8tion.jda.api.requests.restaction.AuditableRestAction
MAX_REASON_LENGTH -
Method Summary
Modifier and TypeMethodDescriptiondefault RaddCheck(BooleanSupplier checks) Shortcut forsetCheck(() -> getCheck().getAsBoolean() && checks.getAsBoolean()).default Rdeadline(long timestamp) Similar toRestAction.timeout(long, TimeUnit)but schedules a deadline at which the request has to be completed.Applies the specified reason as audit-log reason field.setCheck(BooleanSupplier checks) Sets the last-second checks before finally executing the http request in the queue.default RTimeout 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
-
reason
Description copied from interface:AuditableRestActionApplies the specified reason as audit-log reason field.
When the provided reason is empty ornullit will be treated as not set. If the provided reason is longer than 512 characters, it will be truncated to fit the limit.Reasons for any AuditableRestAction may be retrieved via
AuditLogEntry.getReason()in iterableAuditLogPaginationActionsfromGuild.retrieveAuditLogs()! Forguild bans, this is also accessible viaGuild.Ban.getReason().This will specify the reason via the
X-Audit-Log-ReasonRequest Header.- Specified by:
reasonin interfaceAuditableRestAction<T>- Parameters:
reason- The reason for this action which should be logged in the Guild's AuditLogs (up to 512 characters)- Returns:
- The current AuditableRestAction instance for chaining convenience
- See Also:
-
setCheck
Description copied from interface:AuditableRestActionSets 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 interfaceAuditableRestAction<T>- Specified by:
setCheckin interfaceRestAction<T>- 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<T>- Parameters:
checks- Other checks to run- Returns:
- The current RestAction for chaining convenience
- See Also:
-
timeout
Description copied from interface:AuditableRestActionTimeout 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 interfaceAuditableRestAction<T>- Specified by:
timeoutin interfaceRestAction<T>- 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:AuditableRestActionSimilar 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 interfaceAuditableRestAction<T>- Specified by:
deadlinein interfaceRestAction<T>- Parameters:
timestamp- Millisecond timestamp at which the request will timeout- Returns:
- The same RestAction with the applied deadline
- See Also:
-