gogol-accesscontextmanager (empty) → 0.4.0
raw patch · 25 files changed
+4925/−0 lines, 25 filesdep +basedep +gogol-coresetup-changed
Dependencies added: base, gogol-core
Files
- LICENSE +367/−0
- README.md +28/−0
- Setup.hs +2/−0
- gen/Network/Google/AccessContextManager.hs +252/−0
- gen/Network/Google/AccessContextManager/Types.hs +167/−0
- gen/Network/Google/AccessContextManager/Types/Product.hs +1207/−0
- gen/Network/Google/AccessContextManager/Types/Sum.hs +170/−0
- gen/Network/Google/Resource/AccessContextManager/AccessPolicies/AccessLevels/Create.hs +170/−0
- gen/Network/Google/Resource/AccessContextManager/AccessPolicies/AccessLevels/Delete.hs +154/−0
- gen/Network/Google/Resource/AccessContextManager/AccessPolicies/AccessLevels/Get.hs +168/−0
- gen/Network/Google/Resource/AccessContextManager/AccessPolicies/AccessLevels/List.hs +196/−0
- gen/Network/Google/Resource/AccessContextManager/AccessPolicies/AccessLevels/Patch.hs +185/−0
- gen/Network/Google/Resource/AccessContextManager/AccessPolicies/Create.hs +155/−0
- gen/Network/Google/Resource/AccessContextManager/AccessPolicies/Delete.hs +149/−0
- gen/Network/Google/Resource/AccessContextManager/AccessPolicies/Get.hs +145/−0
- gen/Network/Google/Resource/AccessContextManager/AccessPolicies/List.hs +174/−0
- gen/Network/Google/Resource/AccessContextManager/AccessPolicies/Patch.hs +178/−0
- gen/Network/Google/Resource/AccessContextManager/AccessPolicies/ServicePerimeters/Create.hs +173/−0
- gen/Network/Google/Resource/AccessContextManager/AccessPolicies/ServicePerimeters/Delete.hs +156/−0
- gen/Network/Google/Resource/AccessContextManager/AccessPolicies/ServicePerimeters/Get.hs +152/−0
- gen/Network/Google/Resource/AccessContextManager/AccessPolicies/ServicePerimeters/List.hs +182/−0
- gen/Network/Google/Resource/AccessContextManager/AccessPolicies/ServicePerimeters/Patch.hs +187/−0
- gen/Network/Google/Resource/AccessContextManager/Operations/Get.hs +146/−0
- gogol-accesscontextmanager.cabal +62/−0
- src/.gitkeep +0/−0
+ LICENSE view
@@ -0,0 +1,367 @@+Mozilla Public License Version 2.0+==================================++1. Definitions+--------------++1.1. "Contributor"+ means each individual or legal entity that creates, contributes to+ the creation of, or owns Covered Software.++1.2. "Contributor Version"+ means the combination of the Contributions of others (if any) used+ by a Contributor and that particular Contributor's Contribution.++1.3. "Contribution"+ means Covered Software of a particular Contributor.++1.4. "Covered Software"+ means Source Code Form to which the initial Contributor has attached+ the notice in Exhibit A, the Executable Form of such Source Code+ Form, and Modifications of such Source Code Form, in each case+ including portions thereof.++1.5. "Incompatible With Secondary Licenses"+ means++ (a) that the initial Contributor has attached the notice described+ in Exhibit B to the Covered Software; or++ (b) that the Covered Software was made available under the terms of+ version 1.1 or earlier of the License, but not also under the+ terms of a Secondary License.++1.6. "Executable Form"+ means any form of the work other than Source Code Form.++1.7. "Larger Work"+ means a work that combines Covered Software with other material, in+ a separate file or files, that is not Covered Software.++1.8. "License"+ means this document.++1.9. "Licensable"+ means having the right to grant, to the maximum extent possible,+ whether at the time of the initial grant or subsequently, any and+ all of the rights conveyed by this License.++1.10. "Modifications"+ means any of the following:++ (a) any file in Source Code Form that results from an addition to,+ deletion from, or modification of the contents of Covered+ Software; or++ (b) any new file in Source Code Form that contains any Covered+ Software.++1.11. "Patent Claims" of a Contributor+ means any patent claim(s), including without limitation, method,+ process, and apparatus claims, in any patent Licensable by such+ Contributor that would be infringed, but for the grant of the+ License, by the making, using, selling, offering for sale, having+ made, import, or transfer of either its Contributions or its+ Contributor Version.++1.12. "Secondary License"+ means either the GNU General Public License, Version 2.0, the GNU+ Lesser General Public License, Version 2.1, the GNU Affero General+ Public License, Version 3.0, or any later versions of those+ licenses.++1.13. "Source Code Form"+ means the form of the work preferred for making modifications.++1.14. "You" (or "Your")+ means an individual or a legal entity exercising rights under this+ License. For legal entities, "You" includes any entity that+ controls, is controlled by, or is under common control with You. For+ purposes of this definition, "control" means (a) the power, direct+ or indirect, to cause the direction or management of such entity,+ whether by contract or otherwise, or (b) ownership of more than+ fifty percent (50%) of the outstanding shares or beneficial+ ownership of such entity.++2. License Grants and Conditions+--------------------------------++2.1. Grants++Each Contributor hereby grants You a world-wide, royalty-free,+non-exclusive license:++(a) under intellectual property rights (other than patent or trademark)+ Licensable by such Contributor to use, reproduce, make available,+ modify, display, perform, distribute, and otherwise exploit its+ Contributions, either on an unmodified basis, with Modifications, or+ as part of a Larger Work; and++(b) under Patent Claims of such Contributor to make, use, sell, offer+ for sale, have made, import, and otherwise transfer either its+ Contributions or its Contributor Version.++2.2. Effective Date++The licenses granted in Section 2.1 with respect to any Contribution+become effective for each Contribution on the date the Contributor first+distributes such Contribution.++2.3. Limitations on Grant Scope++The licenses granted in this Section 2 are the only rights granted under+this License. No additional rights or licenses will be implied from the+distribution or licensing of Covered Software under this License.+Notwithstanding Section 2.1(b) above, no patent license is granted by a+Contributor:++(a) for any code that a Contributor has removed from Covered Software;+ or++(b) for infringements caused by: (i) Your and any other third party's+ modifications of Covered Software, or (ii) the combination of its+ Contributions with other software (except as part of its Contributor+ Version); or++(c) under Patent Claims infringed by Covered Software in the absence of+ its Contributions.++This License does not grant any rights in the trademarks, service marks,+or logos of any Contributor (except as may be necessary to comply with+the notice requirements in Section 3.4).++2.4. Subsequent Licenses++No Contributor makes additional grants as a result of Your choice to+distribute the Covered Software under a subsequent version of this+License (see Section 10.2) or under the terms of a Secondary License (if+permitted under the terms of Section 3.3).++2.5. Representation++Each Contributor represents that the Contributor believes its+Contributions are its original creation(s) or it has sufficient rights+to grant the rights to its Contributions conveyed by this License.++2.6. Fair Use++This License is not intended to limit any rights You have under+applicable copyright doctrines of fair use, fair dealing, or other+equivalents.++2.7. Conditions++Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted+in Section 2.1.++3. Responsibilities+-------------------++3.1. Distribution of Source Form++All distribution of Covered Software in Source Code Form, including any+Modifications that You create or to which You contribute, must be under+the terms of this License. You must inform recipients that the Source+Code Form of the Covered Software is governed by the terms of this+License, and how they can obtain a copy of this License. You may not+attempt to alter or restrict the recipients' rights in the Source Code+Form.++3.2. Distribution of Executable Form++If You distribute Covered Software in Executable Form then:++(a) such Covered Software must also be made available in Source Code+ Form, as described in Section 3.1, and You must inform recipients of+ the Executable Form how they can obtain a copy of such Source Code+ Form by reasonable means in a timely manner, at a charge no more+ than the cost of distribution to the recipient; and++(b) You may distribute such Executable Form under the terms of this+ License, or sublicense it under different terms, provided that the+ license for the Executable Form does not attempt to limit or alter+ the recipients' rights in the Source Code Form under this License.++3.3. Distribution of a Larger Work++You may create and distribute a Larger Work under terms of Your choice,+provided that You also comply with the requirements of this License for+the Covered Software. If the Larger Work is a combination of Covered+Software with a work governed by one or more Secondary Licenses, and the+Covered Software is not Incompatible With Secondary Licenses, this+License permits You to additionally distribute such Covered Software+under the terms of such Secondary License(s), so that the recipient of+the Larger Work may, at their option, further distribute the Covered+Software under the terms of either this License or such Secondary+License(s).++3.4. Notices++You may not remove or alter the substance of any license notices+(including copyright notices, patent notices, disclaimers of warranty,+or limitations of liability) contained within the Source Code Form of+the Covered Software, except that You may alter any license notices to+the extent required to remedy known factual inaccuracies.++3.5. Application of Additional Terms++You may choose to offer, and to charge a fee for, warranty, support,+indemnity or liability obligations to one or more recipients of Covered+Software. However, You may do so only on Your own behalf, and not on+behalf of any Contributor. You must make it absolutely clear that any+such warranty, support, indemnity, or liability obligation is offered by+You alone, and You hereby agree to indemnify every Contributor for any+liability incurred by such Contributor as a result of warranty, support,+indemnity or liability terms You offer. You may include additional+disclaimers of warranty and limitations of liability specific to any+jurisdiction.++4. Inability to Comply Due to Statute or Regulation+---------------------------------------------------++If it is impossible for You to comply with any of the terms of this+License with respect to some or all of the Covered Software due to+statute, judicial order, or regulation then You must: (a) comply with+the terms of this License to the maximum extent possible; and (b)+describe the limitations and the code they affect. Such description must+be placed in a text file included with all distributions of the Covered+Software under this License. Except to the extent prohibited by statute+or regulation, such description must be sufficiently detailed for a+recipient of ordinary skill to be able to understand it.++5. Termination+--------------++5.1. The rights granted under this License will terminate automatically+if You fail to comply with any of its terms. However, if You become+compliant, then the rights granted under this License from a particular+Contributor are reinstated (a) provisionally, unless and until such+Contributor explicitly and finally terminates Your grants, and (b) on an+ongoing basis, if such Contributor fails to notify You of the+non-compliance by some reasonable means prior to 60 days after You have+come back into compliance. Moreover, Your grants from a particular+Contributor are reinstated on an ongoing basis if such Contributor+notifies You of the non-compliance by some reasonable means, this is the+first time You have received notice of non-compliance with this License+from such Contributor, and You become compliant prior to 30 days after+Your receipt of the notice.++5.2. If You initiate litigation against any entity by asserting a patent+infringement claim (excluding declaratory judgment actions,+counter-claims, and cross-claims) alleging that a Contributor Version+directly or indirectly infringes any patent, then the rights granted to+You by any and all Contributors for the Covered Software under Section+2.1 of this License shall terminate.++5.3. In the event of termination under Sections 5.1 or 5.2 above, all+end user license agreements (excluding distributors and resellers) which+have been validly granted by You or Your distributors under this License+prior to termination shall survive termination.++************************************************************************+* *+* 6. Disclaimer of Warranty *+* ------------------------- *+* *+* Covered Software is provided under this License on an "as is" *+* basis, without warranty of any kind, either expressed, implied, or *+* statutory, including, without limitation, warranties that the *+* Covered Software is free of defects, merchantable, fit for a *+* particular purpose or non-infringing. The entire risk as to the *+* quality and performance of the Covered Software is with You. *+* Should any Covered Software prove defective in any respect, You *+* (not any Contributor) assume the cost of any necessary servicing, *+* repair, or correction. This disclaimer of warranty constitutes an *+* essential part of this License. No use of any Covered Software is *+* authorized under this License except under this disclaimer. *+* *+************************************************************************++************************************************************************+* *+* 7. Limitation of Liability *+* -------------------------- *+* *+* Under no circumstances and under no legal theory, whether tort *+* (including negligence), contract, or otherwise, shall any *+* Contributor, or anyone who distributes Covered Software as *+* permitted above, be liable to You for any direct, indirect, *+* special, incidental, or consequential damages of any character *+* including, without limitation, damages for lost profits, loss of *+* goodwill, work stoppage, computer failure or malfunction, or any *+* and all other commercial damages or losses, even if such party *+* shall have been informed of the possibility of such damages. This *+* limitation of liability shall not apply to liability for death or *+* personal injury resulting from such party's negligence to the *+* extent applicable law prohibits such limitation. Some *+* jurisdictions do not allow the exclusion or limitation of *+* incidental or consequential damages, so this exclusion and *+* limitation may not apply to You. *+* *+************************************************************************++8. Litigation+-------------++Any litigation relating to this License may be brought only in the+courts of a jurisdiction where the defendant maintains its principal+place of business and such litigation shall be governed by laws of that+jurisdiction, without reference to its conflict-of-law provisions.+Nothing in this Section shall prevent a party's ability to bring+cross-claims or counter-claims.++9. Miscellaneous+----------------++This License represents the complete agreement concerning the subject+matter hereof. If any provision of this License is held to be+unenforceable, such provision shall be reformed only to the extent+necessary to make it enforceable. Any law or regulation which provides+that the language of a contract shall be construed against the drafter+shall not be used to construe this License against a Contributor.++10. Versions of the License+---------------------------++10.1. New Versions++Mozilla Foundation is the license steward. Except as provided in Section+10.3, no one other than the license steward has the right to modify or+publish new versions of this License. Each version will be given a+distinguishing version number.++10.2. Effect of New Versions++You may distribute the Covered Software under the terms of the version+of the License under which You originally received the Covered Software,+or under the terms of any subsequent version published by the license+steward.++10.3. Modified Versions++If you create software not governed by this License, and you want to+create a new license for such software, you may create and use a+modified version of this License if you rename the license and remove+any references to the name of the license steward (except to note that+such modified license differs from this License).++10.4. Distributing Source Code Form that is Incompatible With Secondary+Licenses++If You choose to distribute Source Code Form that is Incompatible With+Secondary Licenses under the terms of this version of the License, the+notice described in Exhibit B of this License must be attached.++Exhibit A - Source Code Form License Notice+-------------------------------------------++ This Source Code Form is subject to the terms of the Mozilla Public+ License, v. 2.0. If a copy of the MPL was not distributed with this+ file, You can obtain one at http://mozilla.org/MPL/2.0/.++If it is not possible or desirable to put the notice in a particular+file, then You may include the notice in a location (such as a LICENSE+file in a relevant directory) where a recipient would be likely to look+for such a notice.++You may add additional accurate notices of copyright ownership.
+ README.md view
@@ -0,0 +1,28 @@+# gogol-accesscontextmanager++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version++`0.3.0`+++## Description++A client library for the Google Access Context Manager.+++## Contribute++For any problems, comments, or feedback please create an issue [here on GitHub](https://github.com/brendanhay/gogol/issues).++> _Note:_ this library is an auto-generated Haskell package. Please see `gogol-gen` for more information.+++## Licence++`gogol-accesscontextmanager` is released under the [Mozilla Public License Version 2.0](http://www.mozilla.org/MPL/).
+ Setup.hs view
@@ -0,0 +1,2 @@+import Distribution.Simple+main = defaultMain
+ gen/Network/Google/AccessContextManager.hs view
@@ -0,0 +1,252 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}++-- |+-- Module : Network.Google.AccessContextManager+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- An API for setting attribute based access control to requests to GCP+-- services.+--+-- /See:/ <https://cloud.google.com/access-context-manager/docs/reference/rest/ Access Context Manager API Reference>+module Network.Google.AccessContextManager+ (+ -- * Service Configuration+ accessContextManagerService++ -- * OAuth Scopes+ , cloudPlatformScope++ -- * API Declaration+ , AccessContextManagerAPI++ -- * Resources++ -- ** accesscontextmanager.accessPolicies.accessLevels.create+ , module Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.Create++ -- ** accesscontextmanager.accessPolicies.accessLevels.delete+ , module Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.Delete++ -- ** accesscontextmanager.accessPolicies.accessLevels.get+ , module Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.Get++ -- ** accesscontextmanager.accessPolicies.accessLevels.list+ , module Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.List++ -- ** accesscontextmanager.accessPolicies.accessLevels.patch+ , module Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.Patch++ -- ** accesscontextmanager.accessPolicies.create+ , module Network.Google.Resource.AccessContextManager.AccessPolicies.Create++ -- ** accesscontextmanager.accessPolicies.delete+ , module Network.Google.Resource.AccessContextManager.AccessPolicies.Delete++ -- ** accesscontextmanager.accessPolicies.get+ , module Network.Google.Resource.AccessContextManager.AccessPolicies.Get++ -- ** accesscontextmanager.accessPolicies.list+ , module Network.Google.Resource.AccessContextManager.AccessPolicies.List++ -- ** accesscontextmanager.accessPolicies.patch+ , module Network.Google.Resource.AccessContextManager.AccessPolicies.Patch++ -- ** accesscontextmanager.accessPolicies.servicePerimeters.create+ , module Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.Create++ -- ** accesscontextmanager.accessPolicies.servicePerimeters.delete+ , module Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.Delete++ -- ** accesscontextmanager.accessPolicies.servicePerimeters.get+ , module Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.Get++ -- ** accesscontextmanager.accessPolicies.servicePerimeters.list+ , module Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.List++ -- ** accesscontextmanager.accessPolicies.servicePerimeters.patch+ , module Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.Patch++ -- ** accesscontextmanager.operations.get+ , module Network.Google.Resource.AccessContextManager.Operations.Get++ -- * Types++ -- ** Status+ , Status+ , status+ , sDetails+ , sCode+ , sMessage++ -- ** BasicLevel+ , BasicLevel+ , basicLevel+ , blConditions+ , blCombiningFunction++ -- ** AccessLevel+ , AccessLevel+ , accessLevel+ , alBasic+ , alUpdateTime+ , alName+ , alTitle+ , alDescription+ , alCreateTime++ -- ** BasicLevelCombiningFunction+ , BasicLevelCombiningFunction (..)++ -- ** ServicePerimeterConfig+ , ServicePerimeterConfig+ , servicePerimeterConfig+ , spcUnrestrictedServices+ , spcResources+ , spcRestrictedServices+ , spcAccessLevels++ -- ** Operation+ , Operation+ , operation+ , oDone+ , oError+ , oResponse+ , oName+ , oMetadata++ -- ** ServicePerimeterPerimeterType+ , ServicePerimeterPerimeterType (..)++ -- ** OSConstraintOSType+ , OSConstraintOSType (..)++ -- ** ServicePerimeter+ , ServicePerimeter+ , servicePerimeter+ , spStatus+ , spPerimeterType+ , spUpdateTime+ , spName+ , spTitle+ , spDescription+ , spCreateTime++ -- ** ListAccessPoliciesResponse+ , ListAccessPoliciesResponse+ , listAccessPoliciesResponse+ , laprNextPageToken+ , laprAccessPolicies++ -- ** StatusDetailsItem+ , StatusDetailsItem+ , statusDetailsItem+ , sdiAddtional++ -- ** OSConstraint+ , OSConstraint+ , osConstraint+ , ocOSType+ , ocMinimumVersion++ -- ** AccessPolicy+ , AccessPolicy+ , accessPolicy+ , apParent+ , apUpdateTime+ , apName+ , apTitle+ , apCreateTime++ -- ** Xgafv+ , Xgafv (..)++ -- ** ListServicePerimetersResponse+ , ListServicePerimetersResponse+ , listServicePerimetersResponse+ , lsprNextPageToken+ , lsprServicePerimeters++ -- ** ListAccessLevelsResponse+ , ListAccessLevelsResponse+ , listAccessLevelsResponse+ , lalrNextPageToken+ , lalrAccessLevels++ -- ** OperationMetadata+ , OperationMetadata+ , operationMetadata+ , omAddtional++ -- ** DevicePolicy+ , DevicePolicy+ , devicePolicy+ , dpOSConstraints+ , dpRequireScreenlock+ , dpAllowedEncryptionStatuses+ , dpAllowedDeviceManagementLevels++ -- ** Condition+ , Condition+ , condition+ , cMembers+ , cNegate+ , cIPSubnetworks+ , cDevicePolicy+ , cRequiredAccessLevels++ -- ** OperationResponse+ , OperationResponse+ , operationResponse+ , orAddtional+ ) where++import Network.Google.AccessContextManager.Types+import Network.Google.Prelude+import Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.Create+import Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.Delete+import Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.Get+import Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.List+import Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.Patch+import Network.Google.Resource.AccessContextManager.AccessPolicies.Create+import Network.Google.Resource.AccessContextManager.AccessPolicies.Delete+import Network.Google.Resource.AccessContextManager.AccessPolicies.Get+import Network.Google.Resource.AccessContextManager.AccessPolicies.List+import Network.Google.Resource.AccessContextManager.AccessPolicies.Patch+import Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.Create+import Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.Delete+import Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.Get+import Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.List+import Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.Patch+import Network.Google.Resource.AccessContextManager.Operations.Get++{- $resources+TODO+-}++-- | Represents the entirety of the methods and resources available for the Access Context Manager API service.+type AccessContextManagerAPI =+ AccessPoliciesServicePerimetersListResource :<|>+ AccessPoliciesServicePerimetersPatchResource+ :<|> AccessPoliciesServicePerimetersGetResource+ :<|> AccessPoliciesServicePerimetersCreateResource+ :<|> AccessPoliciesServicePerimetersDeleteResource+ :<|> AccessPoliciesAccessLevelsListResource+ :<|> AccessPoliciesAccessLevelsPatchResource+ :<|> AccessPoliciesAccessLevelsGetResource+ :<|> AccessPoliciesAccessLevelsCreateResource+ :<|> AccessPoliciesAccessLevelsDeleteResource+ :<|> AccessPoliciesListResource+ :<|> AccessPoliciesPatchResource+ :<|> AccessPoliciesGetResource+ :<|> AccessPoliciesCreateResource+ :<|> AccessPoliciesDeleteResource+ :<|> OperationsGetResource
+ gen/Network/Google/AccessContextManager/Types.hs view
@@ -0,0 +1,167 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.AccessContextManager.Types+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.Google.AccessContextManager.Types+ (+ -- * Service Configuration+ accessContextManagerService++ -- * OAuth Scopes+ , cloudPlatformScope++ -- * Status+ , Status+ , status+ , sDetails+ , sCode+ , sMessage++ -- * BasicLevel+ , BasicLevel+ , basicLevel+ , blConditions+ , blCombiningFunction++ -- * AccessLevel+ , AccessLevel+ , accessLevel+ , alBasic+ , alUpdateTime+ , alName+ , alTitle+ , alDescription+ , alCreateTime++ -- * BasicLevelCombiningFunction+ , BasicLevelCombiningFunction (..)++ -- * ServicePerimeterConfig+ , ServicePerimeterConfig+ , servicePerimeterConfig+ , spcUnrestrictedServices+ , spcResources+ , spcRestrictedServices+ , spcAccessLevels++ -- * Operation+ , Operation+ , operation+ , oDone+ , oError+ , oResponse+ , oName+ , oMetadata++ -- * ServicePerimeterPerimeterType+ , ServicePerimeterPerimeterType (..)++ -- * OSConstraintOSType+ , OSConstraintOSType (..)++ -- * ServicePerimeter+ , ServicePerimeter+ , servicePerimeter+ , spStatus+ , spPerimeterType+ , spUpdateTime+ , spName+ , spTitle+ , spDescription+ , spCreateTime++ -- * ListAccessPoliciesResponse+ , ListAccessPoliciesResponse+ , listAccessPoliciesResponse+ , laprNextPageToken+ , laprAccessPolicies++ -- * StatusDetailsItem+ , StatusDetailsItem+ , statusDetailsItem+ , sdiAddtional++ -- * OSConstraint+ , OSConstraint+ , osConstraint+ , ocOSType+ , ocMinimumVersion++ -- * AccessPolicy+ , AccessPolicy+ , accessPolicy+ , apParent+ , apUpdateTime+ , apName+ , apTitle+ , apCreateTime++ -- * Xgafv+ , Xgafv (..)++ -- * ListServicePerimetersResponse+ , ListServicePerimetersResponse+ , listServicePerimetersResponse+ , lsprNextPageToken+ , lsprServicePerimeters++ -- * ListAccessLevelsResponse+ , ListAccessLevelsResponse+ , listAccessLevelsResponse+ , lalrNextPageToken+ , lalrAccessLevels++ -- * OperationMetadata+ , OperationMetadata+ , operationMetadata+ , omAddtional++ -- * DevicePolicy+ , DevicePolicy+ , devicePolicy+ , dpOSConstraints+ , dpRequireScreenlock+ , dpAllowedEncryptionStatuses+ , dpAllowedDeviceManagementLevels++ -- * Condition+ , Condition+ , condition+ , cMembers+ , cNegate+ , cIPSubnetworks+ , cDevicePolicy+ , cRequiredAccessLevels++ -- * OperationResponse+ , OperationResponse+ , operationResponse+ , orAddtional+ ) where++import Network.Google.AccessContextManager.Types.Product+import Network.Google.AccessContextManager.Types.Sum+import Network.Google.Prelude++-- | Default request referring to version 'v1beta' of the Access Context Manager API. This contains the host and root path used as a starting point for constructing service requests.+accessContextManagerService :: ServiceConfig+accessContextManagerService+ = defaultService+ (ServiceId "accesscontextmanager:v1beta")+ "accesscontextmanager.googleapis.com"++-- | View and manage your data across Google Cloud Platform services+cloudPlatformScope :: Proxy '["https://www.googleapis.com/auth/cloud-platform"]+cloudPlatformScope = Proxy;
+ gen/Network/Google/AccessContextManager/Types/Product.hs view
@@ -0,0 +1,1207 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.AccessContextManager.Types.Product+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.Google.AccessContextManager.Types.Product where++import Network.Google.AccessContextManager.Types.Sum+import Network.Google.Prelude++-- | The \`Status\` type defines a logical error model that is suitable for+-- different programming environments, including REST APIs and RPC APIs. It+-- is used by [gRPC](https:\/\/github.com\/grpc). The error model is+-- designed to be: - Simple to use and understand for most users - Flexible+-- enough to meet unexpected needs # Overview The \`Status\` message+-- contains three pieces of data: error code, error message, and error+-- details. The error code should be an enum value of google.rpc.Code, but+-- it may accept additional error codes if needed. The error message should+-- be a developer-facing English message that helps developers *understand*+-- and *resolve* the error. If a localized user-facing error message is+-- needed, put the localized message in the error details or localize it in+-- the client. The optional error details may contain arbitrary information+-- about the error. There is a predefined set of error detail types in the+-- package \`google.rpc\` that can be used for common error conditions. #+-- Language mapping The \`Status\` message is the logical representation of+-- the error model, but it is not necessarily the actual wire format. When+-- the \`Status\` message is exposed in different client libraries and+-- different wire protocols, it can be mapped differently. For example, it+-- will likely be mapped to some exceptions in Java, but more likely mapped+-- to some error codes in C. # Other uses The error model and the+-- \`Status\` message can be used in a variety of environments, either with+-- or without APIs, to provide a consistent developer experience across+-- different environments. Example uses of this error model include: -+-- Partial errors. If a service needs to return partial errors to the+-- client, it may embed the \`Status\` in the normal response to indicate+-- the partial errors. - Workflow errors. A typical workflow has multiple+-- steps. Each step may have a \`Status\` message for error reporting. -+-- Batch operations. If a client uses batch request and batch response, the+-- \`Status\` message should be used directly inside batch response, one+-- for each error sub-response. - Asynchronous operations. If an API call+-- embeds asynchronous operation results in its response, the status of+-- those operations should be represented directly using the \`Status\`+-- message. - Logging. If some API errors are stored in logs, the message+-- \`Status\` could be used directly after any stripping needed for+-- security\/privacy reasons.+--+-- /See:/ 'status' smart constructor.+data Status = Status'+ { _sDetails :: !(Maybe [StatusDetailsItem])+ , _sCode :: !(Maybe (Textual Int32))+ , _sMessage :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Status' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sDetails'+--+-- * 'sCode'+--+-- * 'sMessage'+status+ :: Status+status =+ Status'+ { _sDetails = Nothing+ , _sCode = Nothing+ , _sMessage = Nothing+ }++-- | A list of messages that carry the error details. There is a common set+-- of message types for APIs to use.+sDetails :: Lens' Status [StatusDetailsItem]+sDetails+ = lens _sDetails (\ s a -> s{_sDetails = a}) .+ _Default+ . _Coerce++-- | The status code, which should be an enum value of google.rpc.Code.+sCode :: Lens' Status (Maybe Int32)+sCode+ = lens _sCode (\ s a -> s{_sCode = a}) .+ mapping _Coerce++-- | A developer-facing error message, which should be in English. Any+-- user-facing error message should be localized and sent in the+-- google.rpc.Status.details field, or localized by the client.+sMessage :: Lens' Status (Maybe Text)+sMessage = lens _sMessage (\ s a -> s{_sMessage = a})++instance FromJSON Status where+ parseJSON+ = withObject "Status"+ (\ o ->+ Status' <$>+ (o .:? "details" .!= mempty) <*> (o .:? "code") <*>+ (o .:? "message"))++instance ToJSON Status where+ toJSON Status'{..}+ = object+ (catMaybes+ [("details" .=) <$> _sDetails,+ ("code" .=) <$> _sCode,+ ("message" .=) <$> _sMessage])++-- | \`BasicLevel\` is an \`AccessLevel\` using a set of recommended+-- features.+--+-- /See:/ 'basicLevel' smart constructor.+data BasicLevel = BasicLevel'+ { _blConditions :: !(Maybe [Condition])+ , _blCombiningFunction :: !(Maybe BasicLevelCombiningFunction)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'BasicLevel' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'blConditions'+--+-- * 'blCombiningFunction'+basicLevel+ :: BasicLevel+basicLevel =+ BasicLevel'+ { _blConditions = Nothing+ , _blCombiningFunction = Nothing+ }++-- | Required. A list of requirements for the \`AccessLevel\` to be granted.+blConditions :: Lens' BasicLevel [Condition]+blConditions+ = lens _blConditions (\ s a -> s{_blConditions = a})+ . _Default+ . _Coerce++-- | How the \`conditions\` list should be combined to determine if a request+-- is granted this \`AccessLevel\`. If AND is used, each \`Condition\` in+-- \`conditions\` must be satisfied for the \`AccessLevel\` to be applied.+-- If OR is used, at least one \`Condition\` in \`conditions\` must be+-- satisfied for the \`AccessLevel\` to be applied. Default behavior is+-- AND.+blCombiningFunction :: Lens' BasicLevel (Maybe BasicLevelCombiningFunction)+blCombiningFunction+ = lens _blCombiningFunction+ (\ s a -> s{_blCombiningFunction = a})++instance FromJSON BasicLevel where+ parseJSON+ = withObject "BasicLevel"+ (\ o ->+ BasicLevel' <$>+ (o .:? "conditions" .!= mempty) <*>+ (o .:? "combiningFunction"))++instance ToJSON BasicLevel where+ toJSON BasicLevel'{..}+ = object+ (catMaybes+ [("conditions" .=) <$> _blConditions,+ ("combiningFunction" .=) <$> _blCombiningFunction])++-- | An \`AccessLevel\` is a label that can be applied to requests to GCP+-- services, along with a list of requirements necessary for the label to+-- be applied.+--+-- /See:/ 'accessLevel' smart constructor.+data AccessLevel = AccessLevel'+ { _alBasic :: !(Maybe BasicLevel)+ , _alUpdateTime :: !(Maybe DateTime')+ , _alName :: !(Maybe Text)+ , _alTitle :: !(Maybe Text)+ , _alDescription :: !(Maybe Text)+ , _alCreateTime :: !(Maybe DateTime')+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccessLevel' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'alBasic'+--+-- * 'alUpdateTime'+--+-- * 'alName'+--+-- * 'alTitle'+--+-- * 'alDescription'+--+-- * 'alCreateTime'+accessLevel+ :: AccessLevel+accessLevel =+ AccessLevel'+ { _alBasic = Nothing+ , _alUpdateTime = Nothing+ , _alName = Nothing+ , _alTitle = Nothing+ , _alDescription = Nothing+ , _alCreateTime = Nothing+ }++-- | A \`BasicLevel\` composed of \`Conditions\`.+alBasic :: Lens' AccessLevel (Maybe BasicLevel)+alBasic = lens _alBasic (\ s a -> s{_alBasic = a})++-- | Output only. Time the \`AccessLevel\` was updated in UTC.+alUpdateTime :: Lens' AccessLevel (Maybe UTCTime)+alUpdateTime+ = lens _alUpdateTime (\ s a -> s{_alUpdateTime = a})+ . mapping _DateTime++-- | Required. Resource name for the Access Level. The \`short_name\`+-- component must begin with a letter and only include alphanumeric and+-- \'_\'. Format:+-- \`accessPolicies\/{policy_id}\/accessLevels\/{short_name}\`+alName :: Lens' AccessLevel (Maybe Text)+alName = lens _alName (\ s a -> s{_alName = a})++-- | Human readable title. Must be unique within the Policy.+alTitle :: Lens' AccessLevel (Maybe Text)+alTitle = lens _alTitle (\ s a -> s{_alTitle = a})++-- | Description of the \`AccessLevel\` and its use. Does not affect+-- behavior.+alDescription :: Lens' AccessLevel (Maybe Text)+alDescription+ = lens _alDescription+ (\ s a -> s{_alDescription = a})++-- | Output only. Time the \`AccessLevel\` was created in UTC.+alCreateTime :: Lens' AccessLevel (Maybe UTCTime)+alCreateTime+ = lens _alCreateTime (\ s a -> s{_alCreateTime = a})+ . mapping _DateTime++instance FromJSON AccessLevel where+ parseJSON+ = withObject "AccessLevel"+ (\ o ->+ AccessLevel' <$>+ (o .:? "basic") <*> (o .:? "updateTime") <*>+ (o .:? "name")+ <*> (o .:? "title")+ <*> (o .:? "description")+ <*> (o .:? "createTime"))++instance ToJSON AccessLevel where+ toJSON AccessLevel'{..}+ = object+ (catMaybes+ [("basic" .=) <$> _alBasic,+ ("updateTime" .=) <$> _alUpdateTime,+ ("name" .=) <$> _alName, ("title" .=) <$> _alTitle,+ ("description" .=) <$> _alDescription,+ ("createTime" .=) <$> _alCreateTime])++-- | \`ServicePerimeterConfig\` specifies a set of GCP resources that+-- describe specific Service Perimeter configuration.+--+-- /See:/ 'servicePerimeterConfig' smart constructor.+data ServicePerimeterConfig = ServicePerimeterConfig'+ { _spcUnrestrictedServices :: !(Maybe [Text])+ , _spcResources :: !(Maybe [Text])+ , _spcRestrictedServices :: !(Maybe [Text])+ , _spcAccessLevels :: !(Maybe [Text])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ServicePerimeterConfig' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'spcUnrestrictedServices'+--+-- * 'spcResources'+--+-- * 'spcRestrictedServices'+--+-- * 'spcAccessLevels'+servicePerimeterConfig+ :: ServicePerimeterConfig+servicePerimeterConfig =+ ServicePerimeterConfig'+ { _spcUnrestrictedServices = Nothing+ , _spcResources = Nothing+ , _spcRestrictedServices = Nothing+ , _spcAccessLevels = Nothing+ }++-- | GCP services that are not subject to the Service Perimeter restrictions.+-- May contain a list of services or a single wildcard \"*\". For example,+-- if \`logging.googleapis.com\` is unrestricted, users can access logs+-- inside the perimeter as if the perimeter doesn\'t exist, and it also+-- means VMs inside the perimeter can access logs outside the perimeter.+-- The wildcard means that unless explicitly specified by+-- \"restricted_services\" list, any service is treated as unrestricted.+-- One of the fields \"restricted_services\", \"unrestricted_services\"+-- must contain a wildcard \"*\", otherwise the Service Perimeter+-- specification is invalid. It also means that both field being empty is+-- invalid as well. \"unrestricted_services\" can be empty if and only if+-- \"restricted_services\" list contains a \"*\" wildcard.+spcUnrestrictedServices :: Lens' ServicePerimeterConfig [Text]+spcUnrestrictedServices+ = lens _spcUnrestrictedServices+ (\ s a -> s{_spcUnrestrictedServices = a})+ . _Default+ . _Coerce++-- | A list of GCP resources that are inside of the service perimeter.+-- Currently only projects are allowed. Format:+-- \`projects\/{project_number}\`+spcResources :: Lens' ServicePerimeterConfig [Text]+spcResources+ = lens _spcResources (\ s a -> s{_spcResources = a})+ . _Default+ . _Coerce++-- | GCP services that are subject to the Service Perimeter restrictions. May+-- contain a list of services or a single wildcard \"*\". For example, if+-- \`storage.googleapis.com\` is specified, access to the storage buckets+-- inside the perimeter must meet the perimeter\'s access restrictions.+-- Wildcard means that unless explicitly specified by+-- \"unrestricted_services\" list, any service is treated as restricted.+-- One of the fields \"restricted_services\", \"unrestricted_services\"+-- must contain a wildcard \"*\", otherwise the Service Perimeter+-- specification is invalid. It also means that both field being empty is+-- invalid as well. \"restricted_services\" can be empty if and only if+-- \"unrestricted_services\" list contains a \"*\" wildcard.+spcRestrictedServices :: Lens' ServicePerimeterConfig [Text]+spcRestrictedServices+ = lens _spcRestrictedServices+ (\ s a -> s{_spcRestrictedServices = a})+ . _Default+ . _Coerce++-- | A list of \`AccessLevel\` resource names that allow resources within the+-- \`ServicePerimeter\` to be accessed from the internet. \`AccessLevels\`+-- listed must be in the same policy as this \`ServicePerimeter\`.+-- Referencing a nonexistent \`AccessLevel\` is a syntax error. If no+-- \`AccessLevel\` names are listed, resources within the perimeter can+-- only be accessed via GCP calls with request origins within the+-- perimeter. Example:+-- \`\"accessPolicies\/MY_POLICY\/accessLevels\/MY_LEVEL\"\`. For Service+-- Perimeter Bridge, must be empty.+spcAccessLevels :: Lens' ServicePerimeterConfig [Text]+spcAccessLevels+ = lens _spcAccessLevels+ (\ s a -> s{_spcAccessLevels = a})+ . _Default+ . _Coerce++instance FromJSON ServicePerimeterConfig where+ parseJSON+ = withObject "ServicePerimeterConfig"+ (\ o ->+ ServicePerimeterConfig' <$>+ (o .:? "unrestrictedServices" .!= mempty) <*>+ (o .:? "resources" .!= mempty)+ <*> (o .:? "restrictedServices" .!= mempty)+ <*> (o .:? "accessLevels" .!= mempty))++instance ToJSON ServicePerimeterConfig where+ toJSON ServicePerimeterConfig'{..}+ = object+ (catMaybes+ [("unrestrictedServices" .=) <$>+ _spcUnrestrictedServices,+ ("resources" .=) <$> _spcResources,+ ("restrictedServices" .=) <$> _spcRestrictedServices,+ ("accessLevels" .=) <$> _spcAccessLevels])++-- | This resource represents a long-running operation that is the result of+-- a network API call.+--+-- /See:/ 'operation' smart constructor.+data Operation = Operation'+ { _oDone :: !(Maybe Bool)+ , _oError :: !(Maybe Status)+ , _oResponse :: !(Maybe OperationResponse)+ , _oName :: !(Maybe Text)+ , _oMetadata :: !(Maybe OperationMetadata)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Operation' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'oDone'+--+-- * 'oError'+--+-- * 'oResponse'+--+-- * 'oName'+--+-- * 'oMetadata'+operation+ :: Operation+operation =+ Operation'+ { _oDone = Nothing+ , _oError = Nothing+ , _oResponse = Nothing+ , _oName = Nothing+ , _oMetadata = Nothing+ }++-- | If the value is \`false\`, it means the operation is still in progress.+-- If \`true\`, the operation is completed, and either \`error\` or+-- \`response\` is available.+oDone :: Lens' Operation (Maybe Bool)+oDone = lens _oDone (\ s a -> s{_oDone = a})++-- | The error result of the operation in case of failure or cancellation.+oError :: Lens' Operation (Maybe Status)+oError = lens _oError (\ s a -> s{_oError = a})++-- | The normal response of the operation in case of success. If the original+-- method returns no data on success, such as \`Delete\`, the response is+-- \`google.protobuf.Empty\`. If the original method is standard+-- \`Get\`\/\`Create\`\/\`Update\`, the response should be the resource.+-- For other methods, the response should have the type \`XxxResponse\`,+-- where \`Xxx\` is the original method name. For example, if the original+-- method name is \`TakeSnapshot()\`, the inferred response type is+-- \`TakeSnapshotResponse\`.+oResponse :: Lens' Operation (Maybe OperationResponse)+oResponse+ = lens _oResponse (\ s a -> s{_oResponse = a})++-- | The server-assigned name, which is only unique within the same service+-- that originally returns it. If you use the default HTTP mapping, the+-- \`name\` should have the format of \`operations\/some\/unique\/name\`.+oName :: Lens' Operation (Maybe Text)+oName = lens _oName (\ s a -> s{_oName = a})++-- | Service-specific metadata associated with the operation. It typically+-- contains progress information and common metadata such as create time.+-- Some services might not provide such metadata. Any method that returns a+-- long-running operation should document the metadata type, if any.+oMetadata :: Lens' Operation (Maybe OperationMetadata)+oMetadata+ = lens _oMetadata (\ s a -> s{_oMetadata = a})++instance FromJSON Operation where+ parseJSON+ = withObject "Operation"+ (\ o ->+ Operation' <$>+ (o .:? "done") <*> (o .:? "error") <*>+ (o .:? "response")+ <*> (o .:? "name")+ <*> (o .:? "metadata"))++instance ToJSON Operation where+ toJSON Operation'{..}+ = object+ (catMaybes+ [("done" .=) <$> _oDone, ("error" .=) <$> _oError,+ ("response" .=) <$> _oResponse,+ ("name" .=) <$> _oName,+ ("metadata" .=) <$> _oMetadata])++-- | \`ServicePerimeter\` describes a set of GCP resources which can freely+-- import and export data amongst themselves, but not export outside of the+-- \`ServicePerimeter\`. If a request with a source within this+-- \`ServicePerimeter\` has a target outside of the \`ServicePerimeter\`,+-- the request will be blocked. Otherwise the request is allowed. There are+-- two types of Service Perimeter - Regular and Bridge. Regular Service+-- Perimeters cannot overlap, a single GCP project can only belong to a+-- single regular Service Perimeter. Service Perimeter Bridges can contain+-- only GCP projects as members, a single GCP project may belong to+-- multiple Service Perimeter Bridges.+--+-- /See:/ 'servicePerimeter' smart constructor.+data ServicePerimeter = ServicePerimeter'+ { _spStatus :: !(Maybe ServicePerimeterConfig)+ , _spPerimeterType :: !(Maybe ServicePerimeterPerimeterType)+ , _spUpdateTime :: !(Maybe DateTime')+ , _spName :: !(Maybe Text)+ , _spTitle :: !(Maybe Text)+ , _spDescription :: !(Maybe Text)+ , _spCreateTime :: !(Maybe DateTime')+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ServicePerimeter' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'spStatus'+--+-- * 'spPerimeterType'+--+-- * 'spUpdateTime'+--+-- * 'spName'+--+-- * 'spTitle'+--+-- * 'spDescription'+--+-- * 'spCreateTime'+servicePerimeter+ :: ServicePerimeter+servicePerimeter =+ ServicePerimeter'+ { _spStatus = Nothing+ , _spPerimeterType = Nothing+ , _spUpdateTime = Nothing+ , _spName = Nothing+ , _spTitle = Nothing+ , _spDescription = Nothing+ , _spCreateTime = Nothing+ }++-- | Current ServicePerimeter configuration. Specifies sets of resources,+-- restricted\/unrestricted services and access levels that determine+-- perimeter content and boundaries.+spStatus :: Lens' ServicePerimeter (Maybe ServicePerimeterConfig)+spStatus = lens _spStatus (\ s a -> s{_spStatus = a})++-- | Perimeter type indicator. A single project is allowed to be a member of+-- single regular perimeter, but multiple service perimeter bridges. A+-- project cannot be a included in a perimeter bridge without being+-- included in regular perimeter. For perimeter bridges,+-- restricted\/unrestricted service lists as well as access lists must be+-- empty.+spPerimeterType :: Lens' ServicePerimeter (Maybe ServicePerimeterPerimeterType)+spPerimeterType+ = lens _spPerimeterType+ (\ s a -> s{_spPerimeterType = a})++-- | Output only. Time the \`ServicePerimeter\` was updated in UTC.+spUpdateTime :: Lens' ServicePerimeter (Maybe UTCTime)+spUpdateTime+ = lens _spUpdateTime (\ s a -> s{_spUpdateTime = a})+ . mapping _DateTime++-- | Required. Resource name for the ServicePerimeter. The \`short_name\`+-- component must begin with a letter and only include alphanumeric and+-- \'_\'. Format:+-- \`accessPolicies\/{policy_id}\/servicePerimeters\/{short_name}\`+spName :: Lens' ServicePerimeter (Maybe Text)+spName = lens _spName (\ s a -> s{_spName = a})++-- | Human readable title. Must be unique within the Policy.+spTitle :: Lens' ServicePerimeter (Maybe Text)+spTitle = lens _spTitle (\ s a -> s{_spTitle = a})++-- | Description of the \`ServicePerimeter\` and its use. Does not affect+-- behavior.+spDescription :: Lens' ServicePerimeter (Maybe Text)+spDescription+ = lens _spDescription+ (\ s a -> s{_spDescription = a})++-- | Output only. Time the \`ServicePerimeter\` was created in UTC.+spCreateTime :: Lens' ServicePerimeter (Maybe UTCTime)+spCreateTime+ = lens _spCreateTime (\ s a -> s{_spCreateTime = a})+ . mapping _DateTime++instance FromJSON ServicePerimeter where+ parseJSON+ = withObject "ServicePerimeter"+ (\ o ->+ ServicePerimeter' <$>+ (o .:? "status") <*> (o .:? "perimeterType") <*>+ (o .:? "updateTime")+ <*> (o .:? "name")+ <*> (o .:? "title")+ <*> (o .:? "description")+ <*> (o .:? "createTime"))++instance ToJSON ServicePerimeter where+ toJSON ServicePerimeter'{..}+ = object+ (catMaybes+ [("status" .=) <$> _spStatus,+ ("perimeterType" .=) <$> _spPerimeterType,+ ("updateTime" .=) <$> _spUpdateTime,+ ("name" .=) <$> _spName, ("title" .=) <$> _spTitle,+ ("description" .=) <$> _spDescription,+ ("createTime" .=) <$> _spCreateTime])++-- | A response to \`ListAccessPoliciesRequest\`.+--+-- /See:/ 'listAccessPoliciesResponse' smart constructor.+data ListAccessPoliciesResponse = ListAccessPoliciesResponse'+ { _laprNextPageToken :: !(Maybe Text)+ , _laprAccessPolicies :: !(Maybe [AccessPolicy])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListAccessPoliciesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'laprNextPageToken'+--+-- * 'laprAccessPolicies'+listAccessPoliciesResponse+ :: ListAccessPoliciesResponse+listAccessPoliciesResponse =+ ListAccessPoliciesResponse'+ { _laprNextPageToken = Nothing+ , _laprAccessPolicies = Nothing+ }++-- | The pagination token to retrieve the next page of results. If the value+-- is empty, no further results remain.+laprNextPageToken :: Lens' ListAccessPoliciesResponse (Maybe Text)+laprNextPageToken+ = lens _laprNextPageToken+ (\ s a -> s{_laprNextPageToken = a})++-- | List of the AccessPolicy instances.+laprAccessPolicies :: Lens' ListAccessPoliciesResponse [AccessPolicy]+laprAccessPolicies+ = lens _laprAccessPolicies+ (\ s a -> s{_laprAccessPolicies = a})+ . _Default+ . _Coerce++instance FromJSON ListAccessPoliciesResponse where+ parseJSON+ = withObject "ListAccessPoliciesResponse"+ (\ o ->+ ListAccessPoliciesResponse' <$>+ (o .:? "nextPageToken") <*>+ (o .:? "accessPolicies" .!= mempty))++instance ToJSON ListAccessPoliciesResponse where+ toJSON ListAccessPoliciesResponse'{..}+ = object+ (catMaybes+ [("nextPageToken" .=) <$> _laprNextPageToken,+ ("accessPolicies" .=) <$> _laprAccessPolicies])++--+-- /See:/ 'statusDetailsItem' smart constructor.+newtype StatusDetailsItem = StatusDetailsItem'+ { _sdiAddtional :: HashMap Text JSONValue+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'StatusDetailsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sdiAddtional'+statusDetailsItem+ :: HashMap Text JSONValue -- ^ 'sdiAddtional'+ -> StatusDetailsItem+statusDetailsItem pSdiAddtional_ =+ StatusDetailsItem'+ { _sdiAddtional = _Coerce # pSdiAddtional_+ }++-- | Properties of the object. Contains field \'type with type URL.+sdiAddtional :: Lens' StatusDetailsItem (HashMap Text JSONValue)+sdiAddtional+ = lens _sdiAddtional (\ s a -> s{_sdiAddtional = a})+ . _Coerce++instance FromJSON StatusDetailsItem where+ parseJSON+ = withObject "StatusDetailsItem"+ (\ o -> StatusDetailsItem' <$> (parseJSONObject o))++instance ToJSON StatusDetailsItem where+ toJSON = toJSON . _sdiAddtional++-- | A restriction on the OS type and version of devices making requests.+--+-- /See:/ 'osConstraint' smart constructor.+data OSConstraint = OSConstraint'+ { _ocOSType :: !(Maybe OSConstraintOSType)+ , _ocMinimumVersion :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'OSConstraint' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ocOSType'+--+-- * 'ocMinimumVersion'+osConstraint+ :: OSConstraint+osConstraint =+ OSConstraint'+ { _ocOSType = Nothing+ , _ocMinimumVersion = Nothing+ }++-- | Required. The allowed OS type.+ocOSType :: Lens' OSConstraint (Maybe OSConstraintOSType)+ocOSType = lens _ocOSType (\ s a -> s{_ocOSType = a})++-- | The minimum allowed OS version. If not set, any version of this OS+-- satisfies the constraint. Format: \`\"major.minor.patch\"\`. Examples:+-- \`\"10.5.301\"\`, \`\"9.2.1\"\`.+ocMinimumVersion :: Lens' OSConstraint (Maybe Text)+ocMinimumVersion+ = lens _ocMinimumVersion+ (\ s a -> s{_ocMinimumVersion = a})++instance FromJSON OSConstraint where+ parseJSON+ = withObject "OSConstraint"+ (\ o ->+ OSConstraint' <$>+ (o .:? "osType") <*> (o .:? "minimumVersion"))++instance ToJSON OSConstraint where+ toJSON OSConstraint'{..}+ = object+ (catMaybes+ [("osType" .=) <$> _ocOSType,+ ("minimumVersion" .=) <$> _ocMinimumVersion])++-- | \`AccessPolicy\` is a container for \`AccessLevels\` (which define the+-- necessary attributes to use GCP services) and \`ServicePerimeters\`+-- (which define regions of services able to freely pass data within a+-- perimeter). An access policy is globally visible within an organization,+-- and the restrictions it specifies apply to all projects within an+-- organization.+--+-- /See:/ 'accessPolicy' smart constructor.+data AccessPolicy = AccessPolicy'+ { _apParent :: !(Maybe Text)+ , _apUpdateTime :: !(Maybe DateTime')+ , _apName :: !(Maybe Text)+ , _apTitle :: !(Maybe Text)+ , _apCreateTime :: !(Maybe DateTime')+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccessPolicy' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'apParent'+--+-- * 'apUpdateTime'+--+-- * 'apName'+--+-- * 'apTitle'+--+-- * 'apCreateTime'+accessPolicy+ :: AccessPolicy+accessPolicy =+ AccessPolicy'+ { _apParent = Nothing+ , _apUpdateTime = Nothing+ , _apName = Nothing+ , _apTitle = Nothing+ , _apCreateTime = Nothing+ }++-- | Required. The parent of this \`AccessPolicy\` in the Cloud Resource+-- Hierarchy. Currently immutable once created. Format:+-- \`organizations\/{organization_id}\`+apParent :: Lens' AccessPolicy (Maybe Text)+apParent = lens _apParent (\ s a -> s{_apParent = a})++-- | Output only. Time the \`AccessPolicy\` was updated in UTC.+apUpdateTime :: Lens' AccessPolicy (Maybe UTCTime)+apUpdateTime+ = lens _apUpdateTime (\ s a -> s{_apUpdateTime = a})+ . mapping _DateTime++-- | Output only. Resource name of the \`AccessPolicy\`. Format:+-- \`accessPolicies\/{policy_id}\`+apName :: Lens' AccessPolicy (Maybe Text)+apName = lens _apName (\ s a -> s{_apName = a})++-- | Required. Human readable title. Does not affect behavior.+apTitle :: Lens' AccessPolicy (Maybe Text)+apTitle = lens _apTitle (\ s a -> s{_apTitle = a})++-- | Output only. Time the \`AccessPolicy\` was created in UTC.+apCreateTime :: Lens' AccessPolicy (Maybe UTCTime)+apCreateTime+ = lens _apCreateTime (\ s a -> s{_apCreateTime = a})+ . mapping _DateTime++instance FromJSON AccessPolicy where+ parseJSON+ = withObject "AccessPolicy"+ (\ o ->+ AccessPolicy' <$>+ (o .:? "parent") <*> (o .:? "updateTime") <*>+ (o .:? "name")+ <*> (o .:? "title")+ <*> (o .:? "createTime"))++instance ToJSON AccessPolicy where+ toJSON AccessPolicy'{..}+ = object+ (catMaybes+ [("parent" .=) <$> _apParent,+ ("updateTime" .=) <$> _apUpdateTime,+ ("name" .=) <$> _apName, ("title" .=) <$> _apTitle,+ ("createTime" .=) <$> _apCreateTime])++-- | A response to \`ListServicePerimetersRequest\`.+--+-- /See:/ 'listServicePerimetersResponse' smart constructor.+data ListServicePerimetersResponse = ListServicePerimetersResponse'+ { _lsprNextPageToken :: !(Maybe Text)+ , _lsprServicePerimeters :: !(Maybe [ServicePerimeter])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListServicePerimetersResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lsprNextPageToken'+--+-- * 'lsprServicePerimeters'+listServicePerimetersResponse+ :: ListServicePerimetersResponse+listServicePerimetersResponse =+ ListServicePerimetersResponse'+ { _lsprNextPageToken = Nothing+ , _lsprServicePerimeters = Nothing+ }++-- | The pagination token to retrieve the next page of results. If the value+-- is empty, no further results remain.+lsprNextPageToken :: Lens' ListServicePerimetersResponse (Maybe Text)+lsprNextPageToken+ = lens _lsprNextPageToken+ (\ s a -> s{_lsprNextPageToken = a})++-- | List of the Service Perimeter instances.+lsprServicePerimeters :: Lens' ListServicePerimetersResponse [ServicePerimeter]+lsprServicePerimeters+ = lens _lsprServicePerimeters+ (\ s a -> s{_lsprServicePerimeters = a})+ . _Default+ . _Coerce++instance FromJSON ListServicePerimetersResponse where+ parseJSON+ = withObject "ListServicePerimetersResponse"+ (\ o ->+ ListServicePerimetersResponse' <$>+ (o .:? "nextPageToken") <*>+ (o .:? "servicePerimeters" .!= mempty))++instance ToJSON ListServicePerimetersResponse where+ toJSON ListServicePerimetersResponse'{..}+ = object+ (catMaybes+ [("nextPageToken" .=) <$> _lsprNextPageToken,+ ("servicePerimeters" .=) <$> _lsprServicePerimeters])++-- | A response to \`ListAccessLevelsRequest\`.+--+-- /See:/ 'listAccessLevelsResponse' smart constructor.+data ListAccessLevelsResponse = ListAccessLevelsResponse'+ { _lalrNextPageToken :: !(Maybe Text)+ , _lalrAccessLevels :: !(Maybe [AccessLevel])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListAccessLevelsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lalrNextPageToken'+--+-- * 'lalrAccessLevels'+listAccessLevelsResponse+ :: ListAccessLevelsResponse+listAccessLevelsResponse =+ ListAccessLevelsResponse'+ { _lalrNextPageToken = Nothing+ , _lalrAccessLevels = Nothing+ }++-- | The pagination token to retrieve the next page of results. If the value+-- is empty, no further results remain.+lalrNextPageToken :: Lens' ListAccessLevelsResponse (Maybe Text)+lalrNextPageToken+ = lens _lalrNextPageToken+ (\ s a -> s{_lalrNextPageToken = a})++-- | List of the Access Level instances.+lalrAccessLevels :: Lens' ListAccessLevelsResponse [AccessLevel]+lalrAccessLevels+ = lens _lalrAccessLevels+ (\ s a -> s{_lalrAccessLevels = a})+ . _Default+ . _Coerce++instance FromJSON ListAccessLevelsResponse where+ parseJSON+ = withObject "ListAccessLevelsResponse"+ (\ o ->+ ListAccessLevelsResponse' <$>+ (o .:? "nextPageToken") <*>+ (o .:? "accessLevels" .!= mempty))++instance ToJSON ListAccessLevelsResponse where+ toJSON ListAccessLevelsResponse'{..}+ = object+ (catMaybes+ [("nextPageToken" .=) <$> _lalrNextPageToken,+ ("accessLevels" .=) <$> _lalrAccessLevels])++-- | Service-specific metadata associated with the operation. It typically+-- contains progress information and common metadata such as create time.+-- Some services might not provide such metadata. Any method that returns a+-- long-running operation should document the metadata type, if any.+--+-- /See:/ 'operationMetadata' smart constructor.+newtype OperationMetadata = OperationMetadata'+ { _omAddtional :: HashMap Text JSONValue+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'OperationMetadata' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'omAddtional'+operationMetadata+ :: HashMap Text JSONValue -- ^ 'omAddtional'+ -> OperationMetadata+operationMetadata pOmAddtional_ =+ OperationMetadata'+ { _omAddtional = _Coerce # pOmAddtional_+ }++-- | Properties of the object. Contains field \'type with type URL.+omAddtional :: Lens' OperationMetadata (HashMap Text JSONValue)+omAddtional+ = lens _omAddtional (\ s a -> s{_omAddtional = a}) .+ _Coerce++instance FromJSON OperationMetadata where+ parseJSON+ = withObject "OperationMetadata"+ (\ o -> OperationMetadata' <$> (parseJSONObject o))++instance ToJSON OperationMetadata where+ toJSON = toJSON . _omAddtional++-- | \`DevicePolicy\` specifies device specific restrictions necessary to+-- acquire a given access level. A \`DevicePolicy\` specifies requirements+-- for requests from devices to be granted access levels, it does not do+-- any enforcement on the device. \`DevicePolicy\` acts as an AND over all+-- specified fields, and each repeated field is an OR over its elements.+-- Any unset fields are ignored. For example, if the proto is { os_type :+-- DESKTOP_WINDOWS, os_type : DESKTOP_LINUX, encryption_status: ENCRYPTED},+-- then the DevicePolicy will be true for requests originating from+-- encrypted Linux desktops and encrypted Windows desktops.+--+-- /See:/ 'devicePolicy' smart constructor.+data DevicePolicy = DevicePolicy'+ { _dpOSConstraints :: !(Maybe [OSConstraint])+ , _dpRequireScreenlock :: !(Maybe Bool)+ , _dpAllowedEncryptionStatuses :: !(Maybe [Text])+ , _dpAllowedDeviceManagementLevels :: !(Maybe [Text])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DevicePolicy' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dpOSConstraints'+--+-- * 'dpRequireScreenlock'+--+-- * 'dpAllowedEncryptionStatuses'+--+-- * 'dpAllowedDeviceManagementLevels'+devicePolicy+ :: DevicePolicy+devicePolicy =+ DevicePolicy'+ { _dpOSConstraints = Nothing+ , _dpRequireScreenlock = Nothing+ , _dpAllowedEncryptionStatuses = Nothing+ , _dpAllowedDeviceManagementLevels = Nothing+ }++-- | Allowed OS versions, an empty list allows all types and all versions.+dpOSConstraints :: Lens' DevicePolicy [OSConstraint]+dpOSConstraints+ = lens _dpOSConstraints+ (\ s a -> s{_dpOSConstraints = a})+ . _Default+ . _Coerce++-- | Whether or not screenlock is required for the DevicePolicy to be true.+-- Defaults to \`false\`.+dpRequireScreenlock :: Lens' DevicePolicy (Maybe Bool)+dpRequireScreenlock+ = lens _dpRequireScreenlock+ (\ s a -> s{_dpRequireScreenlock = a})++-- | Allowed encryptions statuses, an empty list allows all statuses.+dpAllowedEncryptionStatuses :: Lens' DevicePolicy [Text]+dpAllowedEncryptionStatuses+ = lens _dpAllowedEncryptionStatuses+ (\ s a -> s{_dpAllowedEncryptionStatuses = a})+ . _Default+ . _Coerce++-- | Allowed device management levels, an empty list allows all management+-- levels.+dpAllowedDeviceManagementLevels :: Lens' DevicePolicy [Text]+dpAllowedDeviceManagementLevels+ = lens _dpAllowedDeviceManagementLevels+ (\ s a -> s{_dpAllowedDeviceManagementLevels = a})+ . _Default+ . _Coerce++instance FromJSON DevicePolicy where+ parseJSON+ = withObject "DevicePolicy"+ (\ o ->+ DevicePolicy' <$>+ (o .:? "osConstraints" .!= mempty) <*>+ (o .:? "requireScreenlock")+ <*> (o .:? "allowedEncryptionStatuses" .!= mempty)+ <*>+ (o .:? "allowedDeviceManagementLevels" .!= mempty))++instance ToJSON DevicePolicy where+ toJSON DevicePolicy'{..}+ = object+ (catMaybes+ [("osConstraints" .=) <$> _dpOSConstraints,+ ("requireScreenlock" .=) <$> _dpRequireScreenlock,+ ("allowedEncryptionStatuses" .=) <$>+ _dpAllowedEncryptionStatuses,+ ("allowedDeviceManagementLevels" .=) <$>+ _dpAllowedDeviceManagementLevels])++-- | A condition necessary for an \`AccessLevel\` to be granted. The+-- Condition is an AND over its fields. So a Condition is true if: 1) the+-- request IP is from one of the listed subnetworks AND 2) the originating+-- device complies with the listed device policy AND 3) all listed access+-- levels are granted AND 4) the request was sent at a time allowed by the+-- DateTimeRestriction.+--+-- /See:/ 'condition' smart constructor.+data Condition = Condition'+ { _cMembers :: !(Maybe [Text])+ , _cNegate :: !(Maybe Bool)+ , _cIPSubnetworks :: !(Maybe [Text])+ , _cDevicePolicy :: !(Maybe DevicePolicy)+ , _cRequiredAccessLevels :: !(Maybe [Text])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Condition' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cMembers'+--+-- * 'cNegate'+--+-- * 'cIPSubnetworks'+--+-- * 'cDevicePolicy'+--+-- * 'cRequiredAccessLevels'+condition+ :: Condition+condition =+ Condition'+ { _cMembers = Nothing+ , _cNegate = Nothing+ , _cIPSubnetworks = Nothing+ , _cDevicePolicy = Nothing+ , _cRequiredAccessLevels = Nothing+ }++-- | The signed-in user originating the request must be a part of one of the+-- provided members. Syntax: \`user:{emailid}\` \`group:{emailid}\`+-- \`serviceAccount:{emailid}\` If not specified, a request may come from+-- any user (logged in\/not logged in, not present in any groups, etc.).+cMembers :: Lens' Condition [Text]+cMembers+ = lens _cMembers (\ s a -> s{_cMembers = a}) .+ _Default+ . _Coerce++-- | Whether to negate the Condition. If true, the Condition becomes a NAND+-- over its non-empty fields, each field must be false for the Condition+-- overall to be satisfied. Defaults to false.+cNegate :: Lens' Condition (Maybe Bool)+cNegate = lens _cNegate (\ s a -> s{_cNegate = a})++-- | CIDR block IP subnetwork specification. May be IPv4 or IPv6. Note that+-- for a CIDR IP address block, the specified IP address portion must be+-- properly truncated (i.e. all the host bits must be zero) or the input is+-- considered malformed. For example, \"192.0.2.0\/24\" is accepted but+-- \"192.0.2.1\/24\" is not. Similarly, for IPv6, \"2001:db8::\/32\" is+-- accepted whereas \"2001:db8::1\/32\" is not. The originating IP of a+-- request must be in one of the listed subnets in order for this Condition+-- to be true. If empty, all IP addresses are allowed.+cIPSubnetworks :: Lens' Condition [Text]+cIPSubnetworks+ = lens _cIPSubnetworks+ (\ s a -> s{_cIPSubnetworks = a})+ . _Default+ . _Coerce++-- | Device specific restrictions, all restrictions must hold for the+-- Condition to be true. If not specified, all devices are allowed.+cDevicePolicy :: Lens' Condition (Maybe DevicePolicy)+cDevicePolicy+ = lens _cDevicePolicy+ (\ s a -> s{_cDevicePolicy = a})++-- | A list of other access levels defined in the same \`Policy\`, referenced+-- by resource name. Referencing an \`AccessLevel\` which does not exist is+-- an error. All access levels listed must be granted for the Condition to+-- be true. Example:+-- \"\`accessPolicies\/MY_POLICY\/accessLevels\/LEVEL_NAME\"\`+cRequiredAccessLevels :: Lens' Condition [Text]+cRequiredAccessLevels+ = lens _cRequiredAccessLevels+ (\ s a -> s{_cRequiredAccessLevels = a})+ . _Default+ . _Coerce++instance FromJSON Condition where+ parseJSON+ = withObject "Condition"+ (\ o ->+ Condition' <$>+ (o .:? "members" .!= mempty) <*> (o .:? "negate") <*>+ (o .:? "ipSubnetworks" .!= mempty)+ <*> (o .:? "devicePolicy")+ <*> (o .:? "requiredAccessLevels" .!= mempty))++instance ToJSON Condition where+ toJSON Condition'{..}+ = object+ (catMaybes+ [("members" .=) <$> _cMembers,+ ("negate" .=) <$> _cNegate,+ ("ipSubnetworks" .=) <$> _cIPSubnetworks,+ ("devicePolicy" .=) <$> _cDevicePolicy,+ ("requiredAccessLevels" .=) <$>+ _cRequiredAccessLevels])++-- | The normal response of the operation in case of success. If the original+-- method returns no data on success, such as \`Delete\`, the response is+-- \`google.protobuf.Empty\`. If the original method is standard+-- \`Get\`\/\`Create\`\/\`Update\`, the response should be the resource.+-- For other methods, the response should have the type \`XxxResponse\`,+-- where \`Xxx\` is the original method name. For example, if the original+-- method name is \`TakeSnapshot()\`, the inferred response type is+-- \`TakeSnapshotResponse\`.+--+-- /See:/ 'operationResponse' smart constructor.+newtype OperationResponse = OperationResponse'+ { _orAddtional :: HashMap Text JSONValue+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'OperationResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'orAddtional'+operationResponse+ :: HashMap Text JSONValue -- ^ 'orAddtional'+ -> OperationResponse+operationResponse pOrAddtional_ =+ OperationResponse'+ { _orAddtional = _Coerce # pOrAddtional_+ }++-- | Properties of the object. Contains field \'type with type URL.+orAddtional :: Lens' OperationResponse (HashMap Text JSONValue)+orAddtional+ = lens _orAddtional (\ s a -> s{_orAddtional = a}) .+ _Coerce++instance FromJSON OperationResponse where+ parseJSON+ = withObject "OperationResponse"+ (\ o -> OperationResponse' <$> (parseJSONObject o))++instance ToJSON OperationResponse where+ toJSON = toJSON . _orAddtional
+ gen/Network/Google/AccessContextManager/Types/Sum.hs view
@@ -0,0 +1,170 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.AccessContextManager.Types.Sum+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.Google.AccessContextManager.Types.Sum where++import Network.Google.Prelude hiding (Bytes)++-- | How the \`conditions\` list should be combined to determine if a request+-- is granted this \`AccessLevel\`. If AND is used, each \`Condition\` in+-- \`conditions\` must be satisfied for the \`AccessLevel\` to be applied.+-- If OR is used, at least one \`Condition\` in \`conditions\` must be+-- satisfied for the \`AccessLevel\` to be applied. Default behavior is+-- AND.+data BasicLevelCombiningFunction+ = And+ -- ^ @AND@+ -- All \`Conditions\` must be true for the \`BasicLevel\` to be true.+ | OR+ -- ^ @OR@+ -- If at least one \`Condition\` is true, then the \`BasicLevel\` is true.+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable BasicLevelCombiningFunction++instance FromHttpApiData BasicLevelCombiningFunction where+ parseQueryParam = \case+ "AND" -> Right And+ "OR" -> Right OR+ x -> Left ("Unable to parse BasicLevelCombiningFunction from: " <> x)++instance ToHttpApiData BasicLevelCombiningFunction where+ toQueryParam = \case+ And -> "AND"+ OR -> "OR"++instance FromJSON BasicLevelCombiningFunction where+ parseJSON = parseJSONText "BasicLevelCombiningFunction"++instance ToJSON BasicLevelCombiningFunction where+ toJSON = toJSONText++-- | Perimeter type indicator. A single project is allowed to be a member of+-- single regular perimeter, but multiple service perimeter bridges. A+-- project cannot be a included in a perimeter bridge without being+-- included in regular perimeter. For perimeter bridges,+-- restricted\/unrestricted service lists as well as access lists must be+-- empty.+data ServicePerimeterPerimeterType+ = PerimeterTypeRegular+ -- ^ @PERIMETER_TYPE_REGULAR@+ -- Regular Perimeter.+ | PerimeterTypeBridge+ -- ^ @PERIMETER_TYPE_BRIDGE@+ -- Perimeter Bridge.+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable ServicePerimeterPerimeterType++instance FromHttpApiData ServicePerimeterPerimeterType where+ parseQueryParam = \case+ "PERIMETER_TYPE_REGULAR" -> Right PerimeterTypeRegular+ "PERIMETER_TYPE_BRIDGE" -> Right PerimeterTypeBridge+ x -> Left ("Unable to parse ServicePerimeterPerimeterType from: " <> x)++instance ToHttpApiData ServicePerimeterPerimeterType where+ toQueryParam = \case+ PerimeterTypeRegular -> "PERIMETER_TYPE_REGULAR"+ PerimeterTypeBridge -> "PERIMETER_TYPE_BRIDGE"++instance FromJSON ServicePerimeterPerimeterType where+ parseJSON = parseJSONText "ServicePerimeterPerimeterType"++instance ToJSON ServicePerimeterPerimeterType where+ toJSON = toJSONText++-- | Required. The allowed OS type.+data OSConstraintOSType+ = OSUnspecified+ -- ^ @OS_UNSPECIFIED@+ -- The operating system of the device is not specified or not known.+ | DesktopMAC+ -- ^ @DESKTOP_MAC@+ -- A desktop Mac operating system.+ | DesktopWindows+ -- ^ @DESKTOP_WINDOWS@+ -- A desktop Windows operating system.+ | DesktopLinux+ -- ^ @DESKTOP_LINUX@+ -- A desktop Linux operating system.+ | DesktopChromeOS+ -- ^ @DESKTOP_CHROME_OS@+ -- A desktop ChromeOS operating system.+ | Android+ -- ^ @ANDROID@+ -- An Android operating system.+ | Ios+ -- ^ @IOS@+ -- An iOS operating system.+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable OSConstraintOSType++instance FromHttpApiData OSConstraintOSType where+ parseQueryParam = \case+ "OS_UNSPECIFIED" -> Right OSUnspecified+ "DESKTOP_MAC" -> Right DesktopMAC+ "DESKTOP_WINDOWS" -> Right DesktopWindows+ "DESKTOP_LINUX" -> Right DesktopLinux+ "DESKTOP_CHROME_OS" -> Right DesktopChromeOS+ "ANDROID" -> Right Android+ "IOS" -> Right Ios+ x -> Left ("Unable to parse OSConstraintOSType from: " <> x)++instance ToHttpApiData OSConstraintOSType where+ toQueryParam = \case+ OSUnspecified -> "OS_UNSPECIFIED"+ DesktopMAC -> "DESKTOP_MAC"+ DesktopWindows -> "DESKTOP_WINDOWS"+ DesktopLinux -> "DESKTOP_LINUX"+ DesktopChromeOS -> "DESKTOP_CHROME_OS"+ Android -> "ANDROID"+ Ios -> "IOS"++instance FromJSON OSConstraintOSType where+ parseJSON = parseJSONText "OSConstraintOSType"++instance ToJSON OSConstraintOSType where+ toJSON = toJSONText++-- | V1 error format.+data Xgafv+ = X1+ -- ^ @1@+ -- v1 error format+ | X2+ -- ^ @2@+ -- v2 error format+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable Xgafv++instance FromHttpApiData Xgafv where+ parseQueryParam = \case+ "1" -> Right X1+ "2" -> Right X2+ x -> Left ("Unable to parse Xgafv from: " <> x)++instance ToHttpApiData Xgafv where+ toQueryParam = \case+ X1 -> "1"+ X2 -> "2"++instance FromJSON Xgafv where+ parseJSON = parseJSONText "Xgafv"++instance ToJSON Xgafv where+ toJSON = toJSONText
+ gen/Network/Google/Resource/AccessContextManager/AccessPolicies/AccessLevels/Create.hs view
@@ -0,0 +1,170 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.Create+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Create an Access Level. The longrunning operation from this RPC will+-- have a successful status once the Access Level has propagated to+-- long-lasting storage. Access Levels containing errors will result in an+-- error response for the first error encountered.+--+-- /See:/ <https://cloud.google.com/access-context-manager/docs/reference/rest/ Access Context Manager API Reference> for @accesscontextmanager.accessPolicies.accessLevels.create@.+module Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.Create+ (+ -- * REST Resource+ AccessPoliciesAccessLevelsCreateResource++ -- * Creating a Request+ , accessPoliciesAccessLevelsCreate+ , AccessPoliciesAccessLevelsCreate++ -- * Request Lenses+ , apalcParent+ , apalcXgafv+ , apalcUploadProtocol+ , apalcAccessToken+ , apalcUploadType+ , apalcPayload+ , apalcCallback+ ) where++import Network.Google.AccessContextManager.Types+import Network.Google.Prelude++-- | A resource alias for @accesscontextmanager.accessPolicies.accessLevels.create@ method which the+-- 'AccessPoliciesAccessLevelsCreate' request conforms to.+type AccessPoliciesAccessLevelsCreateResource =+ "v1beta" :>+ Capture "parent" Text :>+ "accessLevels" :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] AccessLevel :> Post '[JSON] Operation++-- | Create an Access Level. The longrunning operation from this RPC will+-- have a successful status once the Access Level has propagated to+-- long-lasting storage. Access Levels containing errors will result in an+-- error response for the first error encountered.+--+-- /See:/ 'accessPoliciesAccessLevelsCreate' smart constructor.+data AccessPoliciesAccessLevelsCreate = AccessPoliciesAccessLevelsCreate'+ { _apalcParent :: !Text+ , _apalcXgafv :: !(Maybe Xgafv)+ , _apalcUploadProtocol :: !(Maybe Text)+ , _apalcAccessToken :: !(Maybe Text)+ , _apalcUploadType :: !(Maybe Text)+ , _apalcPayload :: !AccessLevel+ , _apalcCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccessPoliciesAccessLevelsCreate' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'apalcParent'+--+-- * 'apalcXgafv'+--+-- * 'apalcUploadProtocol'+--+-- * 'apalcAccessToken'+--+-- * 'apalcUploadType'+--+-- * 'apalcPayload'+--+-- * 'apalcCallback'+accessPoliciesAccessLevelsCreate+ :: Text -- ^ 'apalcParent'+ -> AccessLevel -- ^ 'apalcPayload'+ -> AccessPoliciesAccessLevelsCreate+accessPoliciesAccessLevelsCreate pApalcParent_ pApalcPayload_ =+ AccessPoliciesAccessLevelsCreate'+ { _apalcParent = pApalcParent_+ , _apalcXgafv = Nothing+ , _apalcUploadProtocol = Nothing+ , _apalcAccessToken = Nothing+ , _apalcUploadType = Nothing+ , _apalcPayload = pApalcPayload_+ , _apalcCallback = Nothing+ }++-- | Required. Resource name for the access policy which owns this Access+-- Level. Format: \`accessPolicies\/{policy_id}\`+apalcParent :: Lens' AccessPoliciesAccessLevelsCreate Text+apalcParent+ = lens _apalcParent (\ s a -> s{_apalcParent = a})++-- | V1 error format.+apalcXgafv :: Lens' AccessPoliciesAccessLevelsCreate (Maybe Xgafv)+apalcXgafv+ = lens _apalcXgafv (\ s a -> s{_apalcXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+apalcUploadProtocol :: Lens' AccessPoliciesAccessLevelsCreate (Maybe Text)+apalcUploadProtocol+ = lens _apalcUploadProtocol+ (\ s a -> s{_apalcUploadProtocol = a})++-- | OAuth access token.+apalcAccessToken :: Lens' AccessPoliciesAccessLevelsCreate (Maybe Text)+apalcAccessToken+ = lens _apalcAccessToken+ (\ s a -> s{_apalcAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+apalcUploadType :: Lens' AccessPoliciesAccessLevelsCreate (Maybe Text)+apalcUploadType+ = lens _apalcUploadType+ (\ s a -> s{_apalcUploadType = a})++-- | Multipart request metadata.+apalcPayload :: Lens' AccessPoliciesAccessLevelsCreate AccessLevel+apalcPayload+ = lens _apalcPayload (\ s a -> s{_apalcPayload = a})++-- | JSONP+apalcCallback :: Lens' AccessPoliciesAccessLevelsCreate (Maybe Text)+apalcCallback+ = lens _apalcCallback+ (\ s a -> s{_apalcCallback = a})++instance GoogleRequest+ AccessPoliciesAccessLevelsCreate where+ type Rs AccessPoliciesAccessLevelsCreate = Operation+ type Scopes AccessPoliciesAccessLevelsCreate =+ '["https://www.googleapis.com/auth/cloud-platform"]+ requestClient AccessPoliciesAccessLevelsCreate'{..}+ = go _apalcParent _apalcXgafv _apalcUploadProtocol+ _apalcAccessToken+ _apalcUploadType+ _apalcCallback+ (Just AltJSON)+ _apalcPayload+ accessContextManagerService+ where go+ = buildClient+ (Proxy ::+ Proxy AccessPoliciesAccessLevelsCreateResource)+ mempty
+ gen/Network/Google/Resource/AccessContextManager/AccessPolicies/AccessLevels/Delete.hs view
@@ -0,0 +1,154 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.Delete+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Delete an Access Level by resource name. The longrunning operation from+-- this RPC will have a successful status once the Access Level has been+-- removed from long-lasting storage.+--+-- /See:/ <https://cloud.google.com/access-context-manager/docs/reference/rest/ Access Context Manager API Reference> for @accesscontextmanager.accessPolicies.accessLevels.delete@.+module Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.Delete+ (+ -- * REST Resource+ AccessPoliciesAccessLevelsDeleteResource++ -- * Creating a Request+ , accessPoliciesAccessLevelsDelete+ , AccessPoliciesAccessLevelsDelete++ -- * Request Lenses+ , apaldXgafv+ , apaldUploadProtocol+ , apaldAccessToken+ , apaldUploadType+ , apaldName+ , apaldCallback+ ) where++import Network.Google.AccessContextManager.Types+import Network.Google.Prelude++-- | A resource alias for @accesscontextmanager.accessPolicies.accessLevels.delete@ method which the+-- 'AccessPoliciesAccessLevelsDelete' request conforms to.+type AccessPoliciesAccessLevelsDeleteResource =+ "v1beta" :>+ Capture "name" Text :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] Operation++-- | Delete an Access Level by resource name. The longrunning operation from+-- this RPC will have a successful status once the Access Level has been+-- removed from long-lasting storage.+--+-- /See:/ 'accessPoliciesAccessLevelsDelete' smart constructor.+data AccessPoliciesAccessLevelsDelete = AccessPoliciesAccessLevelsDelete'+ { _apaldXgafv :: !(Maybe Xgafv)+ , _apaldUploadProtocol :: !(Maybe Text)+ , _apaldAccessToken :: !(Maybe Text)+ , _apaldUploadType :: !(Maybe Text)+ , _apaldName :: !Text+ , _apaldCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccessPoliciesAccessLevelsDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'apaldXgafv'+--+-- * 'apaldUploadProtocol'+--+-- * 'apaldAccessToken'+--+-- * 'apaldUploadType'+--+-- * 'apaldName'+--+-- * 'apaldCallback'+accessPoliciesAccessLevelsDelete+ :: Text -- ^ 'apaldName'+ -> AccessPoliciesAccessLevelsDelete+accessPoliciesAccessLevelsDelete pApaldName_ =+ AccessPoliciesAccessLevelsDelete'+ { _apaldXgafv = Nothing+ , _apaldUploadProtocol = Nothing+ , _apaldAccessToken = Nothing+ , _apaldUploadType = Nothing+ , _apaldName = pApaldName_+ , _apaldCallback = Nothing+ }++-- | V1 error format.+apaldXgafv :: Lens' AccessPoliciesAccessLevelsDelete (Maybe Xgafv)+apaldXgafv+ = lens _apaldXgafv (\ s a -> s{_apaldXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+apaldUploadProtocol :: Lens' AccessPoliciesAccessLevelsDelete (Maybe Text)+apaldUploadProtocol+ = lens _apaldUploadProtocol+ (\ s a -> s{_apaldUploadProtocol = a})++-- | OAuth access token.+apaldAccessToken :: Lens' AccessPoliciesAccessLevelsDelete (Maybe Text)+apaldAccessToken+ = lens _apaldAccessToken+ (\ s a -> s{_apaldAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+apaldUploadType :: Lens' AccessPoliciesAccessLevelsDelete (Maybe Text)+apaldUploadType+ = lens _apaldUploadType+ (\ s a -> s{_apaldUploadType = a})++-- | Required. Resource name for the Access Level. Format:+-- \`accessPolicies\/{policy_id}\/accessLevels\/{access_level_id}\`+apaldName :: Lens' AccessPoliciesAccessLevelsDelete Text+apaldName+ = lens _apaldName (\ s a -> s{_apaldName = a})++-- | JSONP+apaldCallback :: Lens' AccessPoliciesAccessLevelsDelete (Maybe Text)+apaldCallback+ = lens _apaldCallback+ (\ s a -> s{_apaldCallback = a})++instance GoogleRequest+ AccessPoliciesAccessLevelsDelete where+ type Rs AccessPoliciesAccessLevelsDelete = Operation+ type Scopes AccessPoliciesAccessLevelsDelete =+ '["https://www.googleapis.com/auth/cloud-platform"]+ requestClient AccessPoliciesAccessLevelsDelete'{..}+ = go _apaldName _apaldXgafv _apaldUploadProtocol+ _apaldAccessToken+ _apaldUploadType+ _apaldCallback+ (Just AltJSON)+ accessContextManagerService+ where go+ = buildClient+ (Proxy ::+ Proxy AccessPoliciesAccessLevelsDeleteResource)+ mempty
+ gen/Network/Google/Resource/AccessContextManager/AccessPolicies/AccessLevels/Get.hs view
@@ -0,0 +1,168 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.Get+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Get an Access Level by resource name.+--+-- /See:/ <https://cloud.google.com/access-context-manager/docs/reference/rest/ Access Context Manager API Reference> for @accesscontextmanager.accessPolicies.accessLevels.get@.+module Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.Get+ (+ -- * REST Resource+ AccessPoliciesAccessLevelsGetResource++ -- * Creating a Request+ , accessPoliciesAccessLevelsGet+ , AccessPoliciesAccessLevelsGet++ -- * Request Lenses+ , apalgXgafv+ , apalgUploadProtocol+ , apalgAccessToken+ , apalgUploadType+ , apalgAccessLevelFormat+ , apalgName+ , apalgCallback+ ) where++import Network.Google.AccessContextManager.Types+import Network.Google.Prelude++-- | A resource alias for @accesscontextmanager.accessPolicies.accessLevels.get@ method which the+-- 'AccessPoliciesAccessLevelsGet' request conforms to.+type AccessPoliciesAccessLevelsGetResource =+ "v1beta" :>+ Capture "name" Text :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "accessLevelFormat" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] AccessLevel++-- | Get an Access Level by resource name.+--+-- /See:/ 'accessPoliciesAccessLevelsGet' smart constructor.+data AccessPoliciesAccessLevelsGet = AccessPoliciesAccessLevelsGet'+ { _apalgXgafv :: !(Maybe Xgafv)+ , _apalgUploadProtocol :: !(Maybe Text)+ , _apalgAccessToken :: !(Maybe Text)+ , _apalgUploadType :: !(Maybe Text)+ , _apalgAccessLevelFormat :: !(Maybe Text)+ , _apalgName :: !Text+ , _apalgCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccessPoliciesAccessLevelsGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'apalgXgafv'+--+-- * 'apalgUploadProtocol'+--+-- * 'apalgAccessToken'+--+-- * 'apalgUploadType'+--+-- * 'apalgAccessLevelFormat'+--+-- * 'apalgName'+--+-- * 'apalgCallback'+accessPoliciesAccessLevelsGet+ :: Text -- ^ 'apalgName'+ -> AccessPoliciesAccessLevelsGet+accessPoliciesAccessLevelsGet pApalgName_ =+ AccessPoliciesAccessLevelsGet'+ { _apalgXgafv = Nothing+ , _apalgUploadProtocol = Nothing+ , _apalgAccessToken = Nothing+ , _apalgUploadType = Nothing+ , _apalgAccessLevelFormat = Nothing+ , _apalgName = pApalgName_+ , _apalgCallback = Nothing+ }++-- | V1 error format.+apalgXgafv :: Lens' AccessPoliciesAccessLevelsGet (Maybe Xgafv)+apalgXgafv+ = lens _apalgXgafv (\ s a -> s{_apalgXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+apalgUploadProtocol :: Lens' AccessPoliciesAccessLevelsGet (Maybe Text)+apalgUploadProtocol+ = lens _apalgUploadProtocol+ (\ s a -> s{_apalgUploadProtocol = a})++-- | OAuth access token.+apalgAccessToken :: Lens' AccessPoliciesAccessLevelsGet (Maybe Text)+apalgAccessToken+ = lens _apalgAccessToken+ (\ s a -> s{_apalgAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+apalgUploadType :: Lens' AccessPoliciesAccessLevelsGet (Maybe Text)+apalgUploadType+ = lens _apalgUploadType+ (\ s a -> s{_apalgUploadType = a})++-- | Whether to return \`BasicLevels\` in the Cloud Common Expression+-- Language rather than as \`BasicLevels\`. Defaults to AS_DEFINED, where+-- Access Levels are returned as \`BasicLevels\` or \`CustomLevels\` based+-- on how they were created. If set to CEL, all Access Levels are returned+-- as \`CustomLevels\`. In the CEL case, \`BasicLevels\` are translated to+-- equivalent \`CustomLevels\`.+apalgAccessLevelFormat :: Lens' AccessPoliciesAccessLevelsGet (Maybe Text)+apalgAccessLevelFormat+ = lens _apalgAccessLevelFormat+ (\ s a -> s{_apalgAccessLevelFormat = a})++-- | Required. Resource name for the Access Level. Format:+-- \`accessPolicies\/{policy_id}\/accessLevels\/{access_level_id}\`+apalgName :: Lens' AccessPoliciesAccessLevelsGet Text+apalgName+ = lens _apalgName (\ s a -> s{_apalgName = a})++-- | JSONP+apalgCallback :: Lens' AccessPoliciesAccessLevelsGet (Maybe Text)+apalgCallback+ = lens _apalgCallback+ (\ s a -> s{_apalgCallback = a})++instance GoogleRequest AccessPoliciesAccessLevelsGet+ where+ type Rs AccessPoliciesAccessLevelsGet = AccessLevel+ type Scopes AccessPoliciesAccessLevelsGet =+ '["https://www.googleapis.com/auth/cloud-platform"]+ requestClient AccessPoliciesAccessLevelsGet'{..}+ = go _apalgName _apalgXgafv _apalgUploadProtocol+ _apalgAccessToken+ _apalgUploadType+ _apalgAccessLevelFormat+ _apalgCallback+ (Just AltJSON)+ accessContextManagerService+ where go+ = buildClient+ (Proxy ::+ Proxy AccessPoliciesAccessLevelsGetResource)+ mempty
+ gen/Network/Google/Resource/AccessContextManager/AccessPolicies/AccessLevels/List.hs view
@@ -0,0 +1,196 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.List+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List all Access Levels for an access policy.+--+-- /See:/ <https://cloud.google.com/access-context-manager/docs/reference/rest/ Access Context Manager API Reference> for @accesscontextmanager.accessPolicies.accessLevels.list@.+module Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.List+ (+ -- * REST Resource+ AccessPoliciesAccessLevelsListResource++ -- * Creating a Request+ , accessPoliciesAccessLevelsList+ , AccessPoliciesAccessLevelsList++ -- * Request Lenses+ , apallParent+ , apallXgafv+ , apallUploadProtocol+ , apallAccessToken+ , apallUploadType+ , apallAccessLevelFormat+ , apallPageToken+ , apallPageSize+ , apallCallback+ ) where++import Network.Google.AccessContextManager.Types+import Network.Google.Prelude++-- | A resource alias for @accesscontextmanager.accessPolicies.accessLevels.list@ method which the+-- 'AccessPoliciesAccessLevelsList' request conforms to.+type AccessPoliciesAccessLevelsListResource =+ "v1beta" :>+ Capture "parent" Text :>+ "accessLevels" :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "accessLevelFormat" Text :>+ QueryParam "pageToken" Text :>+ QueryParam "pageSize" (Textual Int32) :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] ListAccessLevelsResponse++-- | List all Access Levels for an access policy.+--+-- /See:/ 'accessPoliciesAccessLevelsList' smart constructor.+data AccessPoliciesAccessLevelsList = AccessPoliciesAccessLevelsList'+ { _apallParent :: !Text+ , _apallXgafv :: !(Maybe Xgafv)+ , _apallUploadProtocol :: !(Maybe Text)+ , _apallAccessToken :: !(Maybe Text)+ , _apallUploadType :: !(Maybe Text)+ , _apallAccessLevelFormat :: !(Maybe Text)+ , _apallPageToken :: !(Maybe Text)+ , _apallPageSize :: !(Maybe (Textual Int32))+ , _apallCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccessPoliciesAccessLevelsList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'apallParent'+--+-- * 'apallXgafv'+--+-- * 'apallUploadProtocol'+--+-- * 'apallAccessToken'+--+-- * 'apallUploadType'+--+-- * 'apallAccessLevelFormat'+--+-- * 'apallPageToken'+--+-- * 'apallPageSize'+--+-- * 'apallCallback'+accessPoliciesAccessLevelsList+ :: Text -- ^ 'apallParent'+ -> AccessPoliciesAccessLevelsList+accessPoliciesAccessLevelsList pApallParent_ =+ AccessPoliciesAccessLevelsList'+ { _apallParent = pApallParent_+ , _apallXgafv = Nothing+ , _apallUploadProtocol = Nothing+ , _apallAccessToken = Nothing+ , _apallUploadType = Nothing+ , _apallAccessLevelFormat = Nothing+ , _apallPageToken = Nothing+ , _apallPageSize = Nothing+ , _apallCallback = Nothing+ }++-- | Required. Resource name for the access policy to list Access Levels+-- from. Format: \`accessPolicies\/{policy_id}\`+apallParent :: Lens' AccessPoliciesAccessLevelsList Text+apallParent+ = lens _apallParent (\ s a -> s{_apallParent = a})++-- | V1 error format.+apallXgafv :: Lens' AccessPoliciesAccessLevelsList (Maybe Xgafv)+apallXgafv+ = lens _apallXgafv (\ s a -> s{_apallXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+apallUploadProtocol :: Lens' AccessPoliciesAccessLevelsList (Maybe Text)+apallUploadProtocol+ = lens _apallUploadProtocol+ (\ s a -> s{_apallUploadProtocol = a})++-- | OAuth access token.+apallAccessToken :: Lens' AccessPoliciesAccessLevelsList (Maybe Text)+apallAccessToken+ = lens _apallAccessToken+ (\ s a -> s{_apallAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+apallUploadType :: Lens' AccessPoliciesAccessLevelsList (Maybe Text)+apallUploadType+ = lens _apallUploadType+ (\ s a -> s{_apallUploadType = a})++-- | Whether to return \`BasicLevels\` in the Cloud Common Expression+-- language, as \`CustomLevels\`, rather than as \`BasicLevels\`. Defaults+-- to returning \`AccessLevels\` in the format they were defined.+apallAccessLevelFormat :: Lens' AccessPoliciesAccessLevelsList (Maybe Text)+apallAccessLevelFormat+ = lens _apallAccessLevelFormat+ (\ s a -> s{_apallAccessLevelFormat = a})++-- | Next page token for the next batch of Access Level instances. Defaults+-- to the first page of results.+apallPageToken :: Lens' AccessPoliciesAccessLevelsList (Maybe Text)+apallPageToken+ = lens _apallPageToken+ (\ s a -> s{_apallPageToken = a})++-- | Number of Access Levels to include in the list. Default 100.+apallPageSize :: Lens' AccessPoliciesAccessLevelsList (Maybe Int32)+apallPageSize+ = lens _apallPageSize+ (\ s a -> s{_apallPageSize = a})+ . mapping _Coerce++-- | JSONP+apallCallback :: Lens' AccessPoliciesAccessLevelsList (Maybe Text)+apallCallback+ = lens _apallCallback+ (\ s a -> s{_apallCallback = a})++instance GoogleRequest AccessPoliciesAccessLevelsList+ where+ type Rs AccessPoliciesAccessLevelsList =+ ListAccessLevelsResponse+ type Scopes AccessPoliciesAccessLevelsList =+ '["https://www.googleapis.com/auth/cloud-platform"]+ requestClient AccessPoliciesAccessLevelsList'{..}+ = go _apallParent _apallXgafv _apallUploadProtocol+ _apallAccessToken+ _apallUploadType+ _apallAccessLevelFormat+ _apallPageToken+ _apallPageSize+ _apallCallback+ (Just AltJSON)+ accessContextManagerService+ where go+ = buildClient+ (Proxy ::+ Proxy AccessPoliciesAccessLevelsListResource)+ mempty
+ gen/Network/Google/Resource/AccessContextManager/AccessPolicies/AccessLevels/Patch.hs view
@@ -0,0 +1,185 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.Patch+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update an Access Level. The longrunning operation from this RPC will+-- have a successful status once the changes to the Access Level have+-- propagated to long-lasting storage. Access Levels containing errors will+-- result in an error response for the first error encountered.+--+-- /See:/ <https://cloud.google.com/access-context-manager/docs/reference/rest/ Access Context Manager API Reference> for @accesscontextmanager.accessPolicies.accessLevels.patch@.+module Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.Patch+ (+ -- * REST Resource+ AccessPoliciesAccessLevelsPatchResource++ -- * Creating a Request+ , accessPoliciesAccessLevelsPatch+ , AccessPoliciesAccessLevelsPatch++ -- * Request Lenses+ , apalpXgafv+ , apalpUploadProtocol+ , apalpUpdateMask+ , apalpAccessToken+ , apalpUploadType+ , apalpPayload+ , apalpName+ , apalpCallback+ ) where++import Network.Google.AccessContextManager.Types+import Network.Google.Prelude++-- | A resource alias for @accesscontextmanager.accessPolicies.accessLevels.patch@ method which the+-- 'AccessPoliciesAccessLevelsPatch' request conforms to.+type AccessPoliciesAccessLevelsPatchResource =+ "v1beta" :>+ Capture "name" Text :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "updateMask" GFieldMask :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] AccessLevel :>+ Patch '[JSON] Operation++-- | Update an Access Level. The longrunning operation from this RPC will+-- have a successful status once the changes to the Access Level have+-- propagated to long-lasting storage. Access Levels containing errors will+-- result in an error response for the first error encountered.+--+-- /See:/ 'accessPoliciesAccessLevelsPatch' smart constructor.+data AccessPoliciesAccessLevelsPatch = AccessPoliciesAccessLevelsPatch'+ { _apalpXgafv :: !(Maybe Xgafv)+ , _apalpUploadProtocol :: !(Maybe Text)+ , _apalpUpdateMask :: !(Maybe GFieldMask)+ , _apalpAccessToken :: !(Maybe Text)+ , _apalpUploadType :: !(Maybe Text)+ , _apalpPayload :: !AccessLevel+ , _apalpName :: !Text+ , _apalpCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccessPoliciesAccessLevelsPatch' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'apalpXgafv'+--+-- * 'apalpUploadProtocol'+--+-- * 'apalpUpdateMask'+--+-- * 'apalpAccessToken'+--+-- * 'apalpUploadType'+--+-- * 'apalpPayload'+--+-- * 'apalpName'+--+-- * 'apalpCallback'+accessPoliciesAccessLevelsPatch+ :: AccessLevel -- ^ 'apalpPayload'+ -> Text -- ^ 'apalpName'+ -> AccessPoliciesAccessLevelsPatch+accessPoliciesAccessLevelsPatch pApalpPayload_ pApalpName_ =+ AccessPoliciesAccessLevelsPatch'+ { _apalpXgafv = Nothing+ , _apalpUploadProtocol = Nothing+ , _apalpUpdateMask = Nothing+ , _apalpAccessToken = Nothing+ , _apalpUploadType = Nothing+ , _apalpPayload = pApalpPayload_+ , _apalpName = pApalpName_+ , _apalpCallback = Nothing+ }++-- | V1 error format.+apalpXgafv :: Lens' AccessPoliciesAccessLevelsPatch (Maybe Xgafv)+apalpXgafv+ = lens _apalpXgafv (\ s a -> s{_apalpXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+apalpUploadProtocol :: Lens' AccessPoliciesAccessLevelsPatch (Maybe Text)+apalpUploadProtocol+ = lens _apalpUploadProtocol+ (\ s a -> s{_apalpUploadProtocol = a})++-- | Required. Mask to control which fields get updated. Must be non-empty.+apalpUpdateMask :: Lens' AccessPoliciesAccessLevelsPatch (Maybe GFieldMask)+apalpUpdateMask+ = lens _apalpUpdateMask+ (\ s a -> s{_apalpUpdateMask = a})++-- | OAuth access token.+apalpAccessToken :: Lens' AccessPoliciesAccessLevelsPatch (Maybe Text)+apalpAccessToken+ = lens _apalpAccessToken+ (\ s a -> s{_apalpAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+apalpUploadType :: Lens' AccessPoliciesAccessLevelsPatch (Maybe Text)+apalpUploadType+ = lens _apalpUploadType+ (\ s a -> s{_apalpUploadType = a})++-- | Multipart request metadata.+apalpPayload :: Lens' AccessPoliciesAccessLevelsPatch AccessLevel+apalpPayload+ = lens _apalpPayload (\ s a -> s{_apalpPayload = a})++-- | Required. Resource name for the Access Level. The \`short_name\`+-- component must begin with a letter and only include alphanumeric and+-- \'_\'. Format:+-- \`accessPolicies\/{policy_id}\/accessLevels\/{short_name}\`+apalpName :: Lens' AccessPoliciesAccessLevelsPatch Text+apalpName+ = lens _apalpName (\ s a -> s{_apalpName = a})++-- | JSONP+apalpCallback :: Lens' AccessPoliciesAccessLevelsPatch (Maybe Text)+apalpCallback+ = lens _apalpCallback+ (\ s a -> s{_apalpCallback = a})++instance GoogleRequest+ AccessPoliciesAccessLevelsPatch where+ type Rs AccessPoliciesAccessLevelsPatch = Operation+ type Scopes AccessPoliciesAccessLevelsPatch =+ '["https://www.googleapis.com/auth/cloud-platform"]+ requestClient AccessPoliciesAccessLevelsPatch'{..}+ = go _apalpName _apalpXgafv _apalpUploadProtocol+ _apalpUpdateMask+ _apalpAccessToken+ _apalpUploadType+ _apalpCallback+ (Just AltJSON)+ _apalpPayload+ accessContextManagerService+ where go+ = buildClient+ (Proxy ::+ Proxy AccessPoliciesAccessLevelsPatchResource)+ mempty
+ gen/Network/Google/Resource/AccessContextManager/AccessPolicies/Create.hs view
@@ -0,0 +1,155 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.AccessContextManager.AccessPolicies.Create+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Create an \`AccessPolicy\`. Fails if this organization already has a+-- \`AccessPolicy\`. The longrunning Operation will have a successful+-- status once the \`AccessPolicy\` has propagated to long-lasting storage.+-- Syntactic and basic semantic errors will be returned in \`metadata\` as+-- a BadRequest proto.+--+-- /See:/ <https://cloud.google.com/access-context-manager/docs/reference/rest/ Access Context Manager API Reference> for @accesscontextmanager.accessPolicies.create@.+module Network.Google.Resource.AccessContextManager.AccessPolicies.Create+ (+ -- * REST Resource+ AccessPoliciesCreateResource++ -- * Creating a Request+ , accessPoliciesCreate+ , AccessPoliciesCreate++ -- * Request Lenses+ , apcXgafv+ , apcUploadProtocol+ , apcAccessToken+ , apcUploadType+ , apcPayload+ , apcCallback+ ) where++import Network.Google.AccessContextManager.Types+import Network.Google.Prelude++-- | A resource alias for @accesscontextmanager.accessPolicies.create@ method which the+-- 'AccessPoliciesCreate' request conforms to.+type AccessPoliciesCreateResource =+ "v1beta" :>+ "accessPolicies" :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] AccessPolicy :>+ Post '[JSON] Operation++-- | Create an \`AccessPolicy\`. Fails if this organization already has a+-- \`AccessPolicy\`. The longrunning Operation will have a successful+-- status once the \`AccessPolicy\` has propagated to long-lasting storage.+-- Syntactic and basic semantic errors will be returned in \`metadata\` as+-- a BadRequest proto.+--+-- /See:/ 'accessPoliciesCreate' smart constructor.+data AccessPoliciesCreate = AccessPoliciesCreate'+ { _apcXgafv :: !(Maybe Xgafv)+ , _apcUploadProtocol :: !(Maybe Text)+ , _apcAccessToken :: !(Maybe Text)+ , _apcUploadType :: !(Maybe Text)+ , _apcPayload :: !AccessPolicy+ , _apcCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccessPoliciesCreate' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'apcXgafv'+--+-- * 'apcUploadProtocol'+--+-- * 'apcAccessToken'+--+-- * 'apcUploadType'+--+-- * 'apcPayload'+--+-- * 'apcCallback'+accessPoliciesCreate+ :: AccessPolicy -- ^ 'apcPayload'+ -> AccessPoliciesCreate+accessPoliciesCreate pApcPayload_ =+ AccessPoliciesCreate'+ { _apcXgafv = Nothing+ , _apcUploadProtocol = Nothing+ , _apcAccessToken = Nothing+ , _apcUploadType = Nothing+ , _apcPayload = pApcPayload_+ , _apcCallback = Nothing+ }++-- | V1 error format.+apcXgafv :: Lens' AccessPoliciesCreate (Maybe Xgafv)+apcXgafv = lens _apcXgafv (\ s a -> s{_apcXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+apcUploadProtocol :: Lens' AccessPoliciesCreate (Maybe Text)+apcUploadProtocol+ = lens _apcUploadProtocol+ (\ s a -> s{_apcUploadProtocol = a})++-- | OAuth access token.+apcAccessToken :: Lens' AccessPoliciesCreate (Maybe Text)+apcAccessToken+ = lens _apcAccessToken+ (\ s a -> s{_apcAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+apcUploadType :: Lens' AccessPoliciesCreate (Maybe Text)+apcUploadType+ = lens _apcUploadType+ (\ s a -> s{_apcUploadType = a})++-- | Multipart request metadata.+apcPayload :: Lens' AccessPoliciesCreate AccessPolicy+apcPayload+ = lens _apcPayload (\ s a -> s{_apcPayload = a})++-- | JSONP+apcCallback :: Lens' AccessPoliciesCreate (Maybe Text)+apcCallback+ = lens _apcCallback (\ s a -> s{_apcCallback = a})++instance GoogleRequest AccessPoliciesCreate where+ type Rs AccessPoliciesCreate = Operation+ type Scopes AccessPoliciesCreate =+ '["https://www.googleapis.com/auth/cloud-platform"]+ requestClient AccessPoliciesCreate'{..}+ = go _apcXgafv _apcUploadProtocol _apcAccessToken+ _apcUploadType+ _apcCallback+ (Just AltJSON)+ _apcPayload+ accessContextManagerService+ where go+ = buildClient+ (Proxy :: Proxy AccessPoliciesCreateResource)+ mempty
+ gen/Network/Google/Resource/AccessContextManager/AccessPolicies/Delete.hs view
@@ -0,0 +1,149 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.AccessContextManager.AccessPolicies.Delete+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Delete an AccessPolicy by resource name. The longrunning Operation will+-- have a successful status once the AccessPolicy has been removed from+-- long-lasting storage.+--+-- /See:/ <https://cloud.google.com/access-context-manager/docs/reference/rest/ Access Context Manager API Reference> for @accesscontextmanager.accessPolicies.delete@.+module Network.Google.Resource.AccessContextManager.AccessPolicies.Delete+ (+ -- * REST Resource+ AccessPoliciesDeleteResource++ -- * Creating a Request+ , accessPoliciesDelete+ , AccessPoliciesDelete++ -- * Request Lenses+ , apdXgafv+ , apdUploadProtocol+ , apdAccessToken+ , apdUploadType+ , apdName+ , apdCallback+ ) where++import Network.Google.AccessContextManager.Types+import Network.Google.Prelude++-- | A resource alias for @accesscontextmanager.accessPolicies.delete@ method which the+-- 'AccessPoliciesDelete' request conforms to.+type AccessPoliciesDeleteResource =+ "v1beta" :>+ Capture "name" Text :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] Operation++-- | Delete an AccessPolicy by resource name. The longrunning Operation will+-- have a successful status once the AccessPolicy has been removed from+-- long-lasting storage.+--+-- /See:/ 'accessPoliciesDelete' smart constructor.+data AccessPoliciesDelete = AccessPoliciesDelete'+ { _apdXgafv :: !(Maybe Xgafv)+ , _apdUploadProtocol :: !(Maybe Text)+ , _apdAccessToken :: !(Maybe Text)+ , _apdUploadType :: !(Maybe Text)+ , _apdName :: !Text+ , _apdCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccessPoliciesDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'apdXgafv'+--+-- * 'apdUploadProtocol'+--+-- * 'apdAccessToken'+--+-- * 'apdUploadType'+--+-- * 'apdName'+--+-- * 'apdCallback'+accessPoliciesDelete+ :: Text -- ^ 'apdName'+ -> AccessPoliciesDelete+accessPoliciesDelete pApdName_ =+ AccessPoliciesDelete'+ { _apdXgafv = Nothing+ , _apdUploadProtocol = Nothing+ , _apdAccessToken = Nothing+ , _apdUploadType = Nothing+ , _apdName = pApdName_+ , _apdCallback = Nothing+ }++-- | V1 error format.+apdXgafv :: Lens' AccessPoliciesDelete (Maybe Xgafv)+apdXgafv = lens _apdXgafv (\ s a -> s{_apdXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+apdUploadProtocol :: Lens' AccessPoliciesDelete (Maybe Text)+apdUploadProtocol+ = lens _apdUploadProtocol+ (\ s a -> s{_apdUploadProtocol = a})++-- | OAuth access token.+apdAccessToken :: Lens' AccessPoliciesDelete (Maybe Text)+apdAccessToken+ = lens _apdAccessToken+ (\ s a -> s{_apdAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+apdUploadType :: Lens' AccessPoliciesDelete (Maybe Text)+apdUploadType+ = lens _apdUploadType+ (\ s a -> s{_apdUploadType = a})++-- | Required. Resource name for the access policy to delete. Format+-- \`accessPolicies\/{policy_id}\`+apdName :: Lens' AccessPoliciesDelete Text+apdName = lens _apdName (\ s a -> s{_apdName = a})++-- | JSONP+apdCallback :: Lens' AccessPoliciesDelete (Maybe Text)+apdCallback+ = lens _apdCallback (\ s a -> s{_apdCallback = a})++instance GoogleRequest AccessPoliciesDelete where+ type Rs AccessPoliciesDelete = Operation+ type Scopes AccessPoliciesDelete =+ '["https://www.googleapis.com/auth/cloud-platform"]+ requestClient AccessPoliciesDelete'{..}+ = go _apdName _apdXgafv _apdUploadProtocol+ _apdAccessToken+ _apdUploadType+ _apdCallback+ (Just AltJSON)+ accessContextManagerService+ where go+ = buildClient+ (Proxy :: Proxy AccessPoliciesDeleteResource)+ mempty
+ gen/Network/Google/Resource/AccessContextManager/AccessPolicies/Get.hs view
@@ -0,0 +1,145 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.AccessContextManager.AccessPolicies.Get+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Get an AccessPolicy by name.+--+-- /See:/ <https://cloud.google.com/access-context-manager/docs/reference/rest/ Access Context Manager API Reference> for @accesscontextmanager.accessPolicies.get@.+module Network.Google.Resource.AccessContextManager.AccessPolicies.Get+ (+ -- * REST Resource+ AccessPoliciesGetResource++ -- * Creating a Request+ , accessPoliciesGet+ , AccessPoliciesGet++ -- * Request Lenses+ , apgXgafv+ , apgUploadProtocol+ , apgAccessToken+ , apgUploadType+ , apgName+ , apgCallback+ ) where++import Network.Google.AccessContextManager.Types+import Network.Google.Prelude++-- | A resource alias for @accesscontextmanager.accessPolicies.get@ method which the+-- 'AccessPoliciesGet' request conforms to.+type AccessPoliciesGetResource =+ "v1beta" :>+ Capture "name" Text :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] AccessPolicy++-- | Get an AccessPolicy by name.+--+-- /See:/ 'accessPoliciesGet' smart constructor.+data AccessPoliciesGet = AccessPoliciesGet'+ { _apgXgafv :: !(Maybe Xgafv)+ , _apgUploadProtocol :: !(Maybe Text)+ , _apgAccessToken :: !(Maybe Text)+ , _apgUploadType :: !(Maybe Text)+ , _apgName :: !Text+ , _apgCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccessPoliciesGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'apgXgafv'+--+-- * 'apgUploadProtocol'+--+-- * 'apgAccessToken'+--+-- * 'apgUploadType'+--+-- * 'apgName'+--+-- * 'apgCallback'+accessPoliciesGet+ :: Text -- ^ 'apgName'+ -> AccessPoliciesGet+accessPoliciesGet pApgName_ =+ AccessPoliciesGet'+ { _apgXgafv = Nothing+ , _apgUploadProtocol = Nothing+ , _apgAccessToken = Nothing+ , _apgUploadType = Nothing+ , _apgName = pApgName_+ , _apgCallback = Nothing+ }++-- | V1 error format.+apgXgafv :: Lens' AccessPoliciesGet (Maybe Xgafv)+apgXgafv = lens _apgXgafv (\ s a -> s{_apgXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+apgUploadProtocol :: Lens' AccessPoliciesGet (Maybe Text)+apgUploadProtocol+ = lens _apgUploadProtocol+ (\ s a -> s{_apgUploadProtocol = a})++-- | OAuth access token.+apgAccessToken :: Lens' AccessPoliciesGet (Maybe Text)+apgAccessToken+ = lens _apgAccessToken+ (\ s a -> s{_apgAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+apgUploadType :: Lens' AccessPoliciesGet (Maybe Text)+apgUploadType+ = lens _apgUploadType+ (\ s a -> s{_apgUploadType = a})++-- | Required. Resource name for the access policy to get. Format+-- \`accessPolicies\/{policy_id}\`+apgName :: Lens' AccessPoliciesGet Text+apgName = lens _apgName (\ s a -> s{_apgName = a})++-- | JSONP+apgCallback :: Lens' AccessPoliciesGet (Maybe Text)+apgCallback+ = lens _apgCallback (\ s a -> s{_apgCallback = a})++instance GoogleRequest AccessPoliciesGet where+ type Rs AccessPoliciesGet = AccessPolicy+ type Scopes AccessPoliciesGet =+ '["https://www.googleapis.com/auth/cloud-platform"]+ requestClient AccessPoliciesGet'{..}+ = go _apgName _apgXgafv _apgUploadProtocol+ _apgAccessToken+ _apgUploadType+ _apgCallback+ (Just AltJSON)+ accessContextManagerService+ where go+ = buildClient+ (Proxy :: Proxy AccessPoliciesGetResource)+ mempty
+ gen/Network/Google/Resource/AccessContextManager/AccessPolicies/List.hs view
@@ -0,0 +1,174 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.AccessContextManager.AccessPolicies.List+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List all AccessPolicies under a container.+--+-- /See:/ <https://cloud.google.com/access-context-manager/docs/reference/rest/ Access Context Manager API Reference> for @accesscontextmanager.accessPolicies.list@.+module Network.Google.Resource.AccessContextManager.AccessPolicies.List+ (+ -- * REST Resource+ AccessPoliciesListResource++ -- * Creating a Request+ , accessPoliciesList+ , AccessPoliciesList++ -- * Request Lenses+ , aplParent+ , aplXgafv+ , aplUploadProtocol+ , aplAccessToken+ , aplUploadType+ , aplPageToken+ , aplPageSize+ , aplCallback+ ) where++import Network.Google.AccessContextManager.Types+import Network.Google.Prelude++-- | A resource alias for @accesscontextmanager.accessPolicies.list@ method which the+-- 'AccessPoliciesList' request conforms to.+type AccessPoliciesListResource =+ "v1beta" :>+ "accessPolicies" :>+ QueryParam "parent" Text :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "pageToken" Text :>+ QueryParam "pageSize" (Textual Int32) :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] ListAccessPoliciesResponse++-- | List all AccessPolicies under a container.+--+-- /See:/ 'accessPoliciesList' smart constructor.+data AccessPoliciesList = AccessPoliciesList'+ { _aplParent :: !(Maybe Text)+ , _aplXgafv :: !(Maybe Xgafv)+ , _aplUploadProtocol :: !(Maybe Text)+ , _aplAccessToken :: !(Maybe Text)+ , _aplUploadType :: !(Maybe Text)+ , _aplPageToken :: !(Maybe Text)+ , _aplPageSize :: !(Maybe (Textual Int32))+ , _aplCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccessPoliciesList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aplParent'+--+-- * 'aplXgafv'+--+-- * 'aplUploadProtocol'+--+-- * 'aplAccessToken'+--+-- * 'aplUploadType'+--+-- * 'aplPageToken'+--+-- * 'aplPageSize'+--+-- * 'aplCallback'+accessPoliciesList+ :: AccessPoliciesList+accessPoliciesList =+ AccessPoliciesList'+ { _aplParent = Nothing+ , _aplXgafv = Nothing+ , _aplUploadProtocol = Nothing+ , _aplAccessToken = Nothing+ , _aplUploadType = Nothing+ , _aplPageToken = Nothing+ , _aplPageSize = Nothing+ , _aplCallback = Nothing+ }++-- | Required. Resource name for the container to list AccessPolicy instances+-- from. Format: \`organizations\/{org_id}\`+aplParent :: Lens' AccessPoliciesList (Maybe Text)+aplParent+ = lens _aplParent (\ s a -> s{_aplParent = a})++-- | V1 error format.+aplXgafv :: Lens' AccessPoliciesList (Maybe Xgafv)+aplXgafv = lens _aplXgafv (\ s a -> s{_aplXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+aplUploadProtocol :: Lens' AccessPoliciesList (Maybe Text)+aplUploadProtocol+ = lens _aplUploadProtocol+ (\ s a -> s{_aplUploadProtocol = a})++-- | OAuth access token.+aplAccessToken :: Lens' AccessPoliciesList (Maybe Text)+aplAccessToken+ = lens _aplAccessToken+ (\ s a -> s{_aplAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+aplUploadType :: Lens' AccessPoliciesList (Maybe Text)+aplUploadType+ = lens _aplUploadType+ (\ s a -> s{_aplUploadType = a})++-- | Next page token for the next batch of AccessPolicy instances. Defaults+-- to the first page of results.+aplPageToken :: Lens' AccessPoliciesList (Maybe Text)+aplPageToken+ = lens _aplPageToken (\ s a -> s{_aplPageToken = a})++-- | Number of AccessPolicy instances to include in the list. Default 100.+aplPageSize :: Lens' AccessPoliciesList (Maybe Int32)+aplPageSize+ = lens _aplPageSize (\ s a -> s{_aplPageSize = a}) .+ mapping _Coerce++-- | JSONP+aplCallback :: Lens' AccessPoliciesList (Maybe Text)+aplCallback+ = lens _aplCallback (\ s a -> s{_aplCallback = a})++instance GoogleRequest AccessPoliciesList where+ type Rs AccessPoliciesList =+ ListAccessPoliciesResponse+ type Scopes AccessPoliciesList =+ '["https://www.googleapis.com/auth/cloud-platform"]+ requestClient AccessPoliciesList'{..}+ = go _aplParent _aplXgafv _aplUploadProtocol+ _aplAccessToken+ _aplUploadType+ _aplPageToken+ _aplPageSize+ _aplCallback+ (Just AltJSON)+ accessContextManagerService+ where go+ = buildClient+ (Proxy :: Proxy AccessPoliciesListResource)+ mempty
+ gen/Network/Google/Resource/AccessContextManager/AccessPolicies/Patch.hs view
@@ -0,0 +1,178 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.AccessContextManager.AccessPolicies.Patch+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update an AccessPolicy. The longrunning Operation from this RPC will+-- have a successful status once the changes to the AccessPolicy have+-- propagated to long-lasting storage. Syntactic and basic semantic errors+-- will be returned in \`metadata\` as a BadRequest proto.+--+-- /See:/ <https://cloud.google.com/access-context-manager/docs/reference/rest/ Access Context Manager API Reference> for @accesscontextmanager.accessPolicies.patch@.+module Network.Google.Resource.AccessContextManager.AccessPolicies.Patch+ (+ -- * REST Resource+ AccessPoliciesPatchResource++ -- * Creating a Request+ , accessPoliciesPatch+ , AccessPoliciesPatch++ -- * Request Lenses+ , appXgafv+ , appUploadProtocol+ , appUpdateMask+ , appAccessToken+ , appUploadType+ , appPayload+ , appName+ , appCallback+ ) where++import Network.Google.AccessContextManager.Types+import Network.Google.Prelude++-- | A resource alias for @accesscontextmanager.accessPolicies.patch@ method which the+-- 'AccessPoliciesPatch' request conforms to.+type AccessPoliciesPatchResource =+ "v1beta" :>+ Capture "name" Text :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "updateMask" GFieldMask :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] AccessPolicy :>+ Patch '[JSON] Operation++-- | Update an AccessPolicy. The longrunning Operation from this RPC will+-- have a successful status once the changes to the AccessPolicy have+-- propagated to long-lasting storage. Syntactic and basic semantic errors+-- will be returned in \`metadata\` as a BadRequest proto.+--+-- /See:/ 'accessPoliciesPatch' smart constructor.+data AccessPoliciesPatch = AccessPoliciesPatch'+ { _appXgafv :: !(Maybe Xgafv)+ , _appUploadProtocol :: !(Maybe Text)+ , _appUpdateMask :: !(Maybe GFieldMask)+ , _appAccessToken :: !(Maybe Text)+ , _appUploadType :: !(Maybe Text)+ , _appPayload :: !AccessPolicy+ , _appName :: !Text+ , _appCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccessPoliciesPatch' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'appXgafv'+--+-- * 'appUploadProtocol'+--+-- * 'appUpdateMask'+--+-- * 'appAccessToken'+--+-- * 'appUploadType'+--+-- * 'appPayload'+--+-- * 'appName'+--+-- * 'appCallback'+accessPoliciesPatch+ :: AccessPolicy -- ^ 'appPayload'+ -> Text -- ^ 'appName'+ -> AccessPoliciesPatch+accessPoliciesPatch pAppPayload_ pAppName_ =+ AccessPoliciesPatch'+ { _appXgafv = Nothing+ , _appUploadProtocol = Nothing+ , _appUpdateMask = Nothing+ , _appAccessToken = Nothing+ , _appUploadType = Nothing+ , _appPayload = pAppPayload_+ , _appName = pAppName_+ , _appCallback = Nothing+ }++-- | V1 error format.+appXgafv :: Lens' AccessPoliciesPatch (Maybe Xgafv)+appXgafv = lens _appXgafv (\ s a -> s{_appXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+appUploadProtocol :: Lens' AccessPoliciesPatch (Maybe Text)+appUploadProtocol+ = lens _appUploadProtocol+ (\ s a -> s{_appUploadProtocol = a})++-- | Required. Mask to control which fields get updated. Must be non-empty.+appUpdateMask :: Lens' AccessPoliciesPatch (Maybe GFieldMask)+appUpdateMask+ = lens _appUpdateMask+ (\ s a -> s{_appUpdateMask = a})++-- | OAuth access token.+appAccessToken :: Lens' AccessPoliciesPatch (Maybe Text)+appAccessToken+ = lens _appAccessToken+ (\ s a -> s{_appAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+appUploadType :: Lens' AccessPoliciesPatch (Maybe Text)+appUploadType+ = lens _appUploadType+ (\ s a -> s{_appUploadType = a})++-- | Multipart request metadata.+appPayload :: Lens' AccessPoliciesPatch AccessPolicy+appPayload+ = lens _appPayload (\ s a -> s{_appPayload = a})++-- | Output only. Resource name of the \`AccessPolicy\`. Format:+-- \`accessPolicies\/{policy_id}\`+appName :: Lens' AccessPoliciesPatch Text+appName = lens _appName (\ s a -> s{_appName = a})++-- | JSONP+appCallback :: Lens' AccessPoliciesPatch (Maybe Text)+appCallback+ = lens _appCallback (\ s a -> s{_appCallback = a})++instance GoogleRequest AccessPoliciesPatch where+ type Rs AccessPoliciesPatch = Operation+ type Scopes AccessPoliciesPatch =+ '["https://www.googleapis.com/auth/cloud-platform"]+ requestClient AccessPoliciesPatch'{..}+ = go _appName _appXgafv _appUploadProtocol+ _appUpdateMask+ _appAccessToken+ _appUploadType+ _appCallback+ (Just AltJSON)+ _appPayload+ accessContextManagerService+ where go+ = buildClient+ (Proxy :: Proxy AccessPoliciesPatchResource)+ mempty
+ gen/Network/Google/Resource/AccessContextManager/AccessPolicies/ServicePerimeters/Create.hs view
@@ -0,0 +1,173 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.Create+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Create an Service Perimeter. The longrunning operation from this RPC+-- will have a successful status once the Service Perimeter has propagated+-- to long-lasting storage. Service Perimeters containing errors will+-- result in an error response for the first error encountered.+--+-- /See:/ <https://cloud.google.com/access-context-manager/docs/reference/rest/ Access Context Manager API Reference> for @accesscontextmanager.accessPolicies.servicePerimeters.create@.+module Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.Create+ (+ -- * REST Resource+ AccessPoliciesServicePerimetersCreateResource++ -- * Creating a Request+ , accessPoliciesServicePerimetersCreate+ , AccessPoliciesServicePerimetersCreate++ -- * Request Lenses+ , apspcParent+ , apspcXgafv+ , apspcUploadProtocol+ , apspcAccessToken+ , apspcUploadType+ , apspcPayload+ , apspcCallback+ ) where++import Network.Google.AccessContextManager.Types+import Network.Google.Prelude++-- | A resource alias for @accesscontextmanager.accessPolicies.servicePerimeters.create@ method which the+-- 'AccessPoliciesServicePerimetersCreate' request conforms to.+type AccessPoliciesServicePerimetersCreateResource =+ "v1beta" :>+ Capture "parent" Text :>+ "servicePerimeters" :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] ServicePerimeter :>+ Post '[JSON] Operation++-- | Create an Service Perimeter. The longrunning operation from this RPC+-- will have a successful status once the Service Perimeter has propagated+-- to long-lasting storage. Service Perimeters containing errors will+-- result in an error response for the first error encountered.+--+-- /See:/ 'accessPoliciesServicePerimetersCreate' smart constructor.+data AccessPoliciesServicePerimetersCreate = AccessPoliciesServicePerimetersCreate'+ { _apspcParent :: !Text+ , _apspcXgafv :: !(Maybe Xgafv)+ , _apspcUploadProtocol :: !(Maybe Text)+ , _apspcAccessToken :: !(Maybe Text)+ , _apspcUploadType :: !(Maybe Text)+ , _apspcPayload :: !ServicePerimeter+ , _apspcCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccessPoliciesServicePerimetersCreate' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'apspcParent'+--+-- * 'apspcXgafv'+--+-- * 'apspcUploadProtocol'+--+-- * 'apspcAccessToken'+--+-- * 'apspcUploadType'+--+-- * 'apspcPayload'+--+-- * 'apspcCallback'+accessPoliciesServicePerimetersCreate+ :: Text -- ^ 'apspcParent'+ -> ServicePerimeter -- ^ 'apspcPayload'+ -> AccessPoliciesServicePerimetersCreate+accessPoliciesServicePerimetersCreate pApspcParent_ pApspcPayload_ =+ AccessPoliciesServicePerimetersCreate'+ { _apspcParent = pApspcParent_+ , _apspcXgafv = Nothing+ , _apspcUploadProtocol = Nothing+ , _apspcAccessToken = Nothing+ , _apspcUploadType = Nothing+ , _apspcPayload = pApspcPayload_+ , _apspcCallback = Nothing+ }++-- | Required. Resource name for the access policy which owns this Service+-- Perimeter. Format: \`accessPolicies\/{policy_id}\`+apspcParent :: Lens' AccessPoliciesServicePerimetersCreate Text+apspcParent+ = lens _apspcParent (\ s a -> s{_apspcParent = a})++-- | V1 error format.+apspcXgafv :: Lens' AccessPoliciesServicePerimetersCreate (Maybe Xgafv)+apspcXgafv+ = lens _apspcXgafv (\ s a -> s{_apspcXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+apspcUploadProtocol :: Lens' AccessPoliciesServicePerimetersCreate (Maybe Text)+apspcUploadProtocol+ = lens _apspcUploadProtocol+ (\ s a -> s{_apspcUploadProtocol = a})++-- | OAuth access token.+apspcAccessToken :: Lens' AccessPoliciesServicePerimetersCreate (Maybe Text)+apspcAccessToken+ = lens _apspcAccessToken+ (\ s a -> s{_apspcAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+apspcUploadType :: Lens' AccessPoliciesServicePerimetersCreate (Maybe Text)+apspcUploadType+ = lens _apspcUploadType+ (\ s a -> s{_apspcUploadType = a})++-- | Multipart request metadata.+apspcPayload :: Lens' AccessPoliciesServicePerimetersCreate ServicePerimeter+apspcPayload+ = lens _apspcPayload (\ s a -> s{_apspcPayload = a})++-- | JSONP+apspcCallback :: Lens' AccessPoliciesServicePerimetersCreate (Maybe Text)+apspcCallback+ = lens _apspcCallback+ (\ s a -> s{_apspcCallback = a})++instance GoogleRequest+ AccessPoliciesServicePerimetersCreate where+ type Rs AccessPoliciesServicePerimetersCreate =+ Operation+ type Scopes AccessPoliciesServicePerimetersCreate =+ '["https://www.googleapis.com/auth/cloud-platform"]+ requestClient+ AccessPoliciesServicePerimetersCreate'{..}+ = go _apspcParent _apspcXgafv _apspcUploadProtocol+ _apspcAccessToken+ _apspcUploadType+ _apspcCallback+ (Just AltJSON)+ _apspcPayload+ accessContextManagerService+ where go+ = buildClient+ (Proxy ::+ Proxy AccessPoliciesServicePerimetersCreateResource)+ mempty
+ gen/Network/Google/Resource/AccessContextManager/AccessPolicies/ServicePerimeters/Delete.hs view
@@ -0,0 +1,156 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.Delete+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Delete an Service Perimeter by resource name. The longrunning operation+-- from this RPC will have a successful status once the Service Perimeter+-- has been removed from long-lasting storage.+--+-- /See:/ <https://cloud.google.com/access-context-manager/docs/reference/rest/ Access Context Manager API Reference> for @accesscontextmanager.accessPolicies.servicePerimeters.delete@.+module Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.Delete+ (+ -- * REST Resource+ AccessPoliciesServicePerimetersDeleteResource++ -- * Creating a Request+ , accessPoliciesServicePerimetersDelete+ , AccessPoliciesServicePerimetersDelete++ -- * Request Lenses+ , apspdXgafv+ , apspdUploadProtocol+ , apspdAccessToken+ , apspdUploadType+ , apspdName+ , apspdCallback+ ) where++import Network.Google.AccessContextManager.Types+import Network.Google.Prelude++-- | A resource alias for @accesscontextmanager.accessPolicies.servicePerimeters.delete@ method which the+-- 'AccessPoliciesServicePerimetersDelete' request conforms to.+type AccessPoliciesServicePerimetersDeleteResource =+ "v1beta" :>+ Capture "name" Text :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] Operation++-- | Delete an Service Perimeter by resource name. The longrunning operation+-- from this RPC will have a successful status once the Service Perimeter+-- has been removed from long-lasting storage.+--+-- /See:/ 'accessPoliciesServicePerimetersDelete' smart constructor.+data AccessPoliciesServicePerimetersDelete = AccessPoliciesServicePerimetersDelete'+ { _apspdXgafv :: !(Maybe Xgafv)+ , _apspdUploadProtocol :: !(Maybe Text)+ , _apspdAccessToken :: !(Maybe Text)+ , _apspdUploadType :: !(Maybe Text)+ , _apspdName :: !Text+ , _apspdCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccessPoliciesServicePerimetersDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'apspdXgafv'+--+-- * 'apspdUploadProtocol'+--+-- * 'apspdAccessToken'+--+-- * 'apspdUploadType'+--+-- * 'apspdName'+--+-- * 'apspdCallback'+accessPoliciesServicePerimetersDelete+ :: Text -- ^ 'apspdName'+ -> AccessPoliciesServicePerimetersDelete+accessPoliciesServicePerimetersDelete pApspdName_ =+ AccessPoliciesServicePerimetersDelete'+ { _apspdXgafv = Nothing+ , _apspdUploadProtocol = Nothing+ , _apspdAccessToken = Nothing+ , _apspdUploadType = Nothing+ , _apspdName = pApspdName_+ , _apspdCallback = Nothing+ }++-- | V1 error format.+apspdXgafv :: Lens' AccessPoliciesServicePerimetersDelete (Maybe Xgafv)+apspdXgafv+ = lens _apspdXgafv (\ s a -> s{_apspdXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+apspdUploadProtocol :: Lens' AccessPoliciesServicePerimetersDelete (Maybe Text)+apspdUploadProtocol+ = lens _apspdUploadProtocol+ (\ s a -> s{_apspdUploadProtocol = a})++-- | OAuth access token.+apspdAccessToken :: Lens' AccessPoliciesServicePerimetersDelete (Maybe Text)+apspdAccessToken+ = lens _apspdAccessToken+ (\ s a -> s{_apspdAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+apspdUploadType :: Lens' AccessPoliciesServicePerimetersDelete (Maybe Text)+apspdUploadType+ = lens _apspdUploadType+ (\ s a -> s{_apspdUploadType = a})++-- | Required. Resource name for the Service Perimeter. Format:+-- \`accessPolicies\/{policy_id}\/servicePerimeters\/{service_perimeter_id}\`+apspdName :: Lens' AccessPoliciesServicePerimetersDelete Text+apspdName+ = lens _apspdName (\ s a -> s{_apspdName = a})++-- | JSONP+apspdCallback :: Lens' AccessPoliciesServicePerimetersDelete (Maybe Text)+apspdCallback+ = lens _apspdCallback+ (\ s a -> s{_apspdCallback = a})++instance GoogleRequest+ AccessPoliciesServicePerimetersDelete where+ type Rs AccessPoliciesServicePerimetersDelete =+ Operation+ type Scopes AccessPoliciesServicePerimetersDelete =+ '["https://www.googleapis.com/auth/cloud-platform"]+ requestClient+ AccessPoliciesServicePerimetersDelete'{..}+ = go _apspdName _apspdXgafv _apspdUploadProtocol+ _apspdAccessToken+ _apspdUploadType+ _apspdCallback+ (Just AltJSON)+ accessContextManagerService+ where go+ = buildClient+ (Proxy ::+ Proxy AccessPoliciesServicePerimetersDeleteResource)+ mempty
+ gen/Network/Google/Resource/AccessContextManager/AccessPolicies/ServicePerimeters/Get.hs view
@@ -0,0 +1,152 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.Get+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Get an Service Perimeter by resource name.+--+-- /See:/ <https://cloud.google.com/access-context-manager/docs/reference/rest/ Access Context Manager API Reference> for @accesscontextmanager.accessPolicies.servicePerimeters.get@.+module Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.Get+ (+ -- * REST Resource+ AccessPoliciesServicePerimetersGetResource++ -- * Creating a Request+ , accessPoliciesServicePerimetersGet+ , AccessPoliciesServicePerimetersGet++ -- * Request Lenses+ , apspgXgafv+ , apspgUploadProtocol+ , apspgAccessToken+ , apspgUploadType+ , apspgName+ , apspgCallback+ ) where++import Network.Google.AccessContextManager.Types+import Network.Google.Prelude++-- | A resource alias for @accesscontextmanager.accessPolicies.servicePerimeters.get@ method which the+-- 'AccessPoliciesServicePerimetersGet' request conforms to.+type AccessPoliciesServicePerimetersGetResource =+ "v1beta" :>+ Capture "name" Text :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] ServicePerimeter++-- | Get an Service Perimeter by resource name.+--+-- /See:/ 'accessPoliciesServicePerimetersGet' smart constructor.+data AccessPoliciesServicePerimetersGet = AccessPoliciesServicePerimetersGet'+ { _apspgXgafv :: !(Maybe Xgafv)+ , _apspgUploadProtocol :: !(Maybe Text)+ , _apspgAccessToken :: !(Maybe Text)+ , _apspgUploadType :: !(Maybe Text)+ , _apspgName :: !Text+ , _apspgCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccessPoliciesServicePerimetersGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'apspgXgafv'+--+-- * 'apspgUploadProtocol'+--+-- * 'apspgAccessToken'+--+-- * 'apspgUploadType'+--+-- * 'apspgName'+--+-- * 'apspgCallback'+accessPoliciesServicePerimetersGet+ :: Text -- ^ 'apspgName'+ -> AccessPoliciesServicePerimetersGet+accessPoliciesServicePerimetersGet pApspgName_ =+ AccessPoliciesServicePerimetersGet'+ { _apspgXgafv = Nothing+ , _apspgUploadProtocol = Nothing+ , _apspgAccessToken = Nothing+ , _apspgUploadType = Nothing+ , _apspgName = pApspgName_+ , _apspgCallback = Nothing+ }++-- | V1 error format.+apspgXgafv :: Lens' AccessPoliciesServicePerimetersGet (Maybe Xgafv)+apspgXgafv+ = lens _apspgXgafv (\ s a -> s{_apspgXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+apspgUploadProtocol :: Lens' AccessPoliciesServicePerimetersGet (Maybe Text)+apspgUploadProtocol+ = lens _apspgUploadProtocol+ (\ s a -> s{_apspgUploadProtocol = a})++-- | OAuth access token.+apspgAccessToken :: Lens' AccessPoliciesServicePerimetersGet (Maybe Text)+apspgAccessToken+ = lens _apspgAccessToken+ (\ s a -> s{_apspgAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+apspgUploadType :: Lens' AccessPoliciesServicePerimetersGet (Maybe Text)+apspgUploadType+ = lens _apspgUploadType+ (\ s a -> s{_apspgUploadType = a})++-- | Required. Resource name for the Service Perimeter. Format:+-- \`accessPolicies\/{policy_id}\/servicePerimeters\/{service_perimeters_id}\`+apspgName :: Lens' AccessPoliciesServicePerimetersGet Text+apspgName+ = lens _apspgName (\ s a -> s{_apspgName = a})++-- | JSONP+apspgCallback :: Lens' AccessPoliciesServicePerimetersGet (Maybe Text)+apspgCallback+ = lens _apspgCallback+ (\ s a -> s{_apspgCallback = a})++instance GoogleRequest+ AccessPoliciesServicePerimetersGet where+ type Rs AccessPoliciesServicePerimetersGet =+ ServicePerimeter+ type Scopes AccessPoliciesServicePerimetersGet =+ '["https://www.googleapis.com/auth/cloud-platform"]+ requestClient AccessPoliciesServicePerimetersGet'{..}+ = go _apspgName _apspgXgafv _apspgUploadProtocol+ _apspgAccessToken+ _apspgUploadType+ _apspgCallback+ (Just AltJSON)+ accessContextManagerService+ where go+ = buildClient+ (Proxy ::+ Proxy AccessPoliciesServicePerimetersGetResource)+ mempty
+ gen/Network/Google/Resource/AccessContextManager/AccessPolicies/ServicePerimeters/List.hs view
@@ -0,0 +1,182 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.List+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List all Service Perimeters for an access policy.+--+-- /See:/ <https://cloud.google.com/access-context-manager/docs/reference/rest/ Access Context Manager API Reference> for @accesscontextmanager.accessPolicies.servicePerimeters.list@.+module Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.List+ (+ -- * REST Resource+ AccessPoliciesServicePerimetersListResource++ -- * Creating a Request+ , accessPoliciesServicePerimetersList+ , AccessPoliciesServicePerimetersList++ -- * Request Lenses+ , apsplParent+ , apsplXgafv+ , apsplUploadProtocol+ , apsplAccessToken+ , apsplUploadType+ , apsplPageToken+ , apsplPageSize+ , apsplCallback+ ) where++import Network.Google.AccessContextManager.Types+import Network.Google.Prelude++-- | A resource alias for @accesscontextmanager.accessPolicies.servicePerimeters.list@ method which the+-- 'AccessPoliciesServicePerimetersList' request conforms to.+type AccessPoliciesServicePerimetersListResource =+ "v1beta" :>+ Capture "parent" Text :>+ "servicePerimeters" :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "pageToken" Text :>+ QueryParam "pageSize" (Textual Int32) :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] ListServicePerimetersResponse++-- | List all Service Perimeters for an access policy.+--+-- /See:/ 'accessPoliciesServicePerimetersList' smart constructor.+data AccessPoliciesServicePerimetersList = AccessPoliciesServicePerimetersList'+ { _apsplParent :: !Text+ , _apsplXgafv :: !(Maybe Xgafv)+ , _apsplUploadProtocol :: !(Maybe Text)+ , _apsplAccessToken :: !(Maybe Text)+ , _apsplUploadType :: !(Maybe Text)+ , _apsplPageToken :: !(Maybe Text)+ , _apsplPageSize :: !(Maybe (Textual Int32))+ , _apsplCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccessPoliciesServicePerimetersList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'apsplParent'+--+-- * 'apsplXgafv'+--+-- * 'apsplUploadProtocol'+--+-- * 'apsplAccessToken'+--+-- * 'apsplUploadType'+--+-- * 'apsplPageToken'+--+-- * 'apsplPageSize'+--+-- * 'apsplCallback'+accessPoliciesServicePerimetersList+ :: Text -- ^ 'apsplParent'+ -> AccessPoliciesServicePerimetersList+accessPoliciesServicePerimetersList pApsplParent_ =+ AccessPoliciesServicePerimetersList'+ { _apsplParent = pApsplParent_+ , _apsplXgafv = Nothing+ , _apsplUploadProtocol = Nothing+ , _apsplAccessToken = Nothing+ , _apsplUploadType = Nothing+ , _apsplPageToken = Nothing+ , _apsplPageSize = Nothing+ , _apsplCallback = Nothing+ }++-- | Required. Resource name for the access policy to list Service Perimeters+-- from. Format: \`accessPolicies\/{policy_id}\`+apsplParent :: Lens' AccessPoliciesServicePerimetersList Text+apsplParent+ = lens _apsplParent (\ s a -> s{_apsplParent = a})++-- | V1 error format.+apsplXgafv :: Lens' AccessPoliciesServicePerimetersList (Maybe Xgafv)+apsplXgafv+ = lens _apsplXgafv (\ s a -> s{_apsplXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+apsplUploadProtocol :: Lens' AccessPoliciesServicePerimetersList (Maybe Text)+apsplUploadProtocol+ = lens _apsplUploadProtocol+ (\ s a -> s{_apsplUploadProtocol = a})++-- | OAuth access token.+apsplAccessToken :: Lens' AccessPoliciesServicePerimetersList (Maybe Text)+apsplAccessToken+ = lens _apsplAccessToken+ (\ s a -> s{_apsplAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+apsplUploadType :: Lens' AccessPoliciesServicePerimetersList (Maybe Text)+apsplUploadType+ = lens _apsplUploadType+ (\ s a -> s{_apsplUploadType = a})++-- | Next page token for the next batch of Service Perimeter instances.+-- Defaults to the first page of results.+apsplPageToken :: Lens' AccessPoliciesServicePerimetersList (Maybe Text)+apsplPageToken+ = lens _apsplPageToken+ (\ s a -> s{_apsplPageToken = a})++-- | Number of Service Perimeters to include in the list. Default 100.+apsplPageSize :: Lens' AccessPoliciesServicePerimetersList (Maybe Int32)+apsplPageSize+ = lens _apsplPageSize+ (\ s a -> s{_apsplPageSize = a})+ . mapping _Coerce++-- | JSONP+apsplCallback :: Lens' AccessPoliciesServicePerimetersList (Maybe Text)+apsplCallback+ = lens _apsplCallback+ (\ s a -> s{_apsplCallback = a})++instance GoogleRequest+ AccessPoliciesServicePerimetersList where+ type Rs AccessPoliciesServicePerimetersList =+ ListServicePerimetersResponse+ type Scopes AccessPoliciesServicePerimetersList =+ '["https://www.googleapis.com/auth/cloud-platform"]+ requestClient+ AccessPoliciesServicePerimetersList'{..}+ = go _apsplParent _apsplXgafv _apsplUploadProtocol+ _apsplAccessToken+ _apsplUploadType+ _apsplPageToken+ _apsplPageSize+ _apsplCallback+ (Just AltJSON)+ accessContextManagerService+ where go+ = buildClient+ (Proxy ::+ Proxy AccessPoliciesServicePerimetersListResource)+ mempty
+ gen/Network/Google/Resource/AccessContextManager/AccessPolicies/ServicePerimeters/Patch.hs view
@@ -0,0 +1,187 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.Patch+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update an Service Perimeter. The longrunning operation from this RPC+-- will have a successful status once the changes to the Service Perimeter+-- have propagated to long-lasting storage. Service Perimeter containing+-- errors will result in an error response for the first error encountered.+--+-- /See:/ <https://cloud.google.com/access-context-manager/docs/reference/rest/ Access Context Manager API Reference> for @accesscontextmanager.accessPolicies.servicePerimeters.patch@.+module Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.Patch+ (+ -- * REST Resource+ AccessPoliciesServicePerimetersPatchResource++ -- * Creating a Request+ , accessPoliciesServicePerimetersPatch+ , AccessPoliciesServicePerimetersPatch++ -- * Request Lenses+ , apsppXgafv+ , apsppUploadProtocol+ , apsppUpdateMask+ , apsppAccessToken+ , apsppUploadType+ , apsppPayload+ , apsppName+ , apsppCallback+ ) where++import Network.Google.AccessContextManager.Types+import Network.Google.Prelude++-- | A resource alias for @accesscontextmanager.accessPolicies.servicePerimeters.patch@ method which the+-- 'AccessPoliciesServicePerimetersPatch' request conforms to.+type AccessPoliciesServicePerimetersPatchResource =+ "v1beta" :>+ Capture "name" Text :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "updateMask" GFieldMask :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] ServicePerimeter :>+ Patch '[JSON] Operation++-- | Update an Service Perimeter. The longrunning operation from this RPC+-- will have a successful status once the changes to the Service Perimeter+-- have propagated to long-lasting storage. Service Perimeter containing+-- errors will result in an error response for the first error encountered.+--+-- /See:/ 'accessPoliciesServicePerimetersPatch' smart constructor.+data AccessPoliciesServicePerimetersPatch = AccessPoliciesServicePerimetersPatch'+ { _apsppXgafv :: !(Maybe Xgafv)+ , _apsppUploadProtocol :: !(Maybe Text)+ , _apsppUpdateMask :: !(Maybe GFieldMask)+ , _apsppAccessToken :: !(Maybe Text)+ , _apsppUploadType :: !(Maybe Text)+ , _apsppPayload :: !ServicePerimeter+ , _apsppName :: !Text+ , _apsppCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccessPoliciesServicePerimetersPatch' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'apsppXgafv'+--+-- * 'apsppUploadProtocol'+--+-- * 'apsppUpdateMask'+--+-- * 'apsppAccessToken'+--+-- * 'apsppUploadType'+--+-- * 'apsppPayload'+--+-- * 'apsppName'+--+-- * 'apsppCallback'+accessPoliciesServicePerimetersPatch+ :: ServicePerimeter -- ^ 'apsppPayload'+ -> Text -- ^ 'apsppName'+ -> AccessPoliciesServicePerimetersPatch+accessPoliciesServicePerimetersPatch pApsppPayload_ pApsppName_ =+ AccessPoliciesServicePerimetersPatch'+ { _apsppXgafv = Nothing+ , _apsppUploadProtocol = Nothing+ , _apsppUpdateMask = Nothing+ , _apsppAccessToken = Nothing+ , _apsppUploadType = Nothing+ , _apsppPayload = pApsppPayload_+ , _apsppName = pApsppName_+ , _apsppCallback = Nothing+ }++-- | V1 error format.+apsppXgafv :: Lens' AccessPoliciesServicePerimetersPatch (Maybe Xgafv)+apsppXgafv+ = lens _apsppXgafv (\ s a -> s{_apsppXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+apsppUploadProtocol :: Lens' AccessPoliciesServicePerimetersPatch (Maybe Text)+apsppUploadProtocol+ = lens _apsppUploadProtocol+ (\ s a -> s{_apsppUploadProtocol = a})++-- | Required. Mask to control which fields get updated. Must be non-empty.+apsppUpdateMask :: Lens' AccessPoliciesServicePerimetersPatch (Maybe GFieldMask)+apsppUpdateMask+ = lens _apsppUpdateMask+ (\ s a -> s{_apsppUpdateMask = a})++-- | OAuth access token.+apsppAccessToken :: Lens' AccessPoliciesServicePerimetersPatch (Maybe Text)+apsppAccessToken+ = lens _apsppAccessToken+ (\ s a -> s{_apsppAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+apsppUploadType :: Lens' AccessPoliciesServicePerimetersPatch (Maybe Text)+apsppUploadType+ = lens _apsppUploadType+ (\ s a -> s{_apsppUploadType = a})++-- | Multipart request metadata.+apsppPayload :: Lens' AccessPoliciesServicePerimetersPatch ServicePerimeter+apsppPayload+ = lens _apsppPayload (\ s a -> s{_apsppPayload = a})++-- | Required. Resource name for the ServicePerimeter. The \`short_name\`+-- component must begin with a letter and only include alphanumeric and+-- \'_\'. Format:+-- \`accessPolicies\/{policy_id}\/servicePerimeters\/{short_name}\`+apsppName :: Lens' AccessPoliciesServicePerimetersPatch Text+apsppName+ = lens _apsppName (\ s a -> s{_apsppName = a})++-- | JSONP+apsppCallback :: Lens' AccessPoliciesServicePerimetersPatch (Maybe Text)+apsppCallback+ = lens _apsppCallback+ (\ s a -> s{_apsppCallback = a})++instance GoogleRequest+ AccessPoliciesServicePerimetersPatch where+ type Rs AccessPoliciesServicePerimetersPatch =+ Operation+ type Scopes AccessPoliciesServicePerimetersPatch =+ '["https://www.googleapis.com/auth/cloud-platform"]+ requestClient+ AccessPoliciesServicePerimetersPatch'{..}+ = go _apsppName _apsppXgafv _apsppUploadProtocol+ _apsppUpdateMask+ _apsppAccessToken+ _apsppUploadType+ _apsppCallback+ (Just AltJSON)+ _apsppPayload+ accessContextManagerService+ where go+ = buildClient+ (Proxy ::+ Proxy AccessPoliciesServicePerimetersPatchResource)+ mempty
+ gen/Network/Google/Resource/AccessContextManager/Operations/Get.hs view
@@ -0,0 +1,146 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.AccessContextManager.Operations.Get+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets the latest state of a long-running operation. Clients can use this+-- method to poll the operation result at intervals as recommended by the+-- API service.+--+-- /See:/ <https://cloud.google.com/access-context-manager/docs/reference/rest/ Access Context Manager API Reference> for @accesscontextmanager.operations.get@.+module Network.Google.Resource.AccessContextManager.Operations.Get+ (+ -- * REST Resource+ OperationsGetResource++ -- * Creating a Request+ , operationsGet+ , OperationsGet++ -- * Request Lenses+ , ogXgafv+ , ogUploadProtocol+ , ogAccessToken+ , ogUploadType+ , ogName+ , ogCallback+ ) where++import Network.Google.AccessContextManager.Types+import Network.Google.Prelude++-- | A resource alias for @accesscontextmanager.operations.get@ method which the+-- 'OperationsGet' request conforms to.+type OperationsGetResource =+ "v1beta" :>+ Capture "name" Text :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] Operation++-- | Gets the latest state of a long-running operation. Clients can use this+-- method to poll the operation result at intervals as recommended by the+-- API service.+--+-- /See:/ 'operationsGet' smart constructor.+data OperationsGet = OperationsGet'+ { _ogXgafv :: !(Maybe Xgafv)+ , _ogUploadProtocol :: !(Maybe Text)+ , _ogAccessToken :: !(Maybe Text)+ , _ogUploadType :: !(Maybe Text)+ , _ogName :: !Text+ , _ogCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'OperationsGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ogXgafv'+--+-- * 'ogUploadProtocol'+--+-- * 'ogAccessToken'+--+-- * 'ogUploadType'+--+-- * 'ogName'+--+-- * 'ogCallback'+operationsGet+ :: Text -- ^ 'ogName'+ -> OperationsGet+operationsGet pOgName_ =+ OperationsGet'+ { _ogXgafv = Nothing+ , _ogUploadProtocol = Nothing+ , _ogAccessToken = Nothing+ , _ogUploadType = Nothing+ , _ogName = pOgName_+ , _ogCallback = Nothing+ }++-- | V1 error format.+ogXgafv :: Lens' OperationsGet (Maybe Xgafv)+ogXgafv = lens _ogXgafv (\ s a -> s{_ogXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+ogUploadProtocol :: Lens' OperationsGet (Maybe Text)+ogUploadProtocol+ = lens _ogUploadProtocol+ (\ s a -> s{_ogUploadProtocol = a})++-- | OAuth access token.+ogAccessToken :: Lens' OperationsGet (Maybe Text)+ogAccessToken+ = lens _ogAccessToken+ (\ s a -> s{_ogAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+ogUploadType :: Lens' OperationsGet (Maybe Text)+ogUploadType+ = lens _ogUploadType (\ s a -> s{_ogUploadType = a})++-- | The name of the operation resource.+ogName :: Lens' OperationsGet Text+ogName = lens _ogName (\ s a -> s{_ogName = a})++-- | JSONP+ogCallback :: Lens' OperationsGet (Maybe Text)+ogCallback+ = lens _ogCallback (\ s a -> s{_ogCallback = a})++instance GoogleRequest OperationsGet where+ type Rs OperationsGet = Operation+ type Scopes OperationsGet =+ '["https://www.googleapis.com/auth/cloud-platform"]+ requestClient OperationsGet'{..}+ = go _ogName _ogXgafv _ogUploadProtocol+ _ogAccessToken+ _ogUploadType+ _ogCallback+ (Just AltJSON)+ accessContextManagerService+ where go+ = buildClient (Proxy :: Proxy OperationsGetResource)+ mempty
+ gogol-accesscontextmanager.cabal view
@@ -0,0 +1,62 @@+name: gogol-accesscontextmanager+version: 0.4.0+synopsis: Google Access Context Manager SDK.+homepage: https://github.com/brendanhay/gogol+bug-reports: https://github.com/brendanhay/gogol/issues+license: OtherLicense+license-file: LICENSE+author: Brendan Hay+maintainer: Brendan Hay <brendan.g.hay@gmail.com>+copyright: Copyright (c) 2015-2016 Brendan Hay+category: Network, Google, Cloud+build-type: Simple+cabal-version: >= 1.10+extra-source-files: README.md src/.gitkeep++description:+ An API for setting attribute based access control to requests to GCP+ services.+ .+ /Warning:/ This is an experimental prototype/preview release which is still+ under exploratory development and not intended for public use, caveat emptor!+ .+ This library is compatible with version @v1beta@+ of the API.++source-repository head+ type: git+ location: git://github.com/brendanhay/gogol.git++library+ default-language: Haskell2010+ hs-source-dirs: src gen++ ghc-options: -Wall++ exposed-modules:+ Network.Google.AccessContextManager+ , Network.Google.AccessContextManager.Types+ , Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.Create+ , Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.Delete+ , Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.Get+ , Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.List+ , Network.Google.Resource.AccessContextManager.AccessPolicies.AccessLevels.Patch+ , Network.Google.Resource.AccessContextManager.AccessPolicies.Create+ , Network.Google.Resource.AccessContextManager.AccessPolicies.Delete+ , Network.Google.Resource.AccessContextManager.AccessPolicies.Get+ , Network.Google.Resource.AccessContextManager.AccessPolicies.List+ , Network.Google.Resource.AccessContextManager.AccessPolicies.Patch+ , Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.Create+ , Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.Delete+ , Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.Get+ , Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.List+ , Network.Google.Resource.AccessContextManager.AccessPolicies.ServicePerimeters.Patch+ , Network.Google.Resource.AccessContextManager.Operations.Get++ other-modules:+ Network.Google.AccessContextManager.Types.Product+ , Network.Google.AccessContextManager.Types.Sum++ build-depends:+ gogol-core == 0.4.0.*+ , base >= 4.7 && < 5
+ src/.gitkeep view