/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace DirectConnect { namespace Model { /** */ class AllocatePublicVirtualInterfaceRequest : public DirectConnectRequest { public: AWS_DIRECTCONNECT_API AllocatePublicVirtualInterfaceRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "AllocatePublicVirtualInterface"; } AWS_DIRECTCONNECT_API Aws::String SerializePayload() const override; AWS_DIRECTCONNECT_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The ID of the connection on which the public virtual interface is * provisioned.

*/ inline const Aws::String& GetConnectionId() const{ return m_connectionId; } /** *

The ID of the connection on which the public virtual interface is * provisioned.

*/ inline bool ConnectionIdHasBeenSet() const { return m_connectionIdHasBeenSet; } /** *

The ID of the connection on which the public virtual interface is * provisioned.

*/ inline void SetConnectionId(const Aws::String& value) { m_connectionIdHasBeenSet = true; m_connectionId = value; } /** *

The ID of the connection on which the public virtual interface is * provisioned.

*/ inline void SetConnectionId(Aws::String&& value) { m_connectionIdHasBeenSet = true; m_connectionId = std::move(value); } /** *

The ID of the connection on which the public virtual interface is * provisioned.

*/ inline void SetConnectionId(const char* value) { m_connectionIdHasBeenSet = true; m_connectionId.assign(value); } /** *

The ID of the connection on which the public virtual interface is * provisioned.

*/ inline AllocatePublicVirtualInterfaceRequest& WithConnectionId(const Aws::String& value) { SetConnectionId(value); return *this;} /** *

The ID of the connection on which the public virtual interface is * provisioned.

*/ inline AllocatePublicVirtualInterfaceRequest& WithConnectionId(Aws::String&& value) { SetConnectionId(std::move(value)); return *this;} /** *

The ID of the connection on which the public virtual interface is * provisioned.

*/ inline AllocatePublicVirtualInterfaceRequest& WithConnectionId(const char* value) { SetConnectionId(value); return *this;} /** *

The ID of the Amazon Web Services account that owns the public virtual * interface.

*/ inline const Aws::String& GetOwnerAccount() const{ return m_ownerAccount; } /** *

The ID of the Amazon Web Services account that owns the public virtual * interface.

*/ inline bool OwnerAccountHasBeenSet() const { return m_ownerAccountHasBeenSet; } /** *

The ID of the Amazon Web Services account that owns the public virtual * interface.

*/ inline void SetOwnerAccount(const Aws::String& value) { m_ownerAccountHasBeenSet = true; m_ownerAccount = value; } /** *

The ID of the Amazon Web Services account that owns the public virtual * interface.

*/ inline void SetOwnerAccount(Aws::String&& value) { m_ownerAccountHasBeenSet = true; m_ownerAccount = std::move(value); } /** *

The ID of the Amazon Web Services account that owns the public virtual * interface.

*/ inline void SetOwnerAccount(const char* value) { m_ownerAccountHasBeenSet = true; m_ownerAccount.assign(value); } /** *

The ID of the Amazon Web Services account that owns the public virtual * interface.

*/ inline AllocatePublicVirtualInterfaceRequest& WithOwnerAccount(const Aws::String& value) { SetOwnerAccount(value); return *this;} /** *

The ID of the Amazon Web Services account that owns the public virtual * interface.

*/ inline AllocatePublicVirtualInterfaceRequest& WithOwnerAccount(Aws::String&& value) { SetOwnerAccount(std::move(value)); return *this;} /** *

The ID of the Amazon Web Services account that owns the public virtual * interface.

*/ inline AllocatePublicVirtualInterfaceRequest& WithOwnerAccount(const char* value) { SetOwnerAccount(value); return *this;} /** *

Information about the public virtual interface.

*/ inline const NewPublicVirtualInterfaceAllocation& GetNewPublicVirtualInterfaceAllocation() const{ return m_newPublicVirtualInterfaceAllocation; } /** *

Information about the public virtual interface.

*/ inline bool NewPublicVirtualInterfaceAllocationHasBeenSet() const { return m_newPublicVirtualInterfaceAllocationHasBeenSet; } /** *

Information about the public virtual interface.

*/ inline void SetNewPublicVirtualInterfaceAllocation(const NewPublicVirtualInterfaceAllocation& value) { m_newPublicVirtualInterfaceAllocationHasBeenSet = true; m_newPublicVirtualInterfaceAllocation = value; } /** *

Information about the public virtual interface.

*/ inline void SetNewPublicVirtualInterfaceAllocation(NewPublicVirtualInterfaceAllocation&& value) { m_newPublicVirtualInterfaceAllocationHasBeenSet = true; m_newPublicVirtualInterfaceAllocation = std::move(value); } /** *

Information about the public virtual interface.

*/ inline AllocatePublicVirtualInterfaceRequest& WithNewPublicVirtualInterfaceAllocation(const NewPublicVirtualInterfaceAllocation& value) { SetNewPublicVirtualInterfaceAllocation(value); return *this;} /** *

Information about the public virtual interface.

*/ inline AllocatePublicVirtualInterfaceRequest& WithNewPublicVirtualInterfaceAllocation(NewPublicVirtualInterfaceAllocation&& value) { SetNewPublicVirtualInterfaceAllocation(std::move(value)); return *this;} private: Aws::String m_connectionId; bool m_connectionIdHasBeenSet = false; Aws::String m_ownerAccount; bool m_ownerAccountHasBeenSet = false; NewPublicVirtualInterfaceAllocation m_newPublicVirtualInterfaceAllocation; bool m_newPublicVirtualInterfaceAllocationHasBeenSet = false; }; } // namespace Model } // namespace DirectConnect } // namespace Aws