module Network.AWS.CognitoIdentity.MergeDeveloperIdentities
(
MergeDeveloperIdentities
, mergeDeveloperIdentities
, mdiDestinationUserIdentifier
, mdiDeveloperProviderName
, mdiIdentityPoolId
, mdiSourceUserIdentifier
, MergeDeveloperIdentitiesResponse
, mergeDeveloperIdentitiesResponse
, mdirIdentityId
) where
import Network.AWS.Prelude
import Network.AWS.Request.JSON
import Network.AWS.CognitoIdentity.Types
import qualified GHC.Exts
data MergeDeveloperIdentities = MergeDeveloperIdentities
{ _mdiDestinationUserIdentifier :: Text
, _mdiDeveloperProviderName :: Text
, _mdiIdentityPoolId :: Text
, _mdiSourceUserIdentifier :: Text
} deriving (Eq, Ord, Read, Show)
mergeDeveloperIdentities :: Text
-> Text
-> Text
-> Text
-> MergeDeveloperIdentities
mergeDeveloperIdentities p1 p2 p3 p4 = MergeDeveloperIdentities
{ _mdiSourceUserIdentifier = p1
, _mdiDestinationUserIdentifier = p2
, _mdiDeveloperProviderName = p3
, _mdiIdentityPoolId = p4
}
mdiDestinationUserIdentifier :: Lens' MergeDeveloperIdentities Text
mdiDestinationUserIdentifier =
lens _mdiDestinationUserIdentifier
(\s a -> s { _mdiDestinationUserIdentifier = a })
mdiDeveloperProviderName :: Lens' MergeDeveloperIdentities Text
mdiDeveloperProviderName =
lens _mdiDeveloperProviderName
(\s a -> s { _mdiDeveloperProviderName = a })
mdiIdentityPoolId :: Lens' MergeDeveloperIdentities Text
mdiIdentityPoolId =
lens _mdiIdentityPoolId (\s a -> s { _mdiIdentityPoolId = a })
mdiSourceUserIdentifier :: Lens' MergeDeveloperIdentities Text
mdiSourceUserIdentifier =
lens _mdiSourceUserIdentifier (\s a -> s { _mdiSourceUserIdentifier = a })
newtype MergeDeveloperIdentitiesResponse = MergeDeveloperIdentitiesResponse
{ _mdirIdentityId :: Maybe Text
} deriving (Eq, Ord, Read, Show, Monoid)
mergeDeveloperIdentitiesResponse :: MergeDeveloperIdentitiesResponse
mergeDeveloperIdentitiesResponse = MergeDeveloperIdentitiesResponse
{ _mdirIdentityId = Nothing
}
mdirIdentityId :: Lens' MergeDeveloperIdentitiesResponse (Maybe Text)
mdirIdentityId = lens _mdirIdentityId (\s a -> s { _mdirIdentityId = a })
instance ToPath MergeDeveloperIdentities where
toPath = const "/"
instance ToQuery MergeDeveloperIdentities where
toQuery = const mempty
instance ToHeaders MergeDeveloperIdentities
instance ToJSON MergeDeveloperIdentities where
toJSON MergeDeveloperIdentities{..} = object
[ "SourceUserIdentifier" .= _mdiSourceUserIdentifier
, "DestinationUserIdentifier" .= _mdiDestinationUserIdentifier
, "DeveloperProviderName" .= _mdiDeveloperProviderName
, "IdentityPoolId" .= _mdiIdentityPoolId
]
instance AWSRequest MergeDeveloperIdentities where
type Sv MergeDeveloperIdentities = CognitoIdentity
type Rs MergeDeveloperIdentities = MergeDeveloperIdentitiesResponse
request = post "MergeDeveloperIdentities"
response = jsonResponse
instance FromJSON MergeDeveloperIdentitiesResponse where
parseJSON = withObject "MergeDeveloperIdentitiesResponse" $ \o -> MergeDeveloperIdentitiesResponse
<$> o .:? "IdentityId"