Pingora class

The base class for creating ViewModels / Controllers that can notify listeners about state changes.

Extend this class to create a stateful controller, then use subscribe to listen for updates, ping to notify all listeners, unsubscribe to remove a listener, and dispose to permanently shut down the controller.

class CounterModel extends Pingora {
  int count = 0;

  void increment() {
    count++;
    ping(); // notify all subscribers
  }
}

Once dispose is called, any further calls to subscribe, unsubscribe, or ping will throw an AssertionError to catch bugs early.

Constructors

Pingora()

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

dispose() → void
Permanently disables this Pingora.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
ping() → void
Notifies all currently subscribed listeners by calling each one.
subscribe(VoidCallback listener) → void
Registers a listener that will be called every time ping is invoked.
toString() String
A string representation of this object.
inherited
unsubscribe(VoidCallback listener) → void
Removes a previously registered listener.

Operators

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