Interface InviteAction
- All Superinterfaces:
AuditableRestAction<Invite>
,RestAction<Invite>
Invite
Builder system created as an extension of RestAction
Provides an easy way to gather and deliver information to Discord to create
Invites
.- See Also:
-
Method Summary
Modifier and TypeMethodDescriptiondeadline
(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.Sets the max age in seconds for the invite.Sets the max age for the invite.setMaxUses
(Integer maxUses) Sets the max uses for the invite.setTargetApplication
(long applicationId) Sets the id of the targeted application.default InviteAction
setTargetApplication
(String applicationId) Sets the id of the targeted application.setTargetStream
(long userId) Sets the user whose stream to target for this invite.default InviteAction
setTargetStream
(String userId) Sets the user whose stream to display for this invite.default InviteAction
setTargetStream
(Member member) Sets the user whose stream to display for this invite.default InviteAction
setTargetStream
(User user) Sets the user whose stream to display for this invite.setTemporary
(Boolean temporary) Sets whether the invite should only grant temporary membership.Sets whether discord should reuse a similar invite.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 Details
-
setCheck
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<Invite>
- Specified by:
setCheck
in interfaceRestAction<Invite>
- Parameters:
checks
- The checks to run before executing the request, ornull
to run no checks- Returns:
- The current RestAction for chaining convenience
- See Also:
-
timeout
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<Invite>
- Specified by:
timeout
in interfaceRestAction<Invite>
- Parameters:
timeout
- The timeout to useunit
-Unit
for the timeout value- Returns:
- The same RestAction instance with the applied timeout
- See Also:
-
deadline
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<Invite>
- Specified by:
deadline
in interfaceRestAction<Invite>
- Parameters:
timestamp
- Millisecond timestamp at which the request will timeout- Returns:
- The same RestAction with the applied deadline
- See Also:
-
setMaxAge
Sets the max age in seconds for the invite. Set this to0
if the invite should never expire. Default is86400
(24 hours).null
will reset this to the default value.- Parameters:
maxAge
- The max age for this invite ornull
to use the default value.- Returns:
- The current InviteAction for chaining.
- Throws:
IllegalArgumentException
- If maxAge is negative.
-
setMaxAge
@Nonnull @CheckReturnValue InviteAction setMaxAge(@Nullable Long maxAge, @Nonnull TimeUnit timeUnit) Sets the max age for the invite. Set this to0
if the invite should never expire. Default is86400
(24 hours).null
will reset this to the default value.- Parameters:
maxAge
- The max age for this invite ornull
to use the default value.timeUnit
- TheTimeUnit
type ofmaxAge
.- Returns:
- The current InviteAction for chaining.
- Throws:
IllegalArgumentException
- If maxAge is negative or maxAge is positive and timeUnit is null.
-
setMaxUses
Sets the max uses for the invite. Set this to0
if the invite should have unlimited uses. Default is0
.null
will reset this to the default value.- Parameters:
maxUses
- The max uses for this invite ornull
to use the default value.- Returns:
- The current InviteAction for chaining.
- Throws:
IllegalArgumentException
- If maxUses is negative.
-
setTemporary
Sets whether the invite should only grant temporary membership. Default isfalse
.- Parameters:
temporary
- Whether the invite should only grant temporary membership ornull
to use the default value.- Returns:
- The current InviteAction for chaining.
-
setUnique
Sets whether discord should reuse a similar invite. Default isfalse
.- Parameters:
unique
- Whether discord should reuse a similar invite ornull
to use the default value.- Returns:
- The current InviteAction for chaining.
-
setTargetApplication
Sets the id of the targeted application.
The invite has to point to a voice channel. The invite will have theInvite.TargetType.EMBEDDED_APPLICATION
target.- Parameters:
applicationId
- The id of the embedded application to target or0
to remove- Returns:
- The current InviteAction for chaining.
-
setTargetApplication
Sets the id of the targeted application.
The invite has to point to a voice channel. The invite will have theInvite.TargetType.EMBEDDED_APPLICATION
target.- Parameters:
applicationId
- The id of the embedded application to target- Returns:
- The current InviteAction for chaining.
- Throws:
IllegalArgumentException
- If the provided ID is nullNumberFormatException
- If the provided ID is not a snowflake
-
setTargetStream
Sets the user whose stream to target for this invite.
The user must be streaming in the same channel. The invite will have theInvite.TargetType.STREAM
target.- Parameters:
userId
- The id of the user whose stream to target or0
to remove.- Returns:
- The current InviteAction for chaining.
-
setTargetStream
Sets the user whose stream to display for this invite.
The user must be streaming in the same channel. The invite will have theInvite.TargetType.STREAM
target.- Parameters:
userId
- The id of the user whose stream to target.- Returns:
- The current InviteAction for chaining.
- Throws:
IllegalArgumentException
- If the provided ID is nullNumberFormatException
- If the provided ID is not a snowflake
-
setTargetStream
Sets the user whose stream to display for this invite.
The user must be streaming in the same channel. The invite will have theInvite.TargetType.STREAM
target.- Parameters:
user
- The user whose stream to target.- Returns:
- The current InviteAction for chaining.
- Throws:
IllegalArgumentException
- If the provided user isnull
-
setTargetStream
Sets the user whose stream to display for this invite.
The user must be streaming in the same channel. The invite will have theInvite.TargetType.STREAM
target.- Parameters:
member
- The member whose stream to target.- Returns:
- The current InviteAction for chaining.
- Throws:
IllegalArgumentException
- If the provided member isnull
-