gogol-appengine (empty) → 0.0.1
raw patch · 19 files changed
+6205/−0 lines, 19 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/AppEngine.hs +390/−0
- gen/Network/Google/AppEngine/Types.hs +331/−0
- gen/Network/Google/AppEngine/Types/Product.hs +2804/−0
- gen/Network/Google/AppEngine/Types/Sum.hs +19/−0
- gen/Network/Google/Resource/AppEngine/Apps/Get.hs +181/−0
- gen/Network/Google/Resource/AppEngine/Apps/Modules/Delete.hs +184/−0
- gen/Network/Google/Resource/AppEngine/Apps/Modules/Get.hs +182/−0
- gen/Network/Google/Resource/AppEngine/Apps/Modules/List.hs +196/−0
- gen/Network/Google/Resource/AppEngine/Apps/Modules/Patch.hs +222/−0
- gen/Network/Google/Resource/AppEngine/Apps/Modules/Versions/Create.hs +201/−0
- gen/Network/Google/Resource/AppEngine/Apps/Modules/Versions/Delete.hs +202/−0
- gen/Network/Google/Resource/AppEngine/Apps/Modules/Versions/Get.hs +212/−0
- gen/Network/Google/Resource/AppEngine/Apps/Modules/Versions/List.hs +225/−0
- gen/Network/Google/Resource/AppEngine/Apps/Operations/Get.hs +187/−0
- gen/Network/Google/Resource/AppEngine/Apps/Operations/List.hs +215/−0
- gogol-appengine.cabal +57/−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-appengine++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version++`0.0.1`+++## Description++A client library for the Google App Engine Admin.+++## Contribute++For any problems, comments, or feedback please create an issue [here on GitHub](https://github.com/brendanhay/amazonka/issues).++> _Note:_ this library is an auto-generated Haskell package. Please see `amazonka-gen` for more information.+++## Licence++`gogol-appengine` 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/AppEngine.hs view
@@ -0,0 +1,390 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}++-- |+-- Module : Network.Google.AppEngine+-- Copyright : (c) 2015 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)+--+-- The Google App Engine Admin API enables developers to provision and+-- manage their App Engine applications.+--+-- /See:/ <https://developers.google.com/appengine/ Google App Engine Admin API Reference>+module Network.Google.AppEngine+ (+ -- * Service Configuration+ appEngineService++ -- * API Declaration+ , AppEngineAPI++ -- * Resources++ -- ** appengine.apps.get+ , module Network.Google.Resource.AppEngine.Apps.Get++ -- ** appengine.apps.modules.delete+ , module Network.Google.Resource.AppEngine.Apps.Modules.Delete++ -- ** appengine.apps.modules.get+ , module Network.Google.Resource.AppEngine.Apps.Modules.Get++ -- ** appengine.apps.modules.list+ , module Network.Google.Resource.AppEngine.Apps.Modules.List++ -- ** appengine.apps.modules.patch+ , module Network.Google.Resource.AppEngine.Apps.Modules.Patch++ -- ** appengine.apps.modules.versions.create+ , module Network.Google.Resource.AppEngine.Apps.Modules.Versions.Create++ -- ** appengine.apps.modules.versions.delete+ , module Network.Google.Resource.AppEngine.Apps.Modules.Versions.Delete++ -- ** appengine.apps.modules.versions.get+ , module Network.Google.Resource.AppEngine.Apps.Modules.Versions.Get++ -- ** appengine.apps.modules.versions.list+ , module Network.Google.Resource.AppEngine.Apps.Modules.Versions.List++ -- ** appengine.apps.operations.get+ , module Network.Google.Resource.AppEngine.Apps.Operations.Get++ -- ** appengine.apps.operations.list+ , module Network.Google.Resource.AppEngine.Apps.Operations.List++ -- * Types++ -- ** Status+ , Status+ , status+ , sDetails+ , sCode+ , sMessage++ -- ** OperationSchema+ , OperationSchema+ , operationSchema+ , osAddtional++ -- ** TrafficSplit+ , TrafficSplit+ , trafficSplit+ , tsShardBy+ , tsAllocations++ -- ** ScriptHandler+ , ScriptHandler+ , scriptHandler+ , shScriptPath++ -- ** URLMap+ , URLMap+ , urlMap+ , umScript+ , umSecurityLevel+ , umAPIEndpoint+ , umURLRegex+ , umRedirectHTTPResponseCode+ , umAuthFailAction+ , umStaticFiles+ , umLogin+ , umStaticDirectory++ -- ** Library+ , Library+ , library+ , lName+ , lVersion++ -- ** ListOperationsResponse+ , ListOperationsResponse+ , listOperationsResponse+ , lorNextPageToken+ , lorOperations++ -- ** HealthCheck+ , HealthCheck+ , healthCheck+ , hcHealthyThreshold+ , hcDisableHealthCheck+ , hcCheckInterval+ , hcRestartThreshold+ , hcHost+ , hcTimeout+ , hcUnhealthyThreshold++ -- ** APIConfigHandler+ , APIConfigHandler+ , apiConfigHandler+ , achScript+ , achSecurityLevel+ , achURL+ , achAuthFailAction+ , achLogin++ -- ** VersionEnvVariables+ , VersionEnvVariables+ , versionEnvVariables+ , vevAddtional++ -- ** Application+ , Application+ , application+ , aLocation+ , aCodeBucket+ , aName+ , aDispatchRules+ , aId++ -- ** VersionBetaSettings+ , VersionBetaSettings+ , versionBetaSettings+ , vbsAddtional++ -- ** Operation+ , Operation+ , operation+ , oDone+ , oError+ , oResponse+ , oName+ , oMetadata++ -- ** URLDispatchRule+ , URLDispatchRule+ , urlDispatchRule+ , udrPath+ , udrDomain+ , udrModule++ -- ** StaticDirectoryHandlerHTTPHeaders+ , StaticDirectoryHandlerHTTPHeaders+ , staticDirectoryHandlerHTTPHeaders+ , sdhhttphAddtional++ -- ** ListVersionsResponse+ , ListVersionsResponse+ , listVersionsResponse+ , lvrNextPageToken+ , lvrVersions++ -- ** FileInfo+ , FileInfo+ , fileInfo+ , fiSha1Sum+ , fiMimeType+ , fiSourceURL++ -- ** AutomaticScaling+ , AutomaticScaling+ , automaticScaling+ , asMaxTotalInstances+ , asMinIdleInstances+ , asMinPendingLatency+ , asCPUUtilization+ , asMaxIdleInstances+ , asMinTotalInstances+ , asMaxConcurrentRequests+ , asCoolDownPeriod+ , asMaxPendingLatency++ -- ** ListModulesResponse+ , ListModulesResponse+ , listModulesResponse+ , lmrNextPageToken+ , lmrModules++ -- ** APIEndpointHandler+ , APIEndpointHandler+ , apiEndpointHandler+ , aehScriptPath++ -- ** StatusDetailsItem+ , StatusDetailsItem+ , statusDetailsItem+ , sdiAddtional++ -- ** Network+ , Network+ , network+ , nForwardedPorts+ , nInstanceTag+ , nName++ -- ** StaticFilesHandlerHTTPHeaders+ , StaticFilesHandlerHTTPHeaders+ , staticFilesHandlerHTTPHeaders+ , sfhhttphAddtional++ -- ** Resources+ , Resources+ , resources+ , rMemoryGb+ , rDiskGb+ , rCPU++ -- ** DeploymentFiles+ , DeploymentFiles+ , deploymentFiles+ , dfAddtional++ -- ** CPUUtilization+ , CPUUtilization+ , cpuUtilization+ , cuAggregationWindowLength+ , cuTargetUtilization++ -- ** TrafficSplitAllocations+ , TrafficSplitAllocations+ , trafficSplitAllocations+ , tsaAddtional++ -- ** ManualScaling+ , ManualScaling+ , manualScaling+ , msInstances++ -- ** BasicScaling+ , BasicScaling+ , basicScaling+ , bsMaxInstances+ , bsIdleTimeout++ -- ** Version+ , Version+ , version+ , vCreationTime+ , vRuntime+ , vDeployer+ , vNobuildFilesRegex+ , vInstanceClass+ , vHealthCheck+ , vEnv+ , vDefaultExpiration+ , vAutomaticScaling+ , vErrorHandlers+ , vVM+ , vHandlers+ , vInboundServices+ , vNetwork+ , vResources+ , vName+ , vThreadsafe+ , vBetaSettings+ , vBasicScaling+ , vManualScaling+ , vAPIConfig+ , vId+ , vEnvVariables+ , vServingStatus+ , vLibraries+ , vDeployment++ -- ** Module+ , Module+ , module'+ , mSplit+ , mName+ , mId++ -- ** StaticFilesHandler+ , StaticFilesHandler+ , staticFilesHandler+ , sfhHTTPHeaders+ , sfhPath+ , sfhRequireMatchingFile+ , sfhExpiration+ , sfhMimeType+ , sfhApplicationReadable+ , sfhUploadPathRegex++ -- ** ErrorHandler+ , ErrorHandler+ , errorHandler+ , ehMimeType+ , ehErrorCode+ , ehStaticFile++ -- ** OperationMetadata+ , OperationMetadata+ , operationMetadata+ , omInsertTime+ , omUser+ , omMethod+ , omEndTime+ , omOperationType+ , omTarget++ -- ** SourceReference+ , SourceReference+ , sourceReference+ , srRepository+ , srRevisionId++ -- ** OperationResponse+ , OperationResponse+ , operationResponse+ , orAddtional++ -- ** ContainerInfo+ , ContainerInfo+ , containerInfo+ , ciImage++ -- ** Deployment+ , Deployment+ , deployment+ , dContainer+ , dFiles+ , dSourceReferences++ -- ** StaticDirectoryHandler+ , StaticDirectoryHandler+ , staticDirectoryHandler+ , sdhHTTPHeaders+ , sdhRequireMatchingFile+ , sdhExpiration+ , sdhMimeType+ , sdhApplicationReadable+ , sdhDirectory+ ) where++import Network.Google.AppEngine.Types+import Network.Google.Prelude+import Network.Google.Resource.AppEngine.Apps.Get+import Network.Google.Resource.AppEngine.Apps.Modules.Delete+import Network.Google.Resource.AppEngine.Apps.Modules.Get+import Network.Google.Resource.AppEngine.Apps.Modules.List+import Network.Google.Resource.AppEngine.Apps.Modules.Patch+import Network.Google.Resource.AppEngine.Apps.Modules.Versions.Create+import Network.Google.Resource.AppEngine.Apps.Modules.Versions.Delete+import Network.Google.Resource.AppEngine.Apps.Modules.Versions.Get+import Network.Google.Resource.AppEngine.Apps.Modules.Versions.List+import Network.Google.Resource.AppEngine.Apps.Operations.Get+import Network.Google.Resource.AppEngine.Apps.Operations.List++{- $resources+TODO+-}++-- | Represents the entirety of the methods and resources available for the Google App Engine Admin API service.+type AppEngineAPI =+ AppsModulesVersionsListResource :<|>+ AppsModulesVersionsGetResource+ :<|> AppsModulesVersionsCreateResource+ :<|> AppsModulesVersionsDeleteResource+ :<|> AppsModulesListResource+ :<|> AppsModulesPatchResource+ :<|> AppsModulesGetResource+ :<|> AppsModulesDeleteResource+ :<|> AppsOperationsListResource+ :<|> AppsOperationsGetResource+ :<|> AppsGetResource
+ gen/Network/Google/AppEngine/Types.hs view
@@ -0,0 +1,331 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.AppEngine.Types+-- Copyright : (c) 2015 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.AppEngine.Types+ (+ -- * Service Configuration+ appEngineService++ -- * OAuth Scopes+ , cloudPlatformScope++ -- * Status+ , Status+ , status+ , sDetails+ , sCode+ , sMessage++ -- * OperationSchema+ , OperationSchema+ , operationSchema+ , osAddtional++ -- * TrafficSplit+ , TrafficSplit+ , trafficSplit+ , tsShardBy+ , tsAllocations++ -- * ScriptHandler+ , ScriptHandler+ , scriptHandler+ , shScriptPath++ -- * URLMap+ , URLMap+ , urlMap+ , umScript+ , umSecurityLevel+ , umAPIEndpoint+ , umURLRegex+ , umRedirectHTTPResponseCode+ , umAuthFailAction+ , umStaticFiles+ , umLogin+ , umStaticDirectory++ -- * Library+ , Library+ , library+ , lName+ , lVersion++ -- * ListOperationsResponse+ , ListOperationsResponse+ , listOperationsResponse+ , lorNextPageToken+ , lorOperations++ -- * HealthCheck+ , HealthCheck+ , healthCheck+ , hcHealthyThreshold+ , hcDisableHealthCheck+ , hcCheckInterval+ , hcRestartThreshold+ , hcHost+ , hcTimeout+ , hcUnhealthyThreshold++ -- * APIConfigHandler+ , APIConfigHandler+ , apiConfigHandler+ , achScript+ , achSecurityLevel+ , achURL+ , achAuthFailAction+ , achLogin++ -- * VersionEnvVariables+ , VersionEnvVariables+ , versionEnvVariables+ , vevAddtional++ -- * Application+ , Application+ , application+ , aLocation+ , aCodeBucket+ , aName+ , aDispatchRules+ , aId++ -- * VersionBetaSettings+ , VersionBetaSettings+ , versionBetaSettings+ , vbsAddtional++ -- * Operation+ , Operation+ , operation+ , oDone+ , oError+ , oResponse+ , oName+ , oMetadata++ -- * URLDispatchRule+ , URLDispatchRule+ , urlDispatchRule+ , udrPath+ , udrDomain+ , udrModule++ -- * StaticDirectoryHandlerHTTPHeaders+ , StaticDirectoryHandlerHTTPHeaders+ , staticDirectoryHandlerHTTPHeaders+ , sdhhttphAddtional++ -- * ListVersionsResponse+ , ListVersionsResponse+ , listVersionsResponse+ , lvrNextPageToken+ , lvrVersions++ -- * FileInfo+ , FileInfo+ , fileInfo+ , fiSha1Sum+ , fiMimeType+ , fiSourceURL++ -- * AutomaticScaling+ , AutomaticScaling+ , automaticScaling+ , asMaxTotalInstances+ , asMinIdleInstances+ , asMinPendingLatency+ , asCPUUtilization+ , asMaxIdleInstances+ , asMinTotalInstances+ , asMaxConcurrentRequests+ , asCoolDownPeriod+ , asMaxPendingLatency++ -- * ListModulesResponse+ , ListModulesResponse+ , listModulesResponse+ , lmrNextPageToken+ , lmrModules++ -- * APIEndpointHandler+ , APIEndpointHandler+ , apiEndpointHandler+ , aehScriptPath++ -- * StatusDetailsItem+ , StatusDetailsItem+ , statusDetailsItem+ , sdiAddtional++ -- * Network+ , Network+ , network+ , nForwardedPorts+ , nInstanceTag+ , nName++ -- * StaticFilesHandlerHTTPHeaders+ , StaticFilesHandlerHTTPHeaders+ , staticFilesHandlerHTTPHeaders+ , sfhhttphAddtional++ -- * Resources+ , Resources+ , resources+ , rMemoryGb+ , rDiskGb+ , rCPU++ -- * DeploymentFiles+ , DeploymentFiles+ , deploymentFiles+ , dfAddtional++ -- * CPUUtilization+ , CPUUtilization+ , cpuUtilization+ , cuAggregationWindowLength+ , cuTargetUtilization++ -- * TrafficSplitAllocations+ , TrafficSplitAllocations+ , trafficSplitAllocations+ , tsaAddtional++ -- * ManualScaling+ , ManualScaling+ , manualScaling+ , msInstances++ -- * BasicScaling+ , BasicScaling+ , basicScaling+ , bsMaxInstances+ , bsIdleTimeout++ -- * Version+ , Version+ , version+ , vCreationTime+ , vRuntime+ , vDeployer+ , vNobuildFilesRegex+ , vInstanceClass+ , vHealthCheck+ , vEnv+ , vDefaultExpiration+ , vAutomaticScaling+ , vErrorHandlers+ , vVM+ , vHandlers+ , vInboundServices+ , vNetwork+ , vResources+ , vName+ , vThreadsafe+ , vBetaSettings+ , vBasicScaling+ , vManualScaling+ , vAPIConfig+ , vId+ , vEnvVariables+ , vServingStatus+ , vLibraries+ , vDeployment++ -- * Module+ , Module+ , module'+ , mSplit+ , mName+ , mId++ -- * StaticFilesHandler+ , StaticFilesHandler+ , staticFilesHandler+ , sfhHTTPHeaders+ , sfhPath+ , sfhRequireMatchingFile+ , sfhExpiration+ , sfhMimeType+ , sfhApplicationReadable+ , sfhUploadPathRegex++ -- * ErrorHandler+ , ErrorHandler+ , errorHandler+ , ehMimeType+ , ehErrorCode+ , ehStaticFile++ -- * OperationMetadata+ , OperationMetadata+ , operationMetadata+ , omInsertTime+ , omUser+ , omMethod+ , omEndTime+ , omOperationType+ , omTarget++ -- * SourceReference+ , SourceReference+ , sourceReference+ , srRepository+ , srRevisionId++ -- * OperationResponse+ , OperationResponse+ , operationResponse+ , orAddtional++ -- * ContainerInfo+ , ContainerInfo+ , containerInfo+ , ciImage++ -- * Deployment+ , Deployment+ , deployment+ , dContainer+ , dFiles+ , dSourceReferences++ -- * StaticDirectoryHandler+ , StaticDirectoryHandler+ , staticDirectoryHandler+ , sdhHTTPHeaders+ , sdhRequireMatchingFile+ , sdhExpiration+ , sdhMimeType+ , sdhApplicationReadable+ , sdhDirectory+ ) where++import Network.Google.AppEngine.Types.Product+import Network.Google.AppEngine.Types.Sum+import Network.Google.Prelude++-- | Default request referring to version 'v1beta4' of the Google App Engine Admin API. This contains the host and root path used as a starting point for constructing service requests.+appEngineService :: Service+appEngineService+ = defaultService (ServiceId "appengine:v1beta4")+ "appengine.googleapis.com"++-- | View and manage your data across Google Cloud Platform services+cloudPlatformScope :: OAuthScope+cloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform";
+ gen/Network/Google/AppEngine/Types/Product.hs view
@@ -0,0 +1,2804 @@+{-# 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.AppEngine.Types.Product+-- Copyright : (c) 2015 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.AppEngine.Types.Product where++import Network.Google.AppEngine.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][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\` which+-- 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 purpose. - 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 will be 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][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][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])++-- | 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:/ 'operationSchema' smart constructor.+newtype OperationSchema = OperationSchema+ { _osAddtional :: HashMap Text JSONValue+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'OperationSchema' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'osAddtional'+operationSchema+ :: HashMap Text JSONValue -- ^ 'osAddtional'+ -> OperationSchema+operationSchema pOsAddtional_ =+ OperationSchema+ { _osAddtional = _Coerce # pOsAddtional_+ }++-- | Properties of the object. Contains field \'ype with type URL.+osAddtional :: Lens' OperationSchema (HashMap Text JSONValue)+osAddtional+ = lens _osAddtional (\ s a -> s{_osAddtional = a}) .+ _Coerce++instance FromJSON OperationSchema where+ parseJSON+ = withObject "OperationSchema"+ (\ o -> OperationSchema <$> (parseJSONObject o))++instance ToJSON OperationSchema where+ toJSON = toJSON . _osAddtional++-- | Configuration for traffic splitting for versions within a single module.+-- Traffic splitting allows traffic directed to the module to be assigned+-- to one of several versions in a fractional way, enabling experiments and+-- canarying new builds, for example.+--+-- /See:/ 'trafficSplit' smart constructor.+data TrafficSplit = TrafficSplit+ { _tsShardBy :: !(Maybe Text)+ , _tsAllocations :: !(Maybe TrafficSplitAllocations)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TrafficSplit' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tsShardBy'+--+-- * 'tsAllocations'+trafficSplit+ :: TrafficSplit+trafficSplit =+ TrafficSplit+ { _tsShardBy = Nothing+ , _tsAllocations = Nothing+ }++-- | Which mechanism should be used as a selector when choosing a version to+-- send a request to. The traffic selection algorithm will be stable for+-- either type until allocations are changed.+tsShardBy :: Lens' TrafficSplit (Maybe Text)+tsShardBy+ = lens _tsShardBy (\ s a -> s{_tsShardBy = a})++-- | Mapping from module version IDs within the module to fractional (0.000,+-- 1] allocations of traffic for that version. Each version may only be+-- specified once, but some versions in the module may not have any traffic+-- allocation. Modules that have traffic allocated in this field may not be+-- deleted until the module is deleted, or their traffic allocation is+-- removed. Allocations must sum to 1. Supports precision up to two decimal+-- places for IP-based splits and up to three decimal places for+-- cookie-based splits.+tsAllocations :: Lens' TrafficSplit (Maybe TrafficSplitAllocations)+tsAllocations+ = lens _tsAllocations+ (\ s a -> s{_tsAllocations = a})++instance FromJSON TrafficSplit where+ parseJSON+ = withObject "TrafficSplit"+ (\ o ->+ TrafficSplit <$>+ (o .:? "shardBy") <*> (o .:? "allocations"))++instance ToJSON TrafficSplit where+ toJSON TrafficSplit{..}+ = object+ (catMaybes+ [("shardBy" .=) <$> _tsShardBy,+ ("allocations" .=) <$> _tsAllocations])++-- | Executes a script to handle the request that matches the URL pattern.+--+-- /See:/ 'scriptHandler' smart constructor.+newtype ScriptHandler = ScriptHandler+ { _shScriptPath :: Maybe Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ScriptHandler' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'shScriptPath'+scriptHandler+ :: ScriptHandler+scriptHandler =+ ScriptHandler+ { _shScriptPath = Nothing+ }++-- | Specifies the path to the script from the application root directory.+shScriptPath :: Lens' ScriptHandler (Maybe Text)+shScriptPath+ = lens _shScriptPath (\ s a -> s{_shScriptPath = a})++instance FromJSON ScriptHandler where+ parseJSON+ = withObject "ScriptHandler"+ (\ o -> ScriptHandler <$> (o .:? "scriptPath"))++instance ToJSON ScriptHandler where+ toJSON ScriptHandler{..}+ = object+ (catMaybes [("scriptPath" .=) <$> _shScriptPath])++-- | A URL pattern and description of how it should be handled. App Engine+-- can handle URLs by executing application code, or by serving static+-- files uploaded with the code, such as images, CSS or JavaScript.+--+-- /See:/ 'urlMap' smart constructor.+data URLMap = URLMap+ { _umScript :: !(Maybe ScriptHandler)+ , _umSecurityLevel :: !(Maybe Text)+ , _umAPIEndpoint :: !(Maybe APIEndpointHandler)+ , _umURLRegex :: !(Maybe Text)+ , _umRedirectHTTPResponseCode :: !(Maybe Text)+ , _umAuthFailAction :: !(Maybe Text)+ , _umStaticFiles :: !(Maybe StaticFilesHandler)+ , _umLogin :: !(Maybe Text)+ , _umStaticDirectory :: !(Maybe StaticDirectoryHandler)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'URLMap' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'umScript'+--+-- * 'umSecurityLevel'+--+-- * 'umAPIEndpoint'+--+-- * 'umURLRegex'+--+-- * 'umRedirectHTTPResponseCode'+--+-- * 'umAuthFailAction'+--+-- * 'umStaticFiles'+--+-- * 'umLogin'+--+-- * 'umStaticDirectory'+urlMap+ :: URLMap+urlMap =+ URLMap+ { _umScript = Nothing+ , _umSecurityLevel = Nothing+ , _umAPIEndpoint = Nothing+ , _umURLRegex = Nothing+ , _umRedirectHTTPResponseCode = Nothing+ , _umAuthFailAction = Nothing+ , _umStaticFiles = Nothing+ , _umLogin = Nothing+ , _umStaticDirectory = Nothing+ }++-- | Executes a script to handle the request that matches the URL pattern.+umScript :: Lens' URLMap (Maybe ScriptHandler)+umScript = lens _umScript (\ s a -> s{_umScript = a})++-- | Configures whether security (HTTPS) should be enforced for this URL.+umSecurityLevel :: Lens' URLMap (Maybe Text)+umSecurityLevel+ = lens _umSecurityLevel+ (\ s a -> s{_umSecurityLevel = a})++-- | Use API Endpoints to handle requests.+umAPIEndpoint :: Lens' URLMap (Maybe APIEndpointHandler)+umAPIEndpoint+ = lens _umAPIEndpoint+ (\ s a -> s{_umAPIEndpoint = a})++-- | A URL prefix. This value uses regular expression syntax (and so regexp+-- special characters must be escaped), but it should not contain+-- groupings. All URLs that begin with this prefix are handled by this+-- handler, using the portion of the URL after the prefix as part of the+-- file path. This is always required.+umURLRegex :: Lens' URLMap (Maybe Text)+umURLRegex+ = lens _umURLRegex (\ s a -> s{_umURLRegex = a})++-- | \`30x\` code to use when performing redirects for the \`secure\` field.+-- A \`302\` is used by default.+umRedirectHTTPResponseCode :: Lens' URLMap (Maybe Text)+umRedirectHTTPResponseCode+ = lens _umRedirectHTTPResponseCode+ (\ s a -> s{_umRedirectHTTPResponseCode = a})++-- | For users not logged in, how to handle access to resources with required+-- login. Defaults to \"redirect\".+umAuthFailAction :: Lens' URLMap (Maybe Text)+umAuthFailAction+ = lens _umAuthFailAction+ (\ s a -> s{_umAuthFailAction = a})++-- | Returns the contents of a file, such as an image, as the response.+umStaticFiles :: Lens' URLMap (Maybe StaticFilesHandler)+umStaticFiles+ = lens _umStaticFiles+ (\ s a -> s{_umStaticFiles = a})++-- | What level of login is required to access this resource.+umLogin :: Lens' URLMap (Maybe Text)+umLogin = lens _umLogin (\ s a -> s{_umLogin = a})++-- | Serves the entire contents of a directory as static files. This+-- attribute is deprecated. You can mimic the behavior of static+-- directories using static files.+umStaticDirectory :: Lens' URLMap (Maybe StaticDirectoryHandler)+umStaticDirectory+ = lens _umStaticDirectory+ (\ s a -> s{_umStaticDirectory = a})++instance FromJSON URLMap where+ parseJSON+ = withObject "URLMap"+ (\ o ->+ URLMap <$>+ (o .:? "script") <*> (o .:? "securityLevel") <*>+ (o .:? "apiEndpoint")+ <*> (o .:? "urlRegex")+ <*> (o .:? "redirectHttpResponseCode")+ <*> (o .:? "authFailAction")+ <*> (o .:? "staticFiles")+ <*> (o .:? "login")+ <*> (o .:? "staticDirectory"))++instance ToJSON URLMap where+ toJSON URLMap{..}+ = object+ (catMaybes+ [("script" .=) <$> _umScript,+ ("securityLevel" .=) <$> _umSecurityLevel,+ ("apiEndpoint" .=) <$> _umAPIEndpoint,+ ("urlRegex" .=) <$> _umURLRegex,+ ("redirectHttpResponseCode" .=) <$>+ _umRedirectHTTPResponseCode,+ ("authFailAction" .=) <$> _umAuthFailAction,+ ("staticFiles" .=) <$> _umStaticFiles,+ ("login" .=) <$> _umLogin,+ ("staticDirectory" .=) <$> _umStaticDirectory])++-- | A Python runtime third-party library required by the application.+--+-- /See:/ 'library' smart constructor.+data Library = Library+ { _lName :: !(Maybe Text)+ , _lVersion :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Library' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lName'+--+-- * 'lVersion'+library+ :: Library+library =+ Library+ { _lName = Nothing+ , _lVersion = Nothing+ }++-- | The name of the library, e.g. \"PIL\" or \"django\".+lName :: Lens' Library (Maybe Text)+lName = lens _lName (\ s a -> s{_lName = a})++-- | The version of the library to select, or \"latest\".+lVersion :: Lens' Library (Maybe Text)+lVersion = lens _lVersion (\ s a -> s{_lVersion = a})++instance FromJSON Library where+ parseJSON+ = withObject "Library"+ (\ o ->+ Library <$> (o .:? "name") <*> (o .:? "version"))++instance ToJSON Library where+ toJSON Library{..}+ = object+ (catMaybes+ [("name" .=) <$> _lName,+ ("version" .=) <$> _lVersion])++-- | The response message for+-- [Operations.ListOperations][google.longrunning.Operations.ListOperations].+--+-- /See:/ 'listOperationsResponse' smart constructor.+data ListOperationsResponse = ListOperationsResponse+ { _lorNextPageToken :: !(Maybe Text)+ , _lorOperations :: !(Maybe [Operation])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListOperationsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lorNextPageToken'+--+-- * 'lorOperations'+listOperationsResponse+ :: ListOperationsResponse+listOperationsResponse =+ ListOperationsResponse+ { _lorNextPageToken = Nothing+ , _lorOperations = Nothing+ }++-- | The standard List next-page token.+lorNextPageToken :: Lens' ListOperationsResponse (Maybe Text)+lorNextPageToken+ = lens _lorNextPageToken+ (\ s a -> s{_lorNextPageToken = a})++-- | A list of operations that matches the specified filter in the request.+lorOperations :: Lens' ListOperationsResponse [Operation]+lorOperations+ = lens _lorOperations+ (\ s a -> s{_lorOperations = a})+ . _Default+ . _Coerce++instance FromJSON ListOperationsResponse where+ parseJSON+ = withObject "ListOperationsResponse"+ (\ o ->+ ListOperationsResponse <$>+ (o .:? "nextPageToken") <*>+ (o .:? "operations" .!= mempty))++instance ToJSON ListOperationsResponse where+ toJSON ListOperationsResponse{..}+ = object+ (catMaybes+ [("nextPageToken" .=) <$> _lorNextPageToken,+ ("operations" .=) <$> _lorOperations])++-- | Configure health checking for the VM instances. Unhealthy VM instances+-- will be killed and replaced with new instances.+--+-- /See:/ 'healthCheck' smart constructor.+data HealthCheck = HealthCheck+ { _hcHealthyThreshold :: !(Maybe (Textual Word32))+ , _hcDisableHealthCheck :: !(Maybe Bool)+ , _hcCheckInterval :: !(Maybe Text)+ , _hcRestartThreshold :: !(Maybe (Textual Word32))+ , _hcHost :: !(Maybe Text)+ , _hcTimeout :: !(Maybe Text)+ , _hcUnhealthyThreshold :: !(Maybe (Textual Word32))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'HealthCheck' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'hcHealthyThreshold'+--+-- * 'hcDisableHealthCheck'+--+-- * 'hcCheckInterval'+--+-- * 'hcRestartThreshold'+--+-- * 'hcHost'+--+-- * 'hcTimeout'+--+-- * 'hcUnhealthyThreshold'+healthCheck+ :: HealthCheck+healthCheck =+ HealthCheck+ { _hcHealthyThreshold = Nothing+ , _hcDisableHealthCheck = Nothing+ , _hcCheckInterval = Nothing+ , _hcRestartThreshold = Nothing+ , _hcHost = Nothing+ , _hcTimeout = Nothing+ , _hcUnhealthyThreshold = Nothing+ }++-- | The number of consecutive successful health checks before receiving+-- traffic.+hcHealthyThreshold :: Lens' HealthCheck (Maybe Word32)+hcHealthyThreshold+ = lens _hcHealthyThreshold+ (\ s a -> s{_hcHealthyThreshold = a})+ . mapping _Coerce++-- | Whether to explicitly disable health checks for this instance.+hcDisableHealthCheck :: Lens' HealthCheck (Maybe Bool)+hcDisableHealthCheck+ = lens _hcDisableHealthCheck+ (\ s a -> s{_hcDisableHealthCheck = a})++-- | The interval between health checks.+hcCheckInterval :: Lens' HealthCheck (Maybe Text)+hcCheckInterval+ = lens _hcCheckInterval+ (\ s a -> s{_hcCheckInterval = a})++-- | The number of consecutive failed health checks before an instance is+-- restarted.+hcRestartThreshold :: Lens' HealthCheck (Maybe Word32)+hcRestartThreshold+ = lens _hcRestartThreshold+ (\ s a -> s{_hcRestartThreshold = a})+ . mapping _Coerce++-- | The host header to send when performing an HTTP health check (e.g.+-- myapp.appspot.com)+hcHost :: Lens' HealthCheck (Maybe Text)+hcHost = lens _hcHost (\ s a -> s{_hcHost = a})++-- | The amount of time before the health check is considered failed.+hcTimeout :: Lens' HealthCheck (Maybe Text)+hcTimeout+ = lens _hcTimeout (\ s a -> s{_hcTimeout = a})++-- | The number of consecutive failed health checks before removing traffic.+hcUnhealthyThreshold :: Lens' HealthCheck (Maybe Word32)+hcUnhealthyThreshold+ = lens _hcUnhealthyThreshold+ (\ s a -> s{_hcUnhealthyThreshold = a})+ . mapping _Coerce++instance FromJSON HealthCheck where+ parseJSON+ = withObject "HealthCheck"+ (\ o ->+ HealthCheck <$>+ (o .:? "healthyThreshold") <*>+ (o .:? "disableHealthCheck")+ <*> (o .:? "checkInterval")+ <*> (o .:? "restartThreshold")+ <*> (o .:? "host")+ <*> (o .:? "timeout")+ <*> (o .:? "unhealthyThreshold"))++instance ToJSON HealthCheck where+ toJSON HealthCheck{..}+ = object+ (catMaybes+ [("healthyThreshold" .=) <$> _hcHealthyThreshold,+ ("disableHealthCheck" .=) <$> _hcDisableHealthCheck,+ ("checkInterval" .=) <$> _hcCheckInterval,+ ("restartThreshold" .=) <$> _hcRestartThreshold,+ ("host" .=) <$> _hcHost,+ ("timeout" .=) <$> _hcTimeout,+ ("unhealthyThreshold" .=) <$> _hcUnhealthyThreshold])++-- | API Serving configuration for Cloud Endpoints.+--+-- /See:/ 'apiConfigHandler' smart constructor.+data APIConfigHandler = APIConfigHandler+ { _achScript :: !(Maybe Text)+ , _achSecurityLevel :: !(Maybe Text)+ , _achURL :: !(Maybe Text)+ , _achAuthFailAction :: !(Maybe Text)+ , _achLogin :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'APIConfigHandler' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'achScript'+--+-- * 'achSecurityLevel'+--+-- * 'achURL'+--+-- * 'achAuthFailAction'+--+-- * 'achLogin'+apiConfigHandler+ :: APIConfigHandler+apiConfigHandler =+ APIConfigHandler+ { _achScript = Nothing+ , _achSecurityLevel = Nothing+ , _achURL = Nothing+ , _achAuthFailAction = Nothing+ , _achLogin = Nothing+ }++-- | Specifies the path to the script from the application root directory.+achScript :: Lens' APIConfigHandler (Maybe Text)+achScript+ = lens _achScript (\ s a -> s{_achScript = a})++-- | Configures whether security (HTTPS) should be enforced for this URL.+achSecurityLevel :: Lens' APIConfigHandler (Maybe Text)+achSecurityLevel+ = lens _achSecurityLevel+ (\ s a -> s{_achSecurityLevel = a})++-- | URL to serve the endpoint at.+achURL :: Lens' APIConfigHandler (Maybe Text)+achURL = lens _achURL (\ s a -> s{_achURL = a})++-- | For users not logged in, how to handle access to resources with required+-- login. Defaults to \"redirect\".+achAuthFailAction :: Lens' APIConfigHandler (Maybe Text)+achAuthFailAction+ = lens _achAuthFailAction+ (\ s a -> s{_achAuthFailAction = a})++-- | What level of login is required to access this resource. Default is+-- \"optional\".+achLogin :: Lens' APIConfigHandler (Maybe Text)+achLogin = lens _achLogin (\ s a -> s{_achLogin = a})++instance FromJSON APIConfigHandler where+ parseJSON+ = withObject "APIConfigHandler"+ (\ o ->+ APIConfigHandler <$>+ (o .:? "script") <*> (o .:? "securityLevel") <*>+ (o .:? "url")+ <*> (o .:? "authFailAction")+ <*> (o .:? "login"))++instance ToJSON APIConfigHandler where+ toJSON APIConfigHandler{..}+ = object+ (catMaybes+ [("script" .=) <$> _achScript,+ ("securityLevel" .=) <$> _achSecurityLevel,+ ("url" .=) <$> _achURL,+ ("authFailAction" .=) <$> _achAuthFailAction,+ ("login" .=) <$> _achLogin])++-- | Environment variables made available to the application. Only returned+-- in \`GET\` requests if \`view=FULL\` is set. May only be set on create+-- requests; once created, is immutable.+--+-- /See:/ 'versionEnvVariables' smart constructor.+newtype VersionEnvVariables = VersionEnvVariables+ { _vevAddtional :: HashMap Text Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VersionEnvVariables' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vevAddtional'+versionEnvVariables+ :: HashMap Text Text -- ^ 'vevAddtional'+ -> VersionEnvVariables+versionEnvVariables pVevAddtional_ =+ VersionEnvVariables+ { _vevAddtional = _Coerce # pVevAddtional_+ }++vevAddtional :: Lens' VersionEnvVariables (HashMap Text Text)+vevAddtional+ = lens _vevAddtional (\ s a -> s{_vevAddtional = a})+ . _Coerce++instance FromJSON VersionEnvVariables where+ parseJSON+ = withObject "VersionEnvVariables"+ (\ o -> VersionEnvVariables <$> (parseJSONObject o))++instance ToJSON VersionEnvVariables where+ toJSON = toJSON . _vevAddtional++-- | An Application contains the top-level configuration of an App Engine+-- application.+--+-- /See:/ 'application' smart constructor.+data Application = Application+ { _aLocation :: !(Maybe Text)+ , _aCodeBucket :: !(Maybe Text)+ , _aName :: !(Maybe Text)+ , _aDispatchRules :: !(Maybe [URLDispatchRule])+ , _aId :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Application' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aLocation'+--+-- * 'aCodeBucket'+--+-- * 'aName'+--+-- * 'aDispatchRules'+--+-- * 'aId'+application+ :: Application+application =+ Application+ { _aLocation = Nothing+ , _aCodeBucket = Nothing+ , _aName = Nothing+ , _aDispatchRules = Nothing+ , _aId = Nothing+ }++-- | The location from which the application will be run. Choices are+-- \"us-central\" for United States and \"europe-west\" for European Union.+-- Application instances will run out of data centers in the chosen+-- location and all of the application\'s End User Content will be stored+-- at rest in the chosen location. The default is \"us-central\".+aLocation :: Lens' Application (Maybe Text)+aLocation+ = lens _aLocation (\ s a -> s{_aLocation = a})++-- | A Google Cloud Storage bucket which can be used for storing files+-- associated with an application. This bucket is associated with the+-- application and can be used by the gcloud deployment commands.+-- \'OutputOnly+aCodeBucket :: Lens' Application (Maybe Text)+aCodeBucket+ = lens _aCodeBucket (\ s a -> s{_aCodeBucket = a})++-- | The full path to the application in the API. Example: \"apps\/myapp\".+-- \'OutputOnly+aName :: Lens' Application (Maybe Text)+aName = lens _aName (\ s a -> s{_aName = a})++-- | HTTP path dispatch rules for requests to the app that do not explicitly+-- target a module or version. The rules are order-dependent.+aDispatchRules :: Lens' Application [URLDispatchRule]+aDispatchRules+ = lens _aDispatchRules+ (\ s a -> s{_aDispatchRules = a})+ . _Default+ . _Coerce++-- | The relative name\/path of the application. Example: \"myapp\".+-- \'OutputOnly+aId :: Lens' Application (Maybe Text)+aId = lens _aId (\ s a -> s{_aId = a})++instance FromJSON Application where+ parseJSON+ = withObject "Application"+ (\ o ->+ Application <$>+ (o .:? "location") <*> (o .:? "codeBucket") <*>+ (o .:? "name")+ <*> (o .:? "dispatchRules" .!= mempty)+ <*> (o .:? "id"))++instance ToJSON Application where+ toJSON Application{..}+ = object+ (catMaybes+ [("location" .=) <$> _aLocation,+ ("codeBucket" .=) <$> _aCodeBucket,+ ("name" .=) <$> _aName,+ ("dispatchRules" .=) <$> _aDispatchRules,+ ("id" .=) <$> _aId])++-- | Beta settings supplied to the application via metadata.+--+-- /See:/ 'versionBetaSettings' smart constructor.+newtype VersionBetaSettings = VersionBetaSettings+ { _vbsAddtional :: HashMap Text Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'VersionBetaSettings' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vbsAddtional'+versionBetaSettings+ :: HashMap Text Text -- ^ 'vbsAddtional'+ -> VersionBetaSettings+versionBetaSettings pVbsAddtional_ =+ VersionBetaSettings+ { _vbsAddtional = _Coerce # pVbsAddtional_+ }++vbsAddtional :: Lens' VersionBetaSettings (HashMap Text Text)+vbsAddtional+ = lens _vbsAddtional (\ s a -> s{_vbsAddtional = a})+ . _Coerce++instance FromJSON VersionBetaSettings where+ parseJSON+ = withObject "VersionBetaSettings"+ (\ o -> VersionBetaSettings <$> (parseJSONObject o))++instance ToJSON VersionBetaSettings where+ toJSON = toJSON . _vbsAddtional++-- | 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 OperationSchema)+ } 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.+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 above,+-- 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 OperationSchema)+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])++-- | Rules to match an HTTP request and dispatch that request to a module.+--+-- /See:/ 'urlDispatchRule' smart constructor.+data URLDispatchRule = URLDispatchRule+ { _udrPath :: !(Maybe Text)+ , _udrDomain :: !(Maybe Text)+ , _udrModule :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'URLDispatchRule' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'udrPath'+--+-- * 'udrDomain'+--+-- * 'udrModule'+urlDispatchRule+ :: URLDispatchRule+urlDispatchRule =+ URLDispatchRule+ { _udrPath = Nothing+ , _udrDomain = Nothing+ , _udrModule = Nothing+ }++-- | The pathname within the host. This must start with a \'\/\'. A single+-- \'*\' (glob) can be included at the end of the path. The sum of the+-- lengths of the domain and path may not exceed 100 characters.+udrPath :: Lens' URLDispatchRule (Maybe Text)+udrPath = lens _udrPath (\ s a -> s{_udrPath = a})++-- | The domain name to match on. Supports \'*\' (glob) wildcarding on the+-- left-hand side of a \'.\'. If empty, all domains will be matched (the+-- same as \'*\').+udrDomain :: Lens' URLDispatchRule (Maybe Text)+udrDomain+ = lens _udrDomain (\ s a -> s{_udrDomain = a})++-- | The resource id of a Module in this application that should service the+-- matched request. The Module must already exist. Example: \"default\".+udrModule :: Lens' URLDispatchRule (Maybe Text)+udrModule+ = lens _udrModule (\ s a -> s{_udrModule = a})++instance FromJSON URLDispatchRule where+ parseJSON+ = withObject "URLDispatchRule"+ (\ o ->+ URLDispatchRule <$>+ (o .:? "path") <*> (o .:? "domain") <*>+ (o .:? "module"))++instance ToJSON URLDispatchRule where+ toJSON URLDispatchRule{..}+ = object+ (catMaybes+ [("path" .=) <$> _udrPath,+ ("domain" .=) <$> _udrDomain,+ ("module" .=) <$> _udrModule])++-- | HTTP headers to use for all responses from these URLs.+--+-- /See:/ 'staticDirectoryHandlerHTTPHeaders' smart constructor.+newtype StaticDirectoryHandlerHTTPHeaders = StaticDirectoryHandlerHTTPHeaders+ { _sdhhttphAddtional :: HashMap Text Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'StaticDirectoryHandlerHTTPHeaders' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sdhhttphAddtional'+staticDirectoryHandlerHTTPHeaders+ :: HashMap Text Text -- ^ 'sdhhttphAddtional'+ -> StaticDirectoryHandlerHTTPHeaders+staticDirectoryHandlerHTTPHeaders pSdhhttphAddtional_ =+ StaticDirectoryHandlerHTTPHeaders+ { _sdhhttphAddtional = _Coerce # pSdhhttphAddtional_+ }++sdhhttphAddtional :: Lens' StaticDirectoryHandlerHTTPHeaders (HashMap Text Text)+sdhhttphAddtional+ = lens _sdhhttphAddtional+ (\ s a -> s{_sdhhttphAddtional = a})+ . _Coerce++instance FromJSON StaticDirectoryHandlerHTTPHeaders+ where+ parseJSON+ = withObject "StaticDirectoryHandlerHTTPHeaders"+ (\ o ->+ StaticDirectoryHandlerHTTPHeaders <$>+ (parseJSONObject o))++instance ToJSON StaticDirectoryHandlerHTTPHeaders+ where+ toJSON = toJSON . _sdhhttphAddtional++-- | Response message for \`Versions.ListVersions\`.+--+-- /See:/ 'listVersionsResponse' smart constructor.+data ListVersionsResponse = ListVersionsResponse+ { _lvrNextPageToken :: !(Maybe Text)+ , _lvrVersions :: !(Maybe [Version])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListVersionsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lvrNextPageToken'+--+-- * 'lvrVersions'+listVersionsResponse+ :: ListVersionsResponse+listVersionsResponse =+ ListVersionsResponse+ { _lvrNextPageToken = Nothing+ , _lvrVersions = Nothing+ }++-- | Continuation token for fetching the next page of results.+lvrNextPageToken :: Lens' ListVersionsResponse (Maybe Text)+lvrNextPageToken+ = lens _lvrNextPageToken+ (\ s a -> s{_lvrNextPageToken = a})++-- | The versions belonging to the requested application module.+lvrVersions :: Lens' ListVersionsResponse [Version]+lvrVersions+ = lens _lvrVersions (\ s a -> s{_lvrVersions = a}) .+ _Default+ . _Coerce++instance FromJSON ListVersionsResponse where+ parseJSON+ = withObject "ListVersionsResponse"+ (\ o ->+ ListVersionsResponse <$>+ (o .:? "nextPageToken") <*>+ (o .:? "versions" .!= mempty))++instance ToJSON ListVersionsResponse where+ toJSON ListVersionsResponse{..}+ = object+ (catMaybes+ [("nextPageToken" .=) <$> _lvrNextPageToken,+ ("versions" .=) <$> _lvrVersions])++-- | A single source file which is part of the application to be deployed.+--+-- /See:/ 'fileInfo' smart constructor.+data FileInfo = FileInfo+ { _fiSha1Sum :: !(Maybe Text)+ , _fiMimeType :: !(Maybe Text)+ , _fiSourceURL :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'FileInfo' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'fiSha1Sum'+--+-- * 'fiMimeType'+--+-- * 'fiSourceURL'+fileInfo+ :: FileInfo+fileInfo =+ FileInfo+ { _fiSha1Sum = Nothing+ , _fiMimeType = Nothing+ , _fiSourceURL = Nothing+ }++-- | The SHA1 (160 bits) hash of the file in hex.+fiSha1Sum :: Lens' FileInfo (Maybe Text)+fiSha1Sum+ = lens _fiSha1Sum (\ s a -> s{_fiSha1Sum = a})++-- | The MIME type of the file; if unspecified, the value from Google Cloud+-- Storage will be used.+fiMimeType :: Lens' FileInfo (Maybe Text)+fiMimeType+ = lens _fiMimeType (\ s a -> s{_fiMimeType = a})++-- | The URL source to use to fetch this file. Must be a URL to a resource in+-- Google Cloud Storage.+fiSourceURL :: Lens' FileInfo (Maybe Text)+fiSourceURL+ = lens _fiSourceURL (\ s a -> s{_fiSourceURL = a})++instance FromJSON FileInfo where+ parseJSON+ = withObject "FileInfo"+ (\ o ->+ FileInfo <$>+ (o .:? "sha1Sum") <*> (o .:? "mimeType") <*>+ (o .:? "sourceUrl"))++instance ToJSON FileInfo where+ toJSON FileInfo{..}+ = object+ (catMaybes+ [("sha1Sum" .=) <$> _fiSha1Sum,+ ("mimeType" .=) <$> _fiMimeType,+ ("sourceUrl" .=) <$> _fiSourceURL])++-- | Automatic scaling is the scaling policy that App Engine has used since+-- its inception. It is based on request rate, response latencies, and+-- other application metrics.+--+-- /See:/ 'automaticScaling' smart constructor.+data AutomaticScaling = AutomaticScaling+ { _asMaxTotalInstances :: !(Maybe (Textual Int32))+ , _asMinIdleInstances :: !(Maybe (Textual Int32))+ , _asMinPendingLatency :: !(Maybe Text)+ , _asCPUUtilization :: !(Maybe CPUUtilization)+ , _asMaxIdleInstances :: !(Maybe (Textual Int32))+ , _asMinTotalInstances :: !(Maybe (Textual Int32))+ , _asMaxConcurrentRequests :: !(Maybe (Textual Int32))+ , _asCoolDownPeriod :: !(Maybe Text)+ , _asMaxPendingLatency :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AutomaticScaling' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'asMaxTotalInstances'+--+-- * 'asMinIdleInstances'+--+-- * 'asMinPendingLatency'+--+-- * 'asCPUUtilization'+--+-- * 'asMaxIdleInstances'+--+-- * 'asMinTotalInstances'+--+-- * 'asMaxConcurrentRequests'+--+-- * 'asCoolDownPeriod'+--+-- * 'asMaxPendingLatency'+automaticScaling+ :: AutomaticScaling+automaticScaling =+ AutomaticScaling+ { _asMaxTotalInstances = Nothing+ , _asMinIdleInstances = Nothing+ , _asMinPendingLatency = Nothing+ , _asCPUUtilization = Nothing+ , _asMaxIdleInstances = Nothing+ , _asMinTotalInstances = Nothing+ , _asMaxConcurrentRequests = Nothing+ , _asCoolDownPeriod = Nothing+ , _asMaxPendingLatency = Nothing+ }++-- | Max number of instances that App Engine should start to handle requests.+asMaxTotalInstances :: Lens' AutomaticScaling (Maybe Int32)+asMaxTotalInstances+ = lens _asMaxTotalInstances+ (\ s a -> s{_asMaxTotalInstances = a})+ . mapping _Coerce++-- | The minimum number of idle instances that App Engine should maintain for+-- this version. Only applies to the default version of a module, since+-- other versions are not expected to receive significant traffic.+asMinIdleInstances :: Lens' AutomaticScaling (Maybe Int32)+asMinIdleInstances+ = lens _asMinIdleInstances+ (\ s a -> s{_asMinIdleInstances = a})+ . mapping _Coerce++-- | The minimum amount of time that App Engine should allow a request to+-- wait in the pending queue before starting a new instance to handle it.+asMinPendingLatency :: Lens' AutomaticScaling (Maybe Text)+asMinPendingLatency+ = lens _asMinPendingLatency+ (\ s a -> s{_asMinPendingLatency = a})++-- | Target scaling by CPU usage.+asCPUUtilization :: Lens' AutomaticScaling (Maybe CPUUtilization)+asCPUUtilization+ = lens _asCPUUtilization+ (\ s a -> s{_asCPUUtilization = a})++-- | The maximum number of idle instances that App Engine should maintain for+-- this version.+asMaxIdleInstances :: Lens' AutomaticScaling (Maybe Int32)+asMaxIdleInstances+ = lens _asMaxIdleInstances+ (\ s a -> s{_asMaxIdleInstances = a})+ . mapping _Coerce++-- | Minimum number of instances that App Engine should maintain.+asMinTotalInstances :: Lens' AutomaticScaling (Maybe Int32)+asMinTotalInstances+ = lens _asMinTotalInstances+ (\ s a -> s{_asMinTotalInstances = a})+ . mapping _Coerce++-- | The number of concurrent requests an automatic scaling instance can+-- accept before the scheduler spawns a new instance. Default value is+-- chosen based on the runtime.+asMaxConcurrentRequests :: Lens' AutomaticScaling (Maybe Int32)+asMaxConcurrentRequests+ = lens _asMaxConcurrentRequests+ (\ s a -> s{_asMaxConcurrentRequests = a})+ . mapping _Coerce++-- | The amount of time that the+-- [Autoscaler](https:\/\/cloud.google.com\/compute\/docs\/autoscaler\/)+-- should wait between changes to the number of virtual machines. Applies+-- only to the VM runtime.+asCoolDownPeriod :: Lens' AutomaticScaling (Maybe Text)+asCoolDownPeriod+ = lens _asCoolDownPeriod+ (\ s a -> s{_asCoolDownPeriod = a})++-- | The maximum amount of time that App Engine should allow a request to+-- wait in the pending queue before starting a new instance to handle it.+asMaxPendingLatency :: Lens' AutomaticScaling (Maybe Text)+asMaxPendingLatency+ = lens _asMaxPendingLatency+ (\ s a -> s{_asMaxPendingLatency = a})++instance FromJSON AutomaticScaling where+ parseJSON+ = withObject "AutomaticScaling"+ (\ o ->+ AutomaticScaling <$>+ (o .:? "maxTotalInstances") <*>+ (o .:? "minIdleInstances")+ <*> (o .:? "minPendingLatency")+ <*> (o .:? "cpuUtilization")+ <*> (o .:? "maxIdleInstances")+ <*> (o .:? "minTotalInstances")+ <*> (o .:? "maxConcurrentRequests")+ <*> (o .:? "coolDownPeriod")+ <*> (o .:? "maxPendingLatency"))++instance ToJSON AutomaticScaling where+ toJSON AutomaticScaling{..}+ = object+ (catMaybes+ [("maxTotalInstances" .=) <$> _asMaxTotalInstances,+ ("minIdleInstances" .=) <$> _asMinIdleInstances,+ ("minPendingLatency" .=) <$> _asMinPendingLatency,+ ("cpuUtilization" .=) <$> _asCPUUtilization,+ ("maxIdleInstances" .=) <$> _asMaxIdleInstances,+ ("minTotalInstances" .=) <$> _asMinTotalInstances,+ ("maxConcurrentRequests" .=) <$>+ _asMaxConcurrentRequests,+ ("coolDownPeriod" .=) <$> _asCoolDownPeriod,+ ("maxPendingLatency" .=) <$> _asMaxPendingLatency])++-- | Response message for \`Modules.ListModules\`.+--+-- /See:/ 'listModulesResponse' smart constructor.+data ListModulesResponse = ListModulesResponse+ { _lmrNextPageToken :: !(Maybe Text)+ , _lmrModules :: !(Maybe [Module])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListModulesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lmrNextPageToken'+--+-- * 'lmrModules'+listModulesResponse+ :: ListModulesResponse+listModulesResponse =+ ListModulesResponse+ { _lmrNextPageToken = Nothing+ , _lmrModules = Nothing+ }++-- | Continuation token for fetching the next page of results.+lmrNextPageToken :: Lens' ListModulesResponse (Maybe Text)+lmrNextPageToken+ = lens _lmrNextPageToken+ (\ s a -> s{_lmrNextPageToken = a})++-- | The modules belonging to the requested application.+lmrModules :: Lens' ListModulesResponse [Module]+lmrModules+ = lens _lmrModules (\ s a -> s{_lmrModules = a}) .+ _Default+ . _Coerce++instance FromJSON ListModulesResponse where+ parseJSON+ = withObject "ListModulesResponse"+ (\ o ->+ ListModulesResponse <$>+ (o .:? "nextPageToken") <*>+ (o .:? "modules" .!= mempty))++instance ToJSON ListModulesResponse where+ toJSON ListModulesResponse{..}+ = object+ (catMaybes+ [("nextPageToken" .=) <$> _lmrNextPageToken,+ ("modules" .=) <$> _lmrModules])++-- | Use Google Cloud Endpoints to handle requests.+--+-- /See:/ 'apiEndpointHandler' smart constructor.+newtype APIEndpointHandler = APIEndpointHandler+ { _aehScriptPath :: Maybe Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'APIEndpointHandler' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aehScriptPath'+apiEndpointHandler+ :: APIEndpointHandler+apiEndpointHandler =+ APIEndpointHandler+ { _aehScriptPath = Nothing+ }++-- | Specifies the path to the script from the application root directory.+aehScriptPath :: Lens' APIEndpointHandler (Maybe Text)+aehScriptPath+ = lens _aehScriptPath+ (\ s a -> s{_aehScriptPath = a})++instance FromJSON APIEndpointHandler where+ parseJSON+ = withObject "APIEndpointHandler"+ (\ o -> APIEndpointHandler <$> (o .:? "scriptPath"))++instance ToJSON APIEndpointHandler where+ toJSON APIEndpointHandler{..}+ = object+ (catMaybes [("scriptPath" .=) <$> _aehScriptPath])++--+-- /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 \'ype 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++-- | Used to specify extra network settings (for VM runtimes only).+--+-- /See:/ 'network' smart constructor.+data Network = Network+ { _nForwardedPorts :: !(Maybe [Text])+ , _nInstanceTag :: !(Maybe Text)+ , _nName :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Network' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'nForwardedPorts'+--+-- * 'nInstanceTag'+--+-- * 'nName'+network+ :: Network+network =+ Network+ { _nForwardedPorts = Nothing+ , _nInstanceTag = Nothing+ , _nName = Nothing+ }++-- | A list of ports (or port pairs) to forward from the VM into the app+-- container.+nForwardedPorts :: Lens' Network [Text]+nForwardedPorts+ = lens _nForwardedPorts+ (\ s a -> s{_nForwardedPorts = a})+ . _Default+ . _Coerce++-- | A tag to apply to the VM instance during creation.+nInstanceTag :: Lens' Network (Maybe Text)+nInstanceTag+ = lens _nInstanceTag (\ s a -> s{_nInstanceTag = a})++-- | The Google Compute Engine network where the VMs will be created. If not+-- specified, or empty, the network named \"default\" will be used. (The+-- short name should be specified, not the resource path.)+nName :: Lens' Network (Maybe Text)+nName = lens _nName (\ s a -> s{_nName = a})++instance FromJSON Network where+ parseJSON+ = withObject "Network"+ (\ o ->+ Network <$>+ (o .:? "forwardedPorts" .!= mempty) <*>+ (o .:? "instanceTag")+ <*> (o .:? "name"))++instance ToJSON Network where+ toJSON Network{..}+ = object+ (catMaybes+ [("forwardedPorts" .=) <$> _nForwardedPorts,+ ("instanceTag" .=) <$> _nInstanceTag,+ ("name" .=) <$> _nName])++-- | HTTP headers to use for all responses from these URLs.+--+-- /See:/ 'staticFilesHandlerHTTPHeaders' smart constructor.+newtype StaticFilesHandlerHTTPHeaders = StaticFilesHandlerHTTPHeaders+ { _sfhhttphAddtional :: HashMap Text Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'StaticFilesHandlerHTTPHeaders' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sfhhttphAddtional'+staticFilesHandlerHTTPHeaders+ :: HashMap Text Text -- ^ 'sfhhttphAddtional'+ -> StaticFilesHandlerHTTPHeaders+staticFilesHandlerHTTPHeaders pSfhhttphAddtional_ =+ StaticFilesHandlerHTTPHeaders+ { _sfhhttphAddtional = _Coerce # pSfhhttphAddtional_+ }++sfhhttphAddtional :: Lens' StaticFilesHandlerHTTPHeaders (HashMap Text Text)+sfhhttphAddtional+ = lens _sfhhttphAddtional+ (\ s a -> s{_sfhhttphAddtional = a})+ . _Coerce++instance FromJSON StaticFilesHandlerHTTPHeaders where+ parseJSON+ = withObject "StaticFilesHandlerHTTPHeaders"+ (\ o ->+ StaticFilesHandlerHTTPHeaders <$>+ (parseJSONObject o))++instance ToJSON StaticFilesHandlerHTTPHeaders where+ toJSON = toJSON . _sfhhttphAddtional++-- | Used to specify how many machine resources an app version needs.+--+-- /See:/ 'resources' smart constructor.+data Resources = Resources+ { _rMemoryGb :: !(Maybe (Textual Double))+ , _rDiskGb :: !(Maybe (Textual Double))+ , _rCPU :: !(Maybe (Textual Double))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Resources' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rMemoryGb'+--+-- * 'rDiskGb'+--+-- * 'rCPU'+resources+ :: Resources+resources =+ Resources+ { _rMemoryGb = Nothing+ , _rDiskGb = Nothing+ , _rCPU = Nothing+ }++-- | How much memory, in GB, an app version needs.+rMemoryGb :: Lens' Resources (Maybe Double)+rMemoryGb+ = lens _rMemoryGb (\ s a -> s{_rMemoryGb = a}) .+ mapping _Coerce++-- | How much disk size, in GB, an app version needs.+rDiskGb :: Lens' Resources (Maybe Double)+rDiskGb+ = lens _rDiskGb (\ s a -> s{_rDiskGb = a}) .+ mapping _Coerce++-- | How many CPU cores an app version needs.+rCPU :: Lens' Resources (Maybe Double)+rCPU+ = lens _rCPU (\ s a -> s{_rCPU = a}) .+ mapping _Coerce++instance FromJSON Resources where+ parseJSON+ = withObject "Resources"+ (\ o ->+ Resources <$>+ (o .:? "memoryGb") <*> (o .:? "diskGb") <*>+ (o .:? "cpu"))++instance ToJSON Resources where+ toJSON Resources{..}+ = object+ (catMaybes+ [("memoryGb" .=) <$> _rMemoryGb,+ ("diskGb" .=) <$> _rDiskGb, ("cpu" .=) <$> _rCPU])++-- | A manifest of files stored in Google Cloud Storage which should be+-- included as part of this application. All files must be readable using+-- the credentials supplied with this call.+--+-- /See:/ 'deploymentFiles' smart constructor.+newtype DeploymentFiles = DeploymentFiles+ { _dfAddtional :: HashMap Text FileInfo+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DeploymentFiles' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dfAddtional'+deploymentFiles+ :: HashMap Text FileInfo -- ^ 'dfAddtional'+ -> DeploymentFiles+deploymentFiles pDfAddtional_ =+ DeploymentFiles+ { _dfAddtional = _Coerce # pDfAddtional_+ }++dfAddtional :: Lens' DeploymentFiles (HashMap Text FileInfo)+dfAddtional+ = lens _dfAddtional (\ s a -> s{_dfAddtional = a}) .+ _Coerce++instance FromJSON DeploymentFiles where+ parseJSON+ = withObject "DeploymentFiles"+ (\ o -> DeploymentFiles <$> (parseJSONObject o))++instance ToJSON DeploymentFiles where+ toJSON = toJSON . _dfAddtional++-- | Target scaling by CPU usage.+--+-- /See:/ 'cpuUtilization' smart constructor.+data CPUUtilization = CPUUtilization+ { _cuAggregationWindowLength :: !(Maybe Text)+ , _cuTargetUtilization :: !(Maybe (Textual Double))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CPUUtilization' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cuAggregationWindowLength'+--+-- * 'cuTargetUtilization'+cpuUtilization+ :: CPUUtilization+cpuUtilization =+ CPUUtilization+ { _cuAggregationWindowLength = Nothing+ , _cuTargetUtilization = Nothing+ }++-- | The period of time over which CPU utilization is calculated.+cuAggregationWindowLength :: Lens' CPUUtilization (Maybe Text)+cuAggregationWindowLength+ = lens _cuAggregationWindowLength+ (\ s a -> s{_cuAggregationWindowLength = a})++-- | Target (0-1) CPU utilization ratio to maintain when scaling.+cuTargetUtilization :: Lens' CPUUtilization (Maybe Double)+cuTargetUtilization+ = lens _cuTargetUtilization+ (\ s a -> s{_cuTargetUtilization = a})+ . mapping _Coerce++instance FromJSON CPUUtilization where+ parseJSON+ = withObject "CPUUtilization"+ (\ o ->+ CPUUtilization <$>+ (o .:? "aggregationWindowLength") <*>+ (o .:? "targetUtilization"))++instance ToJSON CPUUtilization where+ toJSON CPUUtilization{..}+ = object+ (catMaybes+ [("aggregationWindowLength" .=) <$>+ _cuAggregationWindowLength,+ ("targetUtilization" .=) <$> _cuTargetUtilization])++-- | Mapping from module version IDs within the module to fractional (0.000,+-- 1] allocations of traffic for that version. Each version may only be+-- specified once, but some versions in the module may not have any traffic+-- allocation. Modules that have traffic allocated in this field may not be+-- deleted until the module is deleted, or their traffic allocation is+-- removed. Allocations must sum to 1. Supports precision up to two decimal+-- places for IP-based splits and up to three decimal places for+-- cookie-based splits.+--+-- /See:/ 'trafficSplitAllocations' smart constructor.+newtype TrafficSplitAllocations = TrafficSplitAllocations+ { _tsaAddtional :: HashMap Text (Textual Double)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TrafficSplitAllocations' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tsaAddtional'+trafficSplitAllocations+ :: HashMap Text Double -- ^ 'tsaAddtional'+ -> TrafficSplitAllocations+trafficSplitAllocations pTsaAddtional_ =+ TrafficSplitAllocations+ { _tsaAddtional = _Coerce # pTsaAddtional_+ }++tsaAddtional :: Lens' TrafficSplitAllocations (HashMap Text Double)+tsaAddtional+ = lens _tsaAddtional (\ s a -> s{_tsaAddtional = a})+ . _Coerce++instance FromJSON TrafficSplitAllocations where+ parseJSON+ = withObject "TrafficSplitAllocations"+ (\ o ->+ TrafficSplitAllocations <$> (parseJSONObject o))++instance ToJSON TrafficSplitAllocations where+ toJSON = toJSON . _tsaAddtional++-- | A module with manual scaling runs continuously, allowing you to perform+-- complex initialization and rely on the state of its memory over time.+--+-- /See:/ 'manualScaling' smart constructor.+newtype ManualScaling = ManualScaling+ { _msInstances :: Maybe (Textual Int32)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ManualScaling' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'msInstances'+manualScaling+ :: ManualScaling+manualScaling =+ ManualScaling+ { _msInstances = Nothing+ }++-- | The number of instances to assign to the module at the start. This+-- number can later be altered by using the [Modules+-- API](https:\/\/cloud.google.com\/appengine\/docs\/python\/modules\/functions)+-- \`set_num_instances()\` function.+msInstances :: Lens' ManualScaling (Maybe Int32)+msInstances+ = lens _msInstances (\ s a -> s{_msInstances = a}) .+ mapping _Coerce++instance FromJSON ManualScaling where+ parseJSON+ = withObject "ManualScaling"+ (\ o -> ManualScaling <$> (o .:? "instances"))++instance ToJSON ManualScaling where+ toJSON ManualScaling{..}+ = object+ (catMaybes [("instances" .=) <$> _msInstances])++-- | A module with basic scaling will create an instance when the application+-- receives a request. The instance will be turned down when the app+-- becomes idle. Basic scaling is ideal for work that is intermittent or+-- driven by user activity.+--+-- /See:/ 'basicScaling' smart constructor.+data BasicScaling = BasicScaling+ { _bsMaxInstances :: !(Maybe (Textual Int32))+ , _bsIdleTimeout :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'BasicScaling' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'bsMaxInstances'+--+-- * 'bsIdleTimeout'+basicScaling+ :: BasicScaling+basicScaling =+ BasicScaling+ { _bsMaxInstances = Nothing+ , _bsIdleTimeout = Nothing+ }++-- | The maximum number of instances for App Engine to create for this+-- version.+bsMaxInstances :: Lens' BasicScaling (Maybe Int32)+bsMaxInstances+ = lens _bsMaxInstances+ (\ s a -> s{_bsMaxInstances = a})+ . mapping _Coerce++-- | The instance will be shut down this amount of time after receiving its+-- last request.+bsIdleTimeout :: Lens' BasicScaling (Maybe Text)+bsIdleTimeout+ = lens _bsIdleTimeout+ (\ s a -> s{_bsIdleTimeout = a})++instance FromJSON BasicScaling where+ parseJSON+ = withObject "BasicScaling"+ (\ o ->+ BasicScaling <$>+ (o .:? "maxInstances") <*> (o .:? "idleTimeout"))++instance ToJSON BasicScaling where+ toJSON BasicScaling{..}+ = object+ (catMaybes+ [("maxInstances" .=) <$> _bsMaxInstances,+ ("idleTimeout" .=) <$> _bsIdleTimeout])++-- | A Version is a specific set of source code and configuration files+-- deployed to a module.+--+-- /See:/ 'version' smart constructor.+data Version = Version+ { _vCreationTime :: !(Maybe Text)+ , _vRuntime :: !(Maybe Text)+ , _vDeployer :: !(Maybe Text)+ , _vNobuildFilesRegex :: !(Maybe Text)+ , _vInstanceClass :: !(Maybe Text)+ , _vHealthCheck :: !(Maybe HealthCheck)+ , _vEnv :: !(Maybe Text)+ , _vDefaultExpiration :: !(Maybe Text)+ , _vAutomaticScaling :: !(Maybe AutomaticScaling)+ , _vErrorHandlers :: !(Maybe [ErrorHandler])+ , _vVM :: !(Maybe Bool)+ , _vHandlers :: !(Maybe [URLMap])+ , _vInboundServices :: !(Maybe [Text])+ , _vNetwork :: !(Maybe Network)+ , _vResources :: !(Maybe Resources)+ , _vName :: !(Maybe Text)+ , _vThreadsafe :: !(Maybe Bool)+ , _vBetaSettings :: !(Maybe VersionBetaSettings)+ , _vBasicScaling :: !(Maybe BasicScaling)+ , _vManualScaling :: !(Maybe ManualScaling)+ , _vAPIConfig :: !(Maybe APIConfigHandler)+ , _vId :: !(Maybe Text)+ , _vEnvVariables :: !(Maybe VersionEnvVariables)+ , _vServingStatus :: !(Maybe Text)+ , _vLibraries :: !(Maybe [Library])+ , _vDeployment :: !(Maybe Deployment)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Version' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vCreationTime'+--+-- * 'vRuntime'+--+-- * 'vDeployer'+--+-- * 'vNobuildFilesRegex'+--+-- * 'vInstanceClass'+--+-- * 'vHealthCheck'+--+-- * 'vEnv'+--+-- * 'vDefaultExpiration'+--+-- * 'vAutomaticScaling'+--+-- * 'vErrorHandlers'+--+-- * 'vVM'+--+-- * 'vHandlers'+--+-- * 'vInboundServices'+--+-- * 'vNetwork'+--+-- * 'vResources'+--+-- * 'vName'+--+-- * 'vThreadsafe'+--+-- * 'vBetaSettings'+--+-- * 'vBasicScaling'+--+-- * 'vManualScaling'+--+-- * 'vAPIConfig'+--+-- * 'vId'+--+-- * 'vEnvVariables'+--+-- * 'vServingStatus'+--+-- * 'vLibraries'+--+-- * 'vDeployment'+version+ :: Version+version =+ Version+ { _vCreationTime = Nothing+ , _vRuntime = Nothing+ , _vDeployer = Nothing+ , _vNobuildFilesRegex = Nothing+ , _vInstanceClass = Nothing+ , _vHealthCheck = Nothing+ , _vEnv = Nothing+ , _vDefaultExpiration = Nothing+ , _vAutomaticScaling = Nothing+ , _vErrorHandlers = Nothing+ , _vVM = Nothing+ , _vHandlers = Nothing+ , _vInboundServices = Nothing+ , _vNetwork = Nothing+ , _vResources = Nothing+ , _vName = Nothing+ , _vThreadsafe = Nothing+ , _vBetaSettings = Nothing+ , _vBasicScaling = Nothing+ , _vManualScaling = Nothing+ , _vAPIConfig = Nothing+ , _vId = Nothing+ , _vEnvVariables = Nothing+ , _vServingStatus = Nothing+ , _vLibraries = Nothing+ , _vDeployment = Nothing+ }++-- | Creation time of this version. This will be between the start and end+-- times of the operation that creates this version. \'OutputOnly+vCreationTime :: Lens' Version (Maybe Text)+vCreationTime+ = lens _vCreationTime+ (\ s a -> s{_vCreationTime = a})++-- | The desired runtime. Values can include python27, java7, go, etc.+vRuntime :: Lens' Version (Maybe Text)+vRuntime = lens _vRuntime (\ s a -> s{_vRuntime = a})++-- | The email address of the user who created this version. \'OutputOnly+vDeployer :: Lens' Version (Maybe Text)+vDeployer+ = lens _vDeployer (\ s a -> s{_vDeployer = a})++-- | Go only. Files that match this pattern will not be built into the app.+-- May only be set on create requests.+vNobuildFilesRegex :: Lens' Version (Maybe Text)+vNobuildFilesRegex+ = lens _vNobuildFilesRegex+ (\ s a -> s{_vNobuildFilesRegex = a})++-- | The frontend instance class to use to run this app. Valid values are+-- \`[F1, F2, F4, F4_1G]\`. Default: \"F1\"+vInstanceClass :: Lens' Version (Maybe Text)+vInstanceClass+ = lens _vInstanceClass+ (\ s a -> s{_vInstanceClass = a})++-- | Configure health checking for the VM instances. Unhealthy VM instances+-- will be stopped and replaced with new instances. Only returned in+-- \`GET\` requests if \`view=FULL\` is set. May only be set on create+-- requests; once created, is immutable.+vHealthCheck :: Lens' Version (Maybe HealthCheck)+vHealthCheck+ = lens _vHealthCheck (\ s a -> s{_vHealthCheck = a})++-- | The App Engine execution environment to use for this version. Default:+-- \"1\"+vEnv :: Lens' Version (Maybe Text)+vEnv = lens _vEnv (\ s a -> s{_vEnv = a})++-- | The length of time a static file served by a static file handler ought+-- to be cached by web proxies and browsers, if the handler does not+-- specify its own expiration. Only returned in \`GET\` requests if+-- \`view=FULL\` is set. May only be set on create requests; once created,+-- is immutable.+vDefaultExpiration :: Lens' Version (Maybe Text)+vDefaultExpiration+ = lens _vDefaultExpiration+ (\ s a -> s{_vDefaultExpiration = a})++-- | Automatic scaling is the scaling policy that App Engine has used since+-- its inception. It is based on request rate, response latencies, and+-- other application metrics.+vAutomaticScaling :: Lens' Version (Maybe AutomaticScaling)+vAutomaticScaling+ = lens _vAutomaticScaling+ (\ s a -> s{_vAutomaticScaling = a})++-- | Custom static error pages instead of these generic error pages, (limit+-- 10 KB\/page) Only returned in \`GET\` requests if \`view=FULL\` is set.+-- May only be set on create requests; once created, is immutable.+vErrorHandlers :: Lens' Version [ErrorHandler]+vErrorHandlers+ = lens _vErrorHandlers+ (\ s a -> s{_vErrorHandlers = a})+ . _Default+ . _Coerce++-- | Whether to deploy this app in a VM container (deprecated, use+-- \"env\":\"2\").+vVM :: Lens' Version (Maybe Bool)+vVM = lens _vVM (\ s a -> s{_vVM = a})++-- | An ordered list of URL Matching patterns that should be applied to+-- incoming requests. The first matching URL consumes the request, and+-- subsequent handlers are not attempted. Only returned in \`GET\` requests+-- if \`view=FULL\` is set. May only be set on create requests; once+-- created, is immutable.+vHandlers :: Lens' Version [URLMap]+vHandlers+ = lens _vHandlers (\ s a -> s{_vHandlers = a}) .+ _Default+ . _Coerce++-- | Before an application can receive email or XMPP messages, the+-- application must be configured to enable the service.+vInboundServices :: Lens' Version [Text]+vInboundServices+ = lens _vInboundServices+ (\ s a -> s{_vInboundServices = a})+ . _Default+ . _Coerce++-- | Used to specify extra network settings (for VM runtimes only).+vNetwork :: Lens' Version (Maybe Network)+vNetwork = lens _vNetwork (\ s a -> s{_vNetwork = a})++-- | Used to specify how many machine resources an app version needs (for VM+-- runtimes only).+vResources :: Lens' Version (Maybe Resources)+vResources+ = lens _vResources (\ s a -> s{_vResources = a})++-- | The full path to the Version resource in the API. Example:+-- \"apps\/myapp\/modules\/default\/versions\/v1\". \'OutputOnly+vName :: Lens' Version (Maybe Text)+vName = lens _vName (\ s a -> s{_vName = a})++-- | If true, multiple requests can be dispatched to the app at once.+vThreadsafe :: Lens' Version (Maybe Bool)+vThreadsafe+ = lens _vThreadsafe (\ s a -> s{_vThreadsafe = a})++-- | Beta settings supplied to the application via metadata.+vBetaSettings :: Lens' Version (Maybe VersionBetaSettings)+vBetaSettings+ = lens _vBetaSettings+ (\ s a -> s{_vBetaSettings = a})++-- | A module with basic scaling will create an instance when the application+-- receives a request. The instance will be turned down when the app+-- becomes idle. Basic scaling is ideal for work that is intermittent or+-- driven by user activity.+vBasicScaling :: Lens' Version (Maybe BasicScaling)+vBasicScaling+ = lens _vBasicScaling+ (\ s a -> s{_vBasicScaling = a})++-- | A module with manual scaling runs continuously, allowing you to perform+-- complex initialization and rely on the state of its memory over time.+vManualScaling :: Lens' Version (Maybe ManualScaling)+vManualScaling+ = lens _vManualScaling+ (\ s a -> s{_vManualScaling = a})++-- | Serving configuration for Google Cloud Endpoints. Only returned in+-- \`GET\` requests if \`view=FULL\` is set. May only be set on create+-- requests; once created, is immutable.+vAPIConfig :: Lens' Version (Maybe APIConfigHandler)+vAPIConfig+ = lens _vAPIConfig (\ s a -> s{_vAPIConfig = a})++-- | The relative name\/path of the Version within the module. Example:+-- \"v1\". Version specifiers can contain lowercase letters, digits, and+-- hyphens. It cannot begin with the prefix \`ah-\` and the names+-- \`default\` and \`latest\` are reserved and cannot be used.+vId :: Lens' Version (Maybe Text)+vId = lens _vId (\ s a -> s{_vId = a})++-- | Environment variables made available to the application. Only returned+-- in \`GET\` requests if \`view=FULL\` is set. May only be set on create+-- requests; once created, is immutable.+vEnvVariables :: Lens' Version (Maybe VersionEnvVariables)+vEnvVariables+ = lens _vEnvVariables+ (\ s a -> s{_vEnvVariables = a})++-- | The current serving status of this version. Only \`SERVING\` versions+-- will have instances created or billed for. If this field is unset when a+-- version is created, \`SERVING\` status will be assumed. It is an error+-- to explicitly set this field to \`SERVING_STATUS_UNSPECIFIED\`.+vServingStatus :: Lens' Version (Maybe Text)+vServingStatus+ = lens _vServingStatus+ (\ s a -> s{_vServingStatus = a})++-- | Configuration for Python runtime third-party libraries required by the+-- application. Only returned in \`GET\` requests if \`view=FULL\` is set.+-- May only be set on create requests; once created, is immutable.+vLibraries :: Lens' Version [Library]+vLibraries+ = lens _vLibraries (\ s a -> s{_vLibraries = a}) .+ _Default+ . _Coerce++-- | Code and application artifacts that make up this version. Only returned+-- in \`GET\` requests if \`view=FULL\` is set. May only be set on create+-- requests; once created, is immutable.+vDeployment :: Lens' Version (Maybe Deployment)+vDeployment+ = lens _vDeployment (\ s a -> s{_vDeployment = a})++instance FromJSON Version where+ parseJSON+ = withObject "Version"+ (\ o ->+ Version <$>+ (o .:? "creationTime") <*> (o .:? "runtime") <*>+ (o .:? "deployer")+ <*> (o .:? "nobuildFilesRegex")+ <*> (o .:? "instanceClass")+ <*> (o .:? "healthCheck")+ <*> (o .:? "env")+ <*> (o .:? "defaultExpiration")+ <*> (o .:? "automaticScaling")+ <*> (o .:? "errorHandlers" .!= mempty)+ <*> (o .:? "vm")+ <*> (o .:? "handlers" .!= mempty)+ <*> (o .:? "inboundServices" .!= mempty)+ <*> (o .:? "network")+ <*> (o .:? "resources")+ <*> (o .:? "name")+ <*> (o .:? "threadsafe")+ <*> (o .:? "betaSettings")+ <*> (o .:? "basicScaling")+ <*> (o .:? "manualScaling")+ <*> (o .:? "apiConfig")+ <*> (o .:? "id")+ <*> (o .:? "envVariables")+ <*> (o .:? "servingStatus")+ <*> (o .:? "libraries" .!= mempty)+ <*> (o .:? "deployment"))++instance ToJSON Version where+ toJSON Version{..}+ = object+ (catMaybes+ [("creationTime" .=) <$> _vCreationTime,+ ("runtime" .=) <$> _vRuntime,+ ("deployer" .=) <$> _vDeployer,+ ("nobuildFilesRegex" .=) <$> _vNobuildFilesRegex,+ ("instanceClass" .=) <$> _vInstanceClass,+ ("healthCheck" .=) <$> _vHealthCheck,+ ("env" .=) <$> _vEnv,+ ("defaultExpiration" .=) <$> _vDefaultExpiration,+ ("automaticScaling" .=) <$> _vAutomaticScaling,+ ("errorHandlers" .=) <$> _vErrorHandlers,+ ("vm" .=) <$> _vVM, ("handlers" .=) <$> _vHandlers,+ ("inboundServices" .=) <$> _vInboundServices,+ ("network" .=) <$> _vNetwork,+ ("resources" .=) <$> _vResources,+ ("name" .=) <$> _vName,+ ("threadsafe" .=) <$> _vThreadsafe,+ ("betaSettings" .=) <$> _vBetaSettings,+ ("basicScaling" .=) <$> _vBasicScaling,+ ("manualScaling" .=) <$> _vManualScaling,+ ("apiConfig" .=) <$> _vAPIConfig, ("id" .=) <$> _vId,+ ("envVariables" .=) <$> _vEnvVariables,+ ("servingStatus" .=) <$> _vServingStatus,+ ("libraries" .=) <$> _vLibraries,+ ("deployment" .=) <$> _vDeployment])++-- | A module is a component of an application that provides a single service+-- or configuration. A module has a collection of versions that define a+-- specific set of code used to implement the functionality of that module.+--+-- /See:/ 'module'' smart constructor.+data Module = Module+ { _mSplit :: !(Maybe TrafficSplit)+ , _mName :: !(Maybe Text)+ , _mId :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Module' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mSplit'+--+-- * 'mName'+--+-- * 'mId'+module'+ :: Module+module' =+ Module+ { _mSplit = Nothing+ , _mName = Nothing+ , _mId = Nothing+ }++-- | A mapping that defines fractional HTTP traffic diversion to different+-- versions within the module.+mSplit :: Lens' Module (Maybe TrafficSplit)+mSplit = lens _mSplit (\ s a -> s{_mSplit = a})++-- | The full path to the Module resource in the API. Example:+-- \"apps\/myapp\/modules\/default\" \'OutputOnly+mName :: Lens' Module (Maybe Text)+mName = lens _mName (\ s a -> s{_mName = a})++-- | The relative name\/path of the module within the application. Example:+-- \"default\" \'OutputOnly+mId :: Lens' Module (Maybe Text)+mId = lens _mId (\ s a -> s{_mId = a})++instance FromJSON Module where+ parseJSON+ = withObject "Module"+ (\ o ->+ Module <$>+ (o .:? "split") <*> (o .:? "name") <*> (o .:? "id"))++instance ToJSON Module where+ toJSON Module{..}+ = object+ (catMaybes+ [("split" .=) <$> _mSplit, ("name" .=) <$> _mName,+ ("id" .=) <$> _mId])++-- | Files served directly to the user for a given URL, such as images, CSS+-- stylesheets, or JavaScript source files. Static file handlers describe+-- which files in the application directory are static files, and which+-- URLs serve them.+--+-- /See:/ 'staticFilesHandler' smart constructor.+data StaticFilesHandler = StaticFilesHandler+ { _sfhHTTPHeaders :: !(Maybe StaticFilesHandlerHTTPHeaders)+ , _sfhPath :: !(Maybe Text)+ , _sfhRequireMatchingFile :: !(Maybe Bool)+ , _sfhExpiration :: !(Maybe Text)+ , _sfhMimeType :: !(Maybe Text)+ , _sfhApplicationReadable :: !(Maybe Bool)+ , _sfhUploadPathRegex :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'StaticFilesHandler' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sfhHTTPHeaders'+--+-- * 'sfhPath'+--+-- * 'sfhRequireMatchingFile'+--+-- * 'sfhExpiration'+--+-- * 'sfhMimeType'+--+-- * 'sfhApplicationReadable'+--+-- * 'sfhUploadPathRegex'+staticFilesHandler+ :: StaticFilesHandler+staticFilesHandler =+ StaticFilesHandler+ { _sfhHTTPHeaders = Nothing+ , _sfhPath = Nothing+ , _sfhRequireMatchingFile = Nothing+ , _sfhExpiration = Nothing+ , _sfhMimeType = Nothing+ , _sfhApplicationReadable = Nothing+ , _sfhUploadPathRegex = Nothing+ }++-- | HTTP headers to use for all responses from these URLs.+sfhHTTPHeaders :: Lens' StaticFilesHandler (Maybe StaticFilesHandlerHTTPHeaders)+sfhHTTPHeaders+ = lens _sfhHTTPHeaders+ (\ s a -> s{_sfhHTTPHeaders = a})++-- | The path to the static files matched by the URL pattern, from the+-- application root directory. The path can refer to text matched in+-- groupings in the URL pattern.+sfhPath :: Lens' StaticFilesHandler (Maybe Text)+sfhPath = lens _sfhPath (\ s a -> s{_sfhPath = a})++-- | If true, this [UrlMap][google.appengine.v1beta4.UrlMap] entry does not+-- match the request unless the file referenced by the handler also exists.+-- If no such file exists, processing will continue with the next+-- [UrlMap][google.appengine.v1beta4.UrlMap] that matches the requested+-- URL.+sfhRequireMatchingFile :: Lens' StaticFilesHandler (Maybe Bool)+sfhRequireMatchingFile+ = lens _sfhRequireMatchingFile+ (\ s a -> s{_sfhRequireMatchingFile = a})++-- | The length of time a static file served by this handler ought to be+-- cached by web proxies and browsers.+sfhExpiration :: Lens' StaticFilesHandler (Maybe Text)+sfhExpiration+ = lens _sfhExpiration+ (\ s a -> s{_sfhExpiration = a})++-- | If specified, all files served by this handler will be served using the+-- specified MIME type. If not specified, the MIME type for a file will be+-- derived from the file\'s filename extension.+sfhMimeType :: Lens' StaticFilesHandler (Maybe Text)+sfhMimeType+ = lens _sfhMimeType (\ s a -> s{_sfhMimeType = a})++-- | By default, files declared in static file handlers are uploaded as+-- static data and are only served to end users, they cannot be read by an+-- application. If this field is set to true, the files are also uploaded+-- as code data so your application can read them. Both uploads are charged+-- against your code and static data storage resource quotas.+sfhApplicationReadable :: Lens' StaticFilesHandler (Maybe Bool)+sfhApplicationReadable+ = lens _sfhApplicationReadable+ (\ s a -> s{_sfhApplicationReadable = a})++-- | A regular expression that matches the file paths for all files that will+-- be referenced by this handler.+sfhUploadPathRegex :: Lens' StaticFilesHandler (Maybe Text)+sfhUploadPathRegex+ = lens _sfhUploadPathRegex+ (\ s a -> s{_sfhUploadPathRegex = a})++instance FromJSON StaticFilesHandler where+ parseJSON+ = withObject "StaticFilesHandler"+ (\ o ->+ StaticFilesHandler <$>+ (o .:? "httpHeaders") <*> (o .:? "path") <*>+ (o .:? "requireMatchingFile")+ <*> (o .:? "expiration")+ <*> (o .:? "mimeType")+ <*> (o .:? "applicationReadable")+ <*> (o .:? "uploadPathRegex"))++instance ToJSON StaticFilesHandler where+ toJSON StaticFilesHandler{..}+ = object+ (catMaybes+ [("httpHeaders" .=) <$> _sfhHTTPHeaders,+ ("path" .=) <$> _sfhPath,+ ("requireMatchingFile" .=) <$>+ _sfhRequireMatchingFile,+ ("expiration" .=) <$> _sfhExpiration,+ ("mimeType" .=) <$> _sfhMimeType,+ ("applicationReadable" .=) <$>+ _sfhApplicationReadable,+ ("uploadPathRegex" .=) <$> _sfhUploadPathRegex])++-- | A custom static error page to be served when an error occurs.+--+-- /See:/ 'errorHandler' smart constructor.+data ErrorHandler = ErrorHandler+ { _ehMimeType :: !(Maybe Text)+ , _ehErrorCode :: !(Maybe Text)+ , _ehStaticFile :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ErrorHandler' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ehMimeType'+--+-- * 'ehErrorCode'+--+-- * 'ehStaticFile'+errorHandler+ :: ErrorHandler+errorHandler =+ ErrorHandler+ { _ehMimeType = Nothing+ , _ehErrorCode = Nothing+ , _ehStaticFile = Nothing+ }++-- | MIME type of file. If unspecified, \"text\/html\" is assumed.+ehMimeType :: Lens' ErrorHandler (Maybe Text)+ehMimeType+ = lens _ehMimeType (\ s a -> s{_ehMimeType = a})++-- | The error condition this handler applies to.+ehErrorCode :: Lens' ErrorHandler (Maybe Text)+ehErrorCode+ = lens _ehErrorCode (\ s a -> s{_ehErrorCode = a})++-- | Static file content to be served for this error.+ehStaticFile :: Lens' ErrorHandler (Maybe Text)+ehStaticFile+ = lens _ehStaticFile (\ s a -> s{_ehStaticFile = a})++instance FromJSON ErrorHandler where+ parseJSON+ = withObject "ErrorHandler"+ (\ o ->+ ErrorHandler <$>+ (o .:? "mimeType") <*> (o .:? "errorCode") <*>+ (o .:? "staticFile"))++instance ToJSON ErrorHandler where+ toJSON ErrorHandler{..}+ = object+ (catMaybes+ [("mimeType" .=) <$> _ehMimeType,+ ("errorCode" .=) <$> _ehErrorCode,+ ("staticFile" .=) <$> _ehStaticFile])++-- | Metadata for the given+-- [google.longrunning.Operation][google.longrunning.Operation].+--+-- /See:/ 'operationMetadata' smart constructor.+data OperationMetadata = OperationMetadata+ { _omInsertTime :: !(Maybe Text)+ , _omUser :: !(Maybe Text)+ , _omMethod :: !(Maybe Text)+ , _omEndTime :: !(Maybe Text)+ , _omOperationType :: !(Maybe Text)+ , _omTarget :: !(Maybe Text)+ } 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:+--+-- * 'omInsertTime'+--+-- * 'omUser'+--+-- * 'omMethod'+--+-- * 'omEndTime'+--+-- * 'omOperationType'+--+-- * 'omTarget'+operationMetadata+ :: OperationMetadata+operationMetadata =+ OperationMetadata+ { _omInsertTime = Nothing+ , _omUser = Nothing+ , _omMethod = Nothing+ , _omEndTime = Nothing+ , _omOperationType = Nothing+ , _omTarget = Nothing+ }++-- | Timestamp that this operation was received. \'OutputOnly+omInsertTime :: Lens' OperationMetadata (Maybe Text)+omInsertTime+ = lens _omInsertTime (\ s a -> s{_omInsertTime = a})++-- | The user who requested this operation. \'OutputOnly+omUser :: Lens' OperationMetadata (Maybe Text)+omUser = lens _omUser (\ s a -> s{_omUser = a})++-- | API method name that initiated the operation. Example:+-- \"google.appengine.v1beta4.Version.CreateVersion\". \'OutputOnly+omMethod :: Lens' OperationMetadata (Maybe Text)+omMethod = lens _omMethod (\ s a -> s{_omMethod = a})++-- | Timestamp that this operation was completed. (Not present if the+-- operation is still in progress.) \'OutputOnly+omEndTime :: Lens' OperationMetadata (Maybe Text)+omEndTime+ = lens _omEndTime (\ s a -> s{_omEndTime = a})++-- | The type of the operation (deprecated, use method field instead).+-- Example: \"create_version\". \'OutputOnly+omOperationType :: Lens' OperationMetadata (Maybe Text)+omOperationType+ = lens _omOperationType+ (\ s a -> s{_omOperationType = a})++-- | Resource that this operation is acting on. Example:+-- \"apps\/myapp\/modules\/default\". \'OutputOnly+omTarget :: Lens' OperationMetadata (Maybe Text)+omTarget = lens _omTarget (\ s a -> s{_omTarget = a})++instance FromJSON OperationMetadata where+ parseJSON+ = withObject "OperationMetadata"+ (\ o ->+ OperationMetadata <$>+ (o .:? "insertTime") <*> (o .:? "user") <*>+ (o .:? "method")+ <*> (o .:? "endTime")+ <*> (o .:? "operationType")+ <*> (o .:? "target"))++instance ToJSON OperationMetadata where+ toJSON OperationMetadata{..}+ = object+ (catMaybes+ [("insertTime" .=) <$> _omInsertTime,+ ("user" .=) <$> _omUser, ("method" .=) <$> _omMethod,+ ("endTime" .=) <$> _omEndTime,+ ("operationType" .=) <$> _omOperationType,+ ("target" .=) <$> _omTarget])++-- | A reference to a particular snapshot of the source tree used to build+-- and deploy the application.+--+-- /See:/ 'sourceReference' smart constructor.+data SourceReference = SourceReference+ { _srRepository :: !(Maybe Text)+ , _srRevisionId :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'SourceReference' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'srRepository'+--+-- * 'srRevisionId'+sourceReference+ :: SourceReference+sourceReference =+ SourceReference+ { _srRepository = Nothing+ , _srRevisionId = Nothing+ }++-- | Optional. A URI string identifying the repository. Example:+-- \"https:\/\/source.developers.google.com\/p\/app-123\/r\/default\"+srRepository :: Lens' SourceReference (Maybe Text)+srRepository+ = lens _srRepository (\ s a -> s{_srRepository = a})++-- | The canonical (and persistent) identifier of the deployed revision, i.e.+-- any kind of aliases including tags or branch names are not allowed.+-- Example (git): \"2198322f89e0bb2e25021667c2ed489d1fd34e6b\"+srRevisionId :: Lens' SourceReference (Maybe Text)+srRevisionId+ = lens _srRevisionId (\ s a -> s{_srRevisionId = a})++instance FromJSON SourceReference where+ parseJSON+ = withObject "SourceReference"+ (\ o ->+ SourceReference <$>+ (o .:? "repository") <*> (o .:? "revisionId"))++instance ToJSON SourceReference where+ toJSON SourceReference{..}+ = object+ (catMaybes+ [("repository" .=) <$> _srRepository,+ ("revisionId" .=) <$> _srRevisionId])++-- | 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 \'ype 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++-- | A Docker (container) image which should be used to start the+-- application.+--+-- /See:/ 'containerInfo' smart constructor.+newtype ContainerInfo = ContainerInfo+ { _ciImage :: Maybe Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ContainerInfo' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ciImage'+containerInfo+ :: ContainerInfo+containerInfo =+ ContainerInfo+ { _ciImage = Nothing+ }++-- | Reference to a hosted container image. Must be a URI to a resource in a+-- Docker repository. Must be fully qualified, including tag or digest.+-- e.g. gcr.io\/my-project\/image:tag or gcr.io\/my-project\/image\'digest+ciImage :: Lens' ContainerInfo (Maybe Text)+ciImage = lens _ciImage (\ s a -> s{_ciImage = a})++instance FromJSON ContainerInfo where+ parseJSON+ = withObject "ContainerInfo"+ (\ o -> ContainerInfo <$> (o .:? "image"))++instance ToJSON ContainerInfo where+ toJSON ContainerInfo{..}+ = object (catMaybes [("image" .=) <$> _ciImage])++-- | Code and application artifacts used to deploy a version to App Engine.+--+-- /See:/ 'deployment' smart constructor.+data Deployment = Deployment+ { _dContainer :: !(Maybe ContainerInfo)+ , _dFiles :: !(Maybe DeploymentFiles)+ , _dSourceReferences :: !(Maybe [SourceReference])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Deployment' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dContainer'+--+-- * 'dFiles'+--+-- * 'dSourceReferences'+deployment+ :: Deployment+deployment =+ Deployment+ { _dContainer = Nothing+ , _dFiles = Nothing+ , _dSourceReferences = Nothing+ }++-- | If supplied, a docker (container) image which should be used to start+-- the application. Only applicable to the \'vm\' runtime.+dContainer :: Lens' Deployment (Maybe ContainerInfo)+dContainer+ = lens _dContainer (\ s a -> s{_dContainer = a})++-- | A manifest of files stored in Google Cloud Storage which should be+-- included as part of this application. All files must be readable using+-- the credentials supplied with this call.+dFiles :: Lens' Deployment (Maybe DeploymentFiles)+dFiles = lens _dFiles (\ s a -> s{_dFiles = a})++-- | The origin of the source code for this deployment. There can be more+-- than one source reference per Version if source code is distributed+-- among multiple repositories.+dSourceReferences :: Lens' Deployment [SourceReference]+dSourceReferences+ = lens _dSourceReferences+ (\ s a -> s{_dSourceReferences = a})+ . _Default+ . _Coerce++instance FromJSON Deployment where+ parseJSON+ = withObject "Deployment"+ (\ o ->+ Deployment <$>+ (o .:? "container") <*> (o .:? "files") <*>+ (o .:? "sourceReferences" .!= mempty))++instance ToJSON Deployment where+ toJSON Deployment{..}+ = object+ (catMaybes+ [("container" .=) <$> _dContainer,+ ("files" .=) <$> _dFiles,+ ("sourceReferences" .=) <$> _dSourceReferences])++-- | Files served directly to the user for a given URL, such as images, CSS+-- stylesheets, or JavaScript source files. Static directory handlers make+-- it easy to serve the entire contents of a directory as static files.+--+-- /See:/ 'staticDirectoryHandler' smart constructor.+data StaticDirectoryHandler = StaticDirectoryHandler+ { _sdhHTTPHeaders :: !(Maybe StaticDirectoryHandlerHTTPHeaders)+ , _sdhRequireMatchingFile :: !(Maybe Bool)+ , _sdhExpiration :: !(Maybe Text)+ , _sdhMimeType :: !(Maybe Text)+ , _sdhApplicationReadable :: !(Maybe Bool)+ , _sdhDirectory :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'StaticDirectoryHandler' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sdhHTTPHeaders'+--+-- * 'sdhRequireMatchingFile'+--+-- * 'sdhExpiration'+--+-- * 'sdhMimeType'+--+-- * 'sdhApplicationReadable'+--+-- * 'sdhDirectory'+staticDirectoryHandler+ :: StaticDirectoryHandler+staticDirectoryHandler =+ StaticDirectoryHandler+ { _sdhHTTPHeaders = Nothing+ , _sdhRequireMatchingFile = Nothing+ , _sdhExpiration = Nothing+ , _sdhMimeType = Nothing+ , _sdhApplicationReadable = Nothing+ , _sdhDirectory = Nothing+ }++-- | HTTP headers to use for all responses from these URLs.+sdhHTTPHeaders :: Lens' StaticDirectoryHandler (Maybe StaticDirectoryHandlerHTTPHeaders)+sdhHTTPHeaders+ = lens _sdhHTTPHeaders+ (\ s a -> s{_sdhHTTPHeaders = a})++-- | If true, this UrlMap entry does not match the request unless the file+-- referenced by the handler also exists. If no such file exists,+-- processing will continue with the next UrlMap that matches the requested+-- URL.+sdhRequireMatchingFile :: Lens' StaticDirectoryHandler (Maybe Bool)+sdhRequireMatchingFile+ = lens _sdhRequireMatchingFile+ (\ s a -> s{_sdhRequireMatchingFile = a})++-- | The length of time a static file served by this handler ought to be+-- cached by web proxies and browsers.+sdhExpiration :: Lens' StaticDirectoryHandler (Maybe Text)+sdhExpiration+ = lens _sdhExpiration+ (\ s a -> s{_sdhExpiration = a})++-- | If specified, all files served by this handler will be served using the+-- specified MIME type. If not specified, the MIME type for a file will be+-- derived from the file\'s filename extension.+sdhMimeType :: Lens' StaticDirectoryHandler (Maybe Text)+sdhMimeType+ = lens _sdhMimeType (\ s a -> s{_sdhMimeType = a})++-- | By default, files declared in static file handlers are uploaded as+-- static data and are only served to end users, they cannot be read by an+-- application. If this field is set to true, the files are also uploaded+-- as code data so your application can read them. Both uploads are charged+-- against your code and static data storage resource quotas.+sdhApplicationReadable :: Lens' StaticDirectoryHandler (Maybe Bool)+sdhApplicationReadable+ = lens _sdhApplicationReadable+ (\ s a -> s{_sdhApplicationReadable = a})++-- | The path to the directory containing the static files, from the+-- application root directory. Everything after the end of the matched url+-- pattern is appended to static_dir to form the full path to the requested+-- file.+sdhDirectory :: Lens' StaticDirectoryHandler (Maybe Text)+sdhDirectory+ = lens _sdhDirectory (\ s a -> s{_sdhDirectory = a})++instance FromJSON StaticDirectoryHandler where+ parseJSON+ = withObject "StaticDirectoryHandler"+ (\ o ->+ StaticDirectoryHandler <$>+ (o .:? "httpHeaders") <*>+ (o .:? "requireMatchingFile")+ <*> (o .:? "expiration")+ <*> (o .:? "mimeType")+ <*> (o .:? "applicationReadable")+ <*> (o .:? "directory"))++instance ToJSON StaticDirectoryHandler where+ toJSON StaticDirectoryHandler{..}+ = object+ (catMaybes+ [("httpHeaders" .=) <$> _sdhHTTPHeaders,+ ("requireMatchingFile" .=) <$>+ _sdhRequireMatchingFile,+ ("expiration" .=) <$> _sdhExpiration,+ ("mimeType" .=) <$> _sdhMimeType,+ ("applicationReadable" .=) <$>+ _sdhApplicationReadable,+ ("directory" .=) <$> _sdhDirectory])
+ gen/Network/Google/AppEngine/Types/Sum.hs view
@@ -0,0 +1,19 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.AppEngine.Types.Sum+-- Copyright : (c) 2015 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.AppEngine.Types.Sum where++import Network.Google.Prelude
+ gen/Network/Google/Resource/AppEngine/Apps/Get.hs view
@@ -0,0 +1,181 @@+{-# 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.AppEngine.Apps.Get+-- Copyright : (c) 2015 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 information about an application.+--+-- /See:/ <https://developers.google.com/appengine/ Google App Engine Admin API Reference> for @appengine.apps.get@.+module Network.Google.Resource.AppEngine.Apps.Get+ (+ -- * REST Resource+ AppsGetResource++ -- * Creating a Request+ , appsGet+ , AppsGet++ -- * Request Lenses+ , agXgafv+ , agUploadProtocol+ , agPp+ , agAccessToken+ , agUploadType+ , agBearerToken+ , agAppsId+ , agEnsureResourcesExist+ , agCallback+ ) where++import Network.Google.AppEngine.Types+import Network.Google.Prelude++-- | A resource alias for @appengine.apps.get@ method which the+-- 'AppsGet' request conforms to.+type AppsGetResource =+ "v1beta4" :>+ "apps" :>+ Capture "appsId" Text :>+ QueryParam "$.xgafv" Text :>+ QueryParam "upload_protocol" Text :>+ QueryParam "pp" Bool :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "bearer_token" Text :>+ QueryParam "ensureResourcesExist" Bool :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] Application++-- | Gets information about an application.+--+-- /See:/ 'appsGet' smart constructor.+data AppsGet = AppsGet+ { _agXgafv :: !(Maybe Text)+ , _agUploadProtocol :: !(Maybe Text)+ , _agPp :: !Bool+ , _agAccessToken :: !(Maybe Text)+ , _agUploadType :: !(Maybe Text)+ , _agBearerToken :: !(Maybe Text)+ , _agAppsId :: !Text+ , _agEnsureResourcesExist :: !(Maybe Bool)+ , _agCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AppsGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'agXgafv'+--+-- * 'agUploadProtocol'+--+-- * 'agPp'+--+-- * 'agAccessToken'+--+-- * 'agUploadType'+--+-- * 'agBearerToken'+--+-- * 'agAppsId'+--+-- * 'agEnsureResourcesExist'+--+-- * 'agCallback'+appsGet+ :: Text -- ^ 'agAppsId'+ -> AppsGet+appsGet pAgAppsId_ =+ AppsGet+ { _agXgafv = Nothing+ , _agUploadProtocol = Nothing+ , _agPp = True+ , _agAccessToken = Nothing+ , _agUploadType = Nothing+ , _agBearerToken = Nothing+ , _agAppsId = pAgAppsId_+ , _agEnsureResourcesExist = Nothing+ , _agCallback = Nothing+ }++-- | V1 error format.+agXgafv :: Lens' AppsGet (Maybe Text)+agXgafv = lens _agXgafv (\ s a -> s{_agXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+agUploadProtocol :: Lens' AppsGet (Maybe Text)+agUploadProtocol+ = lens _agUploadProtocol+ (\ s a -> s{_agUploadProtocol = a})++-- | Pretty-print response.+agPp :: Lens' AppsGet Bool+agPp = lens _agPp (\ s a -> s{_agPp = a})++-- | OAuth access token.+agAccessToken :: Lens' AppsGet (Maybe Text)+agAccessToken+ = lens _agAccessToken+ (\ s a -> s{_agAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+agUploadType :: Lens' AppsGet (Maybe Text)+agUploadType+ = lens _agUploadType (\ s a -> s{_agUploadType = a})++-- | OAuth bearer token.+agBearerToken :: Lens' AppsGet (Maybe Text)+agBearerToken+ = lens _agBearerToken+ (\ s a -> s{_agBearerToken = a})++-- | Part of \`name\`. Name of the application to get. For example:+-- \"apps\/myapp\".+agAppsId :: Lens' AppsGet Text+agAppsId = lens _agAppsId (\ s a -> s{_agAppsId = a})++-- | Certain resources associated with an application are created on-demand.+-- Controls whether these resources should be created when performing the+-- \`GET\` operation. If specified and any resources cloud not be created,+-- the request will fail with an error code.+agEnsureResourcesExist :: Lens' AppsGet (Maybe Bool)+agEnsureResourcesExist+ = lens _agEnsureResourcesExist+ (\ s a -> s{_agEnsureResourcesExist = a})++-- | JSONP+agCallback :: Lens' AppsGet (Maybe Text)+agCallback+ = lens _agCallback (\ s a -> s{_agCallback = a})++instance GoogleRequest AppsGet where+ type Rs AppsGet = Application+ requestClient AppsGet{..}+ = go _agAppsId _agXgafv _agUploadProtocol+ (Just _agPp)+ _agAccessToken+ _agUploadType+ _agBearerToken+ _agEnsureResourcesExist+ _agCallback+ (Just AltJSON)+ appEngineService+ where go+ = buildClient (Proxy :: Proxy AppsGetResource) mempty
+ gen/Network/Google/Resource/AppEngine/Apps/Modules/Delete.hs view
@@ -0,0 +1,184 @@+{-# 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.AppEngine.Apps.Modules.Delete+-- Copyright : (c) 2015 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)+--+-- Deletes a module and all enclosed versions.+--+-- /See:/ <https://developers.google.com/appengine/ Google App Engine Admin API Reference> for @appengine.apps.modules.delete@.+module Network.Google.Resource.AppEngine.Apps.Modules.Delete+ (+ -- * REST Resource+ AppsModulesDeleteResource++ -- * Creating a Request+ , appsModulesDelete+ , AppsModulesDelete++ -- * Request Lenses+ , amdXgafv+ , amdUploadProtocol+ , amdPp+ , amdAccessToken+ , amdUploadType+ , amdModulesId+ , amdBearerToken+ , amdAppsId+ , amdCallback+ ) where++import Network.Google.AppEngine.Types+import Network.Google.Prelude++-- | A resource alias for @appengine.apps.modules.delete@ method which the+-- 'AppsModulesDelete' request conforms to.+type AppsModulesDeleteResource =+ "v1beta4" :>+ "apps" :>+ Capture "appsId" Text :>+ "modules" :>+ Capture "modulesId" Text :>+ QueryParam "$.xgafv" Text :>+ QueryParam "upload_protocol" Text :>+ QueryParam "pp" Bool :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "bearer_token" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ Delete '[JSON] Operation++-- | Deletes a module and all enclosed versions.+--+-- /See:/ 'appsModulesDelete' smart constructor.+data AppsModulesDelete = AppsModulesDelete+ { _amdXgafv :: !(Maybe Text)+ , _amdUploadProtocol :: !(Maybe Text)+ , _amdPp :: !Bool+ , _amdAccessToken :: !(Maybe Text)+ , _amdUploadType :: !(Maybe Text)+ , _amdModulesId :: !Text+ , _amdBearerToken :: !(Maybe Text)+ , _amdAppsId :: !Text+ , _amdCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AppsModulesDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'amdXgafv'+--+-- * 'amdUploadProtocol'+--+-- * 'amdPp'+--+-- * 'amdAccessToken'+--+-- * 'amdUploadType'+--+-- * 'amdModulesId'+--+-- * 'amdBearerToken'+--+-- * 'amdAppsId'+--+-- * 'amdCallback'+appsModulesDelete+ :: Text -- ^ 'amdModulesId'+ -> Text -- ^ 'amdAppsId'+ -> AppsModulesDelete+appsModulesDelete pAmdModulesId_ pAmdAppsId_ =+ AppsModulesDelete+ { _amdXgafv = Nothing+ , _amdUploadProtocol = Nothing+ , _amdPp = True+ , _amdAccessToken = Nothing+ , _amdUploadType = Nothing+ , _amdModulesId = pAmdModulesId_+ , _amdBearerToken = Nothing+ , _amdAppsId = pAmdAppsId_+ , _amdCallback = Nothing+ }++-- | V1 error format.+amdXgafv :: Lens' AppsModulesDelete (Maybe Text)+amdXgafv = lens _amdXgafv (\ s a -> s{_amdXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+amdUploadProtocol :: Lens' AppsModulesDelete (Maybe Text)+amdUploadProtocol+ = lens _amdUploadProtocol+ (\ s a -> s{_amdUploadProtocol = a})++-- | Pretty-print response.+amdPp :: Lens' AppsModulesDelete Bool+amdPp = lens _amdPp (\ s a -> s{_amdPp = a})++-- | OAuth access token.+amdAccessToken :: Lens' AppsModulesDelete (Maybe Text)+amdAccessToken+ = lens _amdAccessToken+ (\ s a -> s{_amdAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+amdUploadType :: Lens' AppsModulesDelete (Maybe Text)+amdUploadType+ = lens _amdUploadType+ (\ s a -> s{_amdUploadType = a})++-- | Part of \`name\`. See documentation of \`appsId\`.+amdModulesId :: Lens' AppsModulesDelete Text+amdModulesId+ = lens _amdModulesId (\ s a -> s{_amdModulesId = a})++-- | OAuth bearer token.+amdBearerToken :: Lens' AppsModulesDelete (Maybe Text)+amdBearerToken+ = lens _amdBearerToken+ (\ s a -> s{_amdBearerToken = a})++-- | Part of \`name\`. Name of the resource requested. For example:+-- \"apps\/myapp\/modules\/default\".+amdAppsId :: Lens' AppsModulesDelete Text+amdAppsId+ = lens _amdAppsId (\ s a -> s{_amdAppsId = a})++-- | JSONP+amdCallback :: Lens' AppsModulesDelete (Maybe Text)+amdCallback+ = lens _amdCallback (\ s a -> s{_amdCallback = a})++instance GoogleRequest AppsModulesDelete where+ type Rs AppsModulesDelete = Operation+ requestClient AppsModulesDelete{..}+ = go _amdAppsId _amdModulesId _amdXgafv+ _amdUploadProtocol+ (Just _amdPp)+ _amdAccessToken+ _amdUploadType+ _amdBearerToken+ _amdCallback+ (Just AltJSON)+ appEngineService+ where go+ = buildClient+ (Proxy :: Proxy AppsModulesDeleteResource)+ mempty
+ gen/Network/Google/Resource/AppEngine/Apps/Modules/Get.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.AppEngine.Apps.Modules.Get+-- Copyright : (c) 2015 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 current configuration of the module.+--+-- /See:/ <https://developers.google.com/appengine/ Google App Engine Admin API Reference> for @appengine.apps.modules.get@.+module Network.Google.Resource.AppEngine.Apps.Modules.Get+ (+ -- * REST Resource+ AppsModulesGetResource++ -- * Creating a Request+ , appsModulesGet+ , AppsModulesGet++ -- * Request Lenses+ , amgXgafv+ , amgUploadProtocol+ , amgPp+ , amgAccessToken+ , amgUploadType+ , amgModulesId+ , amgBearerToken+ , amgAppsId+ , amgCallback+ ) where++import Network.Google.AppEngine.Types+import Network.Google.Prelude++-- | A resource alias for @appengine.apps.modules.get@ method which the+-- 'AppsModulesGet' request conforms to.+type AppsModulesGetResource =+ "v1beta4" :>+ "apps" :>+ Capture "appsId" Text :>+ "modules" :>+ Capture "modulesId" Text :>+ QueryParam "$.xgafv" Text :>+ QueryParam "upload_protocol" Text :>+ QueryParam "pp" Bool :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "bearer_token" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] Module++-- | Gets the current configuration of the module.+--+-- /See:/ 'appsModulesGet' smart constructor.+data AppsModulesGet = AppsModulesGet+ { _amgXgafv :: !(Maybe Text)+ , _amgUploadProtocol :: !(Maybe Text)+ , _amgPp :: !Bool+ , _amgAccessToken :: !(Maybe Text)+ , _amgUploadType :: !(Maybe Text)+ , _amgModulesId :: !Text+ , _amgBearerToken :: !(Maybe Text)+ , _amgAppsId :: !Text+ , _amgCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AppsModulesGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'amgXgafv'+--+-- * 'amgUploadProtocol'+--+-- * 'amgPp'+--+-- * 'amgAccessToken'+--+-- * 'amgUploadType'+--+-- * 'amgModulesId'+--+-- * 'amgBearerToken'+--+-- * 'amgAppsId'+--+-- * 'amgCallback'+appsModulesGet+ :: Text -- ^ 'amgModulesId'+ -> Text -- ^ 'amgAppsId'+ -> AppsModulesGet+appsModulesGet pAmgModulesId_ pAmgAppsId_ =+ AppsModulesGet+ { _amgXgafv = Nothing+ , _amgUploadProtocol = Nothing+ , _amgPp = True+ , _amgAccessToken = Nothing+ , _amgUploadType = Nothing+ , _amgModulesId = pAmgModulesId_+ , _amgBearerToken = Nothing+ , _amgAppsId = pAmgAppsId_+ , _amgCallback = Nothing+ }++-- | V1 error format.+amgXgafv :: Lens' AppsModulesGet (Maybe Text)+amgXgafv = lens _amgXgafv (\ s a -> s{_amgXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+amgUploadProtocol :: Lens' AppsModulesGet (Maybe Text)+amgUploadProtocol+ = lens _amgUploadProtocol+ (\ s a -> s{_amgUploadProtocol = a})++-- | Pretty-print response.+amgPp :: Lens' AppsModulesGet Bool+amgPp = lens _amgPp (\ s a -> s{_amgPp = a})++-- | OAuth access token.+amgAccessToken :: Lens' AppsModulesGet (Maybe Text)+amgAccessToken+ = lens _amgAccessToken+ (\ s a -> s{_amgAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+amgUploadType :: Lens' AppsModulesGet (Maybe Text)+amgUploadType+ = lens _amgUploadType+ (\ s a -> s{_amgUploadType = a})++-- | Part of \`name\`. See documentation of \`appsId\`.+amgModulesId :: Lens' AppsModulesGet Text+amgModulesId+ = lens _amgModulesId (\ s a -> s{_amgModulesId = a})++-- | OAuth bearer token.+amgBearerToken :: Lens' AppsModulesGet (Maybe Text)+amgBearerToken+ = lens _amgBearerToken+ (\ s a -> s{_amgBearerToken = a})++-- | Part of \`name\`. Name of the resource requested. For example:+-- \"apps\/myapp\/modules\/default\".+amgAppsId :: Lens' AppsModulesGet Text+amgAppsId+ = lens _amgAppsId (\ s a -> s{_amgAppsId = a})++-- | JSONP+amgCallback :: Lens' AppsModulesGet (Maybe Text)+amgCallback+ = lens _amgCallback (\ s a -> s{_amgCallback = a})++instance GoogleRequest AppsModulesGet where+ type Rs AppsModulesGet = Module+ requestClient AppsModulesGet{..}+ = go _amgAppsId _amgModulesId _amgXgafv+ _amgUploadProtocol+ (Just _amgPp)+ _amgAccessToken+ _amgUploadType+ _amgBearerToken+ _amgCallback+ (Just AltJSON)+ appEngineService+ where go+ = buildClient (Proxy :: Proxy AppsModulesGetResource)+ mempty
+ gen/Network/Google/Resource/AppEngine/Apps/Modules/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.AppEngine.Apps.Modules.List+-- Copyright : (c) 2015 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)+--+-- Lists all the modules in the application.+--+-- /See:/ <https://developers.google.com/appengine/ Google App Engine Admin API Reference> for @appengine.apps.modules.list@.+module Network.Google.Resource.AppEngine.Apps.Modules.List+ (+ -- * REST Resource+ AppsModulesListResource++ -- * Creating a Request+ , appsModulesList+ , AppsModulesList++ -- * Request Lenses+ , amlXgafv+ , amlUploadProtocol+ , amlPp+ , amlAccessToken+ , amlUploadType+ , amlBearerToken+ , amlAppsId+ , amlPageToken+ , amlPageSize+ , amlCallback+ ) where++import Network.Google.AppEngine.Types+import Network.Google.Prelude++-- | A resource alias for @appengine.apps.modules.list@ method which the+-- 'AppsModulesList' request conforms to.+type AppsModulesListResource =+ "v1beta4" :>+ "apps" :>+ Capture "appsId" Text :>+ "modules" :>+ QueryParam "$.xgafv" Text :>+ QueryParam "upload_protocol" Text :>+ QueryParam "pp" Bool :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "bearer_token" Text :>+ QueryParam "pageToken" Text :>+ QueryParam "pageSize" (Textual Int32) :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] ListModulesResponse++-- | Lists all the modules in the application.+--+-- /See:/ 'appsModulesList' smart constructor.+data AppsModulesList = AppsModulesList+ { _amlXgafv :: !(Maybe Text)+ , _amlUploadProtocol :: !(Maybe Text)+ , _amlPp :: !Bool+ , _amlAccessToken :: !(Maybe Text)+ , _amlUploadType :: !(Maybe Text)+ , _amlBearerToken :: !(Maybe Text)+ , _amlAppsId :: !Text+ , _amlPageToken :: !(Maybe Text)+ , _amlPageSize :: !(Maybe (Textual Int32))+ , _amlCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AppsModulesList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'amlXgafv'+--+-- * 'amlUploadProtocol'+--+-- * 'amlPp'+--+-- * 'amlAccessToken'+--+-- * 'amlUploadType'+--+-- * 'amlBearerToken'+--+-- * 'amlAppsId'+--+-- * 'amlPageToken'+--+-- * 'amlPageSize'+--+-- * 'amlCallback'+appsModulesList+ :: Text -- ^ 'amlAppsId'+ -> AppsModulesList+appsModulesList pAmlAppsId_ =+ AppsModulesList+ { _amlXgafv = Nothing+ , _amlUploadProtocol = Nothing+ , _amlPp = True+ , _amlAccessToken = Nothing+ , _amlUploadType = Nothing+ , _amlBearerToken = Nothing+ , _amlAppsId = pAmlAppsId_+ , _amlPageToken = Nothing+ , _amlPageSize = Nothing+ , _amlCallback = Nothing+ }++-- | V1 error format.+amlXgafv :: Lens' AppsModulesList (Maybe Text)+amlXgafv = lens _amlXgafv (\ s a -> s{_amlXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+amlUploadProtocol :: Lens' AppsModulesList (Maybe Text)+amlUploadProtocol+ = lens _amlUploadProtocol+ (\ s a -> s{_amlUploadProtocol = a})++-- | Pretty-print response.+amlPp :: Lens' AppsModulesList Bool+amlPp = lens _amlPp (\ s a -> s{_amlPp = a})++-- | OAuth access token.+amlAccessToken :: Lens' AppsModulesList (Maybe Text)+amlAccessToken+ = lens _amlAccessToken+ (\ s a -> s{_amlAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+amlUploadType :: Lens' AppsModulesList (Maybe Text)+amlUploadType+ = lens _amlUploadType+ (\ s a -> s{_amlUploadType = a})++-- | OAuth bearer token.+amlBearerToken :: Lens' AppsModulesList (Maybe Text)+amlBearerToken+ = lens _amlBearerToken+ (\ s a -> s{_amlBearerToken = a})++-- | Part of \`name\`. Name of the resource requested. For example:+-- \"apps\/myapp\".+amlAppsId :: Lens' AppsModulesList Text+amlAppsId+ = lens _amlAppsId (\ s a -> s{_amlAppsId = a})++-- | Continuation token for fetching the next page of results.+amlPageToken :: Lens' AppsModulesList (Maybe Text)+amlPageToken+ = lens _amlPageToken (\ s a -> s{_amlPageToken = a})++-- | Maximum results to return per page.+amlPageSize :: Lens' AppsModulesList (Maybe Int32)+amlPageSize+ = lens _amlPageSize (\ s a -> s{_amlPageSize = a}) .+ mapping _Coerce++-- | JSONP+amlCallback :: Lens' AppsModulesList (Maybe Text)+amlCallback+ = lens _amlCallback (\ s a -> s{_amlCallback = a})++instance GoogleRequest AppsModulesList where+ type Rs AppsModulesList = ListModulesResponse+ requestClient AppsModulesList{..}+ = go _amlAppsId _amlXgafv _amlUploadProtocol+ (Just _amlPp)+ _amlAccessToken+ _amlUploadType+ _amlBearerToken+ _amlPageToken+ _amlPageSize+ _amlCallback+ (Just AltJSON)+ appEngineService+ where go+ = buildClient+ (Proxy :: Proxy AppsModulesListResource)+ mempty
+ gen/Network/Google/Resource/AppEngine/Apps/Modules/Patch.hs view
@@ -0,0 +1,222 @@+{-# 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.AppEngine.Apps.Modules.Patch+-- Copyright : (c) 2015 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)+--+-- Updates the configuration of the specified module.+--+-- /See:/ <https://developers.google.com/appengine/ Google App Engine Admin API Reference> for @appengine.apps.modules.patch@.+module Network.Google.Resource.AppEngine.Apps.Modules.Patch+ (+ -- * REST Resource+ AppsModulesPatchResource++ -- * Creating a Request+ , appsModulesPatch+ , AppsModulesPatch++ -- * Request Lenses+ , ampXgafv+ , ampUploadProtocol+ , ampPp+ , ampAccessToken+ , ampUploadType+ , ampPayload+ , ampModulesId+ , ampMigrateTraffic+ , ampMask+ , ampBearerToken+ , ampAppsId+ , ampCallback+ ) where++import Network.Google.AppEngine.Types+import Network.Google.Prelude++-- | A resource alias for @appengine.apps.modules.patch@ method which the+-- 'AppsModulesPatch' request conforms to.+type AppsModulesPatchResource =+ "v1beta4" :>+ "apps" :>+ Capture "appsId" Text :>+ "modules" :>+ Capture "modulesId" Text :>+ QueryParam "$.xgafv" Text :>+ QueryParam "upload_protocol" Text :>+ QueryParam "pp" Bool :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "migrateTraffic" Bool :>+ QueryParam "mask" Text :>+ QueryParam "bearer_token" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Module :>+ Patch '[JSON] Operation++-- | Updates the configuration of the specified module.+--+-- /See:/ 'appsModulesPatch' smart constructor.+data AppsModulesPatch = AppsModulesPatch+ { _ampXgafv :: !(Maybe Text)+ , _ampUploadProtocol :: !(Maybe Text)+ , _ampPp :: !Bool+ , _ampAccessToken :: !(Maybe Text)+ , _ampUploadType :: !(Maybe Text)+ , _ampPayload :: !Module+ , _ampModulesId :: !Text+ , _ampMigrateTraffic :: !(Maybe Bool)+ , _ampMask :: !(Maybe Text)+ , _ampBearerToken :: !(Maybe Text)+ , _ampAppsId :: !Text+ , _ampCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AppsModulesPatch' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ampXgafv'+--+-- * 'ampUploadProtocol'+--+-- * 'ampPp'+--+-- * 'ampAccessToken'+--+-- * 'ampUploadType'+--+-- * 'ampPayload'+--+-- * 'ampModulesId'+--+-- * 'ampMigrateTraffic'+--+-- * 'ampMask'+--+-- * 'ampBearerToken'+--+-- * 'ampAppsId'+--+-- * 'ampCallback'+appsModulesPatch+ :: Module -- ^ 'ampPayload'+ -> Text -- ^ 'ampModulesId'+ -> Text -- ^ 'ampAppsId'+ -> AppsModulesPatch+appsModulesPatch pAmpPayload_ pAmpModulesId_ pAmpAppsId_ =+ AppsModulesPatch+ { _ampXgafv = Nothing+ , _ampUploadProtocol = Nothing+ , _ampPp = True+ , _ampAccessToken = Nothing+ , _ampUploadType = Nothing+ , _ampPayload = pAmpPayload_+ , _ampModulesId = pAmpModulesId_+ , _ampMigrateTraffic = Nothing+ , _ampMask = Nothing+ , _ampBearerToken = Nothing+ , _ampAppsId = pAmpAppsId_+ , _ampCallback = Nothing+ }++-- | V1 error format.+ampXgafv :: Lens' AppsModulesPatch (Maybe Text)+ampXgafv = lens _ampXgafv (\ s a -> s{_ampXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+ampUploadProtocol :: Lens' AppsModulesPatch (Maybe Text)+ampUploadProtocol+ = lens _ampUploadProtocol+ (\ s a -> s{_ampUploadProtocol = a})++-- | Pretty-print response.+ampPp :: Lens' AppsModulesPatch Bool+ampPp = lens _ampPp (\ s a -> s{_ampPp = a})++-- | OAuth access token.+ampAccessToken :: Lens' AppsModulesPatch (Maybe Text)+ampAccessToken+ = lens _ampAccessToken+ (\ s a -> s{_ampAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+ampUploadType :: Lens' AppsModulesPatch (Maybe Text)+ampUploadType+ = lens _ampUploadType+ (\ s a -> s{_ampUploadType = a})++-- | Multipart request metadata.+ampPayload :: Lens' AppsModulesPatch Module+ampPayload+ = lens _ampPayload (\ s a -> s{_ampPayload = a})++-- | Part of \`name\`. See documentation of \`appsId\`.+ampModulesId :: Lens' AppsModulesPatch Text+ampModulesId+ = lens _ampModulesId (\ s a -> s{_ampModulesId = a})++-- | Whether to use Traffic Migration to shift traffic gradually. Traffic can+-- only be migrated from a single version to another single version.+ampMigrateTraffic :: Lens' AppsModulesPatch (Maybe Bool)+ampMigrateTraffic+ = lens _ampMigrateTraffic+ (\ s a -> s{_ampMigrateTraffic = a})++-- | Standard field mask for the set of fields to be updated.+ampMask :: Lens' AppsModulesPatch (Maybe Text)+ampMask = lens _ampMask (\ s a -> s{_ampMask = a})++-- | OAuth bearer token.+ampBearerToken :: Lens' AppsModulesPatch (Maybe Text)+ampBearerToken+ = lens _ampBearerToken+ (\ s a -> s{_ampBearerToken = a})++-- | Part of \`name\`. Name of the resource to update. For example:+-- \"apps\/myapp\/modules\/default\".+ampAppsId :: Lens' AppsModulesPatch Text+ampAppsId+ = lens _ampAppsId (\ s a -> s{_ampAppsId = a})++-- | JSONP+ampCallback :: Lens' AppsModulesPatch (Maybe Text)+ampCallback+ = lens _ampCallback (\ s a -> s{_ampCallback = a})++instance GoogleRequest AppsModulesPatch where+ type Rs AppsModulesPatch = Operation+ requestClient AppsModulesPatch{..}+ = go _ampAppsId _ampModulesId _ampXgafv+ _ampUploadProtocol+ (Just _ampPp)+ _ampAccessToken+ _ampUploadType+ _ampMigrateTraffic+ _ampMask+ _ampBearerToken+ _ampCallback+ (Just AltJSON)+ _ampPayload+ appEngineService+ where go+ = buildClient+ (Proxy :: Proxy AppsModulesPatchResource)+ mempty
+ gen/Network/Google/Resource/AppEngine/Apps/Modules/Versions/Create.hs view
@@ -0,0 +1,201 @@+{-# 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.AppEngine.Apps.Modules.Versions.Create+-- Copyright : (c) 2015 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)+--+-- Deploys new code and resource files to a version.+--+-- /See:/ <https://developers.google.com/appengine/ Google App Engine Admin API Reference> for @appengine.apps.modules.versions.create@.+module Network.Google.Resource.AppEngine.Apps.Modules.Versions.Create+ (+ -- * REST Resource+ AppsModulesVersionsCreateResource++ -- * Creating a Request+ , appsModulesVersionsCreate+ , AppsModulesVersionsCreate++ -- * Request Lenses+ , amvcXgafv+ , amvcUploadProtocol+ , amvcPp+ , amvcAccessToken+ , amvcUploadType+ , amvcPayload+ , amvcModulesId+ , amvcBearerToken+ , amvcAppsId+ , amvcCallback+ ) where++import Network.Google.AppEngine.Types+import Network.Google.Prelude++-- | A resource alias for @appengine.apps.modules.versions.create@ method which the+-- 'AppsModulesVersionsCreate' request conforms to.+type AppsModulesVersionsCreateResource =+ "v1beta4" :>+ "apps" :>+ Capture "appsId" Text :>+ "modules" :>+ Capture "modulesId" Text :>+ "versions" :>+ QueryParam "$.xgafv" Text :>+ QueryParam "upload_protocol" Text :>+ QueryParam "pp" Bool :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "bearer_token" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Version :>+ Post '[JSON] Operation++-- | Deploys new code and resource files to a version.+--+-- /See:/ 'appsModulesVersionsCreate' smart constructor.+data AppsModulesVersionsCreate = AppsModulesVersionsCreate+ { _amvcXgafv :: !(Maybe Text)+ , _amvcUploadProtocol :: !(Maybe Text)+ , _amvcPp :: !Bool+ , _amvcAccessToken :: !(Maybe Text)+ , _amvcUploadType :: !(Maybe Text)+ , _amvcPayload :: !Version+ , _amvcModulesId :: !Text+ , _amvcBearerToken :: !(Maybe Text)+ , _amvcAppsId :: !Text+ , _amvcCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AppsModulesVersionsCreate' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'amvcXgafv'+--+-- * 'amvcUploadProtocol'+--+-- * 'amvcPp'+--+-- * 'amvcAccessToken'+--+-- * 'amvcUploadType'+--+-- * 'amvcPayload'+--+-- * 'amvcModulesId'+--+-- * 'amvcBearerToken'+--+-- * 'amvcAppsId'+--+-- * 'amvcCallback'+appsModulesVersionsCreate+ :: Version -- ^ 'amvcPayload'+ -> Text -- ^ 'amvcModulesId'+ -> Text -- ^ 'amvcAppsId'+ -> AppsModulesVersionsCreate+appsModulesVersionsCreate pAmvcPayload_ pAmvcModulesId_ pAmvcAppsId_ =+ AppsModulesVersionsCreate+ { _amvcXgafv = Nothing+ , _amvcUploadProtocol = Nothing+ , _amvcPp = True+ , _amvcAccessToken = Nothing+ , _amvcUploadType = Nothing+ , _amvcPayload = pAmvcPayload_+ , _amvcModulesId = pAmvcModulesId_+ , _amvcBearerToken = Nothing+ , _amvcAppsId = pAmvcAppsId_+ , _amvcCallback = Nothing+ }++-- | V1 error format.+amvcXgafv :: Lens' AppsModulesVersionsCreate (Maybe Text)+amvcXgafv+ = lens _amvcXgafv (\ s a -> s{_amvcXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+amvcUploadProtocol :: Lens' AppsModulesVersionsCreate (Maybe Text)+amvcUploadProtocol+ = lens _amvcUploadProtocol+ (\ s a -> s{_amvcUploadProtocol = a})++-- | Pretty-print response.+amvcPp :: Lens' AppsModulesVersionsCreate Bool+amvcPp = lens _amvcPp (\ s a -> s{_amvcPp = a})++-- | OAuth access token.+amvcAccessToken :: Lens' AppsModulesVersionsCreate (Maybe Text)+amvcAccessToken+ = lens _amvcAccessToken+ (\ s a -> s{_amvcAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+amvcUploadType :: Lens' AppsModulesVersionsCreate (Maybe Text)+amvcUploadType+ = lens _amvcUploadType+ (\ s a -> s{_amvcUploadType = a})++-- | Multipart request metadata.+amvcPayload :: Lens' AppsModulesVersionsCreate Version+amvcPayload+ = lens _amvcPayload (\ s a -> s{_amvcPayload = a})++-- | Part of \`name\`. See documentation of \`appsId\`.+amvcModulesId :: Lens' AppsModulesVersionsCreate Text+amvcModulesId+ = lens _amvcModulesId+ (\ s a -> s{_amvcModulesId = a})++-- | OAuth bearer token.+amvcBearerToken :: Lens' AppsModulesVersionsCreate (Maybe Text)+amvcBearerToken+ = lens _amvcBearerToken+ (\ s a -> s{_amvcBearerToken = a})++-- | Part of \`name\`. Name of the resource to update. For example:+-- \"apps\/myapp\/modules\/default\".+amvcAppsId :: Lens' AppsModulesVersionsCreate Text+amvcAppsId+ = lens _amvcAppsId (\ s a -> s{_amvcAppsId = a})++-- | JSONP+amvcCallback :: Lens' AppsModulesVersionsCreate (Maybe Text)+amvcCallback+ = lens _amvcCallback (\ s a -> s{_amvcCallback = a})++instance GoogleRequest AppsModulesVersionsCreate+ where+ type Rs AppsModulesVersionsCreate = Operation+ requestClient AppsModulesVersionsCreate{..}+ = go _amvcAppsId _amvcModulesId _amvcXgafv+ _amvcUploadProtocol+ (Just _amvcPp)+ _amvcAccessToken+ _amvcUploadType+ _amvcBearerToken+ _amvcCallback+ (Just AltJSON)+ _amvcPayload+ appEngineService+ where go+ = buildClient+ (Proxy :: Proxy AppsModulesVersionsCreateResource)+ mempty
+ gen/Network/Google/Resource/AppEngine/Apps/Modules/Versions/Delete.hs view
@@ -0,0 +1,202 @@+{-# 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.AppEngine.Apps.Modules.Versions.Delete+-- Copyright : (c) 2015 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)+--+-- Deletes an existing version.+--+-- /See:/ <https://developers.google.com/appengine/ Google App Engine Admin API Reference> for @appengine.apps.modules.versions.delete@.+module Network.Google.Resource.AppEngine.Apps.Modules.Versions.Delete+ (+ -- * REST Resource+ AppsModulesVersionsDeleteResource++ -- * Creating a Request+ , appsModulesVersionsDelete+ , AppsModulesVersionsDelete++ -- * Request Lenses+ , amvdXgafv+ , amvdUploadProtocol+ , amvdPp+ , amvdAccessToken+ , amvdUploadType+ , amvdVersionsId+ , amvdModulesId+ , amvdBearerToken+ , amvdAppsId+ , amvdCallback+ ) where++import Network.Google.AppEngine.Types+import Network.Google.Prelude++-- | A resource alias for @appengine.apps.modules.versions.delete@ method which the+-- 'AppsModulesVersionsDelete' request conforms to.+type AppsModulesVersionsDeleteResource =+ "v1beta4" :>+ "apps" :>+ Capture "appsId" Text :>+ "modules" :>+ Capture "modulesId" Text :>+ "versions" :>+ Capture "versionsId" Text :>+ QueryParam "$.xgafv" Text :>+ QueryParam "upload_protocol" Text :>+ QueryParam "pp" Bool :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "bearer_token" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ Delete '[JSON] Operation++-- | Deletes an existing version.+--+-- /See:/ 'appsModulesVersionsDelete' smart constructor.+data AppsModulesVersionsDelete = AppsModulesVersionsDelete+ { _amvdXgafv :: !(Maybe Text)+ , _amvdUploadProtocol :: !(Maybe Text)+ , _amvdPp :: !Bool+ , _amvdAccessToken :: !(Maybe Text)+ , _amvdUploadType :: !(Maybe Text)+ , _amvdVersionsId :: !Text+ , _amvdModulesId :: !Text+ , _amvdBearerToken :: !(Maybe Text)+ , _amvdAppsId :: !Text+ , _amvdCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AppsModulesVersionsDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'amvdXgafv'+--+-- * 'amvdUploadProtocol'+--+-- * 'amvdPp'+--+-- * 'amvdAccessToken'+--+-- * 'amvdUploadType'+--+-- * 'amvdVersionsId'+--+-- * 'amvdModulesId'+--+-- * 'amvdBearerToken'+--+-- * 'amvdAppsId'+--+-- * 'amvdCallback'+appsModulesVersionsDelete+ :: Text -- ^ 'amvdVersionsId'+ -> Text -- ^ 'amvdModulesId'+ -> Text -- ^ 'amvdAppsId'+ -> AppsModulesVersionsDelete+appsModulesVersionsDelete pAmvdVersionsId_ pAmvdModulesId_ pAmvdAppsId_ =+ AppsModulesVersionsDelete+ { _amvdXgafv = Nothing+ , _amvdUploadProtocol = Nothing+ , _amvdPp = True+ , _amvdAccessToken = Nothing+ , _amvdUploadType = Nothing+ , _amvdVersionsId = pAmvdVersionsId_+ , _amvdModulesId = pAmvdModulesId_+ , _amvdBearerToken = Nothing+ , _amvdAppsId = pAmvdAppsId_+ , _amvdCallback = Nothing+ }++-- | V1 error format.+amvdXgafv :: Lens' AppsModulesVersionsDelete (Maybe Text)+amvdXgafv+ = lens _amvdXgafv (\ s a -> s{_amvdXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+amvdUploadProtocol :: Lens' AppsModulesVersionsDelete (Maybe Text)+amvdUploadProtocol+ = lens _amvdUploadProtocol+ (\ s a -> s{_amvdUploadProtocol = a})++-- | Pretty-print response.+amvdPp :: Lens' AppsModulesVersionsDelete Bool+amvdPp = lens _amvdPp (\ s a -> s{_amvdPp = a})++-- | OAuth access token.+amvdAccessToken :: Lens' AppsModulesVersionsDelete (Maybe Text)+amvdAccessToken+ = lens _amvdAccessToken+ (\ s a -> s{_amvdAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+amvdUploadType :: Lens' AppsModulesVersionsDelete (Maybe Text)+amvdUploadType+ = lens _amvdUploadType+ (\ s a -> s{_amvdUploadType = a})++-- | Part of \`name\`. See documentation of \`appsId\`.+amvdVersionsId :: Lens' AppsModulesVersionsDelete Text+amvdVersionsId+ = lens _amvdVersionsId+ (\ s a -> s{_amvdVersionsId = a})++-- | Part of \`name\`. See documentation of \`appsId\`.+amvdModulesId :: Lens' AppsModulesVersionsDelete Text+amvdModulesId+ = lens _amvdModulesId+ (\ s a -> s{_amvdModulesId = a})++-- | OAuth bearer token.+amvdBearerToken :: Lens' AppsModulesVersionsDelete (Maybe Text)+amvdBearerToken+ = lens _amvdBearerToken+ (\ s a -> s{_amvdBearerToken = a})++-- | Part of \`name\`. Name of the resource requested. For example:+-- \"apps\/myapp\/modules\/default\/versions\/v1\".+amvdAppsId :: Lens' AppsModulesVersionsDelete Text+amvdAppsId+ = lens _amvdAppsId (\ s a -> s{_amvdAppsId = a})++-- | JSONP+amvdCallback :: Lens' AppsModulesVersionsDelete (Maybe Text)+amvdCallback+ = lens _amvdCallback (\ s a -> s{_amvdCallback = a})++instance GoogleRequest AppsModulesVersionsDelete+ where+ type Rs AppsModulesVersionsDelete = Operation+ requestClient AppsModulesVersionsDelete{..}+ = go _amvdAppsId _amvdModulesId _amvdVersionsId+ _amvdXgafv+ _amvdUploadProtocol+ (Just _amvdPp)+ _amvdAccessToken+ _amvdUploadType+ _amvdBearerToken+ _amvdCallback+ (Just AltJSON)+ appEngineService+ where go+ = buildClient+ (Proxy :: Proxy AppsModulesVersionsDeleteResource)+ mempty
+ gen/Network/Google/Resource/AppEngine/Apps/Modules/Versions/Get.hs view
@@ -0,0 +1,212 @@+{-# 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.AppEngine.Apps.Modules.Versions.Get+-- Copyright : (c) 2015 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 application deployment information.+--+-- /See:/ <https://developers.google.com/appengine/ Google App Engine Admin API Reference> for @appengine.apps.modules.versions.get@.+module Network.Google.Resource.AppEngine.Apps.Modules.Versions.Get+ (+ -- * REST Resource+ AppsModulesVersionsGetResource++ -- * Creating a Request+ , appsModulesVersionsGet+ , AppsModulesVersionsGet++ -- * Request Lenses+ , amvgXgafv+ , amvgUploadProtocol+ , amvgPp+ , amvgAccessToken+ , amvgUploadType+ , amvgVersionsId+ , amvgModulesId+ , amvgBearerToken+ , amvgAppsId+ , amvgView+ , amvgCallback+ ) where++import Network.Google.AppEngine.Types+import Network.Google.Prelude++-- | A resource alias for @appengine.apps.modules.versions.get@ method which the+-- 'AppsModulesVersionsGet' request conforms to.+type AppsModulesVersionsGetResource =+ "v1beta4" :>+ "apps" :>+ Capture "appsId" Text :>+ "modules" :>+ Capture "modulesId" Text :>+ "versions" :>+ Capture "versionsId" Text :>+ QueryParam "$.xgafv" Text :>+ QueryParam "upload_protocol" Text :>+ QueryParam "pp" Bool :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "bearer_token" Text :>+ QueryParam "view" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] Version++-- | Gets application deployment information.+--+-- /See:/ 'appsModulesVersionsGet' smart constructor.+data AppsModulesVersionsGet = AppsModulesVersionsGet+ { _amvgXgafv :: !(Maybe Text)+ , _amvgUploadProtocol :: !(Maybe Text)+ , _amvgPp :: !Bool+ , _amvgAccessToken :: !(Maybe Text)+ , _amvgUploadType :: !(Maybe Text)+ , _amvgVersionsId :: !Text+ , _amvgModulesId :: !Text+ , _amvgBearerToken :: !(Maybe Text)+ , _amvgAppsId :: !Text+ , _amvgView :: !(Maybe Text)+ , _amvgCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AppsModulesVersionsGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'amvgXgafv'+--+-- * 'amvgUploadProtocol'+--+-- * 'amvgPp'+--+-- * 'amvgAccessToken'+--+-- * 'amvgUploadType'+--+-- * 'amvgVersionsId'+--+-- * 'amvgModulesId'+--+-- * 'amvgBearerToken'+--+-- * 'amvgAppsId'+--+-- * 'amvgView'+--+-- * 'amvgCallback'+appsModulesVersionsGet+ :: Text -- ^ 'amvgVersionsId'+ -> Text -- ^ 'amvgModulesId'+ -> Text -- ^ 'amvgAppsId'+ -> AppsModulesVersionsGet+appsModulesVersionsGet pAmvgVersionsId_ pAmvgModulesId_ pAmvgAppsId_ =+ AppsModulesVersionsGet+ { _amvgXgafv = Nothing+ , _amvgUploadProtocol = Nothing+ , _amvgPp = True+ , _amvgAccessToken = Nothing+ , _amvgUploadType = Nothing+ , _amvgVersionsId = pAmvgVersionsId_+ , _amvgModulesId = pAmvgModulesId_+ , _amvgBearerToken = Nothing+ , _amvgAppsId = pAmvgAppsId_+ , _amvgView = Nothing+ , _amvgCallback = Nothing+ }++-- | V1 error format.+amvgXgafv :: Lens' AppsModulesVersionsGet (Maybe Text)+amvgXgafv+ = lens _amvgXgafv (\ s a -> s{_amvgXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+amvgUploadProtocol :: Lens' AppsModulesVersionsGet (Maybe Text)+amvgUploadProtocol+ = lens _amvgUploadProtocol+ (\ s a -> s{_amvgUploadProtocol = a})++-- | Pretty-print response.+amvgPp :: Lens' AppsModulesVersionsGet Bool+amvgPp = lens _amvgPp (\ s a -> s{_amvgPp = a})++-- | OAuth access token.+amvgAccessToken :: Lens' AppsModulesVersionsGet (Maybe Text)+amvgAccessToken+ = lens _amvgAccessToken+ (\ s a -> s{_amvgAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+amvgUploadType :: Lens' AppsModulesVersionsGet (Maybe Text)+amvgUploadType+ = lens _amvgUploadType+ (\ s a -> s{_amvgUploadType = a})++-- | Part of \`name\`. See documentation of \`appsId\`.+amvgVersionsId :: Lens' AppsModulesVersionsGet Text+amvgVersionsId+ = lens _amvgVersionsId+ (\ s a -> s{_amvgVersionsId = a})++-- | Part of \`name\`. See documentation of \`appsId\`.+amvgModulesId :: Lens' AppsModulesVersionsGet Text+amvgModulesId+ = lens _amvgModulesId+ (\ s a -> s{_amvgModulesId = a})++-- | OAuth bearer token.+amvgBearerToken :: Lens' AppsModulesVersionsGet (Maybe Text)+amvgBearerToken+ = lens _amvgBearerToken+ (\ s a -> s{_amvgBearerToken = a})++-- | Part of \`name\`. Name of the resource requested. For example:+-- \"apps\/myapp\/modules\/default\/versions\/v1\".+amvgAppsId :: Lens' AppsModulesVersionsGet Text+amvgAppsId+ = lens _amvgAppsId (\ s a -> s{_amvgAppsId = a})++-- | Controls the set of fields returned in the \`Get\` response.+amvgView :: Lens' AppsModulesVersionsGet (Maybe Text)+amvgView = lens _amvgView (\ s a -> s{_amvgView = a})++-- | JSONP+amvgCallback :: Lens' AppsModulesVersionsGet (Maybe Text)+amvgCallback+ = lens _amvgCallback (\ s a -> s{_amvgCallback = a})++instance GoogleRequest AppsModulesVersionsGet where+ type Rs AppsModulesVersionsGet = Version+ requestClient AppsModulesVersionsGet{..}+ = go _amvgAppsId _amvgModulesId _amvgVersionsId+ _amvgXgafv+ _amvgUploadProtocol+ (Just _amvgPp)+ _amvgAccessToken+ _amvgUploadType+ _amvgBearerToken+ _amvgView+ _amvgCallback+ (Just AltJSON)+ appEngineService+ where go+ = buildClient+ (Proxy :: Proxy AppsModulesVersionsGetResource)+ mempty
+ gen/Network/Google/Resource/AppEngine/Apps/Modules/Versions/List.hs view
@@ -0,0 +1,225 @@+{-# 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.AppEngine.Apps.Modules.Versions.List+-- Copyright : (c) 2015 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)+--+-- Lists the versions of a module.+--+-- /See:/ <https://developers.google.com/appengine/ Google App Engine Admin API Reference> for @appengine.apps.modules.versions.list@.+module Network.Google.Resource.AppEngine.Apps.Modules.Versions.List+ (+ -- * REST Resource+ AppsModulesVersionsListResource++ -- * Creating a Request+ , appsModulesVersionsList+ , AppsModulesVersionsList++ -- * Request Lenses+ , amvlXgafv+ , amvlUploadProtocol+ , amvlPp+ , amvlAccessToken+ , amvlUploadType+ , amvlModulesId+ , amvlBearerToken+ , amvlAppsId+ , amvlView+ , amvlPageToken+ , amvlPageSize+ , amvlCallback+ ) where++import Network.Google.AppEngine.Types+import Network.Google.Prelude++-- | A resource alias for @appengine.apps.modules.versions.list@ method which the+-- 'AppsModulesVersionsList' request conforms to.+type AppsModulesVersionsListResource =+ "v1beta4" :>+ "apps" :>+ Capture "appsId" Text :>+ "modules" :>+ Capture "modulesId" Text :>+ "versions" :>+ QueryParam "$.xgafv" Text :>+ QueryParam "upload_protocol" Text :>+ QueryParam "pp" Bool :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "bearer_token" Text :>+ QueryParam "view" Text :>+ QueryParam "pageToken" Text :>+ QueryParam "pageSize" (Textual Int32) :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] ListVersionsResponse++-- | Lists the versions of a module.+--+-- /See:/ 'appsModulesVersionsList' smart constructor.+data AppsModulesVersionsList = AppsModulesVersionsList+ { _amvlXgafv :: !(Maybe Text)+ , _amvlUploadProtocol :: !(Maybe Text)+ , _amvlPp :: !Bool+ , _amvlAccessToken :: !(Maybe Text)+ , _amvlUploadType :: !(Maybe Text)+ , _amvlModulesId :: !Text+ , _amvlBearerToken :: !(Maybe Text)+ , _amvlAppsId :: !Text+ , _amvlView :: !(Maybe Text)+ , _amvlPageToken :: !(Maybe Text)+ , _amvlPageSize :: !(Maybe (Textual Int32))+ , _amvlCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AppsModulesVersionsList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'amvlXgafv'+--+-- * 'amvlUploadProtocol'+--+-- * 'amvlPp'+--+-- * 'amvlAccessToken'+--+-- * 'amvlUploadType'+--+-- * 'amvlModulesId'+--+-- * 'amvlBearerToken'+--+-- * 'amvlAppsId'+--+-- * 'amvlView'+--+-- * 'amvlPageToken'+--+-- * 'amvlPageSize'+--+-- * 'amvlCallback'+appsModulesVersionsList+ :: Text -- ^ 'amvlModulesId'+ -> Text -- ^ 'amvlAppsId'+ -> AppsModulesVersionsList+appsModulesVersionsList pAmvlModulesId_ pAmvlAppsId_ =+ AppsModulesVersionsList+ { _amvlXgafv = Nothing+ , _amvlUploadProtocol = Nothing+ , _amvlPp = True+ , _amvlAccessToken = Nothing+ , _amvlUploadType = Nothing+ , _amvlModulesId = pAmvlModulesId_+ , _amvlBearerToken = Nothing+ , _amvlAppsId = pAmvlAppsId_+ , _amvlView = Nothing+ , _amvlPageToken = Nothing+ , _amvlPageSize = Nothing+ , _amvlCallback = Nothing+ }++-- | V1 error format.+amvlXgafv :: Lens' AppsModulesVersionsList (Maybe Text)+amvlXgafv+ = lens _amvlXgafv (\ s a -> s{_amvlXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+amvlUploadProtocol :: Lens' AppsModulesVersionsList (Maybe Text)+amvlUploadProtocol+ = lens _amvlUploadProtocol+ (\ s a -> s{_amvlUploadProtocol = a})++-- | Pretty-print response.+amvlPp :: Lens' AppsModulesVersionsList Bool+amvlPp = lens _amvlPp (\ s a -> s{_amvlPp = a})++-- | OAuth access token.+amvlAccessToken :: Lens' AppsModulesVersionsList (Maybe Text)+amvlAccessToken+ = lens _amvlAccessToken+ (\ s a -> s{_amvlAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+amvlUploadType :: Lens' AppsModulesVersionsList (Maybe Text)+amvlUploadType+ = lens _amvlUploadType+ (\ s a -> s{_amvlUploadType = a})++-- | Part of \`name\`. See documentation of \`appsId\`.+amvlModulesId :: Lens' AppsModulesVersionsList Text+amvlModulesId+ = lens _amvlModulesId+ (\ s a -> s{_amvlModulesId = a})++-- | OAuth bearer token.+amvlBearerToken :: Lens' AppsModulesVersionsList (Maybe Text)+amvlBearerToken+ = lens _amvlBearerToken+ (\ s a -> s{_amvlBearerToken = a})++-- | Part of \`name\`. Name of the resource requested. For example:+-- \"apps\/myapp\/modules\/default\".+amvlAppsId :: Lens' AppsModulesVersionsList Text+amvlAppsId+ = lens _amvlAppsId (\ s a -> s{_amvlAppsId = a})++-- | Controls the set of fields returned in the \`List\` response.+amvlView :: Lens' AppsModulesVersionsList (Maybe Text)+amvlView = lens _amvlView (\ s a -> s{_amvlView = a})++-- | Continuation token for fetching the next page of results.+amvlPageToken :: Lens' AppsModulesVersionsList (Maybe Text)+amvlPageToken+ = lens _amvlPageToken+ (\ s a -> s{_amvlPageToken = a})++-- | Maximum results to return per page.+amvlPageSize :: Lens' AppsModulesVersionsList (Maybe Int32)+amvlPageSize+ = lens _amvlPageSize (\ s a -> s{_amvlPageSize = a})+ . mapping _Coerce++-- | JSONP+amvlCallback :: Lens' AppsModulesVersionsList (Maybe Text)+amvlCallback+ = lens _amvlCallback (\ s a -> s{_amvlCallback = a})++instance GoogleRequest AppsModulesVersionsList where+ type Rs AppsModulesVersionsList =+ ListVersionsResponse+ requestClient AppsModulesVersionsList{..}+ = go _amvlAppsId _amvlModulesId _amvlXgafv+ _amvlUploadProtocol+ (Just _amvlPp)+ _amvlAccessToken+ _amvlUploadType+ _amvlBearerToken+ _amvlView+ _amvlPageToken+ _amvlPageSize+ _amvlCallback+ (Just AltJSON)+ appEngineService+ where go+ = buildClient+ (Proxy :: Proxy AppsModulesVersionsListResource)+ mempty
+ gen/Network/Google/Resource/AppEngine/Apps/Operations/Get.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.AppEngine.Apps.Operations.Get+-- Copyright : (c) 2015 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://developers.google.com/appengine/ Google App Engine Admin API Reference> for @appengine.apps.operations.get@.+module Network.Google.Resource.AppEngine.Apps.Operations.Get+ (+ -- * REST Resource+ AppsOperationsGetResource++ -- * Creating a Request+ , appsOperationsGet+ , AppsOperationsGet++ -- * Request Lenses+ , aogXgafv+ , aogUploadProtocol+ , aogPp+ , aogAccessToken+ , aogUploadType+ , aogBearerToken+ , aogAppsId+ , aogOperationsId+ , aogCallback+ ) where++import Network.Google.AppEngine.Types+import Network.Google.Prelude++-- | A resource alias for @appengine.apps.operations.get@ method which the+-- 'AppsOperationsGet' request conforms to.+type AppsOperationsGetResource =+ "v1beta4" :>+ "apps" :>+ Capture "appsId" Text :>+ "operations" :>+ Capture "operationsId" Text :>+ QueryParam "$.xgafv" Text :>+ QueryParam "upload_protocol" Text :>+ QueryParam "pp" Bool :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "bearer_token" 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:/ 'appsOperationsGet' smart constructor.+data AppsOperationsGet = AppsOperationsGet+ { _aogXgafv :: !(Maybe Text)+ , _aogUploadProtocol :: !(Maybe Text)+ , _aogPp :: !Bool+ , _aogAccessToken :: !(Maybe Text)+ , _aogUploadType :: !(Maybe Text)+ , _aogBearerToken :: !(Maybe Text)+ , _aogAppsId :: !Text+ , _aogOperationsId :: !Text+ , _aogCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AppsOperationsGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aogXgafv'+--+-- * 'aogUploadProtocol'+--+-- * 'aogPp'+--+-- * 'aogAccessToken'+--+-- * 'aogUploadType'+--+-- * 'aogBearerToken'+--+-- * 'aogAppsId'+--+-- * 'aogOperationsId'+--+-- * 'aogCallback'+appsOperationsGet+ :: Text -- ^ 'aogAppsId'+ -> Text -- ^ 'aogOperationsId'+ -> AppsOperationsGet+appsOperationsGet pAogAppsId_ pAogOperationsId_ =+ AppsOperationsGet+ { _aogXgafv = Nothing+ , _aogUploadProtocol = Nothing+ , _aogPp = True+ , _aogAccessToken = Nothing+ , _aogUploadType = Nothing+ , _aogBearerToken = Nothing+ , _aogAppsId = pAogAppsId_+ , _aogOperationsId = pAogOperationsId_+ , _aogCallback = Nothing+ }++-- | V1 error format.+aogXgafv :: Lens' AppsOperationsGet (Maybe Text)+aogXgafv = lens _aogXgafv (\ s a -> s{_aogXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+aogUploadProtocol :: Lens' AppsOperationsGet (Maybe Text)+aogUploadProtocol+ = lens _aogUploadProtocol+ (\ s a -> s{_aogUploadProtocol = a})++-- | Pretty-print response.+aogPp :: Lens' AppsOperationsGet Bool+aogPp = lens _aogPp (\ s a -> s{_aogPp = a})++-- | OAuth access token.+aogAccessToken :: Lens' AppsOperationsGet (Maybe Text)+aogAccessToken+ = lens _aogAccessToken+ (\ s a -> s{_aogAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+aogUploadType :: Lens' AppsOperationsGet (Maybe Text)+aogUploadType+ = lens _aogUploadType+ (\ s a -> s{_aogUploadType = a})++-- | OAuth bearer token.+aogBearerToken :: Lens' AppsOperationsGet (Maybe Text)+aogBearerToken+ = lens _aogBearerToken+ (\ s a -> s{_aogBearerToken = a})++-- | Part of \`name\`. The name of the operation resource.+aogAppsId :: Lens' AppsOperationsGet Text+aogAppsId+ = lens _aogAppsId (\ s a -> s{_aogAppsId = a})++-- | Part of \`name\`. See documentation of \`appsId\`.+aogOperationsId :: Lens' AppsOperationsGet Text+aogOperationsId+ = lens _aogOperationsId+ (\ s a -> s{_aogOperationsId = a})++-- | JSONP+aogCallback :: Lens' AppsOperationsGet (Maybe Text)+aogCallback+ = lens _aogCallback (\ s a -> s{_aogCallback = a})++instance GoogleRequest AppsOperationsGet where+ type Rs AppsOperationsGet = Operation+ requestClient AppsOperationsGet{..}+ = go _aogAppsId _aogOperationsId _aogXgafv+ _aogUploadProtocol+ (Just _aogPp)+ _aogAccessToken+ _aogUploadType+ _aogBearerToken+ _aogCallback+ (Just AltJSON)+ appEngineService+ where go+ = buildClient+ (Proxy :: Proxy AppsOperationsGetResource)+ mempty
+ gen/Network/Google/Resource/AppEngine/Apps/Operations/List.hs view
@@ -0,0 +1,215 @@+{-# 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.AppEngine.Apps.Operations.List+-- Copyright : (c) 2015 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)+--+-- Lists operations that match the specified filter in the request. If the+-- server doesn\'t support this method, it returns \`UNIMPLEMENTED\`. NOTE:+-- the \`name\` binding below allows API services to override the binding+-- to use different resource name schemes, such as+-- \`users\/*\/operations\`.+--+-- /See:/ <https://developers.google.com/appengine/ Google App Engine Admin API Reference> for @appengine.apps.operations.list@.+module Network.Google.Resource.AppEngine.Apps.Operations.List+ (+ -- * REST Resource+ AppsOperationsListResource++ -- * Creating a Request+ , appsOperationsList+ , AppsOperationsList++ -- * Request Lenses+ , aolXgafv+ , aolUploadProtocol+ , aolPp+ , aolAccessToken+ , aolUploadType+ , aolBearerToken+ , aolAppsId+ , aolFilter+ , aolPageToken+ , aolPageSize+ , aolCallback+ ) where++import Network.Google.AppEngine.Types+import Network.Google.Prelude++-- | A resource alias for @appengine.apps.operations.list@ method which the+-- 'AppsOperationsList' request conforms to.+type AppsOperationsListResource =+ "v1beta4" :>+ "apps" :>+ Capture "appsId" Text :>+ "operations" :>+ QueryParam "$.xgafv" Text :>+ QueryParam "upload_protocol" Text :>+ QueryParam "pp" Bool :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "bearer_token" Text :>+ QueryParam "filter" Text :>+ QueryParam "pageToken" Text :>+ QueryParam "pageSize" (Textual Int32) :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] ListOperationsResponse++-- | Lists operations that match the specified filter in the request. If the+-- server doesn\'t support this method, it returns \`UNIMPLEMENTED\`. NOTE:+-- the \`name\` binding below allows API services to override the binding+-- to use different resource name schemes, such as+-- \`users\/*\/operations\`.+--+-- /See:/ 'appsOperationsList' smart constructor.+data AppsOperationsList = AppsOperationsList+ { _aolXgafv :: !(Maybe Text)+ , _aolUploadProtocol :: !(Maybe Text)+ , _aolPp :: !Bool+ , _aolAccessToken :: !(Maybe Text)+ , _aolUploadType :: !(Maybe Text)+ , _aolBearerToken :: !(Maybe Text)+ , _aolAppsId :: !Text+ , _aolFilter :: !(Maybe Text)+ , _aolPageToken :: !(Maybe Text)+ , _aolPageSize :: !(Maybe (Textual Int32))+ , _aolCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AppsOperationsList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aolXgafv'+--+-- * 'aolUploadProtocol'+--+-- * 'aolPp'+--+-- * 'aolAccessToken'+--+-- * 'aolUploadType'+--+-- * 'aolBearerToken'+--+-- * 'aolAppsId'+--+-- * 'aolFilter'+--+-- * 'aolPageToken'+--+-- * 'aolPageSize'+--+-- * 'aolCallback'+appsOperationsList+ :: Text -- ^ 'aolAppsId'+ -> AppsOperationsList+appsOperationsList pAolAppsId_ =+ AppsOperationsList+ { _aolXgafv = Nothing+ , _aolUploadProtocol = Nothing+ , _aolPp = True+ , _aolAccessToken = Nothing+ , _aolUploadType = Nothing+ , _aolBearerToken = Nothing+ , _aolAppsId = pAolAppsId_+ , _aolFilter = Nothing+ , _aolPageToken = Nothing+ , _aolPageSize = Nothing+ , _aolCallback = Nothing+ }++-- | V1 error format.+aolXgafv :: Lens' AppsOperationsList (Maybe Text)+aolXgafv = lens _aolXgafv (\ s a -> s{_aolXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+aolUploadProtocol :: Lens' AppsOperationsList (Maybe Text)+aolUploadProtocol+ = lens _aolUploadProtocol+ (\ s a -> s{_aolUploadProtocol = a})++-- | Pretty-print response.+aolPp :: Lens' AppsOperationsList Bool+aolPp = lens _aolPp (\ s a -> s{_aolPp = a})++-- | OAuth access token.+aolAccessToken :: Lens' AppsOperationsList (Maybe Text)+aolAccessToken+ = lens _aolAccessToken+ (\ s a -> s{_aolAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+aolUploadType :: Lens' AppsOperationsList (Maybe Text)+aolUploadType+ = lens _aolUploadType+ (\ s a -> s{_aolUploadType = a})++-- | OAuth bearer token.+aolBearerToken :: Lens' AppsOperationsList (Maybe Text)+aolBearerToken+ = lens _aolBearerToken+ (\ s a -> s{_aolBearerToken = a})++-- | Part of \`name\`. The name of the operation collection.+aolAppsId :: Lens' AppsOperationsList Text+aolAppsId+ = lens _aolAppsId (\ s a -> s{_aolAppsId = a})++-- | The standard list filter.+aolFilter :: Lens' AppsOperationsList (Maybe Text)+aolFilter+ = lens _aolFilter (\ s a -> s{_aolFilter = a})++-- | The standard list page token.+aolPageToken :: Lens' AppsOperationsList (Maybe Text)+aolPageToken+ = lens _aolPageToken (\ s a -> s{_aolPageToken = a})++-- | The standard list page size.+aolPageSize :: Lens' AppsOperationsList (Maybe Int32)+aolPageSize+ = lens _aolPageSize (\ s a -> s{_aolPageSize = a}) .+ mapping _Coerce++-- | JSONP+aolCallback :: Lens' AppsOperationsList (Maybe Text)+aolCallback+ = lens _aolCallback (\ s a -> s{_aolCallback = a})++instance GoogleRequest AppsOperationsList where+ type Rs AppsOperationsList = ListOperationsResponse+ requestClient AppsOperationsList{..}+ = go _aolAppsId _aolXgafv _aolUploadProtocol+ (Just _aolPp)+ _aolAccessToken+ _aolUploadType+ _aolBearerToken+ _aolFilter+ _aolPageToken+ _aolPageSize+ _aolCallback+ (Just AltJSON)+ appEngineService+ where go+ = buildClient+ (Proxy :: Proxy AppsOperationsListResource)+ mempty
+ gogol-appengine.cabal view
@@ -0,0 +1,57 @@+name: gogol-appengine+version: 0.0.1+synopsis: Google App Engine Admin 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 Brendan Hay+category: Network, Google, Cloud+build-type: Simple+cabal-version: >= 1.10+extra-source-files: README.md++description:+ The Google App Engine Admin API enables developers to provision and+ manage their App Engine applications.+ .+ /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 @v1beta4@+ 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.AppEngine+ , Network.Google.AppEngine.Types+ , Network.Google.Resource.AppEngine.Apps.Get+ , Network.Google.Resource.AppEngine.Apps.Modules.Delete+ , Network.Google.Resource.AppEngine.Apps.Modules.Get+ , Network.Google.Resource.AppEngine.Apps.Modules.List+ , Network.Google.Resource.AppEngine.Apps.Modules.Patch+ , Network.Google.Resource.AppEngine.Apps.Modules.Versions.Create+ , Network.Google.Resource.AppEngine.Apps.Modules.Versions.Delete+ , Network.Google.Resource.AppEngine.Apps.Modules.Versions.Get+ , Network.Google.Resource.AppEngine.Apps.Modules.Versions.List+ , Network.Google.Resource.AppEngine.Apps.Operations.Get+ , Network.Google.Resource.AppEngine.Apps.Operations.List++ other-modules:+ Network.Google.AppEngine.Types.Product+ , Network.Google.AppEngine.Types.Sum++ build-depends:+ gogol-core == 0.0.1.*+ , base >= 4.7 && < 5