Skip to content

Instantly share code, notes, and snippets.

@jacobduijzer
Last active February 8, 2022 06:32
Show Gist options
  • Select an option

  • Save jacobduijzer/09f0e50dda9bab36ec378d9956162cdf to your computer and use it in GitHub Desktop.

Select an option

Save jacobduijzer/09f0e50dda9bab36ec378d9956162cdf to your computer and use it in GitHub Desktop.
public async Task<CanbusData> Get(User user, Car car)
{
var unauthorizedApiPolicy = Policy
.Handle<UnauthorizedAccessException>()
.RetryAsync(async (exception, i, context) => await _canbusApi.AuthorizeCall());
var tokenExpiredPolicy = Policy
.Handle<TokenExpiredException>()
.RetryAsync(async (exception, i, context) => await _canbusApi.AuthenticateUser(user));
return await unauthorizedApiPolicy.WrapAsync(tokenExpiredPolicy)
.ExecuteAsync(async () => await _canbusApi.GetCanbusData(user, car));
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment