/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #include #include #include using namespace Aws::Utils::Json; using namespace Aws::Utils; namespace Aws { namespace AlexaForBusiness { namespace Model { DeviceData::DeviceData() : m_deviceArnHasBeenSet(false), m_deviceSerialNumberHasBeenSet(false), m_deviceTypeHasBeenSet(false), m_deviceNameHasBeenSet(false), m_softwareVersionHasBeenSet(false), m_macAddressHasBeenSet(false), m_deviceStatus(DeviceStatus::NOT_SET), m_deviceStatusHasBeenSet(false), m_networkProfileArnHasBeenSet(false), m_networkProfileNameHasBeenSet(false), m_roomArnHasBeenSet(false), m_roomNameHasBeenSet(false), m_deviceStatusInfoHasBeenSet(false), m_createdTimeHasBeenSet(false) { } DeviceData::DeviceData(JsonView jsonValue) : m_deviceArnHasBeenSet(false), m_deviceSerialNumberHasBeenSet(false), m_deviceTypeHasBeenSet(false), m_deviceNameHasBeenSet(false), m_softwareVersionHasBeenSet(false), m_macAddressHasBeenSet(false), m_deviceStatus(DeviceStatus::NOT_SET), m_deviceStatusHasBeenSet(false), m_networkProfileArnHasBeenSet(false), m_networkProfileNameHasBeenSet(false), m_roomArnHasBeenSet(false), m_roomNameHasBeenSet(false), m_deviceStatusInfoHasBeenSet(false), m_createdTimeHasBeenSet(false) { *this = jsonValue; } DeviceData& DeviceData::operator =(JsonView jsonValue) { if(jsonValue.ValueExists("DeviceArn")) { m_deviceArn = jsonValue.GetString("DeviceArn"); m_deviceArnHasBeenSet = true; } if(jsonValue.ValueExists("DeviceSerialNumber")) { m_deviceSerialNumber = jsonValue.GetString("DeviceSerialNumber"); m_deviceSerialNumberHasBeenSet = true; } if(jsonValue.ValueExists("DeviceType")) { m_deviceType = jsonValue.GetString("DeviceType"); m_deviceTypeHasBeenSet = true; } if(jsonValue.ValueExists("DeviceName")) { m_deviceName = jsonValue.GetString("DeviceName"); m_deviceNameHasBeenSet = true; } if(jsonValue.ValueExists("SoftwareVersion")) { m_softwareVersion = jsonValue.GetString("SoftwareVersion"); m_softwareVersionHasBeenSet = true; } if(jsonValue.ValueExists("MacAddress")) { m_macAddress = jsonValue.GetString("MacAddress"); m_macAddressHasBeenSet = true; } if(jsonValue.ValueExists("DeviceStatus")) { m_deviceStatus = DeviceStatusMapper::GetDeviceStatusForName(jsonValue.GetString("DeviceStatus")); m_deviceStatusHasBeenSet = true; } if(jsonValue.ValueExists("NetworkProfileArn")) { m_networkProfileArn = jsonValue.GetString("NetworkProfileArn"); m_networkProfileArnHasBeenSet = true; } if(jsonValue.ValueExists("NetworkProfileName")) { m_networkProfileName = jsonValue.GetString("NetworkProfileName"); m_networkProfileNameHasBeenSet = true; } if(jsonValue.ValueExists("RoomArn")) { m_roomArn = jsonValue.GetString("RoomArn"); m_roomArnHasBeenSet = true; } if(jsonValue.ValueExists("RoomName")) { m_roomName = jsonValue.GetString("RoomName"); m_roomNameHasBeenSet = true; } if(jsonValue.ValueExists("DeviceStatusInfo")) { m_deviceStatusInfo = jsonValue.GetObject("DeviceStatusInfo"); m_deviceStatusInfoHasBeenSet = true; } if(jsonValue.ValueExists("CreatedTime")) { m_createdTime = jsonValue.GetDouble("CreatedTime"); m_createdTimeHasBeenSet = true; } return *this; } JsonValue DeviceData::Jsonize() const { JsonValue payload; if(m_deviceArnHasBeenSet) { payload.WithString("DeviceArn", m_deviceArn); } if(m_deviceSerialNumberHasBeenSet) { payload.WithString("DeviceSerialNumber", m_deviceSerialNumber); } if(m_deviceTypeHasBeenSet) { payload.WithString("DeviceType", m_deviceType); } if(m_deviceNameHasBeenSet) { payload.WithString("DeviceName", m_deviceName); } if(m_softwareVersionHasBeenSet) { payload.WithString("SoftwareVersion", m_softwareVersion); } if(m_macAddressHasBeenSet) { payload.WithString("MacAddress", m_macAddress); } if(m_deviceStatusHasBeenSet) { payload.WithString("DeviceStatus", DeviceStatusMapper::GetNameForDeviceStatus(m_deviceStatus)); } if(m_networkProfileArnHasBeenSet) { payload.WithString("NetworkProfileArn", m_networkProfileArn); } if(m_networkProfileNameHasBeenSet) { payload.WithString("NetworkProfileName", m_networkProfileName); } if(m_roomArnHasBeenSet) { payload.WithString("RoomArn", m_roomArn); } if(m_roomNameHasBeenSet) { payload.WithString("RoomName", m_roomName); } if(m_deviceStatusInfoHasBeenSet) { payload.WithObject("DeviceStatusInfo", m_deviceStatusInfo.Jsonize()); } if(m_createdTimeHasBeenSet) { payload.WithDouble("CreatedTime", m_createdTime.SecondsWithMSPrecision()); } return payload; } } // namespace Model } // namespace AlexaForBusiness } // namespace Aws