SmartphoneDeployment class

Contains the entire description and configuration for a study deployment on a smartphone.

Inheritance
  • Object
  • PrimaryDeviceDeployment
  • SmartphoneDeployment
Mixed-in types
Annotations
  • @JsonSerializable.new(includeIfNull: false, explicitToJson: true)

Constructors

SmartphoneDeployment({String? studyId, String? studyDeploymentId, required PrimaryDeviceConfiguration<DeviceRegistration> deviceConfiguration, required DeviceRegistration registration, Set<DeviceConfiguration<DeviceRegistration>> connectedDevices = const {}, Map<String, DeviceRegistration?> connectedDeviceRegistrations = const {}, Set<TaskConfiguration> tasks = const {}, Map<String, TriggerConfiguration> triggers = const {}, Set<TaskControl> taskControls = const {}, Set<ExpectedParticipantData> expectedParticipantData = const {}, StudyDescription? studyDescription, DataEndPoint? dataEndPoint, String? privacySchemaName})
Create a new SmartphoneDeployment.
SmartphoneDeployment.fromJson(Map<String, dynamic> json)
factory
SmartphoneDeployment.fromPrimaryDeviceDeployment({String? studyId, String? studyDeploymentId, required PrimaryDeviceDeployment deployment})
Create a SmartphoneDeployment based on a PrimaryDeviceDeployment.
SmartphoneDeployment.fromPrimaryDeviceDeploymentAndSmartphoneStudyProtocol({String? studyId, String? studyDeploymentId, required PrimaryDeviceDeployment deployment, required SmartphoneStudyProtocol protocol})
Create a SmartphoneDeployment that combines a PrimaryDeviceDeployment and a SmartphoneStudyProtocol.
SmartphoneDeployment.fromSmartphoneStudyProtocol({String? studyId, String? studyDeploymentId, required String primaryDeviceRoleName, required SmartphoneStudyProtocol protocol})
Create a SmartphoneDeployment based on a SmartphoneStudyProtocol. This method basically makes a 1:1 mapping from the protocol to the deployment using a Smartphone as the primary device with the specified primaryDeviceRoleName.

Properties

applicationData Map<String, dynamic>?
getter/setter pairinherited
applicationName String?
The name of the application which will execute this protocol.
no setterinherited
connectedDeviceRegistrations Map<String, DeviceRegistration?>
Preregistration of connected devices, including information such as connection properties, stored per role name.
getter/setter pairinherited
connectedDevices Set<DeviceConfiguration<DeviceRegistration>>
The devices this device needs to connect to.
getter/setter pairinherited
dataEndPoint DataEndPoint?
Specifies where and how to stored or upload the data collected from this deployment. If null, the sensed data is not stored, but may still be used in the app.
getter/setter pairinherited
deployed DateTime
The timestamp (in UTC) when this deployment was deployed on this smartphone.
getter/setter pair
description String
no setterinherited
deviceConfiguration ↔ PrimaryDeviceConfiguration<DeviceRegistration>
The configuration for the primary device this deployment is intended for.
getter/setter pairinherited
deviceRoleName String
The role name of this smartphone device.
no setter
devices Set<DeviceConfiguration<DeviceRegistration>>
All devices this deployment is using.
no setter
expectedDataStreams Set<ExpectedDataStream>
The set of expected data streams from this device deployment.
no setterinherited
expectedParticipantData Set<ExpectedParticipantData>
Expected data about participants in the deployment to be input by users.
getter/setter pairinherited
hashCode int
The hash code for this object.
no setterinherited
hasListeners bool
Whether any listeners are currently registered.
no setterinherited
lastUpdatedOn DateTime
The time when this device deployment was last updated. This corresponds to the most recent device registration as part of this device deployment.
no setterinherited
measures List<Measure>
Get the list of all measures in this study deployment.
no setter
privacySchemaName String?
The name of a PrivacySchema to be used for protecting sensitive data.
getter/setter pairinherited
protocolApiLevel String?
The API level used by this study protocol.
no setterinherited
protocolVersionTag String?
The version tag of the study protocol snapshot.
no setterinherited
registration ↔ DeviceRegistration
Registration for this primary device.
getter/setter pairinherited
responsible StudyResponsible?
The PI responsible for this protocol.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
status ↔ StudyDeploymentStatusTypes
The status of this study deployment.
getter/setter pair
studyDeploymentId String
The unique id of this study deployment.
no setter
studyDescription StudyDescription?
The description of this study protocol containing the title, description, purpose, and the responsible researcher for this study.
getter/setter pairinherited
studyId String?
The unique id of the study that this deployment is part of. Is null if this is a local deployment running only on this phone.
getter/setter pair
taskControls Set<TaskControl>
The specification of tasks triggered and the devices they are sent to.
getter/setter pairinherited
tasks Set<TaskConfiguration>
All tasks which should be able to be executed on this or connected devices.
getter/setter pairinherited
triggers Map<String, TriggerConfiguration>
All triggers originating from this device and connected devices, stored per assigned id unique within the study protocol.
getter/setter pairinherited

Methods

addApplicationData(String key, dynamic value) → void
inherited
addListener(VoidCallback listener) → void
Register a closure to be called when the object changes.
inherited
dispose() → void
Discards any resources used by the object. After this is called, the object is not in a usable state and should be discarded (calls to addListener will throw after the object is disposed).
inherited
getApplicationData(String key) → dynamic
inherited
getDeviceFromRoleName(String roleName) → DeviceConfiguration<DeviceRegistration>?
Get the DeviceConfiguration based on the roleName. This includes both the primary device and the connected devices. Returns null if no device with roleName is found.
getTaskByName(String name) → TaskConfiguration?
Get the task based on its task name in this deployment.
inherited
hasBeenUpdated() → void
Notify listeners that this deployment has been updated.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
notifyListeners() → void
Call all the registered listeners.
inherited
removeApplicationData(String key) → void
inherited
removeListener(VoidCallback listener) → void
Remove a previously registered closure from the list of closures that are notified when the object changes.
inherited
toJson() Map<String, dynamic>
override
toString() String
A string representation of this object.
override

Operators

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