Service<StateT extends State, ProviderT extends RepositoryProvider> class abstract

Base class for all services of an application. Each service is responsible for providing backend data services for a particular feature of the application. The services implements state management using the Cubit library.

Constructors

Service({required StateT initialState, ProviderT? provider})

Properties

hashCode int
The hash code for this object.
no setterinherited
intializedProvider Future<ProviderT>
Returns and initialized instance of the provider for this service.
no setter
isClosed bool
Whether the bloc is closed.
no setterinherited
provider → ProviderT
Returns a provider that does not require initialization.
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
state → StateT
The current state.
no setterinherited
stream Stream<StateT>
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
addStateMessage(Message message) → void
Removes the given message from the state
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(StateT state) → void
Updates the state to the provided state. emit does nothing if the state being emitted is equal to the current state.
inherited
ensureLoadingFinished(LoadingState loadingState) Future<void>
This method should be called when you want to wait for a particular loading state to finish.
ensureLoadingStarted(LoadingState loadingState) Future<void>
This method should be called when you want to wait for a particular loading state to start.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
onChange(Change<StateT> 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
removeStateMessage(Message message) → void
Removes the given message from the state
setCurrentContext(BuildContext context) → void
This method is called by from the top level of the widget tree to initialize the service's localizations so it can be applied throughout the service regardless of whether if the context is available. This method should return either itself initialized with the context or a new instance of the Service initialized with the context. This is a convenience method that allows the service to be initialized with the context without having to create a new instance and is called by the Feature class when creating BLoC providers for the service.
toString() String
A string representation of this object.
inherited

Operators

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