/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include A rule defined to grant access on one or more restricted columns. Each
* dataset can have multiple rules. To create a restricted column, you add it to
* one or more rules. Each rule must contain at least one column and at least one
* user or group. To be able to see a restricted column, a user or group needs to
* be added to a rule for that column.See Also:
AWS
* API Reference
An array of Amazon Resource Names (ARNs) for Amazon QuickSight users or * groups.
*/ inline const Aws::VectorAn array of Amazon Resource Names (ARNs) for Amazon QuickSight users or * groups.
*/ inline bool PrincipalsHasBeenSet() const { return m_principalsHasBeenSet; } /** *An array of Amazon Resource Names (ARNs) for Amazon QuickSight users or * groups.
*/ inline void SetPrincipals(const Aws::VectorAn array of Amazon Resource Names (ARNs) for Amazon QuickSight users or * groups.
*/ inline void SetPrincipals(Aws::VectorAn array of Amazon Resource Names (ARNs) for Amazon QuickSight users or * groups.
*/ inline ColumnLevelPermissionRule& WithPrincipals(const Aws::VectorAn array of Amazon Resource Names (ARNs) for Amazon QuickSight users or * groups.
*/ inline ColumnLevelPermissionRule& WithPrincipals(Aws::VectorAn array of Amazon Resource Names (ARNs) for Amazon QuickSight users or * groups.
*/ inline ColumnLevelPermissionRule& AddPrincipals(const Aws::String& value) { m_principalsHasBeenSet = true; m_principals.push_back(value); return *this; } /** *An array of Amazon Resource Names (ARNs) for Amazon QuickSight users or * groups.
*/ inline ColumnLevelPermissionRule& AddPrincipals(Aws::String&& value) { m_principalsHasBeenSet = true; m_principals.push_back(std::move(value)); return *this; } /** *An array of Amazon Resource Names (ARNs) for Amazon QuickSight users or * groups.
*/ inline ColumnLevelPermissionRule& AddPrincipals(const char* value) { m_principalsHasBeenSet = true; m_principals.push_back(value); return *this; } /** *An array of column names.
*/ inline const Aws::VectorAn array of column names.
*/ inline bool ColumnNamesHasBeenSet() const { return m_columnNamesHasBeenSet; } /** *An array of column names.
*/ inline void SetColumnNames(const Aws::VectorAn array of column names.
*/ inline void SetColumnNames(Aws::VectorAn array of column names.
*/ inline ColumnLevelPermissionRule& WithColumnNames(const Aws::VectorAn array of column names.
*/ inline ColumnLevelPermissionRule& WithColumnNames(Aws::VectorAn array of column names.
*/ inline ColumnLevelPermissionRule& AddColumnNames(const Aws::String& value) { m_columnNamesHasBeenSet = true; m_columnNames.push_back(value); return *this; } /** *An array of column names.
*/ inline ColumnLevelPermissionRule& AddColumnNames(Aws::String&& value) { m_columnNamesHasBeenSet = true; m_columnNames.push_back(std::move(value)); return *this; } /** *An array of column names.
*/ inline ColumnLevelPermissionRule& AddColumnNames(const char* value) { m_columnNamesHasBeenSet = true; m_columnNames.push_back(value); return *this; } private: Aws::Vector