RPTask class

The RPTask class defines a task to be carried out by a participant in a research study.

This class is the base class in different types of tasks, like RPOrderedTask and not used as such.

Extend this RPTask class to enable dynamic selection of the steps for a given task. By default, RPOrderedTask extends this class for simple sequential tasks. Each step (RPStep) in a task roughly corresponds to one screen through their stepWidget Widget, and represents the primary unit of work in any task presented by a task view controller.

  • @JsonSerializable(fieldRename: FieldRename.snake, includeIfNull: false)


RPTask({required String identifier, bool closeAfterFinished = false})
RPTask.fromJson(Map<String, dynamic> json)


$type String?
The runtime class name (type) of this object. Used for deserialization from JSON objects.
getter/setter pairinherited
closeAfterFinished bool
If set to true the Task will close after the participant has finished the task. If it's set to false no navigation function is called.
getter/setter pair
fromJsonFunction Function
The function which can convert a JSON string to an object of this type.
no setteroverride
hashCode int
The hash code for this object.
no setterinherited
identifier String
A unique identifier of the Task. This identifier connects the Task to its result (RPTaskResult) object.
getter/setter pair
jsonType String
Return the __type to be used for JSON serialization of this class. Default is runtimeType. Only specify this if you need another type.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited


getStepAfterStep(RPStep step, RPTaskResult result) RPStep?
Returns the step after a specified step if there's any.
getStepBeforeStep(RPStep step, RPTaskResult result) RPStep?
Returns the step that precedes the specified step, if there is one.
getStepWithIdentifier(String identifier) RPStep?
Returns the step that matches the specified identifier.
getTitleForStep(RPStep step) String
Returns the title of a given step
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
toJson() Map<String, dynamic>
Return a JSON encoding of this object.
toString() String
A string representation of this object.


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