Package net.dv8tion.jda.api.managers
Interface Manager<M extends Manager<M>>
-
- All Superinterfaces:
AuditableRestAction<java.lang.Void>
,RestAction<java.lang.Void>
- All Known Subinterfaces:
AccountManager
,ChannelManager
,EmoteManager
,GuildManager
,PermOverrideManager
,RoleManager
,StageInstanceManager
,TemplateManager
,WebhookManager
public interface Manager<M extends Manager<M>> extends AuditableRestAction<java.lang.Void>
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Modifier and Type Method Description M
deadline(long timestamp)
Similar toRestAction.timeout(long, TimeUnit)
but schedules a deadline at which the request has to be completed.static boolean
isPermissionChecksEnabled()
Whether internal checks for missing permissions are enabled
When this is disabled the chances of hitting aErrorResponse.MISSING_PERMISSIONS
is increased significantly, otherwise JDA will check permissions and cancel the execution usingInsufficientPermissionException
.M
reset()
Resets all fields for this ManagerM
reset(long fields)
M
reset(long... fields)
M
setCheck(java.util.function.BooleanSupplier checks)
Sets the last-second checks before finally executing the http request in the queue.static void
setPermissionChecksEnabled(boolean enable)
Enables internal checks for missing permissions
When this is disabled the chances of hitting aErrorResponse.MISSING_PERMISSIONS
is increased significantly, otherwise JDA will check permissions and cancel the execution usingInsufficientPermissionException
.M
timeout(long timeout, java.util.concurrent.TimeUnit unit)
Timeout for this RestAction instance.-
Methods inherited from interface net.dv8tion.jda.api.requests.restaction.AuditableRestAction
reason
-
Methods inherited from interface net.dv8tion.jda.api.requests.RestAction
addCheck, and, and, complete, complete, completeAfter, delay, delay, delay, delay, flatMap, flatMap, getCheck, getJDA, map, mapToResult, onErrorFlatMap, onErrorFlatMap, onErrorMap, onErrorMap, queue, queue, queue, queueAfter, queueAfter, queueAfter, queueAfter, queueAfter, queueAfter, submit, submit, submitAfter, submitAfter, zip
-
-
-
-
Method Detail
-
setPermissionChecksEnabled
static void setPermissionChecksEnabled(boolean enable)
Enables internal checks for missing permissions
When this is disabled the chances of hitting aErrorResponse.MISSING_PERMISSIONS
is increased significantly, otherwise JDA will check permissions and cancel the execution usingInsufficientPermissionException
.
Default: true- Parameters:
enable
- True, if JDA should perform permissions checks internally- See Also:
isPermissionChecksEnabled()
-
isPermissionChecksEnabled
static boolean isPermissionChecksEnabled()
Whether internal checks for missing permissions are enabled
When this is disabled the chances of hitting aErrorResponse.MISSING_PERMISSIONS
is increased significantly, otherwise JDA will check permissions and cancel the execution usingInsufficientPermissionException
.- Returns:
- True, if internal permission checks are enabled
- See Also:
setPermissionChecksEnabled(boolean)
-
setCheck
@Nonnull M setCheck(java.util.function.BooleanSupplier checks)
Description copied from interface:AuditableRestAction
Sets the last-second checks before finally executing the http request in the queue.
If the provided supplier evaluates tofalse
or 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:
setCheck
in interfaceAuditableRestAction<M extends Manager<M>>
- Specified by:
setCheck
in interfaceRestAction<M extends Manager<M>>
- Parameters:
checks
- The checks to run before executing the request, ornull
to run no checks- Returns:
- The current RestAction for chaining convenience
- See Also:
RestAction.getCheck()
,RestAction.addCheck(BooleanSupplier)
-
timeout
@Nonnull M timeout(long timeout, @Nonnull java.util.concurrent.TimeUnit unit)
Description copied from interface:AuditableRestAction
Timeout 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:
timeout
in interfaceAuditableRestAction<M extends Manager<M>>
- Specified by:
timeout
in interfaceRestAction<M extends Manager<M>>
- Parameters:
timeout
- The timeout to useunit
-Unit
for the timeout value- Returns:
- The same RestAction instance with the applied timeout
- See Also:
RestAction.setDefaultTimeout(long, TimeUnit)
-
deadline
@Nonnull M deadline(long timestamp)
Description copied from interface:AuditableRestAction
Similar 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:
deadline
in interfaceAuditableRestAction<M extends Manager<M>>
- Specified by:
deadline
in interfaceRestAction<M extends Manager<M>>
- Parameters:
timestamp
- Millisecond timestamp at which the request will timeout- Returns:
- The same RestAction with the applied deadline
- See Also:
RestAction.timeout(long, TimeUnit)
,RestAction.setDefaultTimeout(long, TimeUnit)
-
reset
@Nonnull @CheckReturnValue M reset(long fields)
-
reset
@Nonnull @CheckReturnValue M reset(long... fields)
-
reset
@Nonnull @CheckReturnValue M reset()
Resets all fields for this Manager- Returns:
- The current Manager with all settings reset to default
-
-