/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include
#include
#include
#include
#include
#include
#include
namespace Aws
{
namespace MediaConnect
{
namespace Model
{
/**
* The entitlement fields that you want to update.See Also:
AWS
* API Reference
*/
class UpdateFlowEntitlementRequest : public MediaConnectRequest
{
public:
AWS_MEDIACONNECT_API UpdateFlowEntitlementRequest();
// 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 "UpdateFlowEntitlement"; }
AWS_MEDIACONNECT_API Aws::String SerializePayload() const override;
/**
* A description of the entitlement. This description appears only on the AWS
* Elemental MediaConnect console and will not be seen by the subscriber or end
* user.
*/
inline const Aws::String& GetDescription() const{ return m_description; }
/**
* A description of the entitlement. This description appears only on the AWS
* Elemental MediaConnect console and will not be seen by the subscriber or end
* user.
*/
inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
/**
* A description of the entitlement. This description appears only on the AWS
* Elemental MediaConnect console and will not be seen by the subscriber or end
* user.
*/
inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }
/**
* A description of the entitlement. This description appears only on the AWS
* Elemental MediaConnect console and will not be seen by the subscriber or end
* user.
*/
inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); }
/**
* A description of the entitlement. This description appears only on the AWS
* Elemental MediaConnect console and will not be seen by the subscriber or end
* user.
*/
inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }
/**
* A description of the entitlement. This description appears only on the AWS
* Elemental MediaConnect console and will not be seen by the subscriber or end
* user.
*/
inline UpdateFlowEntitlementRequest& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
/**
* A description of the entitlement. This description appears only on the AWS
* Elemental MediaConnect console and will not be seen by the subscriber or end
* user.
*/
inline UpdateFlowEntitlementRequest& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
/**
* A description of the entitlement. This description appears only on the AWS
* Elemental MediaConnect console and will not be seen by the subscriber or end
* user.
*/
inline UpdateFlowEntitlementRequest& WithDescription(const char* value) { SetDescription(value); return *this;}
/**
* The type of encryption that will be used on the output associated with this
* entitlement. Allowable encryption types: static-key, speke.
*/
inline const UpdateEncryption& GetEncryption() const{ return m_encryption; }
/**
* The type of encryption that will be used on the output associated with this
* entitlement. Allowable encryption types: static-key, speke.
*/
inline bool EncryptionHasBeenSet() const { return m_encryptionHasBeenSet; }
/**
* The type of encryption that will be used on the output associated with this
* entitlement. Allowable encryption types: static-key, speke.
*/
inline void SetEncryption(const UpdateEncryption& value) { m_encryptionHasBeenSet = true; m_encryption = value; }
/**
* The type of encryption that will be used on the output associated with this
* entitlement. Allowable encryption types: static-key, speke.
*/
inline void SetEncryption(UpdateEncryption&& value) { m_encryptionHasBeenSet = true; m_encryption = std::move(value); }
/**
* The type of encryption that will be used on the output associated with this
* entitlement. Allowable encryption types: static-key, speke.
*/
inline UpdateFlowEntitlementRequest& WithEncryption(const UpdateEncryption& value) { SetEncryption(value); return *this;}
/**
* The type of encryption that will be used on the output associated with this
* entitlement. Allowable encryption types: static-key, speke.
*/
inline UpdateFlowEntitlementRequest& WithEncryption(UpdateEncryption&& value) { SetEncryption(std::move(value)); return *this;}
/**
* The ARN of the entitlement that you want to update.
*/
inline const Aws::String& GetEntitlementArn() const{ return m_entitlementArn; }
/**
* The ARN of the entitlement that you want to update.
*/
inline bool EntitlementArnHasBeenSet() const { return m_entitlementArnHasBeenSet; }
/**
* The ARN of the entitlement that you want to update.
*/
inline void SetEntitlementArn(const Aws::String& value) { m_entitlementArnHasBeenSet = true; m_entitlementArn = value; }
/**
* The ARN of the entitlement that you want to update.
*/
inline void SetEntitlementArn(Aws::String&& value) { m_entitlementArnHasBeenSet = true; m_entitlementArn = std::move(value); }
/**
* The ARN of the entitlement that you want to update.
*/
inline void SetEntitlementArn(const char* value) { m_entitlementArnHasBeenSet = true; m_entitlementArn.assign(value); }
/**
* The ARN of the entitlement that you want to update.
*/
inline UpdateFlowEntitlementRequest& WithEntitlementArn(const Aws::String& value) { SetEntitlementArn(value); return *this;}
/**
* The ARN of the entitlement that you want to update.
*/
inline UpdateFlowEntitlementRequest& WithEntitlementArn(Aws::String&& value) { SetEntitlementArn(std::move(value)); return *this;}
/**
* The ARN of the entitlement that you want to update.
*/
inline UpdateFlowEntitlementRequest& WithEntitlementArn(const char* value) { SetEntitlementArn(value); return *this;}
/**
* An indication of whether you want to enable the entitlement to allow access, or
* disable it to stop streaming content to the subscriber’s flow temporarily. If
* you don’t specify the entitlementStatus field in your request, MediaConnect
* leaves the value unchanged.
*/
inline const EntitlementStatus& GetEntitlementStatus() const{ return m_entitlementStatus; }
/**
* An indication of whether you want to enable the entitlement to allow access, or
* disable it to stop streaming content to the subscriber’s flow temporarily. If
* you don’t specify the entitlementStatus field in your request, MediaConnect
* leaves the value unchanged.
*/
inline bool EntitlementStatusHasBeenSet() const { return m_entitlementStatusHasBeenSet; }
/**
* An indication of whether you want to enable the entitlement to allow access, or
* disable it to stop streaming content to the subscriber’s flow temporarily. If
* you don’t specify the entitlementStatus field in your request, MediaConnect
* leaves the value unchanged.
*/
inline void SetEntitlementStatus(const EntitlementStatus& value) { m_entitlementStatusHasBeenSet = true; m_entitlementStatus = value; }
/**
* An indication of whether you want to enable the entitlement to allow access, or
* disable it to stop streaming content to the subscriber’s flow temporarily. If
* you don’t specify the entitlementStatus field in your request, MediaConnect
* leaves the value unchanged.
*/
inline void SetEntitlementStatus(EntitlementStatus&& value) { m_entitlementStatusHasBeenSet = true; m_entitlementStatus = std::move(value); }
/**
* An indication of whether you want to enable the entitlement to allow access, or
* disable it to stop streaming content to the subscriber’s flow temporarily. If
* you don’t specify the entitlementStatus field in your request, MediaConnect
* leaves the value unchanged.
*/
inline UpdateFlowEntitlementRequest& WithEntitlementStatus(const EntitlementStatus& value) { SetEntitlementStatus(value); return *this;}
/**
* An indication of whether you want to enable the entitlement to allow access, or
* disable it to stop streaming content to the subscriber’s flow temporarily. If
* you don’t specify the entitlementStatus field in your request, MediaConnect
* leaves the value unchanged.
*/
inline UpdateFlowEntitlementRequest& WithEntitlementStatus(EntitlementStatus&& value) { SetEntitlementStatus(std::move(value)); return *this;}
/**
* The flow that is associated with the entitlement that you want to update.
*/
inline const Aws::String& GetFlowArn() const{ return m_flowArn; }
/**
* The flow that is associated with the entitlement that you want to update.
*/
inline bool FlowArnHasBeenSet() const { return m_flowArnHasBeenSet; }
/**
* The flow that is associated with the entitlement that you want to update.
*/
inline void SetFlowArn(const Aws::String& value) { m_flowArnHasBeenSet = true; m_flowArn = value; }
/**
* The flow that is associated with the entitlement that you want to update.
*/
inline void SetFlowArn(Aws::String&& value) { m_flowArnHasBeenSet = true; m_flowArn = std::move(value); }
/**
* The flow that is associated with the entitlement that you want to update.
*/
inline void SetFlowArn(const char* value) { m_flowArnHasBeenSet = true; m_flowArn.assign(value); }
/**
* The flow that is associated with the entitlement that you want to update.
*/
inline UpdateFlowEntitlementRequest& WithFlowArn(const Aws::String& value) { SetFlowArn(value); return *this;}
/**
* The flow that is associated with the entitlement that you want to update.
*/
inline UpdateFlowEntitlementRequest& WithFlowArn(Aws::String&& value) { SetFlowArn(std::move(value)); return *this;}
/**
* The flow that is associated with the entitlement that you want to update.
*/
inline UpdateFlowEntitlementRequest& WithFlowArn(const char* value) { SetFlowArn(value); return *this;}
/**
* The AWS account IDs that you want to share your content with. The receiving
* accounts (subscribers) will be allowed to create their own flow using your
* content as the source.
*/
inline const Aws::Vector& GetSubscribers() const{ return m_subscribers; }
/**
* The AWS account IDs that you want to share your content with. The receiving
* accounts (subscribers) will be allowed to create their own flow using your
* content as the source.
*/
inline bool SubscribersHasBeenSet() const { return m_subscribersHasBeenSet; }
/**
* The AWS account IDs that you want to share your content with. The receiving
* accounts (subscribers) will be allowed to create their own flow using your
* content as the source.
*/
inline void SetSubscribers(const Aws::Vector& value) { m_subscribersHasBeenSet = true; m_subscribers = value; }
/**
* The AWS account IDs that you want to share your content with. The receiving
* accounts (subscribers) will be allowed to create their own flow using your
* content as the source.
*/
inline void SetSubscribers(Aws::Vector&& value) { m_subscribersHasBeenSet = true; m_subscribers = std::move(value); }
/**
* The AWS account IDs that you want to share your content with. The receiving
* accounts (subscribers) will be allowed to create their own flow using your
* content as the source.
*/
inline UpdateFlowEntitlementRequest& WithSubscribers(const Aws::Vector& value) { SetSubscribers(value); return *this;}
/**
* The AWS account IDs that you want to share your content with. The receiving
* accounts (subscribers) will be allowed to create their own flow using your
* content as the source.
*/
inline UpdateFlowEntitlementRequest& WithSubscribers(Aws::Vector&& value) { SetSubscribers(std::move(value)); return *this;}
/**
* The AWS account IDs that you want to share your content with. The receiving
* accounts (subscribers) will be allowed to create their own flow using your
* content as the source.
*/
inline UpdateFlowEntitlementRequest& AddSubscribers(const Aws::String& value) { m_subscribersHasBeenSet = true; m_subscribers.push_back(value); return *this; }
/**
* The AWS account IDs that you want to share your content with. The receiving
* accounts (subscribers) will be allowed to create their own flow using your
* content as the source.
*/
inline UpdateFlowEntitlementRequest& AddSubscribers(Aws::String&& value) { m_subscribersHasBeenSet = true; m_subscribers.push_back(std::move(value)); return *this; }
/**
* The AWS account IDs that you want to share your content with. The receiving
* accounts (subscribers) will be allowed to create their own flow using your
* content as the source.
*/
inline UpdateFlowEntitlementRequest& AddSubscribers(const char* value) { m_subscribersHasBeenSet = true; m_subscribers.push_back(value); return *this; }
private:
Aws::String m_description;
bool m_descriptionHasBeenSet = false;
UpdateEncryption m_encryption;
bool m_encryptionHasBeenSet = false;
Aws::String m_entitlementArn;
bool m_entitlementArnHasBeenSet = false;
EntitlementStatus m_entitlementStatus;
bool m_entitlementStatusHasBeenSet = false;
Aws::String m_flowArn;
bool m_flowArnHasBeenSet = false;
Aws::Vector m_subscribers;
bool m_subscribersHasBeenSet = false;
};
} // namespace Model
} // namespace MediaConnect
} // namespace Aws