RPNavigableOrderedTask class

The RPNavigableOrderedTask class adds conditional step navigation to the behavior inherited from the RPOrderedTask class.

It's able to show different questions based on previous answers by using RPStepNavigationRules. This task allows participant to go back to/looping through previous questions. In that case only the last answer given to the question will be saved.

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


RPNavigableOrderedTask({required String identifier, required List<RPStep> steps, bool closeAfterFinished = true})
RPNavigableOrderedTask.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 pairinherited
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 pairinherited
isConsentTask bool
Returns true if the task is a Consent Task. It is considered a Consent Task if it has an RPConsentReviewStep
no setterinherited
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
numberOfQuestionSteps int
The number of question steps in the task
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
stepNavigationRules Map<String, RPStepNavigationRule>
A dictionary of step identifier Strings and their corresponding navigation rule(RPStepNavigationRule).
getter/setter pair
steps List<RPStep>
The list of RPSteps of the task
getter/setter pairinherited


getStepAfterStep(RPStep? step, RPTaskResult? result) RPStep?
Returns the step after a specified step if there's any, taking the RPStepNavigationRules into consideration.
getStepBeforeStep(RPStep? step, RPTaskResult? result) RPStep?
Returns the step that precedes the specified step, if there is one. If the specified step is null then it returns the last step.
getStepWithIdentifier(String identifier) RPStep?
Returns the step that matches the specified identifier. Returns null if there is no step with the identifier.
getTitleForStep(RPStep step) String
Returns the title of a given step
Returns the navigation rule for the given step identifier
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
removeNavigationRuleForTriggerStepIdentifier(String triggerStepIdentifier) → void
Removes the navigation rule from the given step using its identifier
setNavigationRuleForTriggerStepIdentifier(RPStepNavigationRule stepNavigationRule, String triggerStepIdentifier) → void
Adds a navigation rule to a step using its identifier.
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.