Interface InviteAction
-
- All Superinterfaces:
AuditableRestAction<Invite>,RestAction<Invite>
public interface InviteAction extends AuditableRestAction<Invite>
InviteBuilder system created as an extension ofRestAction
Provides an easy way to gather and deliver information to Discord to createInvites.- See Also:
GuildChannel.createInvite()
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description InviteActiondeadline(long timestamp)Similar toRestAction.timeout(long, TimeUnit)but schedules a deadline at which the request has to be completed.InviteActionsetCheck(java.util.function.BooleanSupplier checks)Sets the last-second checks before finally executing the http request in the queue.InviteActionsetMaxAge(java.lang.Integer maxAge)Sets the max age in seconds for the invite.InviteActionsetMaxAge(java.lang.Long maxAge, java.util.concurrent.TimeUnit timeUnit)Sets the max age for the invite.InviteActionsetMaxUses(java.lang.Integer maxUses)Sets the max uses for the invite.InviteActionsetTargetApplication(long applicationId)Sets the id of the targeted application.default InviteActionsetTargetApplication(java.lang.String applicationId)Sets the id of the targeted application.InviteActionsetTargetStream(long userId)Sets the user whose stream to target for this invite.default InviteActionsetTargetStream(java.lang.String userId)Sets the user whose stream to display for this invite.default InviteActionsetTargetStream(Member member)Sets the user whose stream to display for this invite.default InviteActionsetTargetStream(User user)Sets the user whose stream to display for this invite.InviteActionsetTemporary(java.lang.Boolean temporary)Sets whether the invite should only grant temporary membership.InviteActionsetUnique(java.lang.Boolean unique)Sets whether discord should reuse a similar invite.InviteActiontimeout(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
-
setCheck
@Nonnull InviteAction setCheck(@Nullable java.util.function.BooleanSupplier checks)
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<Invite>- Specified by:
setCheckin interfaceRestAction<Invite>- Parameters:
checks- The checks to run before executing the request, ornullto run no checks- Returns:
- The current RestAction for chaining convenience
- See Also:
RestAction.getCheck(),RestAction.addCheck(BooleanSupplier)
-
timeout
@Nonnull InviteAction timeout(long timeout, @Nonnull java.util.concurrent.TimeUnit unit)
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<Invite>- Specified by:
timeoutin interfaceRestAction<Invite>- Parameters:
timeout- The timeout to useunit-Unitfor the timeout value- Returns:
- The same RestAction instance with the applied timeout
- See Also:
RestAction.setDefaultTimeout(long, TimeUnit)
-
deadline
@Nonnull InviteAction deadline(long timestamp)
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<Invite>- Specified by:
deadlinein interfaceRestAction<Invite>- 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)
-
setMaxAge
@Nonnull @CheckReturnValue InviteAction setMaxAge(@Nullable java.lang.Integer maxAge)
Sets the max age in seconds for the invite. Set this to0if the invite should never expire. Default is86400(24 hours).nullwill reset this to the default value.- Parameters:
maxAge- The max age for this invite ornullto use the default value.- Returns:
- The current InviteAction for chaining.
- Throws:
java.lang.IllegalArgumentException- If maxAge is negative.
-
setMaxAge
@Nonnull @CheckReturnValue InviteAction setMaxAge(@Nullable java.lang.Long maxAge, @Nonnull java.util.concurrent.TimeUnit timeUnit)
Sets the max age for the invite. Set this to0if the invite should never expire. Default is86400(24 hours).nullwill reset this to the default value.- Parameters:
maxAge- The max age for this invite ornullto use the default value.timeUnit- TheTimeUnittype ofmaxAge.- Returns:
- The current InviteAction for chaining.
- Throws:
java.lang.IllegalArgumentException- If maxAge is negative or maxAge is positive and timeUnit is null.
-
setMaxUses
@Nonnull @CheckReturnValue InviteAction setMaxUses(@Nullable java.lang.Integer maxUses)
Sets the max uses for the invite. Set this to0if the invite should have unlimited uses. Default is0.nullwill reset this to the default value.- Parameters:
maxUses- The max uses for this invite ornullto use the default value.- Returns:
- The current InviteAction for chaining.
- Throws:
java.lang.IllegalArgumentException- If maxUses is negative.
-
setTemporary
@Nonnull @CheckReturnValue InviteAction setTemporary(@Nullable java.lang.Boolean temporary)
Sets whether the invite should only grant temporary membership. Default isfalse.- Parameters:
temporary- Whether the invite should only grant temporary membership ornullto use the default value.- Returns:
- The current InviteAction for chaining.
-
setUnique
@Nonnull @CheckReturnValue InviteAction setUnique(@Nullable java.lang.Boolean unique)
Sets whether discord should reuse a similar invite. Default isfalse.- Parameters:
unique- Whether discord should reuse a similar invite ornullto use the default value.- Returns:
- The current InviteAction for chaining.
-
setTargetApplication
@Nonnull @CheckReturnValue InviteAction setTargetApplication(long applicationId)
Sets the id of the targeted application.
The invite has to point to a voice channel. The invite will have theInvite.TargetType.EMBEDDED_APPLICATIONtarget.- Parameters:
applicationId- The id of the embedded application to target or0to remove- Returns:
- The current InviteAction for chaining.
-
setTargetApplication
@Nonnull @CheckReturnValue default InviteAction setTargetApplication(@Nonnull java.lang.String applicationId)
Sets the id of the targeted application.
The invite has to point to a voice channel. The invite will have theInvite.TargetType.EMBEDDED_APPLICATIONtarget.- Parameters:
applicationId- The id of the embedded application to target- Returns:
- The current InviteAction for chaining.
- Throws:
java.lang.IllegalArgumentException- If the provided ID is nulljava.lang.NumberFormatException- If the provided ID is not a snowflake
-
setTargetStream
@Nonnull @CheckReturnValue InviteAction setTargetStream(long userId)
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.STREAMtarget.- Parameters:
userId- The id of the user whose stream to target or0to remove.- Returns:
- The current InviteAction for chaining.
-
setTargetStream
@Nonnull @CheckReturnValue default InviteAction setTargetStream(@Nonnull java.lang.String userId)
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.STREAMtarget.- Parameters:
userId- The id of the user whose stream to target.- Returns:
- The current InviteAction for chaining.
- Throws:
java.lang.IllegalArgumentException- If the provided ID is nulljava.lang.NumberFormatException- If the provided ID is not a snowflake
-
setTargetStream
@Nonnull @CheckReturnValue default InviteAction setTargetStream(@Nonnull User user)
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.STREAMtarget.- Parameters:
user- The user whose stream to target.- Returns:
- The current InviteAction for chaining.
- Throws:
java.lang.IllegalArgumentException- If the provided user isnull
-
setTargetStream
@Nonnull @CheckReturnValue default InviteAction setTargetStream(@Nonnull Member member)
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.STREAMtarget.- Parameters:
member- The member whose stream to target.- Returns:
- The current InviteAction for chaining.
- Throws:
java.lang.IllegalArgumentException- If the provided member isnull
-
-