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

The full POSIX identity, including the user ID, group ID, and any secondary * group IDs, on the access point that is used for all file system operations * performed by NFS clients using the access point.

See Also:

AWS * API Reference

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

The POSIX user ID used for all file system operations using this access * point.

*/ inline long long GetUid() const{ return m_uid; } /** *

The POSIX user ID used for all file system operations using this access * point.

*/ inline bool UidHasBeenSet() const { return m_uidHasBeenSet; } /** *

The POSIX user ID used for all file system operations using this access * point.

*/ inline void SetUid(long long value) { m_uidHasBeenSet = true; m_uid = value; } /** *

The POSIX user ID used for all file system operations using this access * point.

*/ inline PosixUser& WithUid(long long value) { SetUid(value); return *this;} /** *

The POSIX group ID used for all file system operations using this access * point.

*/ inline long long GetGid() const{ return m_gid; } /** *

The POSIX group ID used for all file system operations using this access * point.

*/ inline bool GidHasBeenSet() const { return m_gidHasBeenSet; } /** *

The POSIX group ID used for all file system operations using this access * point.

*/ inline void SetGid(long long value) { m_gidHasBeenSet = true; m_gid = value; } /** *

The POSIX group ID used for all file system operations using this access * point.

*/ inline PosixUser& WithGid(long long value) { SetGid(value); return *this;} /** *

Secondary POSIX group IDs used for all file system operations using this * access point.

*/ inline const Aws::Vector& GetSecondaryGids() const{ return m_secondaryGids; } /** *

Secondary POSIX group IDs used for all file system operations using this * access point.

*/ inline bool SecondaryGidsHasBeenSet() const { return m_secondaryGidsHasBeenSet; } /** *

Secondary POSIX group IDs used for all file system operations using this * access point.

*/ inline void SetSecondaryGids(const Aws::Vector& value) { m_secondaryGidsHasBeenSet = true; m_secondaryGids = value; } /** *

Secondary POSIX group IDs used for all file system operations using this * access point.

*/ inline void SetSecondaryGids(Aws::Vector&& value) { m_secondaryGidsHasBeenSet = true; m_secondaryGids = std::move(value); } /** *

Secondary POSIX group IDs used for all file system operations using this * access point.

*/ inline PosixUser& WithSecondaryGids(const Aws::Vector& value) { SetSecondaryGids(value); return *this;} /** *

Secondary POSIX group IDs used for all file system operations using this * access point.

*/ inline PosixUser& WithSecondaryGids(Aws::Vector&& value) { SetSecondaryGids(std::move(value)); return *this;} /** *

Secondary POSIX group IDs used for all file system operations using this * access point.

*/ inline PosixUser& AddSecondaryGids(long long value) { m_secondaryGidsHasBeenSet = true; m_secondaryGids.push_back(value); return *this; } private: long long m_uid; bool m_uidHasBeenSet; long long m_gid; bool m_gidHasBeenSet; Aws::Vector m_secondaryGids; bool m_secondaryGidsHasBeenSet; }; } // namespace Model } // namespace EFS } // namespace Aws