RequestPersistantRepository<S extends BaseService, T> class abstract

Repository that extends on RequestRepository by adding the ability to store its internal state using HydratedBloc. Serialization is handled automatically by the state and the cubit state.

Parameters:

  • S: service that extends BaseService.
  • T: model which represents the type of the state.
Inheritance

Constructors

RequestPersistantRepository(S service)

Properties

autoLoad bool
Call the loadData method upon object initialization.
finalinherited
data → T?
Simple data getter from the state's value.
no setterinherited
hashCode int
The hash code for this object.
no setterinherited
id String
id is used to uniquely identify multiple instances of the same HydratedBloc type. In most cases it is not necessary; however, if you wish to intentionally have multiple instances of the same HydratedBloc, then you must override id and return a unique identifier for each HydratedBloc instance in order to keep the caches independent of each other.
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...
finalinherited
state RequestState<T>
The current state.
no setterinherited
storagePrefix String
Storage prefix which can be overridden to provide a custom storage namespace. Defaults to runtimeType but should be overridden in cases where stored data should be resilient to obfuscation or persist between debug/release builds.
no setterinherited
storageToken String
storageToken is used as registration token for hydrated storage. Composed of storagePrefix and id.
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
clear() Future<void>
clear is used to wipe or invalidate the cache of a HydratedBloc. Calling clear will delete the cached state of the bloc but will not modify the current state of the bloc.
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.
inherited
fromJson(Map<String, dynamic> json) RequestState<T>
Responsible for converting the Map<String, dynamic> representation of the bloc state into a concrete instance of the bloc state.
hydrate() → void
Populates the internal state storage with the latest state. This should be called when using the HydratedMixin directly within the constructor body.
inherited
loadData() Future<void>
Overridable method that handles data load from the service.
inherited
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
toJson(RequestState<T> state) Map<String, dynamic>?
Responsible for converting a concrete instance of the bloc state into the the Map<String, dynamic> representation.
toString() String
A string representation of this object.
inherited
valueFromJson(Map<String, dynamic> json) → T
Method that deserialize the data in JSON form to an actual instance of the object.
valueToJson(T? value) Map<String, dynamic>?
Method that serialize the data to a JSON form.

Operators

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