/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #include <aws/appstream/model/User.h> #include <aws/core/utils/json/JsonSerializer.h> #include <utility> using namespace Aws::Utils::Json; using namespace Aws::Utils; namespace Aws { namespace AppStream { namespace Model { User::User() : m_arnHasBeenSet(false), m_userNameHasBeenSet(false), m_enabled(false), m_enabledHasBeenSet(false), m_statusHasBeenSet(false), m_firstNameHasBeenSet(false), m_lastNameHasBeenSet(false), m_createdTimeHasBeenSet(false), m_authenticationType(AuthenticationType::NOT_SET), m_authenticationTypeHasBeenSet(false) { } User::User(JsonView jsonValue) : m_arnHasBeenSet(false), m_userNameHasBeenSet(false), m_enabled(false), m_enabledHasBeenSet(false), m_statusHasBeenSet(false), m_firstNameHasBeenSet(false), m_lastNameHasBeenSet(false), m_createdTimeHasBeenSet(false), m_authenticationType(AuthenticationType::NOT_SET), m_authenticationTypeHasBeenSet(false) { *this = jsonValue; } User& User::operator =(JsonView jsonValue) { if(jsonValue.ValueExists("Arn")) { m_arn = jsonValue.GetString("Arn"); m_arnHasBeenSet = true; } if(jsonValue.ValueExists("UserName")) { m_userName = jsonValue.GetString("UserName"); m_userNameHasBeenSet = true; } if(jsonValue.ValueExists("Enabled")) { m_enabled = jsonValue.GetBool("Enabled"); m_enabledHasBeenSet = true; } if(jsonValue.ValueExists("Status")) { m_status = jsonValue.GetString("Status"); m_statusHasBeenSet = true; } if(jsonValue.ValueExists("FirstName")) { m_firstName = jsonValue.GetString("FirstName"); m_firstNameHasBeenSet = true; } if(jsonValue.ValueExists("LastName")) { m_lastName = jsonValue.GetString("LastName"); m_lastNameHasBeenSet = true; } if(jsonValue.ValueExists("CreatedTime")) { m_createdTime = jsonValue.GetDouble("CreatedTime"); m_createdTimeHasBeenSet = true; } if(jsonValue.ValueExists("AuthenticationType")) { m_authenticationType = AuthenticationTypeMapper::GetAuthenticationTypeForName(jsonValue.GetString("AuthenticationType")); m_authenticationTypeHasBeenSet = true; } return *this; } JsonValue User::Jsonize() const { JsonValue payload; if(m_arnHasBeenSet) { payload.WithString("Arn", m_arn); } if(m_userNameHasBeenSet) { payload.WithString("UserName", m_userName); } if(m_enabledHasBeenSet) { payload.WithBool("Enabled", m_enabled); } if(m_statusHasBeenSet) { payload.WithString("Status", m_status); } if(m_firstNameHasBeenSet) { payload.WithString("FirstName", m_firstName); } if(m_lastNameHasBeenSet) { payload.WithString("LastName", m_lastName); } if(m_createdTimeHasBeenSet) { payload.WithDouble("CreatedTime", m_createdTime.SecondsWithMSPrecision()); } if(m_authenticationTypeHasBeenSet) { payload.WithString("AuthenticationType", AuthenticationTypeMapper::GetNameForAuthenticationType(m_authenticationType)); } return payload; } } // namespace Model } // namespace AppStream } // namespace Aws