This constructor is private as to avoid the creation of instances
outside of this implementation. This allows us to make sure that
activities as scoped inside the Strava OAuth Driver, always use
the correct format and are always transformed correctly.
To create an instance of this class, you must use the static method
StravaActivityDataDTO.createFromDTO.
The number of kilocalories consumed during this activity. This
field is filled only for activities with a high-enough intensity.
Note that this field contains a number of kilocalories.
The column names as they are represented in the backend runtime
database for activities.activityData
documents.
Note that the fields listed here will be stored in documents.
The total distance covered with this activity. This represents the
total number of meters covered.
Note that this field contains a number of meters.
The total number of seconds elapsed for completion of this
activity. This represents the time that was necessary to complete
the activity from begin to end (including breaks).
Note that this field contains a number of seconds.
The total elevation gain with this activity. This represents the
total number of meters that were "climbed" during the execution
of the activity.
Note that this field contains a number of meters.
A geolocation pair of latitude/longitude
expressed in an array of
float numbers which represents the end location of an activity.
If the end-user disables sharing of geolocation, this field will
contain an empty array.
Whether this activity was recorded on a training maching (device).
Determines whether the activity was crafted by hand or if
it is the result of an actual activity.
Note that manual activities are not considered for payouts.
The total work done in kilojoules during this activity. This field
is filled only for rides.
Note that this field contains a number of kilojoules.
The total number of seconds during which the end-user has been
moving during execution of this activity. This represents the time
during which some movement(s) were recorded.
Note that this field contains a number of seconds.
The name of the activity.
A text value that determines the type of sport.
A geolocation pair of latitude/longitude
expressed in an array of
float numbers which represents the start location of an activity.
If the end-user disables sharing of geolocation, this field will
contain an empty array.
The time at which the activity was started, expressed in milliseconds since the UTC epoch.
The suffer score attributed to this activity by Strava.
We store a copy of this value so that we can evaluate its
usage in our formulas.
Note that this field is sometimes null
when received from
Strava, in those cases this field is set to -1
.
The local timezone used during completion of this activity. This is the timezone of the end-user and can be used to format startedAt accordingly.
The type of entity represented in this object.
This method extracts the fields of a remote DTO into an object that contains fields as defined in BasicRemoteDTO.columns.
The columns as they can be stored in a document.
This method shall extract an entity's definition (field values)
from an API response object.
In the implementation below, the right-hand-side values use the
field names as defined by the data provider and the left-hand-side
values use the field names as defined by the runtime database.
This method is a requirement defined in OAuthEntity.
The data
field of the API Response (contains the entity columns).
The extracted object literal that contains the entity columns.
Generated using TypeDoc
STRAVA
This class defines the fields and methods of an activity as defined by the Strava API.
The fields of this class take values as defined in the Strava documentation for the
DetailedActivity
model, see below for a link to the fields documentation.Note that we do not extract and interpret all fields that are shared by Strava.
https://developers.strava.com/docs/reference/#api-models-DetailedActivity
v0.4.0