Class: Samsara::Types::FuelEnergyDriverReportObjectResponseBody

Inherits:
Object
  • Object
show all
Defined in:
lib/samsara_api/types/fuel_energy_driver_report_object_response_body.rb

Overview

A summary of this driver’s fuel and energy data.

Constant Summary collapse

OMIT =
Object.new

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(distance_traveled_meters:, driver:, efficiency_mpge:, energy_used_kwh: OMIT, engine_idle_time_duration_ms: OMIT, engine_run_time_duration_ms: OMIT, est_carbon_emissions_kg: OMIT, est_fuel_energy_cost:, fuel_consumed_ml: OMIT, additional_properties: nil) ⇒ Samsara::Types::FuelEnergyDriverReportObjectResponseBody

Parameters:

  • additional_properties (OpenStruct) (defaults to: nil)

    Additional properties unmapped to the current class definition



62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# File 'lib/samsara_api/types/fuel_energy_driver_report_object_response_body.rb', line 62

def initialize(distance_traveled_meters:, driver:, efficiency_mpge:, energy_used_kwh: OMIT, engine_idle_time_duration_ms: OMIT, engine_run_time_duration_ms: OMIT, est_carbon_emissions_kg: OMIT, est_fuel_energy_cost:, fuel_consumed_ml: OMIT, additional_properties: nil)
  @distance_traveled_meters = distance_traveled_meters
  @driver = driver
  @efficiency_mpge = efficiency_mpge
  @energy_used_kwh = energy_used_kwh if energy_used_kwh != OMIT
  @engine_idle_time_duration_ms = engine_idle_time_duration_ms if engine_idle_time_duration_ms != OMIT
  @engine_run_time_duration_ms = engine_run_time_duration_ms if engine_run_time_duration_ms != OMIT
  @est_carbon_emissions_kg = est_carbon_emissions_kg if est_carbon_emissions_kg != OMIT
  @est_fuel_energy_cost = est_fuel_energy_cost
  @fuel_consumed_ml = fuel_consumed_ml if fuel_consumed_ml != OMIT
  @additional_properties = additional_properties
  @_field_set = { "distanceTraveledMeters": distance_traveled_meters, "driver": driver, "efficiencyMpge": efficiency_mpge, "energyUsedKwh": energy_used_kwh, "engineIdleTimeDurationMs": engine_idle_time_duration_ms, "engineRunTimeDurationMs": engine_run_time_duration_ms, "estCarbonEmissionsKg": est_carbon_emissions_kg, "estFuelEnergyCost": est_fuel_energy_cost, "fuelConsumedMl": fuel_consumed_ml }.reject do | _k, v |
  v == OMIT
end
end

Instance Attribute Details

#additional_propertiesOpenStruct (readonly)

Returns Additional properties unmapped to the current class definition.

Returns:

  • (OpenStruct)

    Additional properties unmapped to the current class definition



37
38
39
# File 'lib/samsara_api/types/fuel_energy_driver_report_object_response_body.rb', line 37

def additional_properties
  @additional_properties
end

#distance_traveled_metersFloat (readonly)

Returns Meters traveled over the given time range.

Returns:

  • (Float)

    Meters traveled over the given time range.



12
13
14
# File 'lib/samsara_api/types/fuel_energy_driver_report_object_response_body.rb', line 12

def distance_traveled_meters
  @distance_traveled_meters
end

#driverSamsara::Types::GoaDriverTinyResponseResponseBody (readonly)



14
15
16
# File 'lib/samsara_api/types/fuel_energy_driver_report_object_response_body.rb', line 14

def driver
  @driver
end

#efficiency_mpgeObject (readonly)

MPGE. MPG/MPGE values are provided based on US gallons.



18
19
20
# File 'lib/samsara_api/types/fuel_energy_driver_report_object_response_body.rb', line 18

def efficiency_mpge
  @efficiency_mpge
end

#energy_used_kwhObject (readonly)

hybrid and electric vehicles.



21
22
23
# File 'lib/samsara_api/types/fuel_energy_driver_report_object_response_body.rb', line 21

def energy_used_kwh
  @energy_used_kwh
end

#engine_idle_time_duration_msObject (readonly)

fuel and hybrid vehicles.



24
25
26
# File 'lib/samsara_api/types/fuel_energy_driver_report_object_response_body.rb', line 24

def engine_idle_time_duration_ms
  @engine_idle_time_duration_ms
end

#engine_run_time_duration_msObject (readonly)

fuel and hybrid vehicles.



27
28
29
# File 'lib/samsara_api/types/fuel_energy_driver_report_object_response_body.rb', line 27

def engine_run_time_duration_ms
  @engine_run_time_duration_ms
end

#est_carbon_emissions_kgObject (readonly)

for fuel and hybrid vehicles.



30
31
32
# File 'lib/samsara_api/types/fuel_energy_driver_report_object_response_body.rb', line 30

def est_carbon_emissions_kg
  @est_carbon_emissions_kg
end

#est_fuel_energy_costSamsara::Types::FuelEnergyCostResponseResponseBody (readonly)



32
33
34
# File 'lib/samsara_api/types/fuel_energy_driver_report_object_response_body.rb', line 32

def est_fuel_energy_cost
  @est_fuel_energy_cost
end

#fuel_consumed_mlObject (readonly)

and hybrid vehicles.



35
36
37
# File 'lib/samsara_api/types/fuel_energy_driver_report_object_response_body.rb', line 35

def fuel_consumed_ml
  @fuel_consumed_ml
end

Class Method Details

.from_json(json_object:) ⇒ Samsara::Types::FuelEnergyDriverReportObjectResponseBody

Parameters:

  • json_object (String)

Returns:



82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
# File 'lib/samsara_api/types/fuel_energy_driver_report_object_response_body.rb', line 82

def self.from_json(json_object:)
  struct = JSON.parse(json_object, object_class: OpenStruct)
  parsed_json = JSON.parse(json_object)
  distance_traveled_meters = parsed_json["distanceTraveledMeters"]
  unless parsed_json["driver"].nil?
    driver = parsed_json["driver"].to_json
    driver = Samsara::Types::GoaDriverTinyResponseResponseBody.from_json(json_object: driver)
  else
    driver = nil
  end
  efficiency_mpge = parsed_json["efficiencyMpge"]
  energy_used_kwh = parsed_json["energyUsedKwh"]
  engine_idle_time_duration_ms = parsed_json["engineIdleTimeDurationMs"]
  engine_run_time_duration_ms = parsed_json["engineRunTimeDurationMs"]
  est_carbon_emissions_kg = parsed_json["estCarbonEmissionsKg"]
  unless parsed_json["estFuelEnergyCost"].nil?
    est_fuel_energy_cost = parsed_json["estFuelEnergyCost"].to_json
    est_fuel_energy_cost = Samsara::Types::FuelEnergyCostResponseResponseBody.from_json(json_object: est_fuel_energy_cost)
  else
    est_fuel_energy_cost = nil
  end
  fuel_consumed_ml = parsed_json["fuelConsumedMl"]
  new(
    distance_traveled_meters: distance_traveled_meters,
    driver: driver,
    efficiency_mpge: efficiency_mpge,
    energy_used_kwh: energy_used_kwh,
    engine_idle_time_duration_ms: engine_idle_time_duration_ms,
    engine_run_time_duration_ms: engine_run_time_duration_ms,
    est_carbon_emissions_kg: est_carbon_emissions_kg,
    est_fuel_energy_cost: est_fuel_energy_cost,
    fuel_consumed_ml: fuel_consumed_ml,
    additional_properties: struct
  )
end

.validate_raw(obj:) ⇒ Void

Parameters:

  • obj (Object)

Returns:

  • (Void)


130
131
132
133
134
135
136
137
138
139
140
# File 'lib/samsara_api/types/fuel_energy_driver_report_object_response_body.rb', line 130

def self.validate_raw(obj:)
  obj.distance_traveled_meters.is_a?(Float) != false || raise("Passed value for field obj.distance_traveled_meters is not the expected type, validation failed.")
  Samsara::Types::GoaDriverTinyResponseResponseBody.validate_raw(obj: obj.driver)
  obj.efficiency_mpge.is_a?(Float) != false || raise("Passed value for field obj.efficiency_mpge is not the expected type, validation failed.")
  obj.energy_used_kwh&.is_a?(Float) != false || raise("Passed value for field obj.energy_used_kwh is not the expected type, validation failed.")
  obj.engine_idle_time_duration_ms&.is_a?(Long) != false || raise("Passed value for field obj.engine_idle_time_duration_ms is not the expected type, validation failed.")
  obj.engine_run_time_duration_ms&.is_a?(Long) != false || raise("Passed value for field obj.engine_run_time_duration_ms is not the expected type, validation failed.")
  obj.est_carbon_emissions_kg&.is_a?(Float) != false || raise("Passed value for field obj.est_carbon_emissions_kg is not the expected type, validation failed.")
  Samsara::Types::FuelEnergyCostResponseResponseBody.validate_raw(obj: obj.est_fuel_energy_cost)
  obj.fuel_consumed_ml&.is_a?(Float) != false || raise("Passed value for field obj.fuel_consumed_ml is not the expected type, validation failed.")
end

Instance Method Details

#to_jsonString

Returns:

  • (String)


121
122
123
# File 'lib/samsara_api/types/fuel_energy_driver_report_object_response_body.rb', line 121

def to_json
  @_field_set&.to_json
end