/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace QuickSight { namespace Model { /** *

Describes the configuration of the dashboard snapshot.

See * Also:

AWS * API Reference

*/ class SnapshotConfiguration { public: AWS_QUICKSIGHT_API SnapshotConfiguration(); AWS_QUICKSIGHT_API SnapshotConfiguration(Aws::Utils::Json::JsonView jsonValue); AWS_QUICKSIGHT_API SnapshotConfiguration& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_QUICKSIGHT_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

A list of SnapshotJobResultFileGroup objects that contain * information about the snapshot that is generated. This list can hold a maximum * of 6 FileGroup configurations.

*/ inline const Aws::Vector& GetFileGroups() const{ return m_fileGroups; } /** *

A list of SnapshotJobResultFileGroup objects that contain * information about the snapshot that is generated. This list can hold a maximum * of 6 FileGroup configurations.

*/ inline bool FileGroupsHasBeenSet() const { return m_fileGroupsHasBeenSet; } /** *

A list of SnapshotJobResultFileGroup objects that contain * information about the snapshot that is generated. This list can hold a maximum * of 6 FileGroup configurations.

*/ inline void SetFileGroups(const Aws::Vector& value) { m_fileGroupsHasBeenSet = true; m_fileGroups = value; } /** *

A list of SnapshotJobResultFileGroup objects that contain * information about the snapshot that is generated. This list can hold a maximum * of 6 FileGroup configurations.

*/ inline void SetFileGroups(Aws::Vector&& value) { m_fileGroupsHasBeenSet = true; m_fileGroups = std::move(value); } /** *

A list of SnapshotJobResultFileGroup objects that contain * information about the snapshot that is generated. This list can hold a maximum * of 6 FileGroup configurations.

*/ inline SnapshotConfiguration& WithFileGroups(const Aws::Vector& value) { SetFileGroups(value); return *this;} /** *

A list of SnapshotJobResultFileGroup objects that contain * information about the snapshot that is generated. This list can hold a maximum * of 6 FileGroup configurations.

*/ inline SnapshotConfiguration& WithFileGroups(Aws::Vector&& value) { SetFileGroups(std::move(value)); return *this;} /** *

A list of SnapshotJobResultFileGroup objects that contain * information about the snapshot that is generated. This list can hold a maximum * of 6 FileGroup configurations.

*/ inline SnapshotConfiguration& AddFileGroups(const SnapshotFileGroup& value) { m_fileGroupsHasBeenSet = true; m_fileGroups.push_back(value); return *this; } /** *

A list of SnapshotJobResultFileGroup objects that contain * information about the snapshot that is generated. This list can hold a maximum * of 6 FileGroup configurations.

*/ inline SnapshotConfiguration& AddFileGroups(SnapshotFileGroup&& value) { m_fileGroupsHasBeenSet = true; m_fileGroups.push_back(std::move(value)); return *this; } /** *

A structure that contains information on the Amazon S3 bucket that the * generated snapshot is stored in.

*/ inline const SnapshotDestinationConfiguration& GetDestinationConfiguration() const{ return m_destinationConfiguration; } /** *

A structure that contains information on the Amazon S3 bucket that the * generated snapshot is stored in.

*/ inline bool DestinationConfigurationHasBeenSet() const { return m_destinationConfigurationHasBeenSet; } /** *

A structure that contains information on the Amazon S3 bucket that the * generated snapshot is stored in.

*/ inline void SetDestinationConfiguration(const SnapshotDestinationConfiguration& value) { m_destinationConfigurationHasBeenSet = true; m_destinationConfiguration = value; } /** *

A structure that contains information on the Amazon S3 bucket that the * generated snapshot is stored in.

*/ inline void SetDestinationConfiguration(SnapshotDestinationConfiguration&& value) { m_destinationConfigurationHasBeenSet = true; m_destinationConfiguration = std::move(value); } /** *

A structure that contains information on the Amazon S3 bucket that the * generated snapshot is stored in.

*/ inline SnapshotConfiguration& WithDestinationConfiguration(const SnapshotDestinationConfiguration& value) { SetDestinationConfiguration(value); return *this;} /** *

A structure that contains information on the Amazon S3 bucket that the * generated snapshot is stored in.

*/ inline SnapshotConfiguration& WithDestinationConfiguration(SnapshotDestinationConfiguration&& value) { SetDestinationConfiguration(std::move(value)); return *this;} inline const Parameters& GetParameters() const{ return m_parameters; } inline bool ParametersHasBeenSet() const { return m_parametersHasBeenSet; } inline void SetParameters(const Parameters& value) { m_parametersHasBeenSet = true; m_parameters = value; } inline void SetParameters(Parameters&& value) { m_parametersHasBeenSet = true; m_parameters = std::move(value); } inline SnapshotConfiguration& WithParameters(const Parameters& value) { SetParameters(value); return *this;} inline SnapshotConfiguration& WithParameters(Parameters&& value) { SetParameters(std::move(value)); return *this;} private: Aws::Vector m_fileGroups; bool m_fileGroupsHasBeenSet = false; SnapshotDestinationConfiguration m_destinationConfiguration; bool m_destinationConfigurationHasBeenSet = false; Parameters m_parameters; bool m_parametersHasBeenSet = false; }; } // namespace Model } // namespace QuickSight } // namespace Aws