/** * 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 AllocateTransitVirtualInterfaceRequest : public DirectConnectRequest { public: AWS_DIRECTCONNECT_API AllocateTransitVirtualInterfaceRequest(); // 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 "AllocateTransitVirtualInterface"; } 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 transit virtual interface is * provisioned.

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

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

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

The ID of the connection on which the transit 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 transit 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 transit 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 transit virtual interface is * provisioned.

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

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

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

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

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

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

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

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

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

The ID of the Amazon Web Services account that owns the transit 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 transit 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 transit 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 transit virtual * interface.

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

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

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

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

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

Information about the transit virtual interface.

*/ inline const NewTransitVirtualInterfaceAllocation& GetNewTransitVirtualInterfaceAllocation() const{ return m_newTransitVirtualInterfaceAllocation; } /** *

Information about the transit virtual interface.

*/ inline bool NewTransitVirtualInterfaceAllocationHasBeenSet() const { return m_newTransitVirtualInterfaceAllocationHasBeenSet; } /** *

Information about the transit virtual interface.

*/ inline void SetNewTransitVirtualInterfaceAllocation(const NewTransitVirtualInterfaceAllocation& value) { m_newTransitVirtualInterfaceAllocationHasBeenSet = true; m_newTransitVirtualInterfaceAllocation = value; } /** *

Information about the transit virtual interface.

*/ inline void SetNewTransitVirtualInterfaceAllocation(NewTransitVirtualInterfaceAllocation&& value) { m_newTransitVirtualInterfaceAllocationHasBeenSet = true; m_newTransitVirtualInterfaceAllocation = std::move(value); } /** *

Information about the transit virtual interface.

*/ inline AllocateTransitVirtualInterfaceRequest& WithNewTransitVirtualInterfaceAllocation(const NewTransitVirtualInterfaceAllocation& value) { SetNewTransitVirtualInterfaceAllocation(value); return *this;} /** *

Information about the transit virtual interface.

*/ inline AllocateTransitVirtualInterfaceRequest& WithNewTransitVirtualInterfaceAllocation(NewTransitVirtualInterfaceAllocation&& value) { SetNewTransitVirtualInterfaceAllocation(std::move(value)); return *this;} private: Aws::String m_connectionId; bool m_connectionIdHasBeenSet = false; Aws::String m_ownerAccount; bool m_ownerAccountHasBeenSet = false; NewTransitVirtualInterfaceAllocation m_newTransitVirtualInterfaceAllocation; bool m_newTransitVirtualInterfaceAllocationHasBeenSet = false; }; } // namespace Model } // namespace DirectConnect } // namespace Aws