Class: Samsara::Types::VehicleStatsGps
- Inherits:
-
Object
- Object
- Samsara::Types::VehicleStatsGps
- Defined in:
- lib/samsara_api/types/vehicle_stats_gps.rb
Overview
GPS location data for the vehicle.
Constant Summary collapse
- OMIT =
Object.new
Instance Attribute Summary collapse
-
#additional_properties ⇒ OpenStruct
readonly
Additional properties unmapped to the current class definition.
- #address ⇒ Samsara::Types::VehicleLocationAddress readonly
- #heading_degrees ⇒ Float readonly
- #is_ecu_speed ⇒ Boolean readonly
- #latitude ⇒ Float readonly
- #longitude ⇒ Float readonly
- #reverse_geo ⇒ Samsara::Types::ReverseGeo readonly
- #speed_miles_per_hour ⇒ Float readonly
- #time ⇒ String readonly
Class Method Summary collapse
Instance Method Summary collapse
- #initialize(address: OMIT, heading_degrees: OMIT, is_ecu_speed: OMIT, latitude:, longitude:, reverse_geo: OMIT, speed_miles_per_hour: OMIT, time:, additional_properties: nil) ⇒ Samsara::Types::VehicleStatsGps constructor
- #to_json ⇒ String
Constructor Details
#initialize(address: OMIT, heading_degrees: OMIT, is_ecu_speed: OMIT, latitude:, longitude:, reverse_geo: OMIT, speed_miles_per_hour: OMIT, time:, additional_properties: nil) ⇒ Samsara::Types::VehicleStatsGps
45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
# File 'lib/samsara_api/types/vehicle_stats_gps.rb', line 45 def initialize(address: OMIT, heading_degrees: OMIT, is_ecu_speed: OMIT, latitude:, longitude:, reverse_geo: OMIT, speed_miles_per_hour: OMIT, time:, additional_properties: nil) @address = address if address != OMIT @heading_degrees = heading_degrees if heading_degrees != OMIT @is_ecu_speed = is_ecu_speed if is_ecu_speed != OMIT @latitude = latitude @longitude = longitude @reverse_geo = reverse_geo if reverse_geo != OMIT @speed_miles_per_hour = speed_miles_per_hour if speed_miles_per_hour != OMIT @time = time @additional_properties = additional_properties @_field_set = { "address": address, "headingDegrees": heading_degrees, "isEcuSpeed": is_ecu_speed, "latitude": latitude, "longitude": longitude, "reverseGeo": reverse_geo, "speedMilesPerHour": speed_miles_per_hour, "time": time }.reject do | _k, v | v == OMIT end end |
Instance Attribute Details
#additional_properties ⇒ OpenStruct (readonly)
Returns Additional properties unmapped to the current class definition.
28 29 30 |
# File 'lib/samsara_api/types/vehicle_stats_gps.rb', line 28 def additional_properties @additional_properties end |
#address ⇒ Samsara::Types::VehicleLocationAddress (readonly)
12 13 14 |
# File 'lib/samsara_api/types/vehicle_stats_gps.rb', line 12 def address @address end |
#heading_degrees ⇒ Float (readonly)
14 15 16 |
# File 'lib/samsara_api/types/vehicle_stats_gps.rb', line 14 def heading_degrees @heading_degrees end |
#is_ecu_speed ⇒ Boolean (readonly)
16 17 18 |
# File 'lib/samsara_api/types/vehicle_stats_gps.rb', line 16 def is_ecu_speed @is_ecu_speed end |
#latitude ⇒ Float (readonly)
18 19 20 |
# File 'lib/samsara_api/types/vehicle_stats_gps.rb', line 18 def latitude @latitude end |
#longitude ⇒ Float (readonly)
20 21 22 |
# File 'lib/samsara_api/types/vehicle_stats_gps.rb', line 20 def longitude @longitude end |
#reverse_geo ⇒ Samsara::Types::ReverseGeo (readonly)
22 23 24 |
# File 'lib/samsara_api/types/vehicle_stats_gps.rb', line 22 def reverse_geo @reverse_geo end |
#speed_miles_per_hour ⇒ Float (readonly)
24 25 26 |
# File 'lib/samsara_api/types/vehicle_stats_gps.rb', line 24 def speed_miles_per_hour @speed_miles_per_hour end |
#time ⇒ String (readonly)
26 27 28 |
# File 'lib/samsara_api/types/vehicle_stats_gps.rb', line 26 def time @time end |
Class Method Details
.from_json(json_object:) ⇒ Samsara::Types::VehicleStatsGps
63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 |
# File 'lib/samsara_api/types/vehicle_stats_gps.rb', line 63 def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) unless parsed_json["address"].nil? address = parsed_json["address"].to_json address = Samsara::Types::VehicleLocationAddress.from_json(json_object: address) else address = nil end heading_degrees = parsed_json["headingDegrees"] is_ecu_speed = parsed_json["isEcuSpeed"] latitude = parsed_json["latitude"] longitude = parsed_json["longitude"] unless parsed_json["reverseGeo"].nil? reverse_geo = parsed_json["reverseGeo"].to_json reverse_geo = Samsara::Types::ReverseGeo.from_json(json_object: reverse_geo) else reverse_geo = nil end speed_miles_per_hour = parsed_json["speedMilesPerHour"] time = parsed_json["time"] new( address: address, heading_degrees: heading_degrees, is_ecu_speed: is_ecu_speed, latitude: latitude, longitude: longitude, reverse_geo: reverse_geo, speed_miles_per_hour: speed_miles_per_hour, time: time, additional_properties: struct ) end |
.validate_raw(obj:) ⇒ Void
108 109 110 111 112 113 114 115 116 117 |
# File 'lib/samsara_api/types/vehicle_stats_gps.rb', line 108 def self.validate_raw(obj:) obj.address.nil? || Samsara::Types::VehicleLocationAddress.validate_raw(obj: obj.address) obj.heading_degrees&.is_a?(Float) != false || raise("Passed value for field obj.heading_degrees is not the expected type, validation failed.") obj.is_ecu_speed&.is_a?(Boolean) != false || raise("Passed value for field obj.is_ecu_speed is not the expected type, validation failed.") obj.latitude.is_a?(Float) != false || raise("Passed value for field obj.latitude is not the expected type, validation failed.") obj.longitude.is_a?(Float) != false || raise("Passed value for field obj.longitude is not the expected type, validation failed.") obj.reverse_geo.nil? || Samsara::Types::ReverseGeo.validate_raw(obj: obj.reverse_geo) obj.speed_miles_per_hour&.is_a?(Float) != false || raise("Passed value for field obj.speed_miles_per_hour is not the expected type, validation failed.") obj.time.is_a?(String) != false || raise("Passed value for field obj.time is not the expected type, validation failed.") end |
Instance Method Details
#to_json ⇒ String
99 100 101 |
# File 'lib/samsara_api/types/vehicle_stats_gps.rb', line 99 def to_json @_field_set&.to_json end |