WalletServerProvider
An object used to connect to a remote wallet server.
Wallet app can function in two modes: full wallet server mode and minimalistic server mode.
In full wallet server mode, wallet app communicates to the wallet server and the wallet server communicates to the actual issuing authority server(s). The advantage of this mode is that the system tends to be much more robust when the app needs to communicate to its own server only. In particular this allows wallet app vendor to decouple evolution of the wallet app from the evolution of the multitude of the issuing authority servers. Also, wallet server functionality only needs to be implemented once and not for every client/mobile platform.
In minimalistic server mode, the bulk of the "wallet server" functionality runs on the client and thus the wallet app communicates to the issuing authority servers directly. Only the functionality that cannot be done on the client is delegated on the server. The advantage of this mode is that it tends to be easier to set up and use for development. Also, this mode has less potential privacy issues, in particular if proofing data and credentials are not end-to-end encrypted.
Constructors
Types
Functions
Creates an Issuing Authority by the credentialIssuerUri and credentialConfigurationId, caching instances. If unable to connect, suspend and wait until connecting is possible.
Gets ApplicationSupport object and data necessary to make use of it. It always comes from the server (either full wallet server or minimal wallet server).
Gets issuing authority by its id, caching instances. If unable to connect, suspend and wait until connecting is possible.
Connects to the remote wallet server.