module Network.AWS.WorkSpaces.Types.Product where
import Network.AWS.Prelude
import Network.AWS.WorkSpaces.Types.Sum
newtype ComputeType = ComputeType'
{ _ctName :: Maybe Compute
} deriving (Eq,Read,Show,Data,Typeable,Generic)
computeType
:: ComputeType
computeType =
ComputeType'
{ _ctName = Nothing
}
ctName :: Lens' ComputeType (Maybe Compute)
ctName = lens _ctName (\ s a -> s{_ctName = a});
instance FromJSON ComputeType where
parseJSON
= withObject "ComputeType"
(\ x -> ComputeType' <$> (x .:? "Name"))
data DefaultWorkspaceCreationProperties = DefaultWorkspaceCreationProperties'
{ _dwcpCustomSecurityGroupId :: !(Maybe Text)
, _dwcpUserEnabledAsLocalAdministrator :: !(Maybe Bool)
, _dwcpEnableWorkDocs :: !(Maybe Bool)
, _dwcpEnableInternetAccess :: !(Maybe Bool)
, _dwcpDefaultOu :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
defaultWorkspaceCreationProperties
:: DefaultWorkspaceCreationProperties
defaultWorkspaceCreationProperties =
DefaultWorkspaceCreationProperties'
{ _dwcpCustomSecurityGroupId = Nothing
, _dwcpUserEnabledAsLocalAdministrator = Nothing
, _dwcpEnableWorkDocs = Nothing
, _dwcpEnableInternetAccess = Nothing
, _dwcpDefaultOu = Nothing
}
dwcpCustomSecurityGroupId :: Lens' DefaultWorkspaceCreationProperties (Maybe Text)
dwcpCustomSecurityGroupId = lens _dwcpCustomSecurityGroupId (\ s a -> s{_dwcpCustomSecurityGroupId = a});
dwcpUserEnabledAsLocalAdministrator :: Lens' DefaultWorkspaceCreationProperties (Maybe Bool)
dwcpUserEnabledAsLocalAdministrator = lens _dwcpUserEnabledAsLocalAdministrator (\ s a -> s{_dwcpUserEnabledAsLocalAdministrator = a});
dwcpEnableWorkDocs :: Lens' DefaultWorkspaceCreationProperties (Maybe Bool)
dwcpEnableWorkDocs = lens _dwcpEnableWorkDocs (\ s a -> s{_dwcpEnableWorkDocs = a});
dwcpEnableInternetAccess :: Lens' DefaultWorkspaceCreationProperties (Maybe Bool)
dwcpEnableInternetAccess = lens _dwcpEnableInternetAccess (\ s a -> s{_dwcpEnableInternetAccess = a});
dwcpDefaultOu :: Lens' DefaultWorkspaceCreationProperties (Maybe Text)
dwcpDefaultOu = lens _dwcpDefaultOu (\ s a -> s{_dwcpDefaultOu = a});
instance FromJSON DefaultWorkspaceCreationProperties
where
parseJSON
= withObject "DefaultWorkspaceCreationProperties"
(\ x ->
DefaultWorkspaceCreationProperties' <$>
(x .:? "CustomSecurityGroupId") <*>
(x .:? "UserEnabledAsLocalAdministrator")
<*> (x .:? "EnableWorkDocs")
<*> (x .:? "EnableInternetAccess")
<*> (x .:? "DefaultOu"))
data FailedCreateWorkspaceRequest = FailedCreateWorkspaceRequest'
{ _fcwrWorkspaceRequest :: !(Maybe WorkspaceRequest)
, _fcwrErrorCode :: !(Maybe Text)
, _fcwrErrorMessage :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
failedCreateWorkspaceRequest
:: FailedCreateWorkspaceRequest
failedCreateWorkspaceRequest =
FailedCreateWorkspaceRequest'
{ _fcwrWorkspaceRequest = Nothing
, _fcwrErrorCode = Nothing
, _fcwrErrorMessage = Nothing
}
fcwrWorkspaceRequest :: Lens' FailedCreateWorkspaceRequest (Maybe WorkspaceRequest)
fcwrWorkspaceRequest = lens _fcwrWorkspaceRequest (\ s a -> s{_fcwrWorkspaceRequest = a});
fcwrErrorCode :: Lens' FailedCreateWorkspaceRequest (Maybe Text)
fcwrErrorCode = lens _fcwrErrorCode (\ s a -> s{_fcwrErrorCode = a});
fcwrErrorMessage :: Lens' FailedCreateWorkspaceRequest (Maybe Text)
fcwrErrorMessage = lens _fcwrErrorMessage (\ s a -> s{_fcwrErrorMessage = a});
instance FromJSON FailedCreateWorkspaceRequest where
parseJSON
= withObject "FailedCreateWorkspaceRequest"
(\ x ->
FailedCreateWorkspaceRequest' <$>
(x .:? "WorkspaceRequest") <*> (x .:? "ErrorCode")
<*> (x .:? "ErrorMessage"))
data FailedWorkspaceChangeRequest = FailedWorkspaceChangeRequest'
{ _fwcrErrorCode :: !(Maybe Text)
, _fwcrWorkspaceId :: !(Maybe Text)
, _fwcrErrorMessage :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
failedWorkspaceChangeRequest
:: FailedWorkspaceChangeRequest
failedWorkspaceChangeRequest =
FailedWorkspaceChangeRequest'
{ _fwcrErrorCode = Nothing
, _fwcrWorkspaceId = Nothing
, _fwcrErrorMessage = Nothing
}
fwcrErrorCode :: Lens' FailedWorkspaceChangeRequest (Maybe Text)
fwcrErrorCode = lens _fwcrErrorCode (\ s a -> s{_fwcrErrorCode = a});
fwcrWorkspaceId :: Lens' FailedWorkspaceChangeRequest (Maybe Text)
fwcrWorkspaceId = lens _fwcrWorkspaceId (\ s a -> s{_fwcrWorkspaceId = a});
fwcrErrorMessage :: Lens' FailedWorkspaceChangeRequest (Maybe Text)
fwcrErrorMessage = lens _fwcrErrorMessage (\ s a -> s{_fwcrErrorMessage = a});
instance FromJSON FailedWorkspaceChangeRequest where
parseJSON
= withObject "FailedWorkspaceChangeRequest"
(\ x ->
FailedWorkspaceChangeRequest' <$>
(x .:? "ErrorCode") <*> (x .:? "WorkspaceId") <*>
(x .:? "ErrorMessage"))
newtype RebootRequest = RebootRequest'
{ _rWorkspaceId :: Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
rebootRequest
:: Text
-> RebootRequest
rebootRequest pWorkspaceId_ =
RebootRequest'
{ _rWorkspaceId = pWorkspaceId_
}
rWorkspaceId :: Lens' RebootRequest Text
rWorkspaceId = lens _rWorkspaceId (\ s a -> s{_rWorkspaceId = a});
instance ToJSON RebootRequest where
toJSON RebootRequest'{..}
= object ["WorkspaceId" .= _rWorkspaceId]
newtype RebuildRequest = RebuildRequest'
{ _rrWorkspaceId :: Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
rebuildRequest
:: Text
-> RebuildRequest
rebuildRequest pWorkspaceId_ =
RebuildRequest'
{ _rrWorkspaceId = pWorkspaceId_
}
rrWorkspaceId :: Lens' RebuildRequest Text
rrWorkspaceId = lens _rrWorkspaceId (\ s a -> s{_rrWorkspaceId = a});
instance ToJSON RebuildRequest where
toJSON RebuildRequest'{..}
= object ["WorkspaceId" .= _rrWorkspaceId]
newtype TerminateRequest = TerminateRequest'
{ _trWorkspaceId :: Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
terminateRequest
:: Text
-> TerminateRequest
terminateRequest pWorkspaceId_ =
TerminateRequest'
{ _trWorkspaceId = pWorkspaceId_
}
trWorkspaceId :: Lens' TerminateRequest Text
trWorkspaceId = lens _trWorkspaceId (\ s a -> s{_trWorkspaceId = a});
instance ToJSON TerminateRequest where
toJSON TerminateRequest'{..}
= object ["WorkspaceId" .= _trWorkspaceId]
newtype UserStorage = UserStorage'
{ _usCapacity :: Maybe Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
userStorage
:: UserStorage
userStorage =
UserStorage'
{ _usCapacity = Nothing
}
usCapacity :: Lens' UserStorage (Maybe Text)
usCapacity = lens _usCapacity (\ s a -> s{_usCapacity = a});
instance FromJSON UserStorage where
parseJSON
= withObject "UserStorage"
(\ x -> UserStorage' <$> (x .:? "Capacity"))
data Workspace = Workspace'
{ _wDirectoryId :: !(Maybe Text)
, _wIPAddress :: !(Maybe Text)
, _wState :: !(Maybe WorkspaceState)
, _wUserName :: !(Maybe Text)
, _wSubnetId :: !(Maybe Text)
, _wBundleId :: !(Maybe Text)
, _wErrorCode :: !(Maybe Text)
, _wWorkspaceId :: !(Maybe Text)
, _wErrorMessage :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
workspace
:: Workspace
workspace =
Workspace'
{ _wDirectoryId = Nothing
, _wIPAddress = Nothing
, _wState = Nothing
, _wUserName = Nothing
, _wSubnetId = Nothing
, _wBundleId = Nothing
, _wErrorCode = Nothing
, _wWorkspaceId = Nothing
, _wErrorMessage = Nothing
}
wDirectoryId :: Lens' Workspace (Maybe Text)
wDirectoryId = lens _wDirectoryId (\ s a -> s{_wDirectoryId = a});
wIPAddress :: Lens' Workspace (Maybe Text)
wIPAddress = lens _wIPAddress (\ s a -> s{_wIPAddress = a});
wState :: Lens' Workspace (Maybe WorkspaceState)
wState = lens _wState (\ s a -> s{_wState = a});
wUserName :: Lens' Workspace (Maybe Text)
wUserName = lens _wUserName (\ s a -> s{_wUserName = a});
wSubnetId :: Lens' Workspace (Maybe Text)
wSubnetId = lens _wSubnetId (\ s a -> s{_wSubnetId = a});
wBundleId :: Lens' Workspace (Maybe Text)
wBundleId = lens _wBundleId (\ s a -> s{_wBundleId = a});
wErrorCode :: Lens' Workspace (Maybe Text)
wErrorCode = lens _wErrorCode (\ s a -> s{_wErrorCode = a});
wWorkspaceId :: Lens' Workspace (Maybe Text)
wWorkspaceId = lens _wWorkspaceId (\ s a -> s{_wWorkspaceId = a});
wErrorMessage :: Lens' Workspace (Maybe Text)
wErrorMessage = lens _wErrorMessage (\ s a -> s{_wErrorMessage = a});
instance FromJSON Workspace where
parseJSON
= withObject "Workspace"
(\ x ->
Workspace' <$>
(x .:? "DirectoryId") <*> (x .:? "IpAddress") <*>
(x .:? "State")
<*> (x .:? "UserName")
<*> (x .:? "SubnetId")
<*> (x .:? "BundleId")
<*> (x .:? "ErrorCode")
<*> (x .:? "WorkspaceId")
<*> (x .:? "ErrorMessage"))
data WorkspaceBundle = WorkspaceBundle'
{ _wbOwner :: !(Maybe Text)
, _wbBundleId :: !(Maybe Text)
, _wbName :: !(Maybe Text)
, _wbComputeType :: !(Maybe ComputeType)
, _wbUserStorage :: !(Maybe UserStorage)
, _wbDescription :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
workspaceBundle
:: WorkspaceBundle
workspaceBundle =
WorkspaceBundle'
{ _wbOwner = Nothing
, _wbBundleId = Nothing
, _wbName = Nothing
, _wbComputeType = Nothing
, _wbUserStorage = Nothing
, _wbDescription = Nothing
}
wbOwner :: Lens' WorkspaceBundle (Maybe Text)
wbOwner = lens _wbOwner (\ s a -> s{_wbOwner = a});
wbBundleId :: Lens' WorkspaceBundle (Maybe Text)
wbBundleId = lens _wbBundleId (\ s a -> s{_wbBundleId = a});
wbName :: Lens' WorkspaceBundle (Maybe Text)
wbName = lens _wbName (\ s a -> s{_wbName = a});
wbComputeType :: Lens' WorkspaceBundle (Maybe ComputeType)
wbComputeType = lens _wbComputeType (\ s a -> s{_wbComputeType = a});
wbUserStorage :: Lens' WorkspaceBundle (Maybe UserStorage)
wbUserStorage = lens _wbUserStorage (\ s a -> s{_wbUserStorage = a});
wbDescription :: Lens' WorkspaceBundle (Maybe Text)
wbDescription = lens _wbDescription (\ s a -> s{_wbDescription = a});
instance FromJSON WorkspaceBundle where
parseJSON
= withObject "WorkspaceBundle"
(\ x ->
WorkspaceBundle' <$>
(x .:? "Owner") <*> (x .:? "BundleId") <*>
(x .:? "Name")
<*> (x .:? "ComputeType")
<*> (x .:? "UserStorage")
<*> (x .:? "Description"))
data WorkspaceDirectory = WorkspaceDirectory'
{ _wdRegistrationCode :: !(Maybe Text)
, _wdIAMRoleId :: !(Maybe Text)
, _wdDirectoryId :: !(Maybe Text)
, _wdState :: !(Maybe WorkspaceDirectoryState)
, _wdCustomerUserName :: !(Maybe Text)
, _wdSubnetIds :: !(Maybe [Text])
, _wdAlias :: !(Maybe Text)
, _wdDirectoryType :: !(Maybe WorkspaceDirectoryType)
, _wdWorkspaceSecurityGroupId :: !(Maybe Text)
, _wdWorkspaceCreationProperties :: !(Maybe DefaultWorkspaceCreationProperties)
, _wdDNSIPAddresses :: !(Maybe [Text])
, _wdDirectoryName :: !(Maybe Text)
} deriving (Eq,Read,Show,Data,Typeable,Generic)
workspaceDirectory
:: WorkspaceDirectory
workspaceDirectory =
WorkspaceDirectory'
{ _wdRegistrationCode = Nothing
, _wdIAMRoleId = Nothing
, _wdDirectoryId = Nothing
, _wdState = Nothing
, _wdCustomerUserName = Nothing
, _wdSubnetIds = Nothing
, _wdAlias = Nothing
, _wdDirectoryType = Nothing
, _wdWorkspaceSecurityGroupId = Nothing
, _wdWorkspaceCreationProperties = Nothing
, _wdDNSIPAddresses = Nothing
, _wdDirectoryName = Nothing
}
wdRegistrationCode :: Lens' WorkspaceDirectory (Maybe Text)
wdRegistrationCode = lens _wdRegistrationCode (\ s a -> s{_wdRegistrationCode = a});
wdIAMRoleId :: Lens' WorkspaceDirectory (Maybe Text)
wdIAMRoleId = lens _wdIAMRoleId (\ s a -> s{_wdIAMRoleId = a});
wdDirectoryId :: Lens' WorkspaceDirectory (Maybe Text)
wdDirectoryId = lens _wdDirectoryId (\ s a -> s{_wdDirectoryId = a});
wdState :: Lens' WorkspaceDirectory (Maybe WorkspaceDirectoryState)
wdState = lens _wdState (\ s a -> s{_wdState = a});
wdCustomerUserName :: Lens' WorkspaceDirectory (Maybe Text)
wdCustomerUserName = lens _wdCustomerUserName (\ s a -> s{_wdCustomerUserName = a});
wdSubnetIds :: Lens' WorkspaceDirectory [Text]
wdSubnetIds = lens _wdSubnetIds (\ s a -> s{_wdSubnetIds = a}) . _Default . _Coerce;
wdAlias :: Lens' WorkspaceDirectory (Maybe Text)
wdAlias = lens _wdAlias (\ s a -> s{_wdAlias = a});
wdDirectoryType :: Lens' WorkspaceDirectory (Maybe WorkspaceDirectoryType)
wdDirectoryType = lens _wdDirectoryType (\ s a -> s{_wdDirectoryType = a});
wdWorkspaceSecurityGroupId :: Lens' WorkspaceDirectory (Maybe Text)
wdWorkspaceSecurityGroupId = lens _wdWorkspaceSecurityGroupId (\ s a -> s{_wdWorkspaceSecurityGroupId = a});
wdWorkspaceCreationProperties :: Lens' WorkspaceDirectory (Maybe DefaultWorkspaceCreationProperties)
wdWorkspaceCreationProperties = lens _wdWorkspaceCreationProperties (\ s a -> s{_wdWorkspaceCreationProperties = a});
wdDNSIPAddresses :: Lens' WorkspaceDirectory [Text]
wdDNSIPAddresses = lens _wdDNSIPAddresses (\ s a -> s{_wdDNSIPAddresses = a}) . _Default . _Coerce;
wdDirectoryName :: Lens' WorkspaceDirectory (Maybe Text)
wdDirectoryName = lens _wdDirectoryName (\ s a -> s{_wdDirectoryName = a});
instance FromJSON WorkspaceDirectory where
parseJSON
= withObject "WorkspaceDirectory"
(\ x ->
WorkspaceDirectory' <$>
(x .:? "RegistrationCode") <*> (x .:? "IamRoleId")
<*> (x .:? "DirectoryId")
<*> (x .:? "State")
<*> (x .:? "CustomerUserName")
<*> (x .:? "SubnetIds" .!= mempty)
<*> (x .:? "Alias")
<*> (x .:? "DirectoryType")
<*> (x .:? "WorkspaceSecurityGroupId")
<*> (x .:? "WorkspaceCreationProperties")
<*> (x .:? "DnsIpAddresses" .!= mempty)
<*> (x .:? "DirectoryName"))
data WorkspaceRequest = WorkspaceRequest'
{ _wrDirectoryId :: !Text
, _wrUserName :: !Text
, _wrBundleId :: !Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
workspaceRequest
:: Text
-> Text
-> Text
-> WorkspaceRequest
workspaceRequest pDirectoryId_ pUserName_ pBundleId_ =
WorkspaceRequest'
{ _wrDirectoryId = pDirectoryId_
, _wrUserName = pUserName_
, _wrBundleId = pBundleId_
}
wrDirectoryId :: Lens' WorkspaceRequest Text
wrDirectoryId = lens _wrDirectoryId (\ s a -> s{_wrDirectoryId = a});
wrUserName :: Lens' WorkspaceRequest Text
wrUserName = lens _wrUserName (\ s a -> s{_wrUserName = a});
wrBundleId :: Lens' WorkspaceRequest Text
wrBundleId = lens _wrBundleId (\ s a -> s{_wrBundleId = a});
instance FromJSON WorkspaceRequest where
parseJSON
= withObject "WorkspaceRequest"
(\ x ->
WorkspaceRequest' <$>
(x .: "DirectoryId") <*> (x .: "UserName") <*>
(x .: "BundleId"))
instance ToJSON WorkspaceRequest where
toJSON WorkspaceRequest'{..}
= object
["DirectoryId" .= _wrDirectoryId,
"UserName" .= _wrUserName, "BundleId" .= _wrBundleId]