class Strava::SegmentEffort

Attributes

segment[R]

Public Instance Methods

get_details() click to toggle source
# File lib/strava/segment_effort.rb, line 23
def get_details
  return self if detailed?
  res = client.get(path_base).to_h
  update(res)
  res
end
get_streams(types = '', **params) click to toggle source
# File lib/strava/segment_effort.rb, line 30
def get_streams(types = '', **params)
  res = client.get(path_streams + types.join(','), **params).to_a
  @streams.update(res)
end
path_base() click to toggle source
# File lib/strava/segment_effort.rb, line 34
def path_base
  "segment_efforts/#{id}"
end
path_streams() click to toggle source
# File lib/strava/segment_effort.rb, line 37
def path_streams
  "#{path_base}/streams/"
end
set_ivars() click to toggle source
# File lib/strava/segment_effort.rb, line 7
def set_ivars
  @streams = StreamSet.new
end
streams(types = [:time, :distance, :latlng], **params) click to toggle source
# File lib/strava/segment_effort.rb, line 18
def streams(types = [:time, :distance, :latlng], **params)
  get_streams(types, **params) if @streams.empty?
  @streams
end
update(data, **opts) click to toggle source
# File lib/strava/segment_effort.rb, line 11
def update(data, **opts)
  @response = data
  @id             = data["id"]
  @resource_state = data['resource_state']
  @segment        = Segment.new(data['segment'], client: @client) if data['segment']
end