Package discord4j.common.close
Class DisconnectBehavior
- java.lang.Object
-
- discord4j.common.close.DisconnectBehavior
-
public class DisconnectBehavior extends Object
Encapsulates a strategy to deal with the closing and release of a resource.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
DisconnectBehavior.Action
The action to trigger to close a resource.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description DisconnectBehavior.Action
getAction()
Returns the action to perform while closing a resource.Throwable
getCause()
Returns the cause that triggered this close intent.static DisconnectBehavior
retry(Throwable cause)
Create aDisconnectBehavior
that instructs a client to retry in a graceful manner, with an optional cause.static DisconnectBehavior
retryAbruptly(Throwable cause)
Create aDisconnectBehavior
that instructs a client to retry abruptly, with an optional cause.static DisconnectBehavior
stop(Throwable cause)
Create aDisconnectBehavior
that instructs a client to stop in a graceful manner, with an optional cause.static DisconnectBehavior
stopAbruptly(Throwable cause)
Create aDisconnectBehavior
that instructs a client to stop abruptly, with an optional cause.String
toString()
-
-
-
Method Detail
-
retry
public static DisconnectBehavior retry(@Nullable Throwable cause)
Create aDisconnectBehavior
that instructs a client to retry in a graceful manner, with an optional cause.- Parameters:
cause
- optionally, aThrowable
that triggered this close intent- Returns:
- a
DisconnectBehavior
that will gracefully attempt to retry
-
stop
public static DisconnectBehavior stop(@Nullable Throwable cause)
Create aDisconnectBehavior
that instructs a client to stop in a graceful manner, with an optional cause.- Parameters:
cause
- optionally, aThrowable
that triggered this close intent- Returns:
- a
DisconnectBehavior
that will gracefully stop and release resources
-
retryAbruptly
public static DisconnectBehavior retryAbruptly(@Nullable Throwable cause)
Create aDisconnectBehavior
that instructs a client to retry abruptly, with an optional cause.- Parameters:
cause
- optionally, aThrowable
that triggered this close intent- Returns:
- a
DisconnectBehavior
that will abruptly close before attempting to retry
-
stopAbruptly
public static DisconnectBehavior stopAbruptly(@Nullable Throwable cause)
Create aDisconnectBehavior
that instructs a client to stop abruptly, with an optional cause.- Parameters:
cause
- optionally, aThrowable
that triggered this close intent- Returns:
- a
DisconnectBehavior
that will abruptly stop and release resources
-
getAction
public DisconnectBehavior.Action getAction()
Returns the action to perform while closing a resource.- Returns:
- an
DisconnectBehavior.Action
to perform upon closing
-
getCause
@Nullable public Throwable getCause()
Returns the cause that triggered this close intent.- Returns:
- a
Throwable
representing the cause that triggers an action
-
-