{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
module Network.AWS.AlexaBusiness.Types.Product where
import Network.AWS.AlexaBusiness.Types.Sum
import Network.AWS.Lens
import Network.AWS.Prelude
data AddressBook = AddressBook'
{ _abAddressBookARN :: !(Maybe Text)
, _abName :: !(Maybe Text)
, _abDescription :: !(Maybe Text)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
addressBook
:: AddressBook
addressBook =
AddressBook'
{_abAddressBookARN = Nothing, _abName = Nothing, _abDescription = Nothing}
abAddressBookARN :: Lens' AddressBook (Maybe Text)
abAddressBookARN = lens _abAddressBookARN (\ s a -> s{_abAddressBookARN = a})
abName :: Lens' AddressBook (Maybe Text)
abName = lens _abName (\ s a -> s{_abName = a})
abDescription :: Lens' AddressBook (Maybe Text)
abDescription = lens _abDescription (\ s a -> s{_abDescription = a})
instance FromJSON AddressBook where
parseJSON
= withObject "AddressBook"
(\ x ->
AddressBook' <$>
(x .:? "AddressBookArn") <*> (x .:? "Name") <*>
(x .:? "Description"))
instance Hashable AddressBook where
instance NFData AddressBook where
data AddressBookData = AddressBookData'
{ _abdAddressBookARN :: !(Maybe Text)
, _abdName :: !(Maybe Text)
, _abdDescription :: !(Maybe Text)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
addressBookData
:: AddressBookData
addressBookData =
AddressBookData'
{ _abdAddressBookARN = Nothing
, _abdName = Nothing
, _abdDescription = Nothing
}
abdAddressBookARN :: Lens' AddressBookData (Maybe Text)
abdAddressBookARN = lens _abdAddressBookARN (\ s a -> s{_abdAddressBookARN = a})
abdName :: Lens' AddressBookData (Maybe Text)
abdName = lens _abdName (\ s a -> s{_abdName = a})
abdDescription :: Lens' AddressBookData (Maybe Text)
abdDescription = lens _abdDescription (\ s a -> s{_abdDescription = a})
instance FromJSON AddressBookData where
parseJSON
= withObject "AddressBookData"
(\ x ->
AddressBookData' <$>
(x .:? "AddressBookArn") <*> (x .:? "Name") <*>
(x .:? "Description"))
instance Hashable AddressBookData where
instance NFData AddressBookData where
data Contact = Contact'
{ _cLastName :: !(Maybe Text)
, _cContactARN :: !(Maybe Text)
, _cPhoneNumber :: !(Maybe Text)
, _cFirstName :: !(Maybe Text)
, _cDisplayName :: !(Maybe Text)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
contact
:: Contact
contact =
Contact'
{ _cLastName = Nothing
, _cContactARN = Nothing
, _cPhoneNumber = Nothing
, _cFirstName = Nothing
, _cDisplayName = Nothing
}
cLastName :: Lens' Contact (Maybe Text)
cLastName = lens _cLastName (\ s a -> s{_cLastName = a})
cContactARN :: Lens' Contact (Maybe Text)
cContactARN = lens _cContactARN (\ s a -> s{_cContactARN = a})
cPhoneNumber :: Lens' Contact (Maybe Text)
cPhoneNumber = lens _cPhoneNumber (\ s a -> s{_cPhoneNumber = a})
cFirstName :: Lens' Contact (Maybe Text)
cFirstName = lens _cFirstName (\ s a -> s{_cFirstName = a})
cDisplayName :: Lens' Contact (Maybe Text)
cDisplayName = lens _cDisplayName (\ s a -> s{_cDisplayName = a})
instance FromJSON Contact where
parseJSON
= withObject "Contact"
(\ x ->
Contact' <$>
(x .:? "LastName") <*> (x .:? "ContactArn") <*>
(x .:? "PhoneNumber")
<*> (x .:? "FirstName")
<*> (x .:? "DisplayName"))
instance Hashable Contact where
instance NFData Contact where
data ContactData = ContactData'
{ _cdLastName :: !(Maybe Text)
, _cdContactARN :: !(Maybe Text)
, _cdPhoneNumber :: !(Maybe Text)
, _cdFirstName :: !(Maybe Text)
, _cdDisplayName :: !(Maybe Text)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
contactData
:: ContactData
contactData =
ContactData'
{ _cdLastName = Nothing
, _cdContactARN = Nothing
, _cdPhoneNumber = Nothing
, _cdFirstName = Nothing
, _cdDisplayName = Nothing
}
cdLastName :: Lens' ContactData (Maybe Text)
cdLastName = lens _cdLastName (\ s a -> s{_cdLastName = a})
cdContactARN :: Lens' ContactData (Maybe Text)
cdContactARN = lens _cdContactARN (\ s a -> s{_cdContactARN = a})
cdPhoneNumber :: Lens' ContactData (Maybe Text)
cdPhoneNumber = lens _cdPhoneNumber (\ s a -> s{_cdPhoneNumber = a})
cdFirstName :: Lens' ContactData (Maybe Text)
cdFirstName = lens _cdFirstName (\ s a -> s{_cdFirstName = a})
cdDisplayName :: Lens' ContactData (Maybe Text)
cdDisplayName = lens _cdDisplayName (\ s a -> s{_cdDisplayName = a})
instance FromJSON ContactData where
parseJSON
= withObject "ContactData"
(\ x ->
ContactData' <$>
(x .:? "LastName") <*> (x .:? "ContactArn") <*>
(x .:? "PhoneNumber")
<*> (x .:? "FirstName")
<*> (x .:? "DisplayName"))
instance Hashable ContactData where
instance NFData ContactData where
data Device = Device'
{ _dDeviceStatus :: !(Maybe DeviceStatus)
, _dDeviceStatusInfo :: !(Maybe DeviceStatusInfo)
, _dDeviceARN :: !(Maybe Text)
, _dMACAddress :: !(Maybe Text)
, _dDeviceName :: !(Maybe Text)
, _dRoomARN :: !(Maybe Text)
, _dSoftwareVersion :: !(Maybe Text)
, _dDeviceType :: !(Maybe Text)
, _dDeviceSerialNumber :: !(Maybe Text)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
device
:: Device
device =
Device'
{ _dDeviceStatus = Nothing
, _dDeviceStatusInfo = Nothing
, _dDeviceARN = Nothing
, _dMACAddress = Nothing
, _dDeviceName = Nothing
, _dRoomARN = Nothing
, _dSoftwareVersion = Nothing
, _dDeviceType = Nothing
, _dDeviceSerialNumber = Nothing
}
dDeviceStatus :: Lens' Device (Maybe DeviceStatus)
dDeviceStatus = lens _dDeviceStatus (\ s a -> s{_dDeviceStatus = a})
dDeviceStatusInfo :: Lens' Device (Maybe DeviceStatusInfo)
dDeviceStatusInfo = lens _dDeviceStatusInfo (\ s a -> s{_dDeviceStatusInfo = a})
dDeviceARN :: Lens' Device (Maybe Text)
dDeviceARN = lens _dDeviceARN (\ s a -> s{_dDeviceARN = a})
dMACAddress :: Lens' Device (Maybe Text)
dMACAddress = lens _dMACAddress (\ s a -> s{_dMACAddress = a})
dDeviceName :: Lens' Device (Maybe Text)
dDeviceName = lens _dDeviceName (\ s a -> s{_dDeviceName = a})
dRoomARN :: Lens' Device (Maybe Text)
dRoomARN = lens _dRoomARN (\ s a -> s{_dRoomARN = a})
dSoftwareVersion :: Lens' Device (Maybe Text)
dSoftwareVersion = lens _dSoftwareVersion (\ s a -> s{_dSoftwareVersion = a})
dDeviceType :: Lens' Device (Maybe Text)
dDeviceType = lens _dDeviceType (\ s a -> s{_dDeviceType = a})
dDeviceSerialNumber :: Lens' Device (Maybe Text)
dDeviceSerialNumber = lens _dDeviceSerialNumber (\ s a -> s{_dDeviceSerialNumber = a})
instance FromJSON Device where
parseJSON
= withObject "Device"
(\ x ->
Device' <$>
(x .:? "DeviceStatus") <*> (x .:? "DeviceStatusInfo")
<*> (x .:? "DeviceArn")
<*> (x .:? "MacAddress")
<*> (x .:? "DeviceName")
<*> (x .:? "RoomArn")
<*> (x .:? "SoftwareVersion")
<*> (x .:? "DeviceType")
<*> (x .:? "DeviceSerialNumber"))
instance Hashable Device where
instance NFData Device where
data DeviceData = DeviceData'
{ _ddDeviceStatus :: !(Maybe DeviceStatus)
, _ddDeviceStatusInfo :: !(Maybe DeviceStatusInfo)
, _ddDeviceARN :: !(Maybe Text)
, _ddMACAddress :: !(Maybe Text)
, _ddDeviceName :: !(Maybe Text)
, _ddRoomARN :: !(Maybe Text)
, _ddSoftwareVersion :: !(Maybe Text)
, _ddDeviceType :: !(Maybe Text)
, _ddRoomName :: !(Maybe Text)
, _ddDeviceSerialNumber :: !(Maybe Text)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
deviceData
:: DeviceData
deviceData =
DeviceData'
{ _ddDeviceStatus = Nothing
, _ddDeviceStatusInfo = Nothing
, _ddDeviceARN = Nothing
, _ddMACAddress = Nothing
, _ddDeviceName = Nothing
, _ddRoomARN = Nothing
, _ddSoftwareVersion = Nothing
, _ddDeviceType = Nothing
, _ddRoomName = Nothing
, _ddDeviceSerialNumber = Nothing
}
ddDeviceStatus :: Lens' DeviceData (Maybe DeviceStatus)
ddDeviceStatus = lens _ddDeviceStatus (\ s a -> s{_ddDeviceStatus = a})
ddDeviceStatusInfo :: Lens' DeviceData (Maybe DeviceStatusInfo)
ddDeviceStatusInfo = lens _ddDeviceStatusInfo (\ s a -> s{_ddDeviceStatusInfo = a})
ddDeviceARN :: Lens' DeviceData (Maybe Text)
ddDeviceARN = lens _ddDeviceARN (\ s a -> s{_ddDeviceARN = a})
ddMACAddress :: Lens' DeviceData (Maybe Text)
ddMACAddress = lens _ddMACAddress (\ s a -> s{_ddMACAddress = a})
ddDeviceName :: Lens' DeviceData (Maybe Text)
ddDeviceName = lens _ddDeviceName (\ s a -> s{_ddDeviceName = a})
ddRoomARN :: Lens' DeviceData (Maybe Text)
ddRoomARN = lens _ddRoomARN (\ s a -> s{_ddRoomARN = a})
ddSoftwareVersion :: Lens' DeviceData (Maybe Text)
ddSoftwareVersion = lens _ddSoftwareVersion (\ s a -> s{_ddSoftwareVersion = a})
ddDeviceType :: Lens' DeviceData (Maybe Text)
ddDeviceType = lens _ddDeviceType (\ s a -> s{_ddDeviceType = a})
ddRoomName :: Lens' DeviceData (Maybe Text)
ddRoomName = lens _ddRoomName (\ s a -> s{_ddRoomName = a})
ddDeviceSerialNumber :: Lens' DeviceData (Maybe Text)
ddDeviceSerialNumber = lens _ddDeviceSerialNumber (\ s a -> s{_ddDeviceSerialNumber = a})
instance FromJSON DeviceData where
parseJSON
= withObject "DeviceData"
(\ x ->
DeviceData' <$>
(x .:? "DeviceStatus") <*> (x .:? "DeviceStatusInfo")
<*> (x .:? "DeviceArn")
<*> (x .:? "MacAddress")
<*> (x .:? "DeviceName")
<*> (x .:? "RoomArn")
<*> (x .:? "SoftwareVersion")
<*> (x .:? "DeviceType")
<*> (x .:? "RoomName")
<*> (x .:? "DeviceSerialNumber"))
instance Hashable DeviceData where
instance NFData DeviceData where
data DeviceEvent = DeviceEvent'
{ _deValue :: !(Maybe Text)
, _deType :: !(Maybe DeviceEventType)
, _deTimestamp :: !(Maybe POSIX)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
deviceEvent
:: DeviceEvent
deviceEvent =
DeviceEvent' {_deValue = Nothing, _deType = Nothing, _deTimestamp = Nothing}
deValue :: Lens' DeviceEvent (Maybe Text)
deValue = lens _deValue (\ s a -> s{_deValue = a})
deType :: Lens' DeviceEvent (Maybe DeviceEventType)
deType = lens _deType (\ s a -> s{_deType = a})
deTimestamp :: Lens' DeviceEvent (Maybe UTCTime)
deTimestamp = lens _deTimestamp (\ s a -> s{_deTimestamp = a}) . mapping _Time
instance FromJSON DeviceEvent where
parseJSON
= withObject "DeviceEvent"
(\ x ->
DeviceEvent' <$>
(x .:? "Value") <*> (x .:? "Type") <*>
(x .:? "Timestamp"))
instance Hashable DeviceEvent where
instance NFData DeviceEvent where
newtype DeviceStatusDetail = DeviceStatusDetail'
{ _dsdCode :: Maybe DeviceStatusDetailCode
} deriving (Eq, Read, Show, Data, Typeable, Generic)
deviceStatusDetail
:: DeviceStatusDetail
deviceStatusDetail = DeviceStatusDetail' {_dsdCode = Nothing}
dsdCode :: Lens' DeviceStatusDetail (Maybe DeviceStatusDetailCode)
dsdCode = lens _dsdCode (\ s a -> s{_dsdCode = a})
instance FromJSON DeviceStatusDetail where
parseJSON
= withObject "DeviceStatusDetail"
(\ x -> DeviceStatusDetail' <$> (x .:? "Code"))
instance Hashable DeviceStatusDetail where
instance NFData DeviceStatusDetail where
data DeviceStatusInfo = DeviceStatusInfo'
{ _dsiDeviceStatusDetails :: !(Maybe [DeviceStatusDetail])
, _dsiConnectionStatus :: !(Maybe ConnectionStatus)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
deviceStatusInfo
:: DeviceStatusInfo
deviceStatusInfo =
DeviceStatusInfo'
{_dsiDeviceStatusDetails = Nothing, _dsiConnectionStatus = Nothing}
dsiDeviceStatusDetails :: Lens' DeviceStatusInfo [DeviceStatusDetail]
dsiDeviceStatusDetails = lens _dsiDeviceStatusDetails (\ s a -> s{_dsiDeviceStatusDetails = a}) . _Default . _Coerce
dsiConnectionStatus :: Lens' DeviceStatusInfo (Maybe ConnectionStatus)
dsiConnectionStatus = lens _dsiConnectionStatus (\ s a -> s{_dsiConnectionStatus = a})
instance FromJSON DeviceStatusInfo where
parseJSON
= withObject "DeviceStatusInfo"
(\ x ->
DeviceStatusInfo' <$>
(x .:? "DeviceStatusDetails" .!= mempty) <*>
(x .:? "ConnectionStatus"))
instance Hashable DeviceStatusInfo where
instance NFData DeviceStatusInfo where
data Filter = Filter'
{ _fKey :: !Text
, _fValues :: ![Text]
} deriving (Eq, Read, Show, Data, Typeable, Generic)
filter'
:: Text
-> Filter
filter' pKey_ = Filter' {_fKey = pKey_, _fValues = mempty}
fKey :: Lens' Filter Text
fKey = lens _fKey (\ s a -> s{_fKey = a})
fValues :: Lens' Filter [Text]
fValues = lens _fValues (\ s a -> s{_fValues = a}) . _Coerce
instance Hashable Filter where
instance NFData Filter where
instance ToJSON Filter where
toJSON Filter'{..}
= object
(catMaybes
[Just ("Key" .= _fKey), Just ("Values" .= _fValues)])
data Profile = Profile'
{ _pSetupModeDisabled :: !(Maybe Bool)
, _pPSTNEnabled :: !(Maybe Bool)
, _pDistanceUnit :: !(Maybe DistanceUnit)
, _pAddress :: !(Maybe Text)
, _pProfileARN :: !(Maybe Text)
, _pWakeWord :: !(Maybe WakeWord)
, _pProfileName :: !(Maybe Text)
, _pTemperatureUnit :: !(Maybe TemperatureUnit)
, _pTimezone :: !(Maybe Text)
, _pMaxVolumeLimit :: !(Maybe Int)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
profile
:: Profile
profile =
Profile'
{ _pSetupModeDisabled = Nothing
, _pPSTNEnabled = Nothing
, _pDistanceUnit = Nothing
, _pAddress = Nothing
, _pProfileARN = Nothing
, _pWakeWord = Nothing
, _pProfileName = Nothing
, _pTemperatureUnit = Nothing
, _pTimezone = Nothing
, _pMaxVolumeLimit = Nothing
}
pSetupModeDisabled :: Lens' Profile (Maybe Bool)
pSetupModeDisabled = lens _pSetupModeDisabled (\ s a -> s{_pSetupModeDisabled = a})
pPSTNEnabled :: Lens' Profile (Maybe Bool)
pPSTNEnabled = lens _pPSTNEnabled (\ s a -> s{_pPSTNEnabled = a})
pDistanceUnit :: Lens' Profile (Maybe DistanceUnit)
pDistanceUnit = lens _pDistanceUnit (\ s a -> s{_pDistanceUnit = a})
pAddress :: Lens' Profile (Maybe Text)
pAddress = lens _pAddress (\ s a -> s{_pAddress = a})
pProfileARN :: Lens' Profile (Maybe Text)
pProfileARN = lens _pProfileARN (\ s a -> s{_pProfileARN = a})
pWakeWord :: Lens' Profile (Maybe WakeWord)
pWakeWord = lens _pWakeWord (\ s a -> s{_pWakeWord = a})
pProfileName :: Lens' Profile (Maybe Text)
pProfileName = lens _pProfileName (\ s a -> s{_pProfileName = a})
pTemperatureUnit :: Lens' Profile (Maybe TemperatureUnit)
pTemperatureUnit = lens _pTemperatureUnit (\ s a -> s{_pTemperatureUnit = a})
pTimezone :: Lens' Profile (Maybe Text)
pTimezone = lens _pTimezone (\ s a -> s{_pTimezone = a})
pMaxVolumeLimit :: Lens' Profile (Maybe Int)
pMaxVolumeLimit = lens _pMaxVolumeLimit (\ s a -> s{_pMaxVolumeLimit = a})
instance FromJSON Profile where
parseJSON
= withObject "Profile"
(\ x ->
Profile' <$>
(x .:? "SetupModeDisabled") <*> (x .:? "PSTNEnabled")
<*> (x .:? "DistanceUnit")
<*> (x .:? "Address")
<*> (x .:? "ProfileArn")
<*> (x .:? "WakeWord")
<*> (x .:? "ProfileName")
<*> (x .:? "TemperatureUnit")
<*> (x .:? "Timezone")
<*> (x .:? "MaxVolumeLimit"))
instance Hashable Profile where
instance NFData Profile where
data ProfileData = ProfileData'
{ _pdDistanceUnit :: !(Maybe DistanceUnit)
, _pdAddress :: !(Maybe Text)
, _pdProfileARN :: !(Maybe Text)
, _pdWakeWord :: !(Maybe WakeWord)
, _pdProfileName :: !(Maybe Text)
, _pdTemperatureUnit :: !(Maybe TemperatureUnit)
, _pdTimezone :: !(Maybe Text)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
profileData
:: ProfileData
profileData =
ProfileData'
{ _pdDistanceUnit = Nothing
, _pdAddress = Nothing
, _pdProfileARN = Nothing
, _pdWakeWord = Nothing
, _pdProfileName = Nothing
, _pdTemperatureUnit = Nothing
, _pdTimezone = Nothing
}
pdDistanceUnit :: Lens' ProfileData (Maybe DistanceUnit)
pdDistanceUnit = lens _pdDistanceUnit (\ s a -> s{_pdDistanceUnit = a})
pdAddress :: Lens' ProfileData (Maybe Text)
pdAddress = lens _pdAddress (\ s a -> s{_pdAddress = a})
pdProfileARN :: Lens' ProfileData (Maybe Text)
pdProfileARN = lens _pdProfileARN (\ s a -> s{_pdProfileARN = a})
pdWakeWord :: Lens' ProfileData (Maybe WakeWord)
pdWakeWord = lens _pdWakeWord (\ s a -> s{_pdWakeWord = a})
pdProfileName :: Lens' ProfileData (Maybe Text)
pdProfileName = lens _pdProfileName (\ s a -> s{_pdProfileName = a})
pdTemperatureUnit :: Lens' ProfileData (Maybe TemperatureUnit)
pdTemperatureUnit = lens _pdTemperatureUnit (\ s a -> s{_pdTemperatureUnit = a})
pdTimezone :: Lens' ProfileData (Maybe Text)
pdTimezone = lens _pdTimezone (\ s a -> s{_pdTimezone = a})
instance FromJSON ProfileData where
parseJSON
= withObject "ProfileData"
(\ x ->
ProfileData' <$>
(x .:? "DistanceUnit") <*> (x .:? "Address") <*>
(x .:? "ProfileArn")
<*> (x .:? "WakeWord")
<*> (x .:? "ProfileName")
<*> (x .:? "TemperatureUnit")
<*> (x .:? "Timezone"))
instance Hashable ProfileData where
instance NFData ProfileData where
data Room = Room'
{ _rProfileARN :: !(Maybe Text)
, _rProviderCalendarId :: !(Maybe Text)
, _rRoomARN :: !(Maybe Text)
, _rRoomName :: !(Maybe Text)
, _rDescription :: !(Maybe Text)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
room
:: Room
room =
Room'
{ _rProfileARN = Nothing
, _rProviderCalendarId = Nothing
, _rRoomARN = Nothing
, _rRoomName = Nothing
, _rDescription = Nothing
}
rProfileARN :: Lens' Room (Maybe Text)
rProfileARN = lens _rProfileARN (\ s a -> s{_rProfileARN = a})
rProviderCalendarId :: Lens' Room (Maybe Text)
rProviderCalendarId = lens _rProviderCalendarId (\ s a -> s{_rProviderCalendarId = a})
rRoomARN :: Lens' Room (Maybe Text)
rRoomARN = lens _rRoomARN (\ s a -> s{_rRoomARN = a})
rRoomName :: Lens' Room (Maybe Text)
rRoomName = lens _rRoomName (\ s a -> s{_rRoomName = a})
rDescription :: Lens' Room (Maybe Text)
rDescription = lens _rDescription (\ s a -> s{_rDescription = a})
instance FromJSON Room where
parseJSON
= withObject "Room"
(\ x ->
Room' <$>
(x .:? "ProfileArn") <*> (x .:? "ProviderCalendarId")
<*> (x .:? "RoomArn")
<*> (x .:? "RoomName")
<*> (x .:? "Description"))
instance Hashable Room where
instance NFData Room where
data RoomData = RoomData'
{ _rdProfileARN :: !(Maybe Text)
, _rdProviderCalendarId :: !(Maybe Text)
, _rdProfileName :: !(Maybe Text)
, _rdRoomARN :: !(Maybe Text)
, _rdRoomName :: !(Maybe Text)
, _rdDescription :: !(Maybe Text)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
roomData
:: RoomData
roomData =
RoomData'
{ _rdProfileARN = Nothing
, _rdProviderCalendarId = Nothing
, _rdProfileName = Nothing
, _rdRoomARN = Nothing
, _rdRoomName = Nothing
, _rdDescription = Nothing
}
rdProfileARN :: Lens' RoomData (Maybe Text)
rdProfileARN = lens _rdProfileARN (\ s a -> s{_rdProfileARN = a})
rdProviderCalendarId :: Lens' RoomData (Maybe Text)
rdProviderCalendarId = lens _rdProviderCalendarId (\ s a -> s{_rdProviderCalendarId = a})
rdProfileName :: Lens' RoomData (Maybe Text)
rdProfileName = lens _rdProfileName (\ s a -> s{_rdProfileName = a})
rdRoomARN :: Lens' RoomData (Maybe Text)
rdRoomARN = lens _rdRoomARN (\ s a -> s{_rdRoomARN = a})
rdRoomName :: Lens' RoomData (Maybe Text)
rdRoomName = lens _rdRoomName (\ s a -> s{_rdRoomName = a})
rdDescription :: Lens' RoomData (Maybe Text)
rdDescription = lens _rdDescription (\ s a -> s{_rdDescription = a})
instance FromJSON RoomData where
parseJSON
= withObject "RoomData"
(\ x ->
RoomData' <$>
(x .:? "ProfileArn") <*> (x .:? "ProviderCalendarId")
<*> (x .:? "ProfileName")
<*> (x .:? "RoomArn")
<*> (x .:? "RoomName")
<*> (x .:? "Description"))
instance Hashable RoomData where
instance NFData RoomData where
data RoomSkillParameter = RoomSkillParameter'
{ _rspParameterKey :: !Text
, _rspParameterValue :: !Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
roomSkillParameter
:: Text
-> Text
-> RoomSkillParameter
roomSkillParameter pParameterKey_ pParameterValue_ =
RoomSkillParameter'
{_rspParameterKey = pParameterKey_, _rspParameterValue = pParameterValue_}
rspParameterKey :: Lens' RoomSkillParameter Text
rspParameterKey = lens _rspParameterKey (\ s a -> s{_rspParameterKey = a})
rspParameterValue :: Lens' RoomSkillParameter Text
rspParameterValue = lens _rspParameterValue (\ s a -> s{_rspParameterValue = a})
instance FromJSON RoomSkillParameter where
parseJSON
= withObject "RoomSkillParameter"
(\ x ->
RoomSkillParameter' <$>
(x .: "ParameterKey") <*> (x .: "ParameterValue"))
instance Hashable RoomSkillParameter where
instance NFData RoomSkillParameter where
instance ToJSON RoomSkillParameter where
toJSON RoomSkillParameter'{..}
= object
(catMaybes
[Just ("ParameterKey" .= _rspParameterKey),
Just ("ParameterValue" .= _rspParameterValue)])
data SkillGroup = SkillGroup'
{ _sgSkillGroupARN :: !(Maybe Text)
, _sgDescription :: !(Maybe Text)
, _sgSkillGroupName :: !(Maybe Text)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
skillGroup
:: SkillGroup
skillGroup =
SkillGroup'
{ _sgSkillGroupARN = Nothing
, _sgDescription = Nothing
, _sgSkillGroupName = Nothing
}
sgSkillGroupARN :: Lens' SkillGroup (Maybe Text)
sgSkillGroupARN = lens _sgSkillGroupARN (\ s a -> s{_sgSkillGroupARN = a})
sgDescription :: Lens' SkillGroup (Maybe Text)
sgDescription = lens _sgDescription (\ s a -> s{_sgDescription = a})
sgSkillGroupName :: Lens' SkillGroup (Maybe Text)
sgSkillGroupName = lens _sgSkillGroupName (\ s a -> s{_sgSkillGroupName = a})
instance FromJSON SkillGroup where
parseJSON
= withObject "SkillGroup"
(\ x ->
SkillGroup' <$>
(x .:? "SkillGroupArn") <*> (x .:? "Description") <*>
(x .:? "SkillGroupName"))
instance Hashable SkillGroup where
instance NFData SkillGroup where
data SkillGroupData = SkillGroupData'
{ _sgdSkillGroupARN :: !(Maybe Text)
, _sgdDescription :: !(Maybe Text)
, _sgdSkillGroupName :: !(Maybe Text)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
skillGroupData
:: SkillGroupData
skillGroupData =
SkillGroupData'
{ _sgdSkillGroupARN = Nothing
, _sgdDescription = Nothing
, _sgdSkillGroupName = Nothing
}
sgdSkillGroupARN :: Lens' SkillGroupData (Maybe Text)
sgdSkillGroupARN = lens _sgdSkillGroupARN (\ s a -> s{_sgdSkillGroupARN = a})
sgdDescription :: Lens' SkillGroupData (Maybe Text)
sgdDescription = lens _sgdDescription (\ s a -> s{_sgdDescription = a})
sgdSkillGroupName :: Lens' SkillGroupData (Maybe Text)
sgdSkillGroupName = lens _sgdSkillGroupName (\ s a -> s{_sgdSkillGroupName = a})
instance FromJSON SkillGroupData where
parseJSON
= withObject "SkillGroupData"
(\ x ->
SkillGroupData' <$>
(x .:? "SkillGroupArn") <*> (x .:? "Description") <*>
(x .:? "SkillGroupName"))
instance Hashable SkillGroupData where
instance NFData SkillGroupData where
data SkillSummary = SkillSummary'
{ _ssSkillId :: !(Maybe Text)
, _ssSupportsLinking :: !(Maybe Bool)
, _ssSkillName :: !(Maybe Text)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
skillSummary
:: SkillSummary
skillSummary =
SkillSummary'
{_ssSkillId = Nothing, _ssSupportsLinking = Nothing, _ssSkillName = Nothing}
ssSkillId :: Lens' SkillSummary (Maybe Text)
ssSkillId = lens _ssSkillId (\ s a -> s{_ssSkillId = a})
ssSupportsLinking :: Lens' SkillSummary (Maybe Bool)
ssSupportsLinking = lens _ssSupportsLinking (\ s a -> s{_ssSupportsLinking = a})
ssSkillName :: Lens' SkillSummary (Maybe Text)
ssSkillName = lens _ssSkillName (\ s a -> s{_ssSkillName = a})
instance FromJSON SkillSummary where
parseJSON
= withObject "SkillSummary"
(\ x ->
SkillSummary' <$>
(x .:? "SkillId") <*> (x .:? "SupportsLinking") <*>
(x .:? "SkillName"))
instance Hashable SkillSummary where
instance NFData SkillSummary where
data Sort = Sort'
{ _sKey :: !Text
, _sValue :: !SortValue
} deriving (Eq, Read, Show, Data, Typeable, Generic)
sort
:: Text
-> SortValue
-> Sort
sort pKey_ pValue_ = Sort' {_sKey = pKey_, _sValue = pValue_}
sKey :: Lens' Sort Text
sKey = lens _sKey (\ s a -> s{_sKey = a})
sValue :: Lens' Sort SortValue
sValue = lens _sValue (\ s a -> s{_sValue = a})
instance Hashable Sort where
instance NFData Sort where
instance ToJSON Sort where
toJSON Sort'{..}
= object
(catMaybes
[Just ("Key" .= _sKey), Just ("Value" .= _sValue)])
data Tag = Tag'
{ _tagValue :: !(Maybe Text)
, _tagKey :: !(Maybe Text)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
tag
:: Tag
tag = Tag' {_tagValue = Nothing, _tagKey = Nothing}
tagValue :: Lens' Tag (Maybe Text)
tagValue = lens _tagValue (\ s a -> s{_tagValue = a})
tagKey :: Lens' Tag (Maybe Text)
tagKey = lens _tagKey (\ s a -> s{_tagKey = a})
instance FromJSON Tag where
parseJSON
= withObject "Tag"
(\ x -> Tag' <$> (x .:? "Value") <*> (x .:? "Key"))
instance Hashable Tag where
instance NFData Tag where
instance ToJSON Tag where
toJSON Tag'{..}
= object
(catMaybes
[("Value" .=) <$> _tagValue, ("Key" .=) <$> _tagKey])
data UserData = UserData'
{ _udEmail :: !(Maybe Text)
, _udLastName :: !(Maybe Text)
, _udEnrollmentId :: !(Maybe Text)
, _udUserARN :: !(Maybe Text)
, _udFirstName :: !(Maybe Text)
, _udEnrollmentStatus :: !(Maybe EnrollmentStatus)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
userData
:: UserData
userData =
UserData'
{ _udEmail = Nothing
, _udLastName = Nothing
, _udEnrollmentId = Nothing
, _udUserARN = Nothing
, _udFirstName = Nothing
, _udEnrollmentStatus = Nothing
}
udEmail :: Lens' UserData (Maybe Text)
udEmail = lens _udEmail (\ s a -> s{_udEmail = a})
udLastName :: Lens' UserData (Maybe Text)
udLastName = lens _udLastName (\ s a -> s{_udLastName = a})
udEnrollmentId :: Lens' UserData (Maybe Text)
udEnrollmentId = lens _udEnrollmentId (\ s a -> s{_udEnrollmentId = a})
udUserARN :: Lens' UserData (Maybe Text)
udUserARN = lens _udUserARN (\ s a -> s{_udUserARN = a})
udFirstName :: Lens' UserData (Maybe Text)
udFirstName = lens _udFirstName (\ s a -> s{_udFirstName = a})
udEnrollmentStatus :: Lens' UserData (Maybe EnrollmentStatus)
udEnrollmentStatus = lens _udEnrollmentStatus (\ s a -> s{_udEnrollmentStatus = a})
instance FromJSON UserData where
parseJSON
= withObject "UserData"
(\ x ->
UserData' <$>
(x .:? "Email") <*> (x .:? "LastName") <*>
(x .:? "EnrollmentId")
<*> (x .:? "UserArn")
<*> (x .:? "FirstName")
<*> (x .:? "EnrollmentStatus"))
instance Hashable UserData where
instance NFData UserData where