module Network.AWS.IAM.UpdateLoginProfile
(
UpdateLoginProfile
, updateLoginProfile
, ulpPassword
, ulpPasswordResetRequired
, ulpUserName
, UpdateLoginProfileResponse
, updateLoginProfileResponse
) where
import Network.AWS.Prelude
import Network.AWS.Request.Query
import Network.AWS.IAM.Types
import qualified GHC.Exts
data UpdateLoginProfile = UpdateLoginProfile
{ _ulpPassword :: Maybe (Sensitive Text)
, _ulpPasswordResetRequired :: Maybe Bool
, _ulpUserName :: Text
} deriving (Eq, Ord, Show)
updateLoginProfile :: Text
-> UpdateLoginProfile
updateLoginProfile p1 = UpdateLoginProfile
{ _ulpUserName = p1
, _ulpPassword = Nothing
, _ulpPasswordResetRequired = Nothing
}
ulpPassword :: Lens' UpdateLoginProfile (Maybe Text)
ulpPassword = lens _ulpPassword (\s a -> s { _ulpPassword = a }) . mapping _Sensitive
ulpPasswordResetRequired :: Lens' UpdateLoginProfile (Maybe Bool)
ulpPasswordResetRequired =
lens _ulpPasswordResetRequired
(\s a -> s { _ulpPasswordResetRequired = a })
ulpUserName :: Lens' UpdateLoginProfile Text
ulpUserName = lens _ulpUserName (\s a -> s { _ulpUserName = a })
data UpdateLoginProfileResponse = UpdateLoginProfileResponse
deriving (Eq, Ord, Show, Generic)
updateLoginProfileResponse :: UpdateLoginProfileResponse
updateLoginProfileResponse = UpdateLoginProfileResponse
instance ToPath UpdateLoginProfile where
toPath = const "/"
instance ToQuery UpdateLoginProfile where
toQuery UpdateLoginProfile{..} = mconcat
[ "Password" =? _ulpPassword
, "PasswordResetRequired" =? _ulpPasswordResetRequired
, "UserName" =? _ulpUserName
]
instance ToHeaders UpdateLoginProfile
instance AWSRequest UpdateLoginProfile where
type Sv UpdateLoginProfile = IAM
type Rs UpdateLoginProfile = UpdateLoginProfileResponse
request = post "UpdateLoginProfile"
response = nullResponse UpdateLoginProfileResponse