/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Additional details about the data set. Different attributes correspond to
* different data set organizations. The values are populated based on datasetOrg,
* storageType and backend (Blu Age or Micro Focus).See Also:
AWS
* API Reference
The generation data group of the data set.
*/ inline const GdgAttributes& GetGdg() const{ return m_gdg; } /** *The generation data group of the data set.
*/ inline bool GdgHasBeenSet() const { return m_gdgHasBeenSet; } /** *The generation data group of the data set.
*/ inline void SetGdg(const GdgAttributes& value) { m_gdgHasBeenSet = true; m_gdg = value; } /** *The generation data group of the data set.
*/ inline void SetGdg(GdgAttributes&& value) { m_gdgHasBeenSet = true; m_gdg = std::move(value); } /** *The generation data group of the data set.
*/ inline DatasetOrgAttributes& WithGdg(const GdgAttributes& value) { SetGdg(value); return *this;} /** *The generation data group of the data set.
*/ inline DatasetOrgAttributes& WithGdg(GdgAttributes&& value) { SetGdg(std::move(value)); return *this;} /** *The details of a PO type data set.
*/ inline const PoAttributes& GetPo() const{ return m_po; } /** *The details of a PO type data set.
*/ inline bool PoHasBeenSet() const { return m_poHasBeenSet; } /** *The details of a PO type data set.
*/ inline void SetPo(const PoAttributes& value) { m_poHasBeenSet = true; m_po = value; } /** *The details of a PO type data set.
*/ inline void SetPo(PoAttributes&& value) { m_poHasBeenSet = true; m_po = std::move(value); } /** *The details of a PO type data set.
*/ inline DatasetOrgAttributes& WithPo(const PoAttributes& value) { SetPo(value); return *this;} /** *The details of a PO type data set.
*/ inline DatasetOrgAttributes& WithPo(PoAttributes&& value) { SetPo(std::move(value)); return *this;} /** *The details of a PS type data set.
*/ inline const PsAttributes& GetPs() const{ return m_ps; } /** *The details of a PS type data set.
*/ inline bool PsHasBeenSet() const { return m_psHasBeenSet; } /** *The details of a PS type data set.
*/ inline void SetPs(const PsAttributes& value) { m_psHasBeenSet = true; m_ps = value; } /** *The details of a PS type data set.
*/ inline void SetPs(PsAttributes&& value) { m_psHasBeenSet = true; m_ps = std::move(value); } /** *The details of a PS type data set.
*/ inline DatasetOrgAttributes& WithPs(const PsAttributes& value) { SetPs(value); return *this;} /** *The details of a PS type data set.
*/ inline DatasetOrgAttributes& WithPs(PsAttributes&& value) { SetPs(std::move(value)); return *this;} /** *The details of a VSAM data set.
*/ inline const VsamAttributes& GetVsam() const{ return m_vsam; } /** *The details of a VSAM data set.
*/ inline bool VsamHasBeenSet() const { return m_vsamHasBeenSet; } /** *The details of a VSAM data set.
*/ inline void SetVsam(const VsamAttributes& value) { m_vsamHasBeenSet = true; m_vsam = value; } /** *The details of a VSAM data set.
*/ inline void SetVsam(VsamAttributes&& value) { m_vsamHasBeenSet = true; m_vsam = std::move(value); } /** *The details of a VSAM data set.
*/ inline DatasetOrgAttributes& WithVsam(const VsamAttributes& value) { SetVsam(value); return *this;} /** *The details of a VSAM data set.
*/ inline DatasetOrgAttributes& WithVsam(VsamAttributes&& value) { SetVsam(std::move(value)); return *this;} private: GdgAttributes m_gdg; bool m_gdgHasBeenSet = false; PoAttributes m_po; bool m_poHasBeenSet = false; PsAttributes m_ps; bool m_psHasBeenSet = false; VsamAttributes m_vsam; bool m_vsamHasBeenSet = false; }; } // namespace Model } // namespace MainframeModernization } // namespace Aws