/** * 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 DataSync { namespace Model { /** *

Specifies how DataSync can access a location using the NFS * protocol.

See Also:

AWS * API Reference

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

Specifies the NFS version that you want DataSync to use when mounting your * NFS share. If the server refuses to use the version specified, the task * fails.

You can specify the following options:

  • * AUTOMATIC (default): DataSync chooses NFS version 4.1.

  • *
  • NFS3: Stateless protocol version that allows for * asynchronous writes on the server.

  • NFSv4_0: * Stateful, firewall-friendly protocol version that supports delegations and * pseudo file systems.

  • NFSv4_1: Stateful protocol * version that supports sessions, directory delegations, and parallel data * processing. NFS version 4.1 also includes all features available in version * 4.0.

DataSync currently only supports NFS version 3 * with Amazon FSx for NetApp ONTAP locations.

*/ inline const NfsVersion& GetVersion() const{ return m_version; } /** *

Specifies the NFS version that you want DataSync to use when mounting your * NFS share. If the server refuses to use the version specified, the task * fails.

You can specify the following options:

  • * AUTOMATIC (default): DataSync chooses NFS version 4.1.

  • *
  • NFS3: Stateless protocol version that allows for * asynchronous writes on the server.

  • NFSv4_0: * Stateful, firewall-friendly protocol version that supports delegations and * pseudo file systems.

  • NFSv4_1: Stateful protocol * version that supports sessions, directory delegations, and parallel data * processing. NFS version 4.1 also includes all features available in version * 4.0.

DataSync currently only supports NFS version 3 * with Amazon FSx for NetApp ONTAP locations.

*/ inline bool VersionHasBeenSet() const { return m_versionHasBeenSet; } /** *

Specifies the NFS version that you want DataSync to use when mounting your * NFS share. If the server refuses to use the version specified, the task * fails.

You can specify the following options:

  • * AUTOMATIC (default): DataSync chooses NFS version 4.1.

  • *
  • NFS3: Stateless protocol version that allows for * asynchronous writes on the server.

  • NFSv4_0: * Stateful, firewall-friendly protocol version that supports delegations and * pseudo file systems.

  • NFSv4_1: Stateful protocol * version that supports sessions, directory delegations, and parallel data * processing. NFS version 4.1 also includes all features available in version * 4.0.

DataSync currently only supports NFS version 3 * with Amazon FSx for NetApp ONTAP locations.

*/ inline void SetVersion(const NfsVersion& value) { m_versionHasBeenSet = true; m_version = value; } /** *

Specifies the NFS version that you want DataSync to use when mounting your * NFS share. If the server refuses to use the version specified, the task * fails.

You can specify the following options:

  • * AUTOMATIC (default): DataSync chooses NFS version 4.1.

  • *
  • NFS3: Stateless protocol version that allows for * asynchronous writes on the server.

  • NFSv4_0: * Stateful, firewall-friendly protocol version that supports delegations and * pseudo file systems.

  • NFSv4_1: Stateful protocol * version that supports sessions, directory delegations, and parallel data * processing. NFS version 4.1 also includes all features available in version * 4.0.

DataSync currently only supports NFS version 3 * with Amazon FSx for NetApp ONTAP locations.

*/ inline void SetVersion(NfsVersion&& value) { m_versionHasBeenSet = true; m_version = std::move(value); } /** *

Specifies the NFS version that you want DataSync to use when mounting your * NFS share. If the server refuses to use the version specified, the task * fails.

You can specify the following options:

  • * AUTOMATIC (default): DataSync chooses NFS version 4.1.

  • *
  • NFS3: Stateless protocol version that allows for * asynchronous writes on the server.

  • NFSv4_0: * Stateful, firewall-friendly protocol version that supports delegations and * pseudo file systems.

  • NFSv4_1: Stateful protocol * version that supports sessions, directory delegations, and parallel data * processing. NFS version 4.1 also includes all features available in version * 4.0.

DataSync currently only supports NFS version 3 * with Amazon FSx for NetApp ONTAP locations.

*/ inline NfsMountOptions& WithVersion(const NfsVersion& value) { SetVersion(value); return *this;} /** *

Specifies the NFS version that you want DataSync to use when mounting your * NFS share. If the server refuses to use the version specified, the task * fails.

You can specify the following options:

  • * AUTOMATIC (default): DataSync chooses NFS version 4.1.

  • *
  • NFS3: Stateless protocol version that allows for * asynchronous writes on the server.

  • NFSv4_0: * Stateful, firewall-friendly protocol version that supports delegations and * pseudo file systems.

  • NFSv4_1: Stateful protocol * version that supports sessions, directory delegations, and parallel data * processing. NFS version 4.1 also includes all features available in version * 4.0.

DataSync currently only supports NFS version 3 * with Amazon FSx for NetApp ONTAP locations.

*/ inline NfsMountOptions& WithVersion(NfsVersion&& value) { SetVersion(std::move(value)); return *this;} private: NfsVersion m_version; bool m_versionHasBeenSet = false; }; } // namespace Model } // namespace DataSync } // namespace Aws