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

Contains the configuration information for a job's manifest.

See * Also:

AWS * API Reference

*/ class JobManifest { public: AWS_S3CONTROL_API JobManifest(); AWS_S3CONTROL_API JobManifest(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_S3CONTROL_API JobManifest& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_S3CONTROL_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const; /** *

Describes the format of the specified job's manifest. If the manifest is in * CSV format, also describes the columns contained within the manifest.

*/ inline const JobManifestSpec& GetSpec() const{ return m_spec; } /** *

Describes the format of the specified job's manifest. If the manifest is in * CSV format, also describes the columns contained within the manifest.

*/ inline bool SpecHasBeenSet() const { return m_specHasBeenSet; } /** *

Describes the format of the specified job's manifest. If the manifest is in * CSV format, also describes the columns contained within the manifest.

*/ inline void SetSpec(const JobManifestSpec& value) { m_specHasBeenSet = true; m_spec = value; } /** *

Describes the format of the specified job's manifest. If the manifest is in * CSV format, also describes the columns contained within the manifest.

*/ inline void SetSpec(JobManifestSpec&& value) { m_specHasBeenSet = true; m_spec = std::move(value); } /** *

Describes the format of the specified job's manifest. If the manifest is in * CSV format, also describes the columns contained within the manifest.

*/ inline JobManifest& WithSpec(const JobManifestSpec& value) { SetSpec(value); return *this;} /** *

Describes the format of the specified job's manifest. If the manifest is in * CSV format, also describes the columns contained within the manifest.

*/ inline JobManifest& WithSpec(JobManifestSpec&& value) { SetSpec(std::move(value)); return *this;} /** *

Contains the information required to locate the specified job's manifest.

*/ inline const JobManifestLocation& GetLocation() const{ return m_location; } /** *

Contains the information required to locate the specified job's manifest.

*/ inline bool LocationHasBeenSet() const { return m_locationHasBeenSet; } /** *

Contains the information required to locate the specified job's manifest.

*/ inline void SetLocation(const JobManifestLocation& value) { m_locationHasBeenSet = true; m_location = value; } /** *

Contains the information required to locate the specified job's manifest.

*/ inline void SetLocation(JobManifestLocation&& value) { m_locationHasBeenSet = true; m_location = std::move(value); } /** *

Contains the information required to locate the specified job's manifest.

*/ inline JobManifest& WithLocation(const JobManifestLocation& value) { SetLocation(value); return *this;} /** *

Contains the information required to locate the specified job's manifest.

*/ inline JobManifest& WithLocation(JobManifestLocation&& value) { SetLocation(std::move(value)); return *this;} private: JobManifestSpec m_spec; bool m_specHasBeenSet = false; JobManifestLocation m_location; bool m_locationHasBeenSet = false; }; } // namespace Model } // namespace S3Control } // namespace Aws