module Network.Google.IAM.Types.Product where
import Network.Google.IAM.Types.Sum
import Network.Google.Prelude
data Empty =
Empty'
deriving (Eq,Show,Data,Typeable,Generic)
empty
:: Empty
empty = Empty'
instance FromJSON Empty where
parseJSON = withObject "Empty" (\ o -> pure Empty')
instance ToJSON Empty where
toJSON = const emptyObject
newtype AuditData = AuditData'
{ _adPolicyDelta :: Maybe PolicyDelta
} deriving (Eq,Show,Data,Typeable,Generic)
auditData
:: AuditData
auditData =
AuditData'
{ _adPolicyDelta = Nothing
}
adPolicyDelta :: Lens' AuditData (Maybe PolicyDelta)
adPolicyDelta
= lens _adPolicyDelta
(\ s a -> s{_adPolicyDelta = a})
instance FromJSON AuditData where
parseJSON
= withObject "AuditData"
(\ o -> AuditData' <$> (o .:? "policyDelta"))
instance ToJSON AuditData where
toJSON AuditData'{..}
= object
(catMaybes [("policyDelta" .=) <$> _adPolicyDelta])
data ServiceAccountKey = ServiceAccountKey'
{ _sakValidAfterTime :: !(Maybe Text)
, _sakPrivateKeyData :: !(Maybe Bytes)
, _sakPublicKeyData :: !(Maybe Bytes)
, _sakName :: !(Maybe Text)
, _sakPrivateKeyType :: !(Maybe Text)
, _sakValidBeforeTime :: !(Maybe Text)
, _sakKeyAlgorithm :: !(Maybe Text)
} deriving (Eq,Show,Data,Typeable,Generic)
serviceAccountKey
:: ServiceAccountKey
serviceAccountKey =
ServiceAccountKey'
{ _sakValidAfterTime = Nothing
, _sakPrivateKeyData = Nothing
, _sakPublicKeyData = Nothing
, _sakName = Nothing
, _sakPrivateKeyType = Nothing
, _sakValidBeforeTime = Nothing
, _sakKeyAlgorithm = Nothing
}
sakValidAfterTime :: Lens' ServiceAccountKey (Maybe Text)
sakValidAfterTime
= lens _sakValidAfterTime
(\ s a -> s{_sakValidAfterTime = a})
sakPrivateKeyData :: Lens' ServiceAccountKey (Maybe ByteString)
sakPrivateKeyData
= lens _sakPrivateKeyData
(\ s a -> s{_sakPrivateKeyData = a})
. mapping _Bytes
sakPublicKeyData :: Lens' ServiceAccountKey (Maybe ByteString)
sakPublicKeyData
= lens _sakPublicKeyData
(\ s a -> s{_sakPublicKeyData = a})
. mapping _Bytes
sakName :: Lens' ServiceAccountKey (Maybe Text)
sakName = lens _sakName (\ s a -> s{_sakName = a})
sakPrivateKeyType :: Lens' ServiceAccountKey (Maybe Text)
sakPrivateKeyType
= lens _sakPrivateKeyType
(\ s a -> s{_sakPrivateKeyType = a})
sakValidBeforeTime :: Lens' ServiceAccountKey (Maybe Text)
sakValidBeforeTime
= lens _sakValidBeforeTime
(\ s a -> s{_sakValidBeforeTime = a})
sakKeyAlgorithm :: Lens' ServiceAccountKey (Maybe Text)
sakKeyAlgorithm
= lens _sakKeyAlgorithm
(\ s a -> s{_sakKeyAlgorithm = a})
instance FromJSON ServiceAccountKey where
parseJSON
= withObject "ServiceAccountKey"
(\ o ->
ServiceAccountKey' <$>
(o .:? "validAfterTime") <*> (o .:? "privateKeyData")
<*> (o .:? "publicKeyData")
<*> (o .:? "name")
<*> (o .:? "privateKeyType")
<*> (o .:? "validBeforeTime")
<*> (o .:? "keyAlgorithm"))
instance ToJSON ServiceAccountKey where
toJSON ServiceAccountKey'{..}
= object
(catMaybes
[("validAfterTime" .=) <$> _sakValidAfterTime,
("privateKeyData" .=) <$> _sakPrivateKeyData,
("publicKeyData" .=) <$> _sakPublicKeyData,
("name" .=) <$> _sakName,
("privateKeyType" .=) <$> _sakPrivateKeyType,
("validBeforeTime" .=) <$> _sakValidBeforeTime,
("keyAlgorithm" .=) <$> _sakKeyAlgorithm])
data CreateServiceAccountKeyRequest = CreateServiceAccountKeyRequest'
{ _csakrPrivateKeyType :: !(Maybe Text)
, _csakrKeyAlgorithm :: !(Maybe Text)
} deriving (Eq,Show,Data,Typeable,Generic)
createServiceAccountKeyRequest
:: CreateServiceAccountKeyRequest
createServiceAccountKeyRequest =
CreateServiceAccountKeyRequest'
{ _csakrPrivateKeyType = Nothing
, _csakrKeyAlgorithm = Nothing
}
csakrPrivateKeyType :: Lens' CreateServiceAccountKeyRequest (Maybe Text)
csakrPrivateKeyType
= lens _csakrPrivateKeyType
(\ s a -> s{_csakrPrivateKeyType = a})
csakrKeyAlgorithm :: Lens' CreateServiceAccountKeyRequest (Maybe Text)
csakrKeyAlgorithm
= lens _csakrKeyAlgorithm
(\ s a -> s{_csakrKeyAlgorithm = a})
instance FromJSON CreateServiceAccountKeyRequest
where
parseJSON
= withObject "CreateServiceAccountKeyRequest"
(\ o ->
CreateServiceAccountKeyRequest' <$>
(o .:? "privateKeyType") <*> (o .:? "keyAlgorithm"))
instance ToJSON CreateServiceAccountKeyRequest where
toJSON CreateServiceAccountKeyRequest'{..}
= object
(catMaybes
[("privateKeyType" .=) <$> _csakrPrivateKeyType,
("keyAlgorithm" .=) <$> _csakrKeyAlgorithm])
newtype SetIAMPolicyRequest = SetIAMPolicyRequest'
{ _siprPolicy :: Maybe Policy
} deriving (Eq,Show,Data,Typeable,Generic)
setIAMPolicyRequest
:: SetIAMPolicyRequest
setIAMPolicyRequest =
SetIAMPolicyRequest'
{ _siprPolicy = Nothing
}
siprPolicy :: Lens' SetIAMPolicyRequest (Maybe Policy)
siprPolicy
= lens _siprPolicy (\ s a -> s{_siprPolicy = a})
instance FromJSON SetIAMPolicyRequest where
parseJSON
= withObject "SetIAMPolicyRequest"
(\ o -> SetIAMPolicyRequest' <$> (o .:? "policy"))
instance ToJSON SetIAMPolicyRequest where
toJSON SetIAMPolicyRequest'{..}
= object (catMaybes [("policy" .=) <$> _siprPolicy])
data BindingDelta = BindingDelta'
{ _bdAction :: !(Maybe Text)
, _bdRole :: !(Maybe Text)
, _bdMember :: !(Maybe Text)
} deriving (Eq,Show,Data,Typeable,Generic)
bindingDelta
:: BindingDelta
bindingDelta =
BindingDelta'
{ _bdAction = Nothing
, _bdRole = Nothing
, _bdMember = Nothing
}
bdAction :: Lens' BindingDelta (Maybe Text)
bdAction = lens _bdAction (\ s a -> s{_bdAction = a})
bdRole :: Lens' BindingDelta (Maybe Text)
bdRole = lens _bdRole (\ s a -> s{_bdRole = a})
bdMember :: Lens' BindingDelta (Maybe Text)
bdMember = lens _bdMember (\ s a -> s{_bdMember = a})
instance FromJSON BindingDelta where
parseJSON
= withObject "BindingDelta"
(\ o ->
BindingDelta' <$>
(o .:? "action") <*> (o .:? "role") <*>
(o .:? "member"))
instance ToJSON BindingDelta where
toJSON BindingDelta'{..}
= object
(catMaybes
[("action" .=) <$> _bdAction,
("role" .=) <$> _bdRole,
("member" .=) <$> _bdMember])
newtype SignBlobRequest = SignBlobRequest'
{ _sbrBytesToSign :: Maybe Bytes
} deriving (Eq,Show,Data,Typeable,Generic)
signBlobRequest
:: SignBlobRequest
signBlobRequest =
SignBlobRequest'
{ _sbrBytesToSign = Nothing
}
sbrBytesToSign :: Lens' SignBlobRequest (Maybe ByteString)
sbrBytesToSign
= lens _sbrBytesToSign
(\ s a -> s{_sbrBytesToSign = a})
. mapping _Bytes
instance FromJSON SignBlobRequest where
parseJSON
= withObject "SignBlobRequest"
(\ o -> SignBlobRequest' <$> (o .:? "bytesToSign"))
instance ToJSON SignBlobRequest where
toJSON SignBlobRequest'{..}
= object
(catMaybes [("bytesToSign" .=) <$> _sbrBytesToSign])
newtype ListServiceAccountKeysResponse = ListServiceAccountKeysResponse'
{ _lsakrKeys :: Maybe [ServiceAccountKey]
} deriving (Eq,Show,Data,Typeable,Generic)
listServiceAccountKeysResponse
:: ListServiceAccountKeysResponse
listServiceAccountKeysResponse =
ListServiceAccountKeysResponse'
{ _lsakrKeys = Nothing
}
lsakrKeys :: Lens' ListServiceAccountKeysResponse [ServiceAccountKey]
lsakrKeys
= lens _lsakrKeys (\ s a -> s{_lsakrKeys = a}) .
_Default
. _Coerce
instance FromJSON ListServiceAccountKeysResponse
where
parseJSON
= withObject "ListServiceAccountKeysResponse"
(\ o ->
ListServiceAccountKeysResponse' <$>
(o .:? "keys" .!= mempty))
instance ToJSON ListServiceAccountKeysResponse where
toJSON ListServiceAccountKeysResponse'{..}
= object (catMaybes [("keys" .=) <$> _lsakrKeys])
data Role = Role'
{ _rName :: !(Maybe Text)
, _rTitle :: !(Maybe Text)
, _rDescription :: !(Maybe Text)
} deriving (Eq,Show,Data,Typeable,Generic)
role'
:: Role
role' =
Role'
{ _rName = Nothing
, _rTitle = Nothing
, _rDescription = Nothing
}
rName :: Lens' Role (Maybe Text)
rName = lens _rName (\ s a -> s{_rName = a})
rTitle :: Lens' Role (Maybe Text)
rTitle = lens _rTitle (\ s a -> s{_rTitle = a})
rDescription :: Lens' Role (Maybe Text)
rDescription
= lens _rDescription (\ s a -> s{_rDescription = a})
instance FromJSON Role where
parseJSON
= withObject "Role"
(\ o ->
Role' <$>
(o .:? "name") <*> (o .:? "title") <*>
(o .:? "description"))
instance ToJSON Role where
toJSON Role'{..}
= object
(catMaybes
[("name" .=) <$> _rName, ("title" .=) <$> _rTitle,
("description" .=) <$> _rDescription])
data ServiceAccount = ServiceAccount'
{ _saEmail :: !(Maybe Text)
, _saEtag :: !(Maybe Bytes)
, _saUniqueId :: !(Maybe Text)
, _saName :: !(Maybe Text)
, _saDisplayName :: !(Maybe Text)
, _saProjectId :: !(Maybe Text)
, _saOAuth2ClientId :: !(Maybe Text)
} deriving (Eq,Show,Data,Typeable,Generic)
serviceAccount
:: ServiceAccount
serviceAccount =
ServiceAccount'
{ _saEmail = Nothing
, _saEtag = Nothing
, _saUniqueId = Nothing
, _saName = Nothing
, _saDisplayName = Nothing
, _saProjectId = Nothing
, _saOAuth2ClientId = Nothing
}
saEmail :: Lens' ServiceAccount (Maybe Text)
saEmail = lens _saEmail (\ s a -> s{_saEmail = a})
saEtag :: Lens' ServiceAccount (Maybe ByteString)
saEtag
= lens _saEtag (\ s a -> s{_saEtag = a}) .
mapping _Bytes
saUniqueId :: Lens' ServiceAccount (Maybe Text)
saUniqueId
= lens _saUniqueId (\ s a -> s{_saUniqueId = a})
saName :: Lens' ServiceAccount (Maybe Text)
saName = lens _saName (\ s a -> s{_saName = a})
saDisplayName :: Lens' ServiceAccount (Maybe Text)
saDisplayName
= lens _saDisplayName
(\ s a -> s{_saDisplayName = a})
saProjectId :: Lens' ServiceAccount (Maybe Text)
saProjectId
= lens _saProjectId (\ s a -> s{_saProjectId = a})
saOAuth2ClientId :: Lens' ServiceAccount (Maybe Text)
saOAuth2ClientId
= lens _saOAuth2ClientId
(\ s a -> s{_saOAuth2ClientId = a})
instance FromJSON ServiceAccount where
parseJSON
= withObject "ServiceAccount"
(\ o ->
ServiceAccount' <$>
(o .:? "email") <*> (o .:? "etag") <*>
(o .:? "uniqueId")
<*> (o .:? "name")
<*> (o .:? "displayName")
<*> (o .:? "projectId")
<*> (o .:? "oauth2ClientId"))
instance ToJSON ServiceAccount where
toJSON ServiceAccount'{..}
= object
(catMaybes
[("email" .=) <$> _saEmail, ("etag" .=) <$> _saEtag,
("uniqueId" .=) <$> _saUniqueId,
("name" .=) <$> _saName,
("displayName" .=) <$> _saDisplayName,
("projectId" .=) <$> _saProjectId,
("oauth2ClientId" .=) <$> _saOAuth2ClientId])
newtype QueryGrantableRolesResponse = QueryGrantableRolesResponse'
{ _qgrrRoles :: Maybe [Role]
} deriving (Eq,Show,Data,Typeable,Generic)
queryGrantableRolesResponse
:: QueryGrantableRolesResponse
queryGrantableRolesResponse =
QueryGrantableRolesResponse'
{ _qgrrRoles = Nothing
}
qgrrRoles :: Lens' QueryGrantableRolesResponse [Role]
qgrrRoles
= lens _qgrrRoles (\ s a -> s{_qgrrRoles = a}) .
_Default
. _Coerce
instance FromJSON QueryGrantableRolesResponse where
parseJSON
= withObject "QueryGrantableRolesResponse"
(\ o ->
QueryGrantableRolesResponse' <$>
(o .:? "roles" .!= mempty))
instance ToJSON QueryGrantableRolesResponse where
toJSON QueryGrantableRolesResponse'{..}
= object (catMaybes [("roles" .=) <$> _qgrrRoles])
newtype TestIAMPermissionsRequest = TestIAMPermissionsRequest'
{ _tiprPermissions :: Maybe [Text]
} deriving (Eq,Show,Data,Typeable,Generic)
testIAMPermissionsRequest
:: TestIAMPermissionsRequest
testIAMPermissionsRequest =
TestIAMPermissionsRequest'
{ _tiprPermissions = Nothing
}
tiprPermissions :: Lens' TestIAMPermissionsRequest [Text]
tiprPermissions
= lens _tiprPermissions
(\ s a -> s{_tiprPermissions = a})
. _Default
. _Coerce
instance FromJSON TestIAMPermissionsRequest where
parseJSON
= withObject "TestIAMPermissionsRequest"
(\ o ->
TestIAMPermissionsRequest' <$>
(o .:? "permissions" .!= mempty))
instance ToJSON TestIAMPermissionsRequest where
toJSON TestIAMPermissionsRequest'{..}
= object
(catMaybes [("permissions" .=) <$> _tiprPermissions])
newtype TestIAMPermissionsResponse = TestIAMPermissionsResponse'
{ _tiamprPermissions :: Maybe [Text]
} deriving (Eq,Show,Data,Typeable,Generic)
testIAMPermissionsResponse
:: TestIAMPermissionsResponse
testIAMPermissionsResponse =
TestIAMPermissionsResponse'
{ _tiamprPermissions = Nothing
}
tiamprPermissions :: Lens' TestIAMPermissionsResponse [Text]
tiamprPermissions
= lens _tiamprPermissions
(\ s a -> s{_tiamprPermissions = a})
. _Default
. _Coerce
instance FromJSON TestIAMPermissionsResponse where
parseJSON
= withObject "TestIAMPermissionsResponse"
(\ o ->
TestIAMPermissionsResponse' <$>
(o .:? "permissions" .!= mempty))
instance ToJSON TestIAMPermissionsResponse where
toJSON TestIAMPermissionsResponse'{..}
= object
(catMaybes
[("permissions" .=) <$> _tiamprPermissions])
data Policy = Policy'
{ _pEtag :: !(Maybe Bytes)
, _pVersion :: !(Maybe (Textual Int32))
, _pBindings :: !(Maybe [Binding])
} deriving (Eq,Show,Data,Typeable,Generic)
policy
:: Policy
policy =
Policy'
{ _pEtag = Nothing
, _pVersion = Nothing
, _pBindings = Nothing
}
pEtag :: Lens' Policy (Maybe ByteString)
pEtag
= lens _pEtag (\ s a -> s{_pEtag = a}) .
mapping _Bytes
pVersion :: Lens' Policy (Maybe Int32)
pVersion
= lens _pVersion (\ s a -> s{_pVersion = a}) .
mapping _Coerce
pBindings :: Lens' Policy [Binding]
pBindings
= lens _pBindings (\ s a -> s{_pBindings = a}) .
_Default
. _Coerce
instance FromJSON Policy where
parseJSON
= withObject "Policy"
(\ o ->
Policy' <$>
(o .:? "etag") <*> (o .:? "version") <*>
(o .:? "bindings" .!= mempty))
instance ToJSON Policy where
toJSON Policy'{..}
= object
(catMaybes
[("etag" .=) <$> _pEtag,
("version" .=) <$> _pVersion,
("bindings" .=) <$> _pBindings])
newtype PolicyDelta = PolicyDelta'
{ _pdBindingDeltas :: Maybe [BindingDelta]
} deriving (Eq,Show,Data,Typeable,Generic)
policyDelta
:: PolicyDelta
policyDelta =
PolicyDelta'
{ _pdBindingDeltas = Nothing
}
pdBindingDeltas :: Lens' PolicyDelta [BindingDelta]
pdBindingDeltas
= lens _pdBindingDeltas
(\ s a -> s{_pdBindingDeltas = a})
. _Default
. _Coerce
instance FromJSON PolicyDelta where
parseJSON
= withObject "PolicyDelta"
(\ o ->
PolicyDelta' <$> (o .:? "bindingDeltas" .!= mempty))
instance ToJSON PolicyDelta where
toJSON PolicyDelta'{..}
= object
(catMaybes
[("bindingDeltas" .=) <$> _pdBindingDeltas])
newtype QueryGrantableRolesRequest = QueryGrantableRolesRequest'
{ _qgrrFullResourceName :: Maybe Text
} deriving (Eq,Show,Data,Typeable,Generic)
queryGrantableRolesRequest
:: QueryGrantableRolesRequest
queryGrantableRolesRequest =
QueryGrantableRolesRequest'
{ _qgrrFullResourceName = Nothing
}
qgrrFullResourceName :: Lens' QueryGrantableRolesRequest (Maybe Text)
qgrrFullResourceName
= lens _qgrrFullResourceName
(\ s a -> s{_qgrrFullResourceName = a})
instance FromJSON QueryGrantableRolesRequest where
parseJSON
= withObject "QueryGrantableRolesRequest"
(\ o ->
QueryGrantableRolesRequest' <$>
(o .:? "fullResourceName"))
instance ToJSON QueryGrantableRolesRequest where
toJSON QueryGrantableRolesRequest'{..}
= object
(catMaybes
[("fullResourceName" .=) <$> _qgrrFullResourceName])
data SignBlobResponse = SignBlobResponse'
{ _sbrSignature :: !(Maybe Bytes)
, _sbrKeyId :: !(Maybe Text)
} deriving (Eq,Show,Data,Typeable,Generic)
signBlobResponse
:: SignBlobResponse
signBlobResponse =
SignBlobResponse'
{ _sbrSignature = Nothing
, _sbrKeyId = Nothing
}
sbrSignature :: Lens' SignBlobResponse (Maybe ByteString)
sbrSignature
= lens _sbrSignature (\ s a -> s{_sbrSignature = a})
. mapping _Bytes
sbrKeyId :: Lens' SignBlobResponse (Maybe Text)
sbrKeyId = lens _sbrKeyId (\ s a -> s{_sbrKeyId = a})
instance FromJSON SignBlobResponse where
parseJSON
= withObject "SignBlobResponse"
(\ o ->
SignBlobResponse' <$>
(o .:? "signature") <*> (o .:? "keyId"))
instance ToJSON SignBlobResponse where
toJSON SignBlobResponse'{..}
= object
(catMaybes
[("signature" .=) <$> _sbrSignature,
("keyId" .=) <$> _sbrKeyId])
data ListServiceAccountsResponse = ListServiceAccountsResponse'
{ _lsarNextPageToken :: !(Maybe Text)
, _lsarAccounts :: !(Maybe [ServiceAccount])
} deriving (Eq,Show,Data,Typeable,Generic)
listServiceAccountsResponse
:: ListServiceAccountsResponse
listServiceAccountsResponse =
ListServiceAccountsResponse'
{ _lsarNextPageToken = Nothing
, _lsarAccounts = Nothing
}
lsarNextPageToken :: Lens' ListServiceAccountsResponse (Maybe Text)
lsarNextPageToken
= lens _lsarNextPageToken
(\ s a -> s{_lsarNextPageToken = a})
lsarAccounts :: Lens' ListServiceAccountsResponse [ServiceAccount]
lsarAccounts
= lens _lsarAccounts (\ s a -> s{_lsarAccounts = a})
. _Default
. _Coerce
instance FromJSON ListServiceAccountsResponse where
parseJSON
= withObject "ListServiceAccountsResponse"
(\ o ->
ListServiceAccountsResponse' <$>
(o .:? "nextPageToken") <*>
(o .:? "accounts" .!= mempty))
instance ToJSON ListServiceAccountsResponse where
toJSON ListServiceAccountsResponse'{..}
= object
(catMaybes
[("nextPageToken" .=) <$> _lsarNextPageToken,
("accounts" .=) <$> _lsarAccounts])
data CreateServiceAccountRequest = CreateServiceAccountRequest'
{ _csarServiceAccount :: !(Maybe ServiceAccount)
, _csarAccountId :: !(Maybe Text)
} deriving (Eq,Show,Data,Typeable,Generic)
createServiceAccountRequest
:: CreateServiceAccountRequest
createServiceAccountRequest =
CreateServiceAccountRequest'
{ _csarServiceAccount = Nothing
, _csarAccountId = Nothing
}
csarServiceAccount :: Lens' CreateServiceAccountRequest (Maybe ServiceAccount)
csarServiceAccount
= lens _csarServiceAccount
(\ s a -> s{_csarServiceAccount = a})
csarAccountId :: Lens' CreateServiceAccountRequest (Maybe Text)
csarAccountId
= lens _csarAccountId
(\ s a -> s{_csarAccountId = a})
instance FromJSON CreateServiceAccountRequest where
parseJSON
= withObject "CreateServiceAccountRequest"
(\ o ->
CreateServiceAccountRequest' <$>
(o .:? "serviceAccount") <*> (o .:? "accountId"))
instance ToJSON CreateServiceAccountRequest where
toJSON CreateServiceAccountRequest'{..}
= object
(catMaybes
[("serviceAccount" .=) <$> _csarServiceAccount,
("accountId" .=) <$> _csarAccountId])
data Binding = Binding'
{ _bMembers :: !(Maybe [Text])
, _bRole :: !(Maybe Text)
} deriving (Eq,Show,Data,Typeable,Generic)
binding
:: Binding
binding =
Binding'
{ _bMembers = Nothing
, _bRole = Nothing
}
bMembers :: Lens' Binding [Text]
bMembers
= lens _bMembers (\ s a -> s{_bMembers = a}) .
_Default
. _Coerce
bRole :: Lens' Binding (Maybe Text)
bRole = lens _bRole (\ s a -> s{_bRole = a})
instance FromJSON Binding where
parseJSON
= withObject "Binding"
(\ o ->
Binding' <$>
(o .:? "members" .!= mempty) <*> (o .:? "role"))
instance ToJSON Binding where
toJSON Binding'{..}
= object
(catMaybes
[("members" .=) <$> _bMembers,
("role" .=) <$> _bRole])