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/iot1click-devices/IoT1ClickDevicesService_EXPORTS.h> 8 #include <aws/iot1click-devices/model/Device.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <utility> 11 12 namespace Aws 13 { 14 namespace Utils 15 { 16 namespace Json 17 { 18 class JsonValue; 19 class JsonView; 20 } // namespace Json 21 } // namespace Utils 22 namespace IoT1ClickDevicesService 23 { 24 namespace Model 25 { 26 27 class AWS_IOT1CLICKDEVICESSERVICE_API DeviceEvent 28 { 29 public: 30 DeviceEvent(); 31 DeviceEvent(Aws::Utils::Json::JsonView jsonValue); 32 DeviceEvent& operator=(Aws::Utils::Json::JsonView jsonValue); 33 Aws::Utils::Json::JsonValue Jsonize() const; 34 35 36 /** 37 * <p>An object representing the device associated with the event.</p> 38 */ GetDevice()39 inline const Device& GetDevice() const{ return m_device; } 40 41 /** 42 * <p>An object representing the device associated with the event.</p> 43 */ DeviceHasBeenSet()44 inline bool DeviceHasBeenSet() const { return m_deviceHasBeenSet; } 45 46 /** 47 * <p>An object representing the device associated with the event.</p> 48 */ SetDevice(const Device & value)49 inline void SetDevice(const Device& value) { m_deviceHasBeenSet = true; m_device = value; } 50 51 /** 52 * <p>An object representing the device associated with the event.</p> 53 */ SetDevice(Device && value)54 inline void SetDevice(Device&& value) { m_deviceHasBeenSet = true; m_device = std::move(value); } 55 56 /** 57 * <p>An object representing the device associated with the event.</p> 58 */ WithDevice(const Device & value)59 inline DeviceEvent& WithDevice(const Device& value) { SetDevice(value); return *this;} 60 61 /** 62 * <p>An object representing the device associated with the event.</p> 63 */ WithDevice(Device && value)64 inline DeviceEvent& WithDevice(Device&& value) { SetDevice(std::move(value)); return *this;} 65 66 67 /** 68 * <p>A serialized JSON object representing the device-type specific event.</p> 69 */ GetStdEvent()70 inline const Aws::String& GetStdEvent() const{ return m_stdEvent; } 71 72 /** 73 * <p>A serialized JSON object representing the device-type specific event.</p> 74 */ StdEventHasBeenSet()75 inline bool StdEventHasBeenSet() const { return m_stdEventHasBeenSet; } 76 77 /** 78 * <p>A serialized JSON object representing the device-type specific event.</p> 79 */ SetStdEvent(const Aws::String & value)80 inline void SetStdEvent(const Aws::String& value) { m_stdEventHasBeenSet = true; m_stdEvent = value; } 81 82 /** 83 * <p>A serialized JSON object representing the device-type specific event.</p> 84 */ SetStdEvent(Aws::String && value)85 inline void SetStdEvent(Aws::String&& value) { m_stdEventHasBeenSet = true; m_stdEvent = std::move(value); } 86 87 /** 88 * <p>A serialized JSON object representing the device-type specific event.</p> 89 */ SetStdEvent(const char * value)90 inline void SetStdEvent(const char* value) { m_stdEventHasBeenSet = true; m_stdEvent.assign(value); } 91 92 /** 93 * <p>A serialized JSON object representing the device-type specific event.</p> 94 */ WithStdEvent(const Aws::String & value)95 inline DeviceEvent& WithStdEvent(const Aws::String& value) { SetStdEvent(value); return *this;} 96 97 /** 98 * <p>A serialized JSON object representing the device-type specific event.</p> 99 */ WithStdEvent(Aws::String && value)100 inline DeviceEvent& WithStdEvent(Aws::String&& value) { SetStdEvent(std::move(value)); return *this;} 101 102 /** 103 * <p>A serialized JSON object representing the device-type specific event.</p> 104 */ WithStdEvent(const char * value)105 inline DeviceEvent& WithStdEvent(const char* value) { SetStdEvent(value); return *this;} 106 107 private: 108 109 Device m_device; 110 bool m_deviceHasBeenSet; 111 112 Aws::String m_stdEvent; 113 bool m_stdEventHasBeenSet; 114 }; 115 116 } // namespace Model 117 } // namespace IoT1ClickDevicesService 118 } // namespace Aws 119