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 provided state. emit does nothing if the state being emitted is equal to the current state.
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<T>> change) → void
Called whenever a change occurs with the given change. A change occurs when a new state is emitted. onChange is called before the state of the cubit is updated. onChange is a great spot to add logging/analytics for a specific cubit.
inherited
onError(Object error, StackTrace stackTrace) → void
Called whenever an error occurs and notifies BlocObserver.onError.
inherited
toString() String
A string representation of this object.
inherited

Operators

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