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

Information about an environment member for an Cloud9 development * environment.

See Also:

AWS * API Reference

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

The type of environment member permissions associated with this environment * member. Available values include:

  • owner: Owns the * environment.

  • read-only: Has read-only access to * the environment.

  • read-write: Has read-write * access to the environment.

*/ inline const Permissions& GetPermissions() const{ return m_permissions; } /** *

The type of environment member permissions associated with this environment * member. Available values include:

  • owner: Owns the * environment.

  • read-only: Has read-only access to * the environment.

  • read-write: Has read-write * access to the environment.

*/ inline bool PermissionsHasBeenSet() const { return m_permissionsHasBeenSet; } /** *

The type of environment member permissions associated with this environment * member. Available values include:

  • owner: Owns the * environment.

  • read-only: Has read-only access to * the environment.

  • read-write: Has read-write * access to the environment.

*/ inline void SetPermissions(const Permissions& value) { m_permissionsHasBeenSet = true; m_permissions = value; } /** *

The type of environment member permissions associated with this environment * member. Available values include:

  • owner: Owns the * environment.

  • read-only: Has read-only access to * the environment.

  • read-write: Has read-write * access to the environment.

*/ inline void SetPermissions(Permissions&& value) { m_permissionsHasBeenSet = true; m_permissions = std::move(value); } /** *

The type of environment member permissions associated with this environment * member. Available values include:

  • owner: Owns the * environment.

  • read-only: Has read-only access to * the environment.

  • read-write: Has read-write * access to the environment.

*/ inline EnvironmentMember& WithPermissions(const Permissions& value) { SetPermissions(value); return *this;} /** *

The type of environment member permissions associated with this environment * member. Available values include:

  • owner: Owns the * environment.

  • read-only: Has read-only access to * the environment.

  • read-write: Has read-write * access to the environment.

*/ inline EnvironmentMember& WithPermissions(Permissions&& value) { SetPermissions(std::move(value)); return *this;} /** *

The user ID in Identity and Access Management (IAM) of the environment * member.

*/ inline const Aws::String& GetUserId() const{ return m_userId; } /** *

The user ID in Identity and Access Management (IAM) of the environment * member.

*/ inline bool UserIdHasBeenSet() const { return m_userIdHasBeenSet; } /** *

The user ID in Identity and Access Management (IAM) of the environment * member.

*/ inline void SetUserId(const Aws::String& value) { m_userIdHasBeenSet = true; m_userId = value; } /** *

The user ID in Identity and Access Management (IAM) of the environment * member.

*/ inline void SetUserId(Aws::String&& value) { m_userIdHasBeenSet = true; m_userId = std::move(value); } /** *

The user ID in Identity and Access Management (IAM) of the environment * member.

*/ inline void SetUserId(const char* value) { m_userIdHasBeenSet = true; m_userId.assign(value); } /** *

The user ID in Identity and Access Management (IAM) of the environment * member.

*/ inline EnvironmentMember& WithUserId(const Aws::String& value) { SetUserId(value); return *this;} /** *

The user ID in Identity and Access Management (IAM) of the environment * member.

*/ inline EnvironmentMember& WithUserId(Aws::String&& value) { SetUserId(std::move(value)); return *this;} /** *

The user ID in Identity and Access Management (IAM) of the environment * member.

*/ inline EnvironmentMember& WithUserId(const char* value) { SetUserId(value); return *this;} /** *

The Amazon Resource Name (ARN) of the environment member.

*/ inline const Aws::String& GetUserArn() const{ return m_userArn; } /** *

The Amazon Resource Name (ARN) of the environment member.

*/ inline bool UserArnHasBeenSet() const { return m_userArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the environment member.

*/ inline void SetUserArn(const Aws::String& value) { m_userArnHasBeenSet = true; m_userArn = value; } /** *

The Amazon Resource Name (ARN) of the environment member.

*/ inline void SetUserArn(Aws::String&& value) { m_userArnHasBeenSet = true; m_userArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the environment member.

*/ inline void SetUserArn(const char* value) { m_userArnHasBeenSet = true; m_userArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the environment member.

*/ inline EnvironmentMember& WithUserArn(const Aws::String& value) { SetUserArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the environment member.

*/ inline EnvironmentMember& WithUserArn(Aws::String&& value) { SetUserArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the environment member.

*/ inline EnvironmentMember& WithUserArn(const char* value) { SetUserArn(value); return *this;} /** *

The ID of the environment for the environment member.

*/ inline const Aws::String& GetEnvironmentId() const{ return m_environmentId; } /** *

The ID of the environment for the environment member.

*/ inline bool EnvironmentIdHasBeenSet() const { return m_environmentIdHasBeenSet; } /** *

The ID of the environment for the environment member.

*/ inline void SetEnvironmentId(const Aws::String& value) { m_environmentIdHasBeenSet = true; m_environmentId = value; } /** *

The ID of the environment for the environment member.

*/ inline void SetEnvironmentId(Aws::String&& value) { m_environmentIdHasBeenSet = true; m_environmentId = std::move(value); } /** *

The ID of the environment for the environment member.

*/ inline void SetEnvironmentId(const char* value) { m_environmentIdHasBeenSet = true; m_environmentId.assign(value); } /** *

The ID of the environment for the environment member.

*/ inline EnvironmentMember& WithEnvironmentId(const Aws::String& value) { SetEnvironmentId(value); return *this;} /** *

The ID of the environment for the environment member.

*/ inline EnvironmentMember& WithEnvironmentId(Aws::String&& value) { SetEnvironmentId(std::move(value)); return *this;} /** *

The ID of the environment for the environment member.

*/ inline EnvironmentMember& WithEnvironmentId(const char* value) { SetEnvironmentId(value); return *this;} /** *

The time, expressed in epoch time format, when the environment member last * opened the environment.

*/ inline const Aws::Utils::DateTime& GetLastAccess() const{ return m_lastAccess; } /** *

The time, expressed in epoch time format, when the environment member last * opened the environment.

*/ inline bool LastAccessHasBeenSet() const { return m_lastAccessHasBeenSet; } /** *

The time, expressed in epoch time format, when the environment member last * opened the environment.

*/ inline void SetLastAccess(const Aws::Utils::DateTime& value) { m_lastAccessHasBeenSet = true; m_lastAccess = value; } /** *

The time, expressed in epoch time format, when the environment member last * opened the environment.

*/ inline void SetLastAccess(Aws::Utils::DateTime&& value) { m_lastAccessHasBeenSet = true; m_lastAccess = std::move(value); } /** *

The time, expressed in epoch time format, when the environment member last * opened the environment.

*/ inline EnvironmentMember& WithLastAccess(const Aws::Utils::DateTime& value) { SetLastAccess(value); return *this;} /** *

The time, expressed in epoch time format, when the environment member last * opened the environment.

*/ inline EnvironmentMember& WithLastAccess(Aws::Utils::DateTime&& value) { SetLastAccess(std::move(value)); return *this;} private: Permissions m_permissions; bool m_permissionsHasBeenSet = false; Aws::String m_userId; bool m_userIdHasBeenSet = false; Aws::String m_userArn; bool m_userArnHasBeenSet = false; Aws::String m_environmentId; bool m_environmentIdHasBeenSet = false; Aws::Utils::DateTime m_lastAccess; bool m_lastAccessHasBeenSet = false; }; } // namespace Model } // namespace Cloud9 } // namespace Aws