/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Information about the instance.See Also:
AWS
* API Reference
The identifier of the instance.
*/ inline const Aws::String& GetId() const{ return m_id; } /** *The identifier of the instance.
*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *The identifier of the instance.
*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *The identifier of the instance.
*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *The identifier of the instance.
*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *The identifier of the instance.
*/ inline InstanceSummary& WithId(const Aws::String& value) { SetId(value); return *this;} /** *The identifier of the instance.
*/ inline InstanceSummary& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *The identifier of the instance.
*/ inline InstanceSummary& WithId(const char* value) { SetId(value); return *this;} /** *The Amazon Resource Name (ARN) of the instance.
*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *The Amazon Resource Name (ARN) of the instance.
*/ inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the instance.
*/ inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; } /** *The Amazon Resource Name (ARN) of the instance.
*/ inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); } /** *The Amazon Resource Name (ARN) of the instance.
*/ inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); } /** *The Amazon Resource Name (ARN) of the instance.
*/ inline InstanceSummary& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the instance.
*/ inline InstanceSummary& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the instance.
*/ inline InstanceSummary& WithArn(const char* value) { SetArn(value); return *this;} /** *The identity management type of the instance.
*/ inline const DirectoryType& GetIdentityManagementType() const{ return m_identityManagementType; } /** *The identity management type of the instance.
*/ inline bool IdentityManagementTypeHasBeenSet() const { return m_identityManagementTypeHasBeenSet; } /** *The identity management type of the instance.
*/ inline void SetIdentityManagementType(const DirectoryType& value) { m_identityManagementTypeHasBeenSet = true; m_identityManagementType = value; } /** *The identity management type of the instance.
*/ inline void SetIdentityManagementType(DirectoryType&& value) { m_identityManagementTypeHasBeenSet = true; m_identityManagementType = std::move(value); } /** *The identity management type of the instance.
*/ inline InstanceSummary& WithIdentityManagementType(const DirectoryType& value) { SetIdentityManagementType(value); return *this;} /** *The identity management type of the instance.
*/ inline InstanceSummary& WithIdentityManagementType(DirectoryType&& value) { SetIdentityManagementType(std::move(value)); return *this;} /** *The alias of the instance.
*/ inline const Aws::String& GetInstanceAlias() const{ return m_instanceAlias; } /** *The alias of the instance.
*/ inline bool InstanceAliasHasBeenSet() const { return m_instanceAliasHasBeenSet; } /** *The alias of the instance.
*/ inline void SetInstanceAlias(const Aws::String& value) { m_instanceAliasHasBeenSet = true; m_instanceAlias = value; } /** *The alias of the instance.
*/ inline void SetInstanceAlias(Aws::String&& value) { m_instanceAliasHasBeenSet = true; m_instanceAlias = std::move(value); } /** *The alias of the instance.
*/ inline void SetInstanceAlias(const char* value) { m_instanceAliasHasBeenSet = true; m_instanceAlias.assign(value); } /** *The alias of the instance.
*/ inline InstanceSummary& WithInstanceAlias(const Aws::String& value) { SetInstanceAlias(value); return *this;} /** *The alias of the instance.
*/ inline InstanceSummary& WithInstanceAlias(Aws::String&& value) { SetInstanceAlias(std::move(value)); return *this;} /** *The alias of the instance.
*/ inline InstanceSummary& WithInstanceAlias(const char* value) { SetInstanceAlias(value); return *this;} /** *When the instance was created.
*/ inline const Aws::Utils::DateTime& GetCreatedTime() const{ return m_createdTime; } /** *When the instance was created.
*/ inline bool CreatedTimeHasBeenSet() const { return m_createdTimeHasBeenSet; } /** *When the instance was created.
*/ inline void SetCreatedTime(const Aws::Utils::DateTime& value) { m_createdTimeHasBeenSet = true; m_createdTime = value; } /** *When the instance was created.
*/ inline void SetCreatedTime(Aws::Utils::DateTime&& value) { m_createdTimeHasBeenSet = true; m_createdTime = std::move(value); } /** *When the instance was created.
*/ inline InstanceSummary& WithCreatedTime(const Aws::Utils::DateTime& value) { SetCreatedTime(value); return *this;} /** *When the instance was created.
*/ inline InstanceSummary& WithCreatedTime(Aws::Utils::DateTime&& value) { SetCreatedTime(std::move(value)); return *this;} /** *The service role of the instance.
*/ inline const Aws::String& GetServiceRole() const{ return m_serviceRole; } /** *The service role of the instance.
*/ inline bool ServiceRoleHasBeenSet() const { return m_serviceRoleHasBeenSet; } /** *The service role of the instance.
*/ inline void SetServiceRole(const Aws::String& value) { m_serviceRoleHasBeenSet = true; m_serviceRole = value; } /** *The service role of the instance.
*/ inline void SetServiceRole(Aws::String&& value) { m_serviceRoleHasBeenSet = true; m_serviceRole = std::move(value); } /** *The service role of the instance.
*/ inline void SetServiceRole(const char* value) { m_serviceRoleHasBeenSet = true; m_serviceRole.assign(value); } /** *The service role of the instance.
*/ inline InstanceSummary& WithServiceRole(const Aws::String& value) { SetServiceRole(value); return *this;} /** *The service role of the instance.
*/ inline InstanceSummary& WithServiceRole(Aws::String&& value) { SetServiceRole(std::move(value)); return *this;} /** *The service role of the instance.
*/ inline InstanceSummary& WithServiceRole(const char* value) { SetServiceRole(value); return *this;} /** *The state of the instance.
*/ inline const InstanceStatus& GetInstanceStatus() const{ return m_instanceStatus; } /** *The state of the instance.
*/ inline bool InstanceStatusHasBeenSet() const { return m_instanceStatusHasBeenSet; } /** *The state of the instance.
*/ inline void SetInstanceStatus(const InstanceStatus& value) { m_instanceStatusHasBeenSet = true; m_instanceStatus = value; } /** *The state of the instance.
*/ inline void SetInstanceStatus(InstanceStatus&& value) { m_instanceStatusHasBeenSet = true; m_instanceStatus = std::move(value); } /** *The state of the instance.
*/ inline InstanceSummary& WithInstanceStatus(const InstanceStatus& value) { SetInstanceStatus(value); return *this;} /** *The state of the instance.
*/ inline InstanceSummary& WithInstanceStatus(InstanceStatus&& value) { SetInstanceStatus(std::move(value)); return *this;} /** *Whether inbound calls are enabled.
*/ inline bool GetInboundCallsEnabled() const{ return m_inboundCallsEnabled; } /** *Whether inbound calls are enabled.
*/ inline bool InboundCallsEnabledHasBeenSet() const { return m_inboundCallsEnabledHasBeenSet; } /** *Whether inbound calls are enabled.
*/ inline void SetInboundCallsEnabled(bool value) { m_inboundCallsEnabledHasBeenSet = true; m_inboundCallsEnabled = value; } /** *Whether inbound calls are enabled.
*/ inline InstanceSummary& WithInboundCallsEnabled(bool value) { SetInboundCallsEnabled(value); return *this;} /** *Whether outbound calls are enabled.
*/ inline bool GetOutboundCallsEnabled() const{ return m_outboundCallsEnabled; } /** *Whether outbound calls are enabled.
*/ inline bool OutboundCallsEnabledHasBeenSet() const { return m_outboundCallsEnabledHasBeenSet; } /** *Whether outbound calls are enabled.
*/ inline void SetOutboundCallsEnabled(bool value) { m_outboundCallsEnabledHasBeenSet = true; m_outboundCallsEnabled = value; } /** *Whether outbound calls are enabled.
*/ inline InstanceSummary& WithOutboundCallsEnabled(bool value) { SetOutboundCallsEnabled(value); return *this;} /** *This URL allows contact center users to access the Amazon Connect admin * website.
*/ inline const Aws::String& GetInstanceAccessUrl() const{ return m_instanceAccessUrl; } /** *This URL allows contact center users to access the Amazon Connect admin * website.
*/ inline bool InstanceAccessUrlHasBeenSet() const { return m_instanceAccessUrlHasBeenSet; } /** *This URL allows contact center users to access the Amazon Connect admin * website.
*/ inline void SetInstanceAccessUrl(const Aws::String& value) { m_instanceAccessUrlHasBeenSet = true; m_instanceAccessUrl = value; } /** *This URL allows contact center users to access the Amazon Connect admin * website.
*/ inline void SetInstanceAccessUrl(Aws::String&& value) { m_instanceAccessUrlHasBeenSet = true; m_instanceAccessUrl = std::move(value); } /** *This URL allows contact center users to access the Amazon Connect admin * website.
*/ inline void SetInstanceAccessUrl(const char* value) { m_instanceAccessUrlHasBeenSet = true; m_instanceAccessUrl.assign(value); } /** *This URL allows contact center users to access the Amazon Connect admin * website.
*/ inline InstanceSummary& WithInstanceAccessUrl(const Aws::String& value) { SetInstanceAccessUrl(value); return *this;} /** *This URL allows contact center users to access the Amazon Connect admin * website.
*/ inline InstanceSummary& WithInstanceAccessUrl(Aws::String&& value) { SetInstanceAccessUrl(std::move(value)); return *this;} /** *This URL allows contact center users to access the Amazon Connect admin * website.
*/ inline InstanceSummary& WithInstanceAccessUrl(const char* value) { SetInstanceAccessUrl(value); return *this;} private: Aws::String m_id; bool m_idHasBeenSet = false; Aws::String m_arn; bool m_arnHasBeenSet = false; DirectoryType m_identityManagementType; bool m_identityManagementTypeHasBeenSet = false; Aws::String m_instanceAlias; bool m_instanceAliasHasBeenSet = false; Aws::Utils::DateTime m_createdTime; bool m_createdTimeHasBeenSet = false; Aws::String m_serviceRole; bool m_serviceRoleHasBeenSet = false; InstanceStatus m_instanceStatus; bool m_instanceStatusHasBeenSet = false; bool m_inboundCallsEnabled; bool m_inboundCallsEnabledHasBeenSet = false; bool m_outboundCallsEnabled; bool m_outboundCallsEnabledHasBeenSet = false; Aws::String m_instanceAccessUrl; bool m_instanceAccessUrlHasBeenSet = false; }; } // namespace Model } // namespace Connect } // namespace Aws