/** * 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 Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace IdentityStore { namespace Model { /** *

Contains the identifiers for a group, a group member, and a * GroupMembership object in the identity store.

See * Also:

AWS * API Reference

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

The globally unique identifier for the identity store.

*/ inline const Aws::String& GetIdentityStoreId() const{ return m_identityStoreId; } /** *

The globally unique identifier for the identity store.

*/ inline bool IdentityStoreIdHasBeenSet() const { return m_identityStoreIdHasBeenSet; } /** *

The globally unique identifier for the identity store.

*/ inline void SetIdentityStoreId(const Aws::String& value) { m_identityStoreIdHasBeenSet = true; m_identityStoreId = value; } /** *

The globally unique identifier for the identity store.

*/ inline void SetIdentityStoreId(Aws::String&& value) { m_identityStoreIdHasBeenSet = true; m_identityStoreId = std::move(value); } /** *

The globally unique identifier for the identity store.

*/ inline void SetIdentityStoreId(const char* value) { m_identityStoreIdHasBeenSet = true; m_identityStoreId.assign(value); } /** *

The globally unique identifier for the identity store.

*/ inline GroupMembership& WithIdentityStoreId(const Aws::String& value) { SetIdentityStoreId(value); return *this;} /** *

The globally unique identifier for the identity store.

*/ inline GroupMembership& WithIdentityStoreId(Aws::String&& value) { SetIdentityStoreId(std::move(value)); return *this;} /** *

The globally unique identifier for the identity store.

*/ inline GroupMembership& WithIdentityStoreId(const char* value) { SetIdentityStoreId(value); return *this;} /** *

The identifier for a GroupMembership object in an identity * store.

*/ inline const Aws::String& GetMembershipId() const{ return m_membershipId; } /** *

The identifier for a GroupMembership object in an identity * store.

*/ inline bool MembershipIdHasBeenSet() const { return m_membershipIdHasBeenSet; } /** *

The identifier for a GroupMembership object in an identity * store.

*/ inline void SetMembershipId(const Aws::String& value) { m_membershipIdHasBeenSet = true; m_membershipId = value; } /** *

The identifier for a GroupMembership object in an identity * store.

*/ inline void SetMembershipId(Aws::String&& value) { m_membershipIdHasBeenSet = true; m_membershipId = std::move(value); } /** *

The identifier for a GroupMembership object in an identity * store.

*/ inline void SetMembershipId(const char* value) { m_membershipIdHasBeenSet = true; m_membershipId.assign(value); } /** *

The identifier for a GroupMembership object in an identity * store.

*/ inline GroupMembership& WithMembershipId(const Aws::String& value) { SetMembershipId(value); return *this;} /** *

The identifier for a GroupMembership object in an identity * store.

*/ inline GroupMembership& WithMembershipId(Aws::String&& value) { SetMembershipId(std::move(value)); return *this;} /** *

The identifier for a GroupMembership object in an identity * store.

*/ inline GroupMembership& WithMembershipId(const char* value) { SetMembershipId(value); return *this;} /** *

The identifier for a group in the identity store.

*/ inline const Aws::String& GetGroupId() const{ return m_groupId; } /** *

The identifier for a group in the identity store.

*/ inline bool GroupIdHasBeenSet() const { return m_groupIdHasBeenSet; } /** *

The identifier for a group in the identity store.

*/ inline void SetGroupId(const Aws::String& value) { m_groupIdHasBeenSet = true; m_groupId = value; } /** *

The identifier for a group in the identity store.

*/ inline void SetGroupId(Aws::String&& value) { m_groupIdHasBeenSet = true; m_groupId = std::move(value); } /** *

The identifier for a group in the identity store.

*/ inline void SetGroupId(const char* value) { m_groupIdHasBeenSet = true; m_groupId.assign(value); } /** *

The identifier for a group in the identity store.

*/ inline GroupMembership& WithGroupId(const Aws::String& value) { SetGroupId(value); return *this;} /** *

The identifier for a group in the identity store.

*/ inline GroupMembership& WithGroupId(Aws::String&& value) { SetGroupId(std::move(value)); return *this;} /** *

The identifier for a group in the identity store.

*/ inline GroupMembership& WithGroupId(const char* value) { SetGroupId(value); return *this;} /** *

An object that contains the identifier of a group member. Setting the * UserID field to the specific identifier for a user indicates that * the user is a member of the group.

*/ inline const MemberId& GetMemberId() const{ return m_memberId; } /** *

An object that contains the identifier of a group member. Setting the * UserID field to the specific identifier for a user indicates that * the user is a member of the group.

*/ inline bool MemberIdHasBeenSet() const { return m_memberIdHasBeenSet; } /** *

An object that contains the identifier of a group member. Setting the * UserID field to the specific identifier for a user indicates that * the user is a member of the group.

*/ inline void SetMemberId(const MemberId& value) { m_memberIdHasBeenSet = true; m_memberId = value; } /** *

An object that contains the identifier of a group member. Setting the * UserID field to the specific identifier for a user indicates that * the user is a member of the group.

*/ inline void SetMemberId(MemberId&& value) { m_memberIdHasBeenSet = true; m_memberId = std::move(value); } /** *

An object that contains the identifier of a group member. Setting the * UserID field to the specific identifier for a user indicates that * the user is a member of the group.

*/ inline GroupMembership& WithMemberId(const MemberId& value) { SetMemberId(value); return *this;} /** *

An object that contains the identifier of a group member. Setting the * UserID field to the specific identifier for a user indicates that * the user is a member of the group.

*/ inline GroupMembership& WithMemberId(MemberId&& value) { SetMemberId(std::move(value)); return *this;} private: Aws::String m_identityStoreId; bool m_identityStoreIdHasBeenSet = false; Aws::String m_membershipId; bool m_membershipIdHasBeenSet = false; Aws::String m_groupId; bool m_groupIdHasBeenSet = false; MemberId m_memberId; bool m_memberIdHasBeenSet = false; }; } // namespace Model } // namespace IdentityStore } // namespace Aws