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

Determine whether your data volume persists on the host container instance * and where it is stored. If this parameter is empty, then the Docker daemon * assigns a host path for your data volume, but the data is not guaranteed to * persist after the containers associated with it stop running.

See * Also:

AWS API * Reference

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

The path on the host container instance that is presented to the container. * If this parameter is empty, then the Docker daemon has assigned a host path for * you. If this parameter contains a file location, then the data volume persists * at the specified location on the host container instance until you delete it * manually. If the source path location does not exist on the host container * instance, the Docker daemon creates it. If the location does exist, the contents * of the source path folder are exported.

*/ inline const Aws::String& GetSourcePath() const{ return m_sourcePath; } /** *

The path on the host container instance that is presented to the container. * If this parameter is empty, then the Docker daemon has assigned a host path for * you. If this parameter contains a file location, then the data volume persists * at the specified location on the host container instance until you delete it * manually. If the source path location does not exist on the host container * instance, the Docker daemon creates it. If the location does exist, the contents * of the source path folder are exported.

*/ inline bool SourcePathHasBeenSet() const { return m_sourcePathHasBeenSet; } /** *

The path on the host container instance that is presented to the container. * If this parameter is empty, then the Docker daemon has assigned a host path for * you. If this parameter contains a file location, then the data volume persists * at the specified location on the host container instance until you delete it * manually. If the source path location does not exist on the host container * instance, the Docker daemon creates it. If the location does exist, the contents * of the source path folder are exported.

*/ inline void SetSourcePath(const Aws::String& value) { m_sourcePathHasBeenSet = true; m_sourcePath = value; } /** *

The path on the host container instance that is presented to the container. * If this parameter is empty, then the Docker daemon has assigned a host path for * you. If this parameter contains a file location, then the data volume persists * at the specified location on the host container instance until you delete it * manually. If the source path location does not exist on the host container * instance, the Docker daemon creates it. If the location does exist, the contents * of the source path folder are exported.

*/ inline void SetSourcePath(Aws::String&& value) { m_sourcePathHasBeenSet = true; m_sourcePath = std::move(value); } /** *

The path on the host container instance that is presented to the container. * If this parameter is empty, then the Docker daemon has assigned a host path for * you. If this parameter contains a file location, then the data volume persists * at the specified location on the host container instance until you delete it * manually. If the source path location does not exist on the host container * instance, the Docker daemon creates it. If the location does exist, the contents * of the source path folder are exported.

*/ inline void SetSourcePath(const char* value) { m_sourcePathHasBeenSet = true; m_sourcePath.assign(value); } /** *

The path on the host container instance that is presented to the container. * If this parameter is empty, then the Docker daemon has assigned a host path for * you. If this parameter contains a file location, then the data volume persists * at the specified location on the host container instance until you delete it * manually. If the source path location does not exist on the host container * instance, the Docker daemon creates it. If the location does exist, the contents * of the source path folder are exported.

*/ inline Host& WithSourcePath(const Aws::String& value) { SetSourcePath(value); return *this;} /** *

The path on the host container instance that is presented to the container. * If this parameter is empty, then the Docker daemon has assigned a host path for * you. If this parameter contains a file location, then the data volume persists * at the specified location on the host container instance until you delete it * manually. If the source path location does not exist on the host container * instance, the Docker daemon creates it. If the location does exist, the contents * of the source path folder are exported.

*/ inline Host& WithSourcePath(Aws::String&& value) { SetSourcePath(std::move(value)); return *this;} /** *

The path on the host container instance that is presented to the container. * If this parameter is empty, then the Docker daemon has assigned a host path for * you. If this parameter contains a file location, then the data volume persists * at the specified location on the host container instance until you delete it * manually. If the source path location does not exist on the host container * instance, the Docker daemon creates it. If the location does exist, the contents * of the source path folder are exported.

*/ inline Host& WithSourcePath(const char* value) { SetSourcePath(value); return *this;} private: Aws::String m_sourcePath; bool m_sourcePathHasBeenSet; }; } // namespace Model } // namespace Batch } // namespace Aws