code: protected boolean shouldRethrow(RetryPolicy retryPolicy, RetryContext context,
  			RetryState state) {
  		return state != null && state.rollbackFor(context.getLastThrowable());
  	}
docs: Extension point for subclasses to decide on behaviour after catching an exception
  in a {@link RetryCallback}. Normal stateless behaviour is not to rethrow, and if
  there is state we rethrow.
  @param retryPolicy the retry policy
  @param context the current context
  @param state the current retryState
  @return true if the state is not null but subclasses might choose otherwise