RequestCubit<R extends BaseRepository<BaseService, dynamic> , T> class
abstract
Cubit that simplyfies state and repository management. It uses RequestState
as the main state, with the specific type T
.
The repository R
is also used to download the data.
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:
- R: repository that extends BaseRepository.
- T: model which represents the type of the state.
- Implementers
Constructors
- RequestCubit(R repository, {bool autoLoad = true})
Properties
- autoLoad → bool
-
Call the loadData method upon object initialization.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- isClosed → bool
-
Whether the bloc is closed.
no setterinherited
- repository → R
-
BaseRepository used to storage and manage all the data coming from the
specific BaseService`.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
-
state
→ RequestState<
T> -
The current state.
no setterinherited
-
stream
→ Stream<
RequestState< T> > -
The current state stream.
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 the instance has been closed or if thestate
being emitted is equal to the currentstate
.inherited -
listen(
void onData(RequestState< T> )?, {Function? onError, void onDone()?, bool? cancelOnError}) → StreamSubscription<RequestState< T> > -
Adds a subscription to the
Stream<State>
. Returns a StreamSubscription which handles events from theStream<State>
using the providedonData
,onError
andonDone
handlers.inherited -
loadData(
) → Future< void> - Overridable method that handles data load & applying models within the repository
-
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