NetworkNotifier class

A ChangeNotifier that wraps NetworkManager and exposes the current NetworkState as a listenable property.

Drop this into ChangeNotifierProvider or any widget that consumes ChangeNotifier:

// Setup
ChangeNotifierProvider(
  create: (_) => NetworkNotifier(networkManager),
  child: MyApp(),
);

// Consume in widget
final notifier = context.watch<NetworkNotifier>();
switch (notifier.state) {
  case Loading() => CircularProgressIndicator(),
  case Success() => Text('${notifier.state}'),
  case Offline() => Text('You are offline'),
  // ...
}
Inheritance

Constructors

NetworkNotifier(NetworkManager _manager)
Creates a NetworkNotifier bound to the given NetworkManager.

Properties

hashCode int
The hash code for this object.
no setterinherited
hasListeners bool
Whether any listeners are currently registered.
no setterinherited
isOnline bool
Shorthand: whether the device is online.
no setter
manager NetworkManager
The underlying NetworkManager for advanced operations.
no setter
queuedRequests int
Shorthand: number of queued requests.
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
state NetworkState
The current NetworkState.
no setter

Methods

addListener(VoidCallback listener) → void
Register a closure to be called when the object changes.
inherited
dispose() → void
Discards any resources used by the object. After this is called, the object is not in a usable state and should be discarded (calls to addListener will throw after the object is disposed).
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
notifyListeners() → void
Call all the registered listeners.
inherited
removeListener(VoidCallback listener) → void
Remove a previously registered closure from the list of closures that are notified when the object changes.
inherited
request<T>(Future<T> requestFn(), {String? cacheKey, NetworkStrategy? strategy, Duration? cacheTtl}) Future<T?>
Execute a request and automatically notify listeners as state changes.
toString() String
A string representation of this object.
inherited

Operators

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