1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/location/LocationService_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <aws/core/utils/memory/stl/AWSVector.h> 10 #include <aws/core/utils/DateTime.h> 11 #include <utility> 12 13 namespace Aws 14 { 15 namespace Utils 16 { 17 namespace Json 18 { 19 class JsonValue; 20 class JsonView; 21 } // namespace Json 22 } // namespace Utils 23 namespace LocationService 24 { 25 namespace Model 26 { 27 28 /** 29 * <p>Contains the tracker resource details.</p><p><h3>See Also:</h3> <a 30 * href="http://docs.aws.amazon.com/goto/WebAPI/location-2020-11-19/ListDevicePositionsResponseEntry">AWS 31 * API Reference</a></p> 32 */ 33 class AWS_LOCATIONSERVICE_API ListDevicePositionsResponseEntry 34 { 35 public: 36 ListDevicePositionsResponseEntry(); 37 ListDevicePositionsResponseEntry(Aws::Utils::Json::JsonView jsonValue); 38 ListDevicePositionsResponseEntry& operator=(Aws::Utils::Json::JsonView jsonValue); 39 Aws::Utils::Json::JsonValue Jsonize() const; 40 41 42 /** 43 * <p>The ID of the device for this position.</p> 44 */ GetDeviceId()45 inline const Aws::String& GetDeviceId() const{ return m_deviceId; } 46 47 /** 48 * <p>The ID of the device for this position.</p> 49 */ DeviceIdHasBeenSet()50 inline bool DeviceIdHasBeenSet() const { return m_deviceIdHasBeenSet; } 51 52 /** 53 * <p>The ID of the device for this position.</p> 54 */ SetDeviceId(const Aws::String & value)55 inline void SetDeviceId(const Aws::String& value) { m_deviceIdHasBeenSet = true; m_deviceId = value; } 56 57 /** 58 * <p>The ID of the device for this position.</p> 59 */ SetDeviceId(Aws::String && value)60 inline void SetDeviceId(Aws::String&& value) { m_deviceIdHasBeenSet = true; m_deviceId = std::move(value); } 61 62 /** 63 * <p>The ID of the device for this position.</p> 64 */ SetDeviceId(const char * value)65 inline void SetDeviceId(const char* value) { m_deviceIdHasBeenSet = true; m_deviceId.assign(value); } 66 67 /** 68 * <p>The ID of the device for this position.</p> 69 */ WithDeviceId(const Aws::String & value)70 inline ListDevicePositionsResponseEntry& WithDeviceId(const Aws::String& value) { SetDeviceId(value); return *this;} 71 72 /** 73 * <p>The ID of the device for this position.</p> 74 */ WithDeviceId(Aws::String && value)75 inline ListDevicePositionsResponseEntry& WithDeviceId(Aws::String&& value) { SetDeviceId(std::move(value)); return *this;} 76 77 /** 78 * <p>The ID of the device for this position.</p> 79 */ WithDeviceId(const char * value)80 inline ListDevicePositionsResponseEntry& WithDeviceId(const char* value) { SetDeviceId(value); return *this;} 81 82 83 /** 84 * <p>The last known device position. Empty if no positions currently stored.</p> 85 */ GetPosition()86 inline const Aws::Vector<double>& GetPosition() const{ return m_position; } 87 88 /** 89 * <p>The last known device position. Empty if no positions currently stored.</p> 90 */ PositionHasBeenSet()91 inline bool PositionHasBeenSet() const { return m_positionHasBeenSet; } 92 93 /** 94 * <p>The last known device position. Empty if no positions currently stored.</p> 95 */ SetPosition(const Aws::Vector<double> & value)96 inline void SetPosition(const Aws::Vector<double>& value) { m_positionHasBeenSet = true; m_position = value; } 97 98 /** 99 * <p>The last known device position. Empty if no positions currently stored.</p> 100 */ SetPosition(Aws::Vector<double> && value)101 inline void SetPosition(Aws::Vector<double>&& value) { m_positionHasBeenSet = true; m_position = std::move(value); } 102 103 /** 104 * <p>The last known device position. Empty if no positions currently stored.</p> 105 */ WithPosition(const Aws::Vector<double> & value)106 inline ListDevicePositionsResponseEntry& WithPosition(const Aws::Vector<double>& value) { SetPosition(value); return *this;} 107 108 /** 109 * <p>The last known device position. Empty if no positions currently stored.</p> 110 */ WithPosition(Aws::Vector<double> && value)111 inline ListDevicePositionsResponseEntry& WithPosition(Aws::Vector<double>&& value) { SetPosition(std::move(value)); return *this;} 112 113 /** 114 * <p>The last known device position. Empty if no positions currently stored.</p> 115 */ AddPosition(double value)116 inline ListDevicePositionsResponseEntry& AddPosition(double value) { m_positionHasBeenSet = true; m_position.push_back(value); return *this; } 117 118 119 /** 120 * <p>The timestamp at which the device position was determined. Uses <a 121 * href="https://www.iso.org/iso-8601-date-and-time-format.html"> ISO 8601</a> 122 * format: <code>YYYY-MM-DDThh:mm:ss.sssZ</code>.</p> 123 */ GetSampleTime()124 inline const Aws::Utils::DateTime& GetSampleTime() const{ return m_sampleTime; } 125 126 /** 127 * <p>The timestamp at which the device position was determined. Uses <a 128 * href="https://www.iso.org/iso-8601-date-and-time-format.html"> ISO 8601</a> 129 * format: <code>YYYY-MM-DDThh:mm:ss.sssZ</code>.</p> 130 */ SampleTimeHasBeenSet()131 inline bool SampleTimeHasBeenSet() const { return m_sampleTimeHasBeenSet; } 132 133 /** 134 * <p>The timestamp at which the device position was determined. Uses <a 135 * href="https://www.iso.org/iso-8601-date-and-time-format.html"> ISO 8601</a> 136 * format: <code>YYYY-MM-DDThh:mm:ss.sssZ</code>.</p> 137 */ SetSampleTime(const Aws::Utils::DateTime & value)138 inline void SetSampleTime(const Aws::Utils::DateTime& value) { m_sampleTimeHasBeenSet = true; m_sampleTime = value; } 139 140 /** 141 * <p>The timestamp at which the device position was determined. Uses <a 142 * href="https://www.iso.org/iso-8601-date-and-time-format.html"> ISO 8601</a> 143 * format: <code>YYYY-MM-DDThh:mm:ss.sssZ</code>.</p> 144 */ SetSampleTime(Aws::Utils::DateTime && value)145 inline void SetSampleTime(Aws::Utils::DateTime&& value) { m_sampleTimeHasBeenSet = true; m_sampleTime = std::move(value); } 146 147 /** 148 * <p>The timestamp at which the device position was determined. Uses <a 149 * href="https://www.iso.org/iso-8601-date-and-time-format.html"> ISO 8601</a> 150 * format: <code>YYYY-MM-DDThh:mm:ss.sssZ</code>.</p> 151 */ WithSampleTime(const Aws::Utils::DateTime & value)152 inline ListDevicePositionsResponseEntry& WithSampleTime(const Aws::Utils::DateTime& value) { SetSampleTime(value); return *this;} 153 154 /** 155 * <p>The timestamp at which the device position was determined. Uses <a 156 * href="https://www.iso.org/iso-8601-date-and-time-format.html"> ISO 8601</a> 157 * format: <code>YYYY-MM-DDThh:mm:ss.sssZ</code>.</p> 158 */ WithSampleTime(Aws::Utils::DateTime && value)159 inline ListDevicePositionsResponseEntry& WithSampleTime(Aws::Utils::DateTime&& value) { SetSampleTime(std::move(value)); return *this;} 160 161 private: 162 163 Aws::String m_deviceId; 164 bool m_deviceIdHasBeenSet; 165 166 Aws::Vector<double> m_position; 167 bool m_positionHasBeenSet; 168 169 Aws::Utils::DateTime m_sampleTime; 170 bool m_sampleTimeHasBeenSet; 171 }; 172 173 } // namespace Model 174 } // namespace LocationService 175 } // namespace Aws 176