MatexCountryBloc class
Represents a Bidirectional Bloc (Business Logic Component) for managing country metadata.
- Inheritance
-
- Object
- Bloc<
MatexCountryBlocState> - BidirectionalBloc<
MatexCountryBlocEvent, MatexCountryBlocState> - MatexCountryBloc
Constructors
- MatexCountryBloc({String? jsonData, MatexCountryBlocState? initialState})
-
Factory constructor to provide a singleton instance of the
MatexCountryBloc. If an instance doesn't exist, it will be created.
factory
Properties
- addEvent → dynamic Function(BlocEvent)
-
Notifies the BloC of a new event which triggers
mapEventToState
. Ifdispose
has already been called, any calls todispatchEvent
will be ignored and will not result in any state changes.no setterinherited -
analyticsEventController
→ BehaviorSubject<
BlocAnalyticsEvent> -
finalinherited
- blocState ↔ MatexCountryBlocState
-
The current BloC's state.
getter/setter pairinherited
-
cancelableOperations
↔ List<
CancelableOperation> -
The list of cancelable operations.
getter/setter pairinherited
- canInitialize → bool
-
Whether the BloC can be initialized.
no setterinherited
- closed ↔ bool
-
Whether the BloC is closed.
getter/setter pairinherited
- currentState → MatexCountryBlocState
-
The current BloC's state.
no setterinherited
- dispatchState → dynamic Function(MatexCountryBlocState)
-
Notifies the BloC of a new state which triggers
onData
.no setterinherited - enableForceBuildEvents → bool
-
Enable force build events, if you want to force the rendering of the
bloc builder.
Indicates if the event-state history should be saved.
finalinherited
-
errorController
→ PublishSubject<
BlocError> -
The error controller.
finalinherited
-
eventStateHistory
→ Map<
MatexCountryBlocEvent, List< String> > -
The history map that stores the event-state history.
finalinherited
- eventStateHistorySize → int
-
The maximum size of the history. Set it to null to disable the limit.
finalinherited
-
eventSubscriptions
↔ StreamSubscription<
MatexCountryBlocState> -
The event subscriptions.
getter/setter pairinherited
-
externalEventController
→ PublishSubject<
MatexCountryBlocEvent> -
The external event controller which is used to control the event stream.
finalinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- initialState → MatexCountryBlocState?
-
The initial state of the BloC.
finalinherited
-
initialStateBuilder
→ BlocStateBuilder<
MatexCountryBlocState> ? -
The initial state BloC builder.
finalinherited
-
internalEventController
→ PublishSubject<
BlocEvent> -
The internal event controller which is used to control the event stream.
finalinherited
- isClosed → bool
-
Whether the BloC is closed for dispatching more events.
no setterinherited
- isInitialized ↔ bool
-
Whether the BloC is initializing.
getter/setter pairinherited
- isInitializing ↔ bool
-
Whether the BloC is initializing.
getter/setter pairinherited
- jsonData ↔ String?
-
getter/setter pair
-
onAnalyticsEvents
→ Stream<
BlocAnalyticsEvent> -
no setterinherited
-
onData
→ Stream<
MatexCountryBlocState> -
Called whenever the BloC's state is updated.
no setterinherited
-
onError
→ Stream<
BlocError> -
Called whenever the BloC's state is updated.
no setterinherited
-
onEvent
→ Stream<
MatexCountryBlocEvent> -
Called whenever an event is added to the BloC.
no setterinherited
-
publishers
→ List<
PublishSubject> -
The list of publishers.
finalinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
-
stateController
→ BehaviorSubject<
MatexCountryBlocState> -
The state controller.
finalinherited
- subxList → SubxList
-
finalinherited
- subxMap → SubxMap
-
finalinherited
Methods
-
canClose(
) → bool -
Whether the BloC can be closed.
Override this method to prevent the BloC from closing.
inherited
-
close(
) → void -
Closes the BloC.
This method should be called when the BloC is no longer needed.
inherited
-
debounce(
BlocDebounceCallback< BlocEvent> function, {Duration delay = const Duration(milliseconds: 300)}) → BlocDebounceCallback<BlocEvent> -
Creates a debounced function that only invokes
function
after adelay
.inherited -
debounceEvent(
BlocEventCallback< MatexCountryBlocEvent> function, {Duration delay = const Duration(milliseconds: 300)}) → BlocEventCallback<MatexCountryBlocEvent> -
Debounces an event. The
function
will not be invoked untildelay
.inherited -
findOne(
{required bool filter(MatexCountryMetadata)}) → Future< MatexCountryMetadata?> - Finds one country metadata based on the provided filter function.
-
findOneByCountryCode(
String countryCode) → Future< MatexCountryMetadata?> - Fetches metadata for a country with the given country code.
-
get(
String key) → Future< MatexCountryMetadata?> - Retrieves country metadata by key.
-
getEventForState(
MatexCountryBlocState state) → MatexCountryBlocEvent? -
Returns the event related to the given
state
.inherited -
getInitialState(
) → MatexCountryBlocState -
Tries to retreive the initial BloC's state.
inherited
-
handleInitEvent(
String? jsonData) → Stream< MatexCountryBlocState> - Processes the initialization event. It fetches country metadata and triggers the initialized event.
-
handleInitializedEvent(
List< MatexCountryMetadata> ? countries) → Stream<MatexCountryBlocState> -
Handles the initialized event by setting the provided country metadata
countries
to the state. -
handleInternalError(
dynamic error, StackTrace stackTrace) → void -
Handles internal errors.
inherited
-
initState(
) → MatexCountryBlocState -
Optional callback method to initialize the BloC's state.
inherited
-
mapEventToState(
MatexCountryBlocEvent event) → Stream< MatexCountryBlocState> -
Maps incoming MatexCountryBlocEvent to corresponding
MatexCountryBlocState.
Processes events and updates states accordingly.
override
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
performCancellableAsyncOperation<
T> (Future< T> opreation) → Future<T?> -
Performs an asynchronous operation and cancels it if the BloC is closed.
inherited
-
resetBloc(
) → void -
inherited
-
sampleEvent(
BlocEventCallback< MatexCountryBlocEvent> function, {Duration delay = const Duration(milliseconds: 300)}) → BlocEventCallback<MatexCountryBlocEvent> -
inherited
-
setState(
MatexCountryBlocState nextState) → void -
Set the BloC state.
inherited
-
shouldProcessEventInOrder(
) → bool -
Determines whether a bloc ensures all
events
are processed in the order in which they are received.inherited -
throttle(
BlocThrottleCallback< BlocEvent> function, {Duration duration = const Duration(milliseconds: 300)}) → BlocThrottleCallback<BlocEvent> -
Creates a throttled function that only invokes
function
at most once per everyduration
.inherited -
throttleEvent(
BlocEventCallback< MatexCountryBlocEvent> function, {Duration duration = const Duration(milliseconds: 300)}) → BlocEventCallback<MatexCountryBlocEvent> -
Throttles an event. The event will be ignored if it is dispatched within
the specified
duration
. The last event will be dispatched after theduration
has passed.inherited -
toString(
) → String -
A string representation of this object.
inherited
-
transformError(
dynamic error, StackTrace stackTrace) → BlocError? -
Transforms the error before it is emitted.
inherited
-
updateEventStateHistory(
MatexCountryBlocEvent event, MatexCountryBlocState nextState) → void -
Updates the event-state history.
The event-state history is used to determine the event related to a
given state.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Properties
- instance ↔ MatexCountryBloc
-
getter/setter pair