LoginClient class

An implementation of an OAuth2 client that also manages storing the obtained credentials and restoring/refreshing them when needed.

Constructors

LoginClient({required OAuthSettings oAuthSettings, required CredentialsStorage credentialsStorage, Client? httpClient, _LoggerCallback logger = _defaultPrintLogger})
Creates an http.Client that is compliant with OAuth2.

Properties

credentials Future<Credentials?>
Read current credentials, if they exist.
no setter
hashCode int
The hash code for this object.
no setterinherited
loggedIn bool
Whether this LoginClient is authorized or not.
no setter
onCredentialsChanged Stream<Credentials?>
Stream that emits the oauth2.Credentials everytime they change.
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

close() → void
Closes the client and cleans up any resources associated with it.
inherited
delete(Uri url, {Map<String, String>? headers, Object? body, Encoding? encoding}) Future<Response>
Sends an HTTP DELETE request with the given headers to the given URL.
inherited
dispose() Future<void>
Disposes the LoginClient.
get(Uri url, {Map<String, String>? headers}) Future<Response>
Sends an HTTP GET request with the given headers to the given URL.
inherited
Sends an HTTP HEAD request with the given headers to the given URL.
inherited
initialize() Future<void>
Restores saved credentials from the credentials storage.
logIn(AuthorizationStrategy strategy) Future<void>
Authorizes the LoginClient using the passed strategy.
logOut() Future<void>
Logs the LoginClient out. Also removes the credentials from the credentials storage.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
patch(Uri url, {Map<String, String>? headers, Object? body, Encoding? encoding}) Future<Response>
Sends an HTTP PATCH request with the given headers and body to the given URL.
inherited
post(Uri url, {Map<String, String>? headers, Object? body, Encoding? encoding}) Future<Response>
Sends an HTTP POST request with the given headers and body to the given URL.
inherited
put(Uri url, {Map<String, String>? headers, Object? body, Encoding? encoding}) Future<Response>
Sends an HTTP PUT request with the given headers and body to the given URL.
inherited
read(Uri url, {Map<String, String>? headers}) Future<String>
Sends an HTTP GET request with the given headers to the given URL and returns a Future that completes to the body of the response as a String.
inherited
readBytes(Uri url, {Map<String, String>? headers}) Future<Uint8List>
Sends an HTTP GET request with the given headers to the given URL and returns a Future that completes to the body of the response as a list of bytes.
inherited
refresh([List<String>? newScopes]) Future<void>
Refreshes the currently used credentials.
send(BaseRequest request) Future<StreamedResponse>
Sends an HTTP request and asynchronously returns the response.
setAuthorizedClient(Client client) → void
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Methods

copyRequest(BaseRequest request) → BaseRequest