RaceDayController class Null safety
Controller for managing countdown to race day and its events
- Inheritance
- Object
- GetLifeCycle
- DisposableInterface
- GetxController
- WorkflowController<
String> - CountdownController<
String> - RaceDayController
Constructors
-
RaceDayController({required DateTime raceStart, Map<
String, Duration> withMilestones = const {}, CountdownRepeat? repeats}) - Raceday controller
Properties
- canStartRace → RxBool
-
Can the race be started
final
-
completion
→ Rx<
DateTime> -
Completion obs
read-only, inherited
- container → WorkflowContainer
-
Container to store data to be transferred between listener plugins
final, inherited
-
countdown
→ Countdown<
String> -
Race day countdown
read-only, override
- emitMinorEvents → bool
-
Should minor events be emitted
final, inherited
-
events
→ Rx<
PluginEvent< String> > -
Events occurring within the workflow
final, inherited
- hashCode → int
-
The hash code for this object. [...]
read-only, inherited
- hasListeners → bool
-
read-only, inherited
- initialized → bool
-
Checks whether the controller has already been initialized.
read-only, inherited
- isClosed → bool
-
Checks whether the controller has already been closed.
read-only, inherited
- isRaceDay → RxBool
-
Is today race day
final
-
lastEvent
→ PluginEvent<
String> -
The last event that occurred in this workflow
read-only, inherited
- listeners → int
-
read-only, inherited
-
milestones
→ List<
Countdown< String> > -
All milestones in the lifecycle of the countdown
including the parent countdown
final, inherited
-
minorEvents
→ Rx<
MinorPluginEvent< String> > -
Minor events occurring within the workflow
final, inherited
-
onDelete
→ InternalFinalCallback<
void> -
Internal callback that starts the cycle of this controller.
final, inherited
-
onStart
→ InternalFinalCallback<
void> -
Called at the exact moment the widget is allocated in memory.
It uses an internal "callable" type, to avoid any @overrides in subclases.
This method should be internal and is required to define the
lifetime cycle of the subclass.
final, inherited
- raceStart → DateTime
-
Race date
final
-
registry
→ Map<
String, List< WorkflowListenerPlugin< >String, WorkflowController< >String> > -
Registry mapping state to the plugins to be executed for that state
final, inherited
- repeats → CountdownRepeat?
-
Race day CountdownRepeat
final
- runtimeType → Type
-
A representation of the runtime type of the object.
read-only, inherited
- state → String
-
The current state of this workflow
read-only, inherited
-
withMilestones
→ Map<
String, Duration> -
Race day milestones
final
Methods
-
$configureLifeCycle(
) → void -
inherited
-
addListener(
GetStateUpdate listener) → Disposer -
Register a closure to be called when the object notifies its listeners.
inherited
-
addListenerId(
Object? key, GetStateUpdate listener) → Disposer -
inherited
-
changeState(
String state, {Json? params, Object? data, bool resetData = false}) → Future< void> -
Handles state changes ensuring that the race statuses are updated
override
-
dispose(
) → void -
@mustCallSuper, inherited
-
disposeId(
Object id) → void -
To dispose an
id
from future updates(), this ids are registered byGetBuilder()
or similar, so is a way to unlink the state change with the Widget from the Controller.inherited -
executeListeners(
PluginEvent< String> event) → Future -
Executes listeners in registry for the specified event
inherited
-
initCountdown(
) → dynamic - Sets up the countdown
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a non-existent method or property is accessed. [...]
inherited
-
notifyChildrens(
) → void -
@protected, inherited
-
onceState(
String state, dynamic callback(PluginEvent< String> )) → dynamic -
Executes the
callback
oncestate
is emittedinherited -
onClose(
) → void -
Called before onDelete method. onClose might be used to
dispose resources used by the controller. Like closing events,
or streams before the controller is destroyed.
Or dispose objects that can potentially create some memory leaks,
like TextEditingControllers, AnimationControllers.
Might be useful as well to persist some data on disk.
inherited
-
onInit(
) → void -
Listens to streams to ensure race statuses are updated
override
-
onReady(
) → void -
Called 1 frame after onInit(). It is the perfect place to enter
navigation events, like snackbar, dialogs, or a new route, or
async request.
inherited
-
refresh(
) → void -
@protected, inherited
-
refreshGroup(
Object id) → void -
@protected, inherited
-
registerListenerPlugin(
WorkflowListenerPlugin< String, WorkflowController< plugin) → dynamicString> > -
Registers a listener plugin
inherited
-
removeListener(
VoidCallback listener) → void -
Remove a previously registered closure from the list of closures that the
object notifies.
inherited
-
removeListenerId(
Object id, VoidCallback listener) → void -
inherited
-
toString(
) → String -
A string representation of this object. [...]
inherited
-
update(
[List< Object> ? ids, bool condition = true]) → void -
Rebuilds
GetBuilder
each time you callupdate()
; Can take a List ofids
, that will only update the matchingGetBuilder( id: )
,ids
can be reused amongGetBuilders
like group tags. The update will only notify the Widgets, ifcondition
is true.inherited -
updateRaceStatus(
) → void - Updates the race statuses
Operators
-
operator ==(
Object other) → bool -
The equality operator. [...]
inherited
Static Properties
- instance → RaceDayController
-
Current inserted instance
read-only