Package net.dv8tion.jda.api.exceptions
Class ErrorResponseException
java.lang.Object
java.lang.Throwable
java.lang.Exception
java.lang.RuntimeException
net.dv8tion.jda.api.exceptions.ErrorResponseException
- All Implemented Interfaces:
Serializable
Indicates an unhandled error that is returned by Discord API Request using
It holds an
RestAction
It holds an
ErrorResponse
- See Also:
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
An error for aErrorResponseException.SchemaError
.static class
Schema error which supplies more context to a ErrorResponse. -
Method Summary
Modifier and TypeMethodDescriptionstatic ErrorResponseException
create
(ErrorResponse errorResponse, Response response) int
The discord error code for this error response.TheErrorResponse
corresponding for the received error response from DiscordThe meaning for this error.The Discord Response causing the ErrorResponseTheSchemaErrors
for this error response.ignore
(Collection<ErrorResponse> set) Ignore the specified set of error responses.ignore
(Consumer<? super Throwable> orElse, Collection<ErrorResponse> set) Ignore the specified set of error responses.ignore
(Consumer<? super Throwable> orElse, ErrorResponse ignored, ErrorResponse... errorResponses) Ignore the specified set of error responses.ignore
(ErrorResponse ignored, ErrorResponse... errorResponses) Ignore the specified set of error responses.boolean
Whether this is an internal server error from discord (status 500)Methods inherited from class java.lang.Throwable
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
-
Method Details
-
isServerError
public boolean isServerError()Whether this is an internal server error from discord (status 500)- Returns:
- True, if this is an internal server error
ErrorResponse.SERVER_ERROR
-
getMeaning
The meaning for this error.
It is possible that the value from this method is different forserver errors
- Returns:
- Never-null meaning of this error.
-
getErrorCode
public int getErrorCode()The discord error code for this error response.- Returns:
- The discord error code.
- See Also:
-
getErrorResponse
TheErrorResponse
corresponding for the received error response from Discord- Returns:
ErrorResponse
-
getResponse
The Discord Response causing the ErrorResponse- Returns:
Response
-
getSchemaErrors
TheSchemaErrors
for this error response.
These errors provide more context of what part in the body caused the error, and more explanation for the error itself.- Returns:
- Possibly-empty list of
SchemaError
-
create
-
ignore
Ignore the specified set of error responses.Example
// Creates a message with the provided content and deletes it 30 seconds later public static void selfDestruct(MessageChannel channel, String content) { channel.sendMessage(content).queue((message) -> message.delete().queueAfter(30, SECONDS, null, ignore(EnumSet.of(UNKNOWN_MESSAGE))) ); }
- Parameters:
set
- Set of ignored error responses- Returns:
Consumer
decorator forRestAction.getDefaultFailure()
which ignores the specifiedErrorResponses
- Throws:
IllegalArgumentException
- If provided with null or an empty collection
-
ignore
@Nonnull public static Consumer<Throwable> ignore(@Nonnull ErrorResponse ignored, @Nonnull ErrorResponse... errorResponses) Ignore the specified set of error responses.Example
// Creates a message with the provided content and deletes it 30 seconds later public static void selfDestruct(MessageChannel channel, String content) { channel.sendMessage(content).queue((message) -> message.delete().queueAfter(30, SECONDS, null, ignore(UNKNOWN_MESSAGE)) ); }
- Parameters:
ignored
- Ignored error responseerrorResponses
- Additional error responses to ignore- Returns:
Consumer
decorator forRestAction.getDefaultFailure()
which ignores the specifiedErrorResponses
- Throws:
IllegalArgumentException
- If provided with null
-
ignore
@Nonnull public static Consumer<Throwable> ignore(@Nonnull Consumer<? super Throwable> orElse, @Nonnull ErrorResponse ignored, @Nonnull ErrorResponse... errorResponses) Ignore the specified set of error responses.Example
// Creates a message with the provided content and deletes it 30 seconds later public static void selfDestruct(MessageChannel channel, String content) { channel.sendMessage(content).queue((message) -> message.delete().queueAfter(30, SECONDS, null, ignore(Throwable::printStackTrace, UNKNOWN_MESSAGE)) ); }
- Parameters:
orElse
- Behavior to default to if the error response is not ignoredignored
- Ignored error responseerrorResponses
- Additional error responses to ignore- Returns:
Consumer
decorator for the provided callback which ignores the specifiedErrorResponses
- Throws:
IllegalArgumentException
- If provided with null
-
ignore
@Nonnull public static Consumer<Throwable> ignore(@Nonnull Consumer<? super Throwable> orElse, @Nonnull Collection<ErrorResponse> set) Ignore the specified set of error responses.Example
// Creates a message with the provided content and deletes it 30 seconds later public static void selfDestruct(MessageChannel channel, String content) { channel.sendMessage(content).queue((message) -> message.delete().queueAfter(30, SECONDS, null, ignore(Throwable::printStackTrace, EnumSet.of(UNKNOWN_MESSAGE))) ); }
- Parameters:
orElse
- Behavior to default to if the error response is not ignoredset
- Set of ignored error responses- Returns:
Consumer
decorator for the provided callback which ignores the specifiedErrorResponses
- Throws:
IllegalArgumentException
- If provided with null or an empty collection
-