/**
* 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 SageMaker
{
namespace Model
{
/**
* A collection of settings that configure user interaction with the
* RStudioServerPro
app.
See Also:
AWS
* API Reference
*/
class RStudioServerProAppSettings
{
public:
AWS_SAGEMAKER_API RStudioServerProAppSettings();
AWS_SAGEMAKER_API RStudioServerProAppSettings(Aws::Utils::Json::JsonView jsonValue);
AWS_SAGEMAKER_API RStudioServerProAppSettings& operator=(Aws::Utils::Json::JsonView jsonValue);
AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const;
/**
* Indicates whether the current user has access to the
* RStudioServerPro
app.
*/
inline const RStudioServerProAccessStatus& GetAccessStatus() const{ return m_accessStatus; }
/**
* Indicates whether the current user has access to the
* RStudioServerPro
app.
*/
inline bool AccessStatusHasBeenSet() const { return m_accessStatusHasBeenSet; }
/**
* Indicates whether the current user has access to the
* RStudioServerPro
app.
*/
inline void SetAccessStatus(const RStudioServerProAccessStatus& value) { m_accessStatusHasBeenSet = true; m_accessStatus = value; }
/**
* Indicates whether the current user has access to the
* RStudioServerPro
app.
*/
inline void SetAccessStatus(RStudioServerProAccessStatus&& value) { m_accessStatusHasBeenSet = true; m_accessStatus = std::move(value); }
/**
* Indicates whether the current user has access to the
* RStudioServerPro
app.
*/
inline RStudioServerProAppSettings& WithAccessStatus(const RStudioServerProAccessStatus& value) { SetAccessStatus(value); return *this;}
/**
* Indicates whether the current user has access to the
* RStudioServerPro
app.
*/
inline RStudioServerProAppSettings& WithAccessStatus(RStudioServerProAccessStatus&& value) { SetAccessStatus(std::move(value)); return *this;}
/**
* The level of permissions that the user has within the
* RStudioServerPro
app. This value defaults to `User`. The `Admin`
* value allows the user access to the RStudio Administrative Dashboard.
*/
inline const RStudioServerProUserGroup& GetUserGroup() const{ return m_userGroup; }
/**
* The level of permissions that the user has within the
* RStudioServerPro
app. This value defaults to `User`. The `Admin`
* value allows the user access to the RStudio Administrative Dashboard.
*/
inline bool UserGroupHasBeenSet() const { return m_userGroupHasBeenSet; }
/**
* The level of permissions that the user has within the
* RStudioServerPro
app. This value defaults to `User`. The `Admin`
* value allows the user access to the RStudio Administrative Dashboard.
*/
inline void SetUserGroup(const RStudioServerProUserGroup& value) { m_userGroupHasBeenSet = true; m_userGroup = value; }
/**
* The level of permissions that the user has within the
* RStudioServerPro
app. This value defaults to `User`. The `Admin`
* value allows the user access to the RStudio Administrative Dashboard.
*/
inline void SetUserGroup(RStudioServerProUserGroup&& value) { m_userGroupHasBeenSet = true; m_userGroup = std::move(value); }
/**
* The level of permissions that the user has within the
* RStudioServerPro
app. This value defaults to `User`. The `Admin`
* value allows the user access to the RStudio Administrative Dashboard.
*/
inline RStudioServerProAppSettings& WithUserGroup(const RStudioServerProUserGroup& value) { SetUserGroup(value); return *this;}
/**
* The level of permissions that the user has within the
* RStudioServerPro
app. This value defaults to `User`. The `Admin`
* value allows the user access to the RStudio Administrative Dashboard.
*/
inline RStudioServerProAppSettings& WithUserGroup(RStudioServerProUserGroup&& value) { SetUserGroup(std::move(value)); return *this;}
private:
RStudioServerProAccessStatus m_accessStatus;
bool m_accessStatusHasBeenSet = false;
RStudioServerProUserGroup m_userGroup;
bool m_userGroupHasBeenSet = false;
};
} // namespace Model
} // namespace SageMaker
} // namespace Aws