DittoAuthenticationDelegate

public protocol DittoAuthenticationDelegate : AnyObject

Provides feedback to the developer about Ditto authentication status.

  • There is no Ditto authentication token or it has expired. Sync will not work until there is a successful login using one of the login methods on DittoAuthenticator.

    This method is required (no default implementation).

    Declaration

    Swift

    func authenticationRequired(authenticator: DittoAuthenticator)
  • Warns that the Ditto authentication token is getting old.

    Ditto will attempt to refresh tokens periodically, starting from halfway through the token’s validity period. This reduces the risk of authentication expiring while the user is offline.

    The refresh will happen automatically if Ditto has a suitable refresh token. If new credentials are required, such as a third-party token or a username/password, then Ditto does not cache that information and you must submit it again using one of the login methods on DittoAuthenticator.

    This method is required (no default implementation).

    Declaration

    Swift

    func authenticationExpiringSoon(authenticator: DittoAuthenticator, secondsRemaining: Int64)
  • Notifies the authentication delegate that the authentication status did change. Use the authenticator property status to query for the current authentication status.

    This method is optional, the default implementation does nothing.

    Default Implementation

    Declaration

    Swift

    func authenticationStatusDidChange(authenticator: DittoAuthenticator)