Skip to content

Commit

Permalink
Add @nullable in RetryContext to easier detect possible NPE
Browse files Browse the repository at this point in the history
* Add @nullable in RetryContext to easier detect possible NPE

Both getParent() and getLastThrowable() might return null, as mentioned
in javadoc. @nullable helps an IDE warns developers about potential NPE.

* Rephrase Javadoc for RetryContext.getLastThrowable()

* Review fixes
  • Loading branch information
szpak authored Jul 25, 2024
1 parent a9b329a commit 9df8d6c
Showing 1 changed file with 7 additions and 2 deletions.
9 changes: 7 additions & 2 deletions src/main/java/org/springframework/retry/RetryContext.java
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,15 @@
package org.springframework.retry;

import org.springframework.core.AttributeAccessor;
import org.springframework.lang.Nullable;

/**
* Low-level access to ongoing retry operation. Normally not needed by clients, but can be
* used to alter the course of the retry, e.g. force an early termination.
*
* @author Dave Syer
* @author Emanuele Ivaldi
* @author Marcin Zajączkowski
*
*/
public interface RetryContext extends AttributeAccessor {
Expand Down Expand Up @@ -85,6 +87,7 @@ public interface RetryContext extends AttributeAccessor {
* Accessor for the parent context if retry blocks are nested.
* @return the parent or null if there is none.
*/
@Nullable
RetryContext getParent();

/**
Expand All @@ -97,9 +100,11 @@ public interface RetryContext extends AttributeAccessor {
/**
* Accessor for the exception object that caused the current retry.
* @return the last exception that caused a retry, or possibly null. It will be null
* if this is the first attempt, but also if the enclosing policy decides not to
* provide it (e.g. because of concerns about memory usage).
* if this is the first attempt and it finishes successfully, but also if the
* enclosing policy decides not to provide it (e.g. because of concerns about memory
* usage).
*/
@Nullable
Throwable getLastThrowable();

}

0 comments on commit 9df8d6c

Please sign in to comment.