RequestRepository<S extends BaseService, T> class
abstract
Cubit that simplyfies state and data management. It uses RequestState
as the main state, with the specific type T
.
Events are emited from the loadData method, to signify the change of state
within the network request process.
If the autoLoad
parameter is set to true
, the loadData()
method
will be called in the initialization process.
This parameter is set to true
by default.
Parameters:
- S: service that extends BaseService.
- T: model which represents the type of the state.
- Implementers
Constructors
- RequestRepository(S service, {bool autoLoad = true})
Properties
- autoLoad → bool
-
Call the loadData method upon object initialization.
final
- data → T?
-
Simple data getter from the state's value.
no setter
- hashCode → int
-
The hash code for this object.
no setterinherited
- isClosed → bool
-
Whether the bloc is closed.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- service → S
-
Agent that handles retrieve of pure raw information from the API or Firebase...
final
-
state
→ RequestState<
T> -
The current state.
no setterinherited
-
stream
→ Stream<
RequestState< T> > -
The current stream of states.
no setterinherited
Methods
-
addError(
Object error, [StackTrace? stackTrace]) → void -
Reports an
error
which triggers onError with an optional StackTrace.inherited -
close(
) → Future< void> -
Closes the instance.
This method should be called when the instance is no longer needed.
Once close is called, the instance can no longer be used.
inherited
-
emit(
RequestState< T> state) → void -
Updates the
state
to the providedstate
. emit does nothing if thestate
being emitted is equal to the currentstate
.inherited -
fetchData(
) → Future< T> - Overridable method that handles data fetching and mapping.
-
loadData(
) → Future< void> - Overridable method that handles data load from the service.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
onChange(
Change< RequestState< change) → voidT> > -
Called whenever a
change
occurs with the givenchange
. Achange
occurs when a newstate
is emitted. onChange is called before thestate
of thecubit
is updated. onChange is a great spot to add logging/analytics for a specificcubit
.inherited -
onError(
Object error, StackTrace stackTrace) → void -
Called whenever an
error
occurs and notifiesBlocObserver.onError
.inherited -
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited