GoogleRidesharingDriver Framework Reference

GMTDAuthorization

@protocol GMTDAuthorization <NSObject>

Protocol used to provide authorization tokens for gRPC calls. These tokens give access to the Fleet Engine service accounts.

The implementation should ensure that a valid authorization token is always available. The authorization token should have a minimum lifetime of 5 minutes to allow for requests to complete. Therefore, the authorization token must automatically renew expiring tokens and minimize the number of token refreshes by re-using a token until its lifetime nears its end.

Implementations of this protocol must be thread-safe.

  • Called by the SDK to fetch a JWT. The implementation must assume that this method may be invoked from arbitrary queues.

    Declaration

    Swift

    func fetchToken(with authorizationContext: GMTDAuthorizationContext?) async throws -> String

    Objective-C

    - (void)fetchTokenWithContext:
                (nullable GMTDAuthorizationContext *)authorizationContext
                       completion:
                           (nonnull GMTDAuthTokenFetchCompletionHandler)completion;

    Parameters

    authorizationContext

    The context of the target authorization token.

    completion

    Must be called asynchronously, but can be called from any queue.