packages feed

gogol-autoscaler (empty) → 0.0.1

raw patch · 18 files changed

+3374/−0 lines, 18 filesdep +basedep +gogol-coresetup-changed

Dependencies added: base, gogol-core

Files

+ 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-autoscaler++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version++`0.0.1`+++## Description++A client library for the Google Compute Engine Autoscaler.+++## 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-autoscaler` 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/Autoscaler.hs view
@@ -0,0 +1,236 @@+{-# LANGUAGE DataKinds         #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE TypeOperators     #-}++{-# OPTIONS_GHC -fno-warn-unused-imports    #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}++-- |+-- Module      : Network.Google.Autoscaler+-- 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 Compute Engine Autoscaler API provides autoscaling for groups+-- of Cloud VMs.+--+-- /See:/ <http://developers.google.com/compute/docs/autoscaler Google Compute Engine Autoscaler API Reference>+module Network.Google.Autoscaler+    (+    -- * Service Configuration+      autoscalerService++    -- * API Declaration+    , AutoscalerAPI++    -- * Resources++    -- ** autoscaler.autoscalers.delete+    , module Network.Google.Resource.Autoscaler.Autoscalers.Delete++    -- ** autoscaler.autoscalers.get+    , module Network.Google.Resource.Autoscaler.Autoscalers.Get++    -- ** autoscaler.autoscalers.insert+    , module Network.Google.Resource.Autoscaler.Autoscalers.Insert++    -- ** autoscaler.autoscalers.list+    , module Network.Google.Resource.Autoscaler.Autoscalers.List++    -- ** autoscaler.autoscalers.patch+    , module Network.Google.Resource.Autoscaler.Autoscalers.Patch++    -- ** autoscaler.autoscalers.update+    , module Network.Google.Resource.Autoscaler.Autoscalers.Update++    -- ** autoscaler.zoneOperations.delete+    , module Network.Google.Resource.Autoscaler.ZoneOperations.Delete++    -- ** autoscaler.zoneOperations.get+    , module Network.Google.Resource.Autoscaler.ZoneOperations.Get++    -- ** autoscaler.zoneOperations.list+    , module Network.Google.Resource.Autoscaler.ZoneOperations.List++    -- ** autoscaler.zones.list+    , module Network.Google.Resource.Autoscaler.Zones.List++    -- * Types++    -- ** OperationWarningsItemDataItem+    , OperationWarningsItemDataItem+    , operationWarningsItemDataItem+    , owidiValue+    , owidiKey++    -- ** DeprecationStatus+    , DeprecationStatus+    , deprecationStatus+    , dsState+    , dsDeleted+    , dsReplacement+    , dsObsolete+    , dsDeprecated++    -- ** AutoscalingPolicyCustomMetricUtilization+    , AutoscalingPolicyCustomMetricUtilization+    , autoscalingPolicyCustomMetricUtilization+    , apcmuUtilizationTarget+    , apcmuMetric+    , apcmuUtilizationTargetType++    -- ** OperationList+    , OperationList+    , operationList+    , olNextPageToken+    , olKind+    , olItems+    , olSelfLink+    , olId++    -- ** Operation+    , Operation+    , operation+    , oTargetId+    , oStatus+    , oInsertTime+    , oProgress+    , oStartTime+    , oKind+    , oError+    , oHTTPErrorMessage+    , oZone+    , oWarnings+    , oHTTPErrorStatusCode+    , oUser+    , oSelfLink+    , oName+    , oStatusMessage+    , oCreationTimestamp+    , oEndTime+    , oId+    , oOperationType+    , oRegion+    , oTargetLink+    , oClientOperationId++    -- ** AutoscalingPolicyLoadBalancingUtilization+    , AutoscalingPolicyLoadBalancingUtilization+    , autoscalingPolicyLoadBalancingUtilization+    , aplbuUtilizationTarget++    -- ** Zone+    , Zone+    , zone+    , zStatus+    , zMaintenanceWindows+    , zKind+    , zSelfLink+    , zName+    , zCreationTimestamp+    , zId+    , zRegion+    , zDescription+    , zDeprecated++    -- ** ZoneMaintenanceWindowsItem+    , ZoneMaintenanceWindowsItem+    , zoneMaintenanceWindowsItem+    , zmwiBeginTime+    , zmwiName+    , zmwiEndTime+    , zmwiDescription++    -- ** ZoneList+    , ZoneList+    , zoneList+    , zlNextPageToken+    , zlKind+    , zlItems+    , zlSelfLink+    , zlId++    -- ** AutoscalerListResponse+    , AutoscalerListResponse+    , autoscalerListResponse+    , alrNextPageToken+    , alrKind+    , alrItems++    -- ** AutoscalingPolicy+    , AutoscalingPolicy+    , autoscalingPolicy+    , apCustomMetricUtilizations+    , apMaxNumReplicas+    , apCPUUtilization+    , apLoadBalancingUtilization+    , apMinNumReplicas+    , apCoolDownPeriodSec++    -- ** OperationError+    , OperationError+    , operationError+    , oeErrors++    -- ** Autoscaler+    , Autoscaler+    , autoscaler+    , aKind+    , aSelfLink+    , aName+    , aCreationTimestamp+    , aAutoscalingPolicy+    , aId+    , aDescription+    , aTarget++    -- ** OperationErrorErrorsItem+    , OperationErrorErrorsItem+    , operationErrorErrorsItem+    , oeeiLocation+    , oeeiCode+    , oeeiMessage++    -- ** AutoscalingPolicyCPUUtilization+    , AutoscalingPolicyCPUUtilization+    , autoscalingPolicyCPUUtilization+    , apcuUtilizationTarget++    -- ** OperationWarningsItem+    , OperationWarningsItem+    , operationWarningsItem+    , owiData+    , owiCode+    , owiMessage+    ) where++import           Network.Google.Autoscaler.Types+import           Network.Google.Prelude+import           Network.Google.Resource.Autoscaler.Autoscalers.Delete+import           Network.Google.Resource.Autoscaler.Autoscalers.Get+import           Network.Google.Resource.Autoscaler.Autoscalers.Insert+import           Network.Google.Resource.Autoscaler.Autoscalers.List+import           Network.Google.Resource.Autoscaler.Autoscalers.Patch+import           Network.Google.Resource.Autoscaler.Autoscalers.Update+import           Network.Google.Resource.Autoscaler.ZoneOperations.Delete+import           Network.Google.Resource.Autoscaler.ZoneOperations.Get+import           Network.Google.Resource.Autoscaler.ZoneOperations.List+import           Network.Google.Resource.Autoscaler.Zones.List++{- $resources+TODO+-}++-- | Represents the entirety of the methods and resources available for the Google Compute Engine Autoscaler API service.+type AutoscalerAPI =+     ZonesListResource :<|> AutoscalersInsertResource :<|>+       AutoscalersListResource+       :<|> AutoscalersPatchResource+       :<|> AutoscalersGetResource+       :<|> AutoscalersDeleteResource+       :<|> AutoscalersUpdateResource+       :<|> ZoneOperationsListResource+       :<|> ZoneOperationsGetResource+       :<|> ZoneOperationsDeleteResource
+ gen/Network/Google/Autoscaler/Types.hs view
@@ -0,0 +1,188 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric      #-}+{-# LANGUAGE NoImplicitPrelude  #-}+{-# LANGUAGE OverloadedStrings  #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module      : Network.Google.Autoscaler.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.Autoscaler.Types+    (+    -- * Service Configuration+      autoscalerService++    -- * OAuth Scopes+    , computeScope+    , computeReadonlyScope++    -- * OperationWarningsItemDataItem+    , OperationWarningsItemDataItem+    , operationWarningsItemDataItem+    , owidiValue+    , owidiKey++    -- * DeprecationStatus+    , DeprecationStatus+    , deprecationStatus+    , dsState+    , dsDeleted+    , dsReplacement+    , dsObsolete+    , dsDeprecated++    -- * AutoscalingPolicyCustomMetricUtilization+    , AutoscalingPolicyCustomMetricUtilization+    , autoscalingPolicyCustomMetricUtilization+    , apcmuUtilizationTarget+    , apcmuMetric+    , apcmuUtilizationTargetType++    -- * OperationList+    , OperationList+    , operationList+    , olNextPageToken+    , olKind+    , olItems+    , olSelfLink+    , olId++    -- * Operation+    , Operation+    , operation+    , oTargetId+    , oStatus+    , oInsertTime+    , oProgress+    , oStartTime+    , oKind+    , oError+    , oHTTPErrorMessage+    , oZone+    , oWarnings+    , oHTTPErrorStatusCode+    , oUser+    , oSelfLink+    , oName+    , oStatusMessage+    , oCreationTimestamp+    , oEndTime+    , oId+    , oOperationType+    , oRegion+    , oTargetLink+    , oClientOperationId++    -- * AutoscalingPolicyLoadBalancingUtilization+    , AutoscalingPolicyLoadBalancingUtilization+    , autoscalingPolicyLoadBalancingUtilization+    , aplbuUtilizationTarget++    -- * Zone+    , Zone+    , zone+    , zStatus+    , zMaintenanceWindows+    , zKind+    , zSelfLink+    , zName+    , zCreationTimestamp+    , zId+    , zRegion+    , zDescription+    , zDeprecated++    -- * ZoneMaintenanceWindowsItem+    , ZoneMaintenanceWindowsItem+    , zoneMaintenanceWindowsItem+    , zmwiBeginTime+    , zmwiName+    , zmwiEndTime+    , zmwiDescription++    -- * ZoneList+    , ZoneList+    , zoneList+    , zlNextPageToken+    , zlKind+    , zlItems+    , zlSelfLink+    , zlId++    -- * AutoscalerListResponse+    , AutoscalerListResponse+    , autoscalerListResponse+    , alrNextPageToken+    , alrKind+    , alrItems++    -- * AutoscalingPolicy+    , AutoscalingPolicy+    , autoscalingPolicy+    , apCustomMetricUtilizations+    , apMaxNumReplicas+    , apCPUUtilization+    , apLoadBalancingUtilization+    , apMinNumReplicas+    , apCoolDownPeriodSec++    -- * OperationError+    , OperationError+    , operationError+    , oeErrors++    -- * Autoscaler+    , Autoscaler+    , autoscaler+    , aKind+    , aSelfLink+    , aName+    , aCreationTimestamp+    , aAutoscalingPolicy+    , aId+    , aDescription+    , aTarget++    -- * OperationErrorErrorsItem+    , OperationErrorErrorsItem+    , operationErrorErrorsItem+    , oeeiLocation+    , oeeiCode+    , oeeiMessage++    -- * AutoscalingPolicyCPUUtilization+    , AutoscalingPolicyCPUUtilization+    , autoscalingPolicyCPUUtilization+    , apcuUtilizationTarget++    -- * OperationWarningsItem+    , OperationWarningsItem+    , operationWarningsItem+    , owiData+    , owiCode+    , owiMessage+    ) where++import           Network.Google.Autoscaler.Types.Product+import           Network.Google.Autoscaler.Types.Sum+import           Network.Google.Prelude++-- | Default request referring to version 'v1beta2' of the Google Compute Engine Autoscaler API. This contains the host and root path used as a starting point for constructing service requests.+autoscalerService :: Service+autoscalerService+  = defaultService (ServiceId "autoscaler:v1beta2")+      "www.googleapis.com"++-- | View and manage your Google Compute Engine resources+computeScope :: OAuthScope+computeScope = "https://www.googleapis.com/auth/compute";++-- | View your Google Compute Engine resources+computeReadonlyScope :: OAuthScope+computeReadonlyScope = "https://www.googleapis.com/auth/compute.readonly";
+ gen/Network/Google/Autoscaler/Types/Product.hs view
@@ -0,0 +1,1316 @@+{-# 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.Autoscaler.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.Autoscaler.Types.Product where++import           Network.Google.Autoscaler.Types.Sum+import           Network.Google.Prelude++--+-- /See:/ 'operationWarningsItemDataItem' smart constructor.+data OperationWarningsItemDataItem = OperationWarningsItemDataItem+    { _owidiValue :: !(Maybe Text)+    , _owidiKey   :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'OperationWarningsItemDataItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'owidiValue'+--+-- * 'owidiKey'+operationWarningsItemDataItem+    :: OperationWarningsItemDataItem+operationWarningsItemDataItem =+    OperationWarningsItemDataItem+    { _owidiValue = Nothing+    , _owidiKey = Nothing+    }++owidiValue :: Lens' OperationWarningsItemDataItem (Maybe Text)+owidiValue+  = lens _owidiValue (\ s a -> s{_owidiValue = a})++owidiKey :: Lens' OperationWarningsItemDataItem (Maybe Text)+owidiKey = lens _owidiKey (\ s a -> s{_owidiKey = a})++instance FromJSON OperationWarningsItemDataItem where+        parseJSON+          = withObject "OperationWarningsItemDataItem"+              (\ o ->+                 OperationWarningsItemDataItem <$>+                   (o .:? "value") <*> (o .:? "key"))++instance ToJSON OperationWarningsItemDataItem where+        toJSON OperationWarningsItemDataItem{..}+          = object+              (catMaybes+                 [("value" .=) <$> _owidiValue,+                  ("key" .=) <$> _owidiKey])++--+-- /See:/ 'deprecationStatus' smart constructor.+data DeprecationStatus = DeprecationStatus+    { _dsState       :: !(Maybe Text)+    , _dsDeleted     :: !(Maybe Text)+    , _dsReplacement :: !(Maybe Text)+    , _dsObsolete    :: !(Maybe Text)+    , _dsDeprecated  :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DeprecationStatus' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dsState'+--+-- * 'dsDeleted'+--+-- * 'dsReplacement'+--+-- * 'dsObsolete'+--+-- * 'dsDeprecated'+deprecationStatus+    :: DeprecationStatus+deprecationStatus =+    DeprecationStatus+    { _dsState = Nothing+    , _dsDeleted = Nothing+    , _dsReplacement = Nothing+    , _dsObsolete = Nothing+    , _dsDeprecated = Nothing+    }++dsState :: Lens' DeprecationStatus (Maybe Text)+dsState = lens _dsState (\ s a -> s{_dsState = a})++dsDeleted :: Lens' DeprecationStatus (Maybe Text)+dsDeleted+  = lens _dsDeleted (\ s a -> s{_dsDeleted = a})++dsReplacement :: Lens' DeprecationStatus (Maybe Text)+dsReplacement+  = lens _dsReplacement+      (\ s a -> s{_dsReplacement = a})++dsObsolete :: Lens' DeprecationStatus (Maybe Text)+dsObsolete+  = lens _dsObsolete (\ s a -> s{_dsObsolete = a})++dsDeprecated :: Lens' DeprecationStatus (Maybe Text)+dsDeprecated+  = lens _dsDeprecated (\ s a -> s{_dsDeprecated = a})++instance FromJSON DeprecationStatus where+        parseJSON+          = withObject "DeprecationStatus"+              (\ o ->+                 DeprecationStatus <$>+                   (o .:? "state") <*> (o .:? "deleted") <*>+                     (o .:? "replacement")+                     <*> (o .:? "obsolete")+                     <*> (o .:? "deprecated"))++instance ToJSON DeprecationStatus where+        toJSON DeprecationStatus{..}+          = object+              (catMaybes+                 [("state" .=) <$> _dsState,+                  ("deleted" .=) <$> _dsDeleted,+                  ("replacement" .=) <$> _dsReplacement,+                  ("obsolete" .=) <$> _dsObsolete,+                  ("deprecated" .=) <$> _dsDeprecated])++-- | Custom utilization metric policy.+--+-- /See:/ 'autoscalingPolicyCustomMetricUtilization' smart constructor.+data AutoscalingPolicyCustomMetricUtilization = AutoscalingPolicyCustomMetricUtilization+    { _apcmuUtilizationTarget     :: !(Maybe (Textual Double))+    , _apcmuMetric                :: !(Maybe Text)+    , _apcmuUtilizationTargetType :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AutoscalingPolicyCustomMetricUtilization' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'apcmuUtilizationTarget'+--+-- * 'apcmuMetric'+--+-- * 'apcmuUtilizationTargetType'+autoscalingPolicyCustomMetricUtilization+    :: AutoscalingPolicyCustomMetricUtilization+autoscalingPolicyCustomMetricUtilization =+    AutoscalingPolicyCustomMetricUtilization+    { _apcmuUtilizationTarget = Nothing+    , _apcmuMetric = Nothing+    , _apcmuUtilizationTargetType = Nothing+    }++-- | Target value of the metric which Autoscaler should maintain. Must be a+-- positive value.+apcmuUtilizationTarget :: Lens' AutoscalingPolicyCustomMetricUtilization (Maybe Double)+apcmuUtilizationTarget+  = lens _apcmuUtilizationTarget+      (\ s a -> s{_apcmuUtilizationTarget = a})+      . mapping _Coerce++-- | Identifier of the metric. It should be a Cloud Monitoring metric. The+-- metric can not have negative values. The metric should be an utilization+-- metric (increasing number of VMs handling requests x times should reduce+-- average value of the metric roughly x times). For example you could use:+-- compute.googleapis.com\/instance\/network\/received_bytes_count.+apcmuMetric :: Lens' AutoscalingPolicyCustomMetricUtilization (Maybe Text)+apcmuMetric+  = lens _apcmuMetric (\ s a -> s{_apcmuMetric = a})++-- | Defines type in which utilization_target is expressed.+apcmuUtilizationTargetType :: Lens' AutoscalingPolicyCustomMetricUtilization (Maybe Text)+apcmuUtilizationTargetType+  = lens _apcmuUtilizationTargetType+      (\ s a -> s{_apcmuUtilizationTargetType = a})++instance FromJSON+         AutoscalingPolicyCustomMetricUtilization where+        parseJSON+          = withObject+              "AutoscalingPolicyCustomMetricUtilization"+              (\ o ->+                 AutoscalingPolicyCustomMetricUtilization <$>+                   (o .:? "utilizationTarget") <*> (o .:? "metric") <*>+                     (o .:? "utilizationTargetType"))++instance ToJSON+         AutoscalingPolicyCustomMetricUtilization where+        toJSON AutoscalingPolicyCustomMetricUtilization{..}+          = object+              (catMaybes+                 [("utilizationTarget" .=) <$>+                    _apcmuUtilizationTarget,+                  ("metric" .=) <$> _apcmuMetric,+                  ("utilizationTargetType" .=) <$>+                    _apcmuUtilizationTargetType])++--+-- /See:/ 'operationList' smart constructor.+data OperationList = OperationList+    { _olNextPageToken :: !(Maybe Text)+    , _olKind          :: !Text+    , _olItems         :: !(Maybe [Operation])+    , _olSelfLink      :: !(Maybe Text)+    , _olId            :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'OperationList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'olNextPageToken'+--+-- * 'olKind'+--+-- * 'olItems'+--+-- * 'olSelfLink'+--+-- * 'olId'+operationList+    :: OperationList+operationList =+    OperationList+    { _olNextPageToken = Nothing+    , _olKind = "autoscaler#operationList"+    , _olItems = Nothing+    , _olSelfLink = Nothing+    , _olId = Nothing+    }++olNextPageToken :: Lens' OperationList (Maybe Text)+olNextPageToken+  = lens _olNextPageToken+      (\ s a -> s{_olNextPageToken = a})++-- | [Output Only] Type of resource. Always compute#operations for Operations+-- resource.+olKind :: Lens' OperationList Text+olKind = lens _olKind (\ s a -> s{_olKind = a})++olItems :: Lens' OperationList [Operation]+olItems+  = lens _olItems (\ s a -> s{_olItems = a}) . _Default+      . _Coerce++olSelfLink :: Lens' OperationList (Maybe Text)+olSelfLink+  = lens _olSelfLink (\ s a -> s{_olSelfLink = a})++olId :: Lens' OperationList (Maybe Text)+olId = lens _olId (\ s a -> s{_olId = a})++instance FromJSON OperationList where+        parseJSON+          = withObject "OperationList"+              (\ o ->+                 OperationList <$>+                   (o .:? "nextPageToken") <*>+                     (o .:? "kind" .!= "autoscaler#operationList")+                     <*> (o .:? "items" .!= mempty)+                     <*> (o .:? "selfLink")+                     <*> (o .:? "id"))++instance ToJSON OperationList where+        toJSON OperationList{..}+          = object+              (catMaybes+                 [("nextPageToken" .=) <$> _olNextPageToken,+                  Just ("kind" .= _olKind), ("items" .=) <$> _olItems,+                  ("selfLink" .=) <$> _olSelfLink,+                  ("id" .=) <$> _olId])++--+-- /See:/ 'operation' smart constructor.+data Operation = Operation+    { _oTargetId            :: !(Maybe (Textual Word64))+    , _oStatus              :: !(Maybe Text)+    , _oInsertTime          :: !(Maybe Text)+    , _oProgress            :: !(Maybe (Textual Int32))+    , _oStartTime           :: !(Maybe Text)+    , _oKind                :: !Text+    , _oError               :: !(Maybe OperationError)+    , _oHTTPErrorMessage    :: !(Maybe Text)+    , _oZone                :: !(Maybe Text)+    , _oWarnings            :: !(Maybe [OperationWarningsItem])+    , _oHTTPErrorStatusCode :: !(Maybe (Textual Int32))+    , _oUser                :: !(Maybe Text)+    , _oSelfLink            :: !(Maybe Text)+    , _oName                :: !(Maybe Text)+    , _oStatusMessage       :: !(Maybe Text)+    , _oCreationTimestamp   :: !(Maybe Text)+    , _oEndTime             :: !(Maybe Text)+    , _oId                  :: !(Maybe (Textual Word64))+    , _oOperationType       :: !(Maybe Text)+    , _oRegion              :: !(Maybe Text)+    , _oTargetLink          :: !(Maybe Text)+    , _oClientOperationId   :: !(Maybe Text)+    } 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:+--+-- * 'oTargetId'+--+-- * 'oStatus'+--+-- * 'oInsertTime'+--+-- * 'oProgress'+--+-- * 'oStartTime'+--+-- * 'oKind'+--+-- * 'oError'+--+-- * 'oHTTPErrorMessage'+--+-- * 'oZone'+--+-- * 'oWarnings'+--+-- * 'oHTTPErrorStatusCode'+--+-- * 'oUser'+--+-- * 'oSelfLink'+--+-- * 'oName'+--+-- * 'oStatusMessage'+--+-- * 'oCreationTimestamp'+--+-- * 'oEndTime'+--+-- * 'oId'+--+-- * 'oOperationType'+--+-- * 'oRegion'+--+-- * 'oTargetLink'+--+-- * 'oClientOperationId'+operation+    :: Operation+operation =+    Operation+    { _oTargetId = Nothing+    , _oStatus = Nothing+    , _oInsertTime = Nothing+    , _oProgress = Nothing+    , _oStartTime = Nothing+    , _oKind = "autoscaler#operation"+    , _oError = Nothing+    , _oHTTPErrorMessage = Nothing+    , _oZone = Nothing+    , _oWarnings = Nothing+    , _oHTTPErrorStatusCode = Nothing+    , _oUser = Nothing+    , _oSelfLink = Nothing+    , _oName = Nothing+    , _oStatusMessage = Nothing+    , _oCreationTimestamp = Nothing+    , _oEndTime = Nothing+    , _oId = Nothing+    , _oOperationType = Nothing+    , _oRegion = Nothing+    , _oTargetLink = Nothing+    , _oClientOperationId = Nothing+    }++oTargetId :: Lens' Operation (Maybe Word64)+oTargetId+  = lens _oTargetId (\ s a -> s{_oTargetId = a}) .+      mapping _Coerce++oStatus :: Lens' Operation (Maybe Text)+oStatus = lens _oStatus (\ s a -> s{_oStatus = a})++oInsertTime :: Lens' Operation (Maybe Text)+oInsertTime+  = lens _oInsertTime (\ s a -> s{_oInsertTime = a})++oProgress :: Lens' Operation (Maybe Int32)+oProgress+  = lens _oProgress (\ s a -> s{_oProgress = a}) .+      mapping _Coerce++oStartTime :: Lens' Operation (Maybe Text)+oStartTime+  = lens _oStartTime (\ s a -> s{_oStartTime = a})++-- | [Output Only] Type of the resource. Always compute#Operation for+-- Operation resources.+oKind :: Lens' Operation Text+oKind = lens _oKind (\ s a -> s{_oKind = a})++oError :: Lens' Operation (Maybe OperationError)+oError = lens _oError (\ s a -> s{_oError = a})++oHTTPErrorMessage :: Lens' Operation (Maybe Text)+oHTTPErrorMessage+  = lens _oHTTPErrorMessage+      (\ s a -> s{_oHTTPErrorMessage = a})++oZone :: Lens' Operation (Maybe Text)+oZone = lens _oZone (\ s a -> s{_oZone = a})++oWarnings :: Lens' Operation [OperationWarningsItem]+oWarnings+  = lens _oWarnings (\ s a -> s{_oWarnings = a}) .+      _Default+      . _Coerce++oHTTPErrorStatusCode :: Lens' Operation (Maybe Int32)+oHTTPErrorStatusCode+  = lens _oHTTPErrorStatusCode+      (\ s a -> s{_oHTTPErrorStatusCode = a})+      . mapping _Coerce++oUser :: Lens' Operation (Maybe Text)+oUser = lens _oUser (\ s a -> s{_oUser = a})++oSelfLink :: Lens' Operation (Maybe Text)+oSelfLink+  = lens _oSelfLink (\ s a -> s{_oSelfLink = a})++oName :: Lens' Operation (Maybe Text)+oName = lens _oName (\ s a -> s{_oName = a})++oStatusMessage :: Lens' Operation (Maybe Text)+oStatusMessage+  = lens _oStatusMessage+      (\ s a -> s{_oStatusMessage = a})++oCreationTimestamp :: Lens' Operation (Maybe Text)+oCreationTimestamp+  = lens _oCreationTimestamp+      (\ s a -> s{_oCreationTimestamp = a})++oEndTime :: Lens' Operation (Maybe Text)+oEndTime = lens _oEndTime (\ s a -> s{_oEndTime = a})++oId :: Lens' Operation (Maybe Word64)+oId+  = lens _oId (\ s a -> s{_oId = a}) . mapping _Coerce++oOperationType :: Lens' Operation (Maybe Text)+oOperationType+  = lens _oOperationType+      (\ s a -> s{_oOperationType = a})++oRegion :: Lens' Operation (Maybe Text)+oRegion = lens _oRegion (\ s a -> s{_oRegion = a})++oTargetLink :: Lens' Operation (Maybe Text)+oTargetLink+  = lens _oTargetLink (\ s a -> s{_oTargetLink = a})++oClientOperationId :: Lens' Operation (Maybe Text)+oClientOperationId+  = lens _oClientOperationId+      (\ s a -> s{_oClientOperationId = a})++instance FromJSON Operation where+        parseJSON+          = withObject "Operation"+              (\ o ->+                 Operation <$>+                   (o .:? "targetId") <*> (o .:? "status") <*>+                     (o .:? "insertTime")+                     <*> (o .:? "progress")+                     <*> (o .:? "startTime")+                     <*> (o .:? "kind" .!= "autoscaler#operation")+                     <*> (o .:? "error")+                     <*> (o .:? "httpErrorMessage")+                     <*> (o .:? "zone")+                     <*> (o .:? "warnings" .!= mempty)+                     <*> (o .:? "httpErrorStatusCode")+                     <*> (o .:? "user")+                     <*> (o .:? "selfLink")+                     <*> (o .:? "name")+                     <*> (o .:? "statusMessage")+                     <*> (o .:? "creationTimestamp")+                     <*> (o .:? "endTime")+                     <*> (o .:? "id")+                     <*> (o .:? "operationType")+                     <*> (o .:? "region")+                     <*> (o .:? "targetLink")+                     <*> (o .:? "clientOperationId"))++instance ToJSON Operation where+        toJSON Operation{..}+          = object+              (catMaybes+                 [("targetId" .=) <$> _oTargetId,+                  ("status" .=) <$> _oStatus,+                  ("insertTime" .=) <$> _oInsertTime,+                  ("progress" .=) <$> _oProgress,+                  ("startTime" .=) <$> _oStartTime,+                  Just ("kind" .= _oKind), ("error" .=) <$> _oError,+                  ("httpErrorMessage" .=) <$> _oHTTPErrorMessage,+                  ("zone" .=) <$> _oZone,+                  ("warnings" .=) <$> _oWarnings,+                  ("httpErrorStatusCode" .=) <$> _oHTTPErrorStatusCode,+                  ("user" .=) <$> _oUser,+                  ("selfLink" .=) <$> _oSelfLink,+                  ("name" .=) <$> _oName,+                  ("statusMessage" .=) <$> _oStatusMessage,+                  ("creationTimestamp" .=) <$> _oCreationTimestamp,+                  ("endTime" .=) <$> _oEndTime, ("id" .=) <$> _oId,+                  ("operationType" .=) <$> _oOperationType,+                  ("region" .=) <$> _oRegion,+                  ("targetLink" .=) <$> _oTargetLink,+                  ("clientOperationId" .=) <$> _oClientOperationId])++-- | Load balancing utilization policy.+--+-- /See:/ 'autoscalingPolicyLoadBalancingUtilization' smart constructor.+newtype AutoscalingPolicyLoadBalancingUtilization = AutoscalingPolicyLoadBalancingUtilization+    { _aplbuUtilizationTarget :: Maybe (Textual Double)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AutoscalingPolicyLoadBalancingUtilization' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aplbuUtilizationTarget'+autoscalingPolicyLoadBalancingUtilization+    :: AutoscalingPolicyLoadBalancingUtilization+autoscalingPolicyLoadBalancingUtilization =+    AutoscalingPolicyLoadBalancingUtilization+    { _aplbuUtilizationTarget = Nothing+    }++-- | Fraction of backend capacity utilization (set in HTTP load balancing+-- configuration) that Autoscaler should maintain. Must be a positive float+-- value. If not defined, the default is 0.8. For example if your+-- maxRatePerInstance capacity (in HTTP Load Balancing configuration) is+-- set at 10 and you would like to keep number of instances such that each+-- instance receives 7 QPS on average, set this to 0.7.+aplbuUtilizationTarget :: Lens' AutoscalingPolicyLoadBalancingUtilization (Maybe Double)+aplbuUtilizationTarget+  = lens _aplbuUtilizationTarget+      (\ s a -> s{_aplbuUtilizationTarget = a})+      . mapping _Coerce++instance FromJSON+         AutoscalingPolicyLoadBalancingUtilization where+        parseJSON+          = withObject+              "AutoscalingPolicyLoadBalancingUtilization"+              (\ o ->+                 AutoscalingPolicyLoadBalancingUtilization <$>+                   (o .:? "utilizationTarget"))++instance ToJSON+         AutoscalingPolicyLoadBalancingUtilization where+        toJSON AutoscalingPolicyLoadBalancingUtilization{..}+          = object+              (catMaybes+                 [("utilizationTarget" .=) <$>+                    _aplbuUtilizationTarget])++--+-- /See:/ 'zone' smart constructor.+data Zone = Zone+    { _zStatus             :: !(Maybe Text)+    , _zMaintenanceWindows :: !(Maybe [ZoneMaintenanceWindowsItem])+    , _zKind               :: !Text+    , _zSelfLink           :: !(Maybe Text)+    , _zName               :: !(Maybe Text)+    , _zCreationTimestamp  :: !(Maybe Text)+    , _zId                 :: !(Maybe (Textual Word64))+    , _zRegion             :: !(Maybe Text)+    , _zDescription        :: !(Maybe Text)+    , _zDeprecated         :: !(Maybe DeprecationStatus)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Zone' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'zStatus'+--+-- * 'zMaintenanceWindows'+--+-- * 'zKind'+--+-- * 'zSelfLink'+--+-- * 'zName'+--+-- * 'zCreationTimestamp'+--+-- * 'zId'+--+-- * 'zRegion'+--+-- * 'zDescription'+--+-- * 'zDeprecated'+zone+    :: Zone+zone =+    Zone+    { _zStatus = Nothing+    , _zMaintenanceWindows = Nothing+    , _zKind = "autoscaler#zone"+    , _zSelfLink = Nothing+    , _zName = Nothing+    , _zCreationTimestamp = Nothing+    , _zId = Nothing+    , _zRegion = Nothing+    , _zDescription = Nothing+    , _zDeprecated = Nothing+    }++zStatus :: Lens' Zone (Maybe Text)+zStatus = lens _zStatus (\ s a -> s{_zStatus = a})++zMaintenanceWindows :: Lens' Zone [ZoneMaintenanceWindowsItem]+zMaintenanceWindows+  = lens _zMaintenanceWindows+      (\ s a -> s{_zMaintenanceWindows = a})+      . _Default+      . _Coerce++-- | [Output Only] Type of the resource. Always kind#zone for zones.+zKind :: Lens' Zone Text+zKind = lens _zKind (\ s a -> s{_zKind = a})++-- | [Output Only] Server defined URL for the resource.+zSelfLink :: Lens' Zone (Maybe Text)+zSelfLink+  = lens _zSelfLink (\ s a -> s{_zSelfLink = a})++zName :: Lens' Zone (Maybe Text)+zName = lens _zName (\ s a -> s{_zName = a})++zCreationTimestamp :: Lens' Zone (Maybe Text)+zCreationTimestamp+  = lens _zCreationTimestamp+      (\ s a -> s{_zCreationTimestamp = a})++zId :: Lens' Zone (Maybe Word64)+zId+  = lens _zId (\ s a -> s{_zId = a}) . mapping _Coerce++zRegion :: Lens' Zone (Maybe Text)+zRegion = lens _zRegion (\ s a -> s{_zRegion = a})++zDescription :: Lens' Zone (Maybe Text)+zDescription+  = lens _zDescription (\ s a -> s{_zDescription = a})++zDeprecated :: Lens' Zone (Maybe DeprecationStatus)+zDeprecated+  = lens _zDeprecated (\ s a -> s{_zDeprecated = a})++instance FromJSON Zone where+        parseJSON+          = withObject "Zone"+              (\ o ->+                 Zone <$>+                   (o .:? "status") <*>+                     (o .:? "maintenanceWindows" .!= mempty)+                     <*> (o .:? "kind" .!= "autoscaler#zone")+                     <*> (o .:? "selfLink")+                     <*> (o .:? "name")+                     <*> (o .:? "creationTimestamp")+                     <*> (o .:? "id")+                     <*> (o .:? "region")+                     <*> (o .:? "description")+                     <*> (o .:? "deprecated"))++instance ToJSON Zone where+        toJSON Zone{..}+          = object+              (catMaybes+                 [("status" .=) <$> _zStatus,+                  ("maintenanceWindows" .=) <$> _zMaintenanceWindows,+                  Just ("kind" .= _zKind),+                  ("selfLink" .=) <$> _zSelfLink,+                  ("name" .=) <$> _zName,+                  ("creationTimestamp" .=) <$> _zCreationTimestamp,+                  ("id" .=) <$> _zId, ("region" .=) <$> _zRegion,+                  ("description" .=) <$> _zDescription,+                  ("deprecated" .=) <$> _zDeprecated])++--+-- /See:/ 'zoneMaintenanceWindowsItem' smart constructor.+data ZoneMaintenanceWindowsItem = ZoneMaintenanceWindowsItem+    { _zmwiBeginTime   :: !(Maybe Text)+    , _zmwiName        :: !(Maybe Text)+    , _zmwiEndTime     :: !(Maybe Text)+    , _zmwiDescription :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ZoneMaintenanceWindowsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'zmwiBeginTime'+--+-- * 'zmwiName'+--+-- * 'zmwiEndTime'+--+-- * 'zmwiDescription'+zoneMaintenanceWindowsItem+    :: ZoneMaintenanceWindowsItem+zoneMaintenanceWindowsItem =+    ZoneMaintenanceWindowsItem+    { _zmwiBeginTime = Nothing+    , _zmwiName = Nothing+    , _zmwiEndTime = Nothing+    , _zmwiDescription = Nothing+    }++zmwiBeginTime :: Lens' ZoneMaintenanceWindowsItem (Maybe Text)+zmwiBeginTime+  = lens _zmwiBeginTime+      (\ s a -> s{_zmwiBeginTime = a})++zmwiName :: Lens' ZoneMaintenanceWindowsItem (Maybe Text)+zmwiName = lens _zmwiName (\ s a -> s{_zmwiName = a})++zmwiEndTime :: Lens' ZoneMaintenanceWindowsItem (Maybe Text)+zmwiEndTime+  = lens _zmwiEndTime (\ s a -> s{_zmwiEndTime = a})++zmwiDescription :: Lens' ZoneMaintenanceWindowsItem (Maybe Text)+zmwiDescription+  = lens _zmwiDescription+      (\ s a -> s{_zmwiDescription = a})++instance FromJSON ZoneMaintenanceWindowsItem where+        parseJSON+          = withObject "ZoneMaintenanceWindowsItem"+              (\ o ->+                 ZoneMaintenanceWindowsItem <$>+                   (o .:? "beginTime") <*> (o .:? "name") <*>+                     (o .:? "endTime")+                     <*> (o .:? "description"))++instance ToJSON ZoneMaintenanceWindowsItem where+        toJSON ZoneMaintenanceWindowsItem{..}+          = object+              (catMaybes+                 [("beginTime" .=) <$> _zmwiBeginTime,+                  ("name" .=) <$> _zmwiName,+                  ("endTime" .=) <$> _zmwiEndTime,+                  ("description" .=) <$> _zmwiDescription])++--+-- /See:/ 'zoneList' smart constructor.+data ZoneList = ZoneList+    { _zlNextPageToken :: !(Maybe Text)+    , _zlKind          :: !Text+    , _zlItems         :: !(Maybe [Zone])+    , _zlSelfLink      :: !(Maybe Text)+    , _zlId            :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ZoneList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'zlNextPageToken'+--+-- * 'zlKind'+--+-- * 'zlItems'+--+-- * 'zlSelfLink'+--+-- * 'zlId'+zoneList+    :: ZoneList+zoneList =+    ZoneList+    { _zlNextPageToken = Nothing+    , _zlKind = "autoscaler#zoneList"+    , _zlItems = Nothing+    , _zlSelfLink = Nothing+    , _zlId = Nothing+    }++zlNextPageToken :: Lens' ZoneList (Maybe Text)+zlNextPageToken+  = lens _zlNextPageToken+      (\ s a -> s{_zlNextPageToken = a})++-- | Type of resource.+zlKind :: Lens' ZoneList Text+zlKind = lens _zlKind (\ s a -> s{_zlKind = a})++zlItems :: Lens' ZoneList [Zone]+zlItems+  = lens _zlItems (\ s a -> s{_zlItems = a}) . _Default+      . _Coerce++-- | Server defined URL for this resource (output only).+zlSelfLink :: Lens' ZoneList (Maybe Text)+zlSelfLink+  = lens _zlSelfLink (\ s a -> s{_zlSelfLink = a})++zlId :: Lens' ZoneList (Maybe Text)+zlId = lens _zlId (\ s a -> s{_zlId = a})++instance FromJSON ZoneList where+        parseJSON+          = withObject "ZoneList"+              (\ o ->+                 ZoneList <$>+                   (o .:? "nextPageToken") <*>+                     (o .:? "kind" .!= "autoscaler#zoneList")+                     <*> (o .:? "items" .!= mempty)+                     <*> (o .:? "selfLink")+                     <*> (o .:? "id"))++instance ToJSON ZoneList where+        toJSON ZoneList{..}+          = object+              (catMaybes+                 [("nextPageToken" .=) <$> _zlNextPageToken,+                  Just ("kind" .= _zlKind), ("items" .=) <$> _zlItems,+                  ("selfLink" .=) <$> _zlSelfLink,+                  ("id" .=) <$> _zlId])++--+-- /See:/ 'autoscalerListResponse' smart constructor.+data AutoscalerListResponse = AutoscalerListResponse+    { _alrNextPageToken :: !(Maybe Text)+    , _alrKind          :: !Text+    , _alrItems         :: !(Maybe [Autoscaler])+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AutoscalerListResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'alrNextPageToken'+--+-- * 'alrKind'+--+-- * 'alrItems'+autoscalerListResponse+    :: AutoscalerListResponse+autoscalerListResponse =+    AutoscalerListResponse+    { _alrNextPageToken = Nothing+    , _alrKind = "compute#autoscalerList"+    , _alrItems = Nothing+    }++-- | [Output only] A token used to continue a truncated list request.+alrNextPageToken :: Lens' AutoscalerListResponse (Maybe Text)+alrNextPageToken+  = lens _alrNextPageToken+      (\ s a -> s{_alrNextPageToken = a})++-- | Type of resource.+alrKind :: Lens' AutoscalerListResponse Text+alrKind = lens _alrKind (\ s a -> s{_alrKind = a})++-- | Autoscaler resources.+alrItems :: Lens' AutoscalerListResponse [Autoscaler]+alrItems+  = lens _alrItems (\ s a -> s{_alrItems = a}) .+      _Default+      . _Coerce++instance FromJSON AutoscalerListResponse where+        parseJSON+          = withObject "AutoscalerListResponse"+              (\ o ->+                 AutoscalerListResponse <$>+                   (o .:? "nextPageToken") <*>+                     (o .:? "kind" .!= "compute#autoscalerList")+                     <*> (o .:? "items" .!= mempty))++instance ToJSON AutoscalerListResponse where+        toJSON AutoscalerListResponse{..}+          = object+              (catMaybes+                 [("nextPageToken" .=) <$> _alrNextPageToken,+                  Just ("kind" .= _alrKind),+                  ("items" .=) <$> _alrItems])++-- | Cloud Autoscaler policy.+--+-- /See:/ 'autoscalingPolicy' smart constructor.+data AutoscalingPolicy = AutoscalingPolicy+    { _apCustomMetricUtilizations :: !(Maybe [AutoscalingPolicyCustomMetricUtilization])+    , _apMaxNumReplicas           :: !(Maybe (Textual Int32))+    , _apCPUUtilization           :: !(Maybe AutoscalingPolicyCPUUtilization)+    , _apLoadBalancingUtilization :: !(Maybe AutoscalingPolicyLoadBalancingUtilization)+    , _apMinNumReplicas           :: !(Maybe (Textual Int32))+    , _apCoolDownPeriodSec        :: !(Maybe (Textual Int32))+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AutoscalingPolicy' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'apCustomMetricUtilizations'+--+-- * 'apMaxNumReplicas'+--+-- * 'apCPUUtilization'+--+-- * 'apLoadBalancingUtilization'+--+-- * 'apMinNumReplicas'+--+-- * 'apCoolDownPeriodSec'+autoscalingPolicy+    :: AutoscalingPolicy+autoscalingPolicy =+    AutoscalingPolicy+    { _apCustomMetricUtilizations = Nothing+    , _apMaxNumReplicas = Nothing+    , _apCPUUtilization = Nothing+    , _apLoadBalancingUtilization = Nothing+    , _apMinNumReplicas = Nothing+    , _apCoolDownPeriodSec = Nothing+    }++-- | Configuration parameters of autoscaling based on custom metric.+apCustomMetricUtilizations :: Lens' AutoscalingPolicy [AutoscalingPolicyCustomMetricUtilization]+apCustomMetricUtilizations+  = lens _apCustomMetricUtilizations+      (\ s a -> s{_apCustomMetricUtilizations = a})+      . _Default+      . _Coerce++-- | The maximum number of replicas that the Autoscaler can scale up to.+apMaxNumReplicas :: Lens' AutoscalingPolicy (Maybe Int32)+apMaxNumReplicas+  = lens _apMaxNumReplicas+      (\ s a -> s{_apMaxNumReplicas = a})+      . mapping _Coerce++-- | Exactly one utilization policy should be provided. Configuration+-- parameters of CPU based autoscaling policy.+apCPUUtilization :: Lens' AutoscalingPolicy (Maybe AutoscalingPolicyCPUUtilization)+apCPUUtilization+  = lens _apCPUUtilization+      (\ s a -> s{_apCPUUtilization = a})++-- | Configuration parameters of autoscaling based on load balancer.+apLoadBalancingUtilization :: Lens' AutoscalingPolicy (Maybe AutoscalingPolicyLoadBalancingUtilization)+apLoadBalancingUtilization+  = lens _apLoadBalancingUtilization+      (\ s a -> s{_apLoadBalancingUtilization = a})++-- | The minimum number of replicas that the Autoscaler can scale down to.+apMinNumReplicas :: Lens' AutoscalingPolicy (Maybe Int32)+apMinNumReplicas+  = lens _apMinNumReplicas+      (\ s a -> s{_apMinNumReplicas = a})+      . mapping _Coerce++-- | The number of seconds that the Autoscaler should wait between two+-- succeeding changes to the number of virtual machines. You should define+-- an interval that is at least as long as the initialization time of a+-- virtual machine and the time it may take for replica pool to create the+-- virtual machine. The default is 60 seconds.+apCoolDownPeriodSec :: Lens' AutoscalingPolicy (Maybe Int32)+apCoolDownPeriodSec+  = lens _apCoolDownPeriodSec+      (\ s a -> s{_apCoolDownPeriodSec = a})+      . mapping _Coerce++instance FromJSON AutoscalingPolicy where+        parseJSON+          = withObject "AutoscalingPolicy"+              (\ o ->+                 AutoscalingPolicy <$>+                   (o .:? "customMetricUtilizations" .!= mempty) <*>+                     (o .:? "maxNumReplicas")+                     <*> (o .:? "cpuUtilization")+                     <*> (o .:? "loadBalancingUtilization")+                     <*> (o .:? "minNumReplicas")+                     <*> (o .:? "coolDownPeriodSec"))++instance ToJSON AutoscalingPolicy where+        toJSON AutoscalingPolicy{..}+          = object+              (catMaybes+                 [("customMetricUtilizations" .=) <$>+                    _apCustomMetricUtilizations,+                  ("maxNumReplicas" .=) <$> _apMaxNumReplicas,+                  ("cpuUtilization" .=) <$> _apCPUUtilization,+                  ("loadBalancingUtilization" .=) <$>+                    _apLoadBalancingUtilization,+                  ("minNumReplicas" .=) <$> _apMinNumReplicas,+                  ("coolDownPeriodSec" .=) <$> _apCoolDownPeriodSec])++--+-- /See:/ 'operationError' smart constructor.+newtype OperationError = OperationError+    { _oeErrors :: Maybe [OperationErrorErrorsItem]+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'OperationError' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'oeErrors'+operationError+    :: OperationError+operationError =+    OperationError+    { _oeErrors = Nothing+    }++oeErrors :: Lens' OperationError [OperationErrorErrorsItem]+oeErrors+  = lens _oeErrors (\ s a -> s{_oeErrors = a}) .+      _Default+      . _Coerce++instance FromJSON OperationError where+        parseJSON+          = withObject "OperationError"+              (\ o ->+                 OperationError <$> (o .:? "errors" .!= mempty))++instance ToJSON OperationError where+        toJSON OperationError{..}+          = object (catMaybes [("errors" .=) <$> _oeErrors])++-- | Cloud Autoscaler resource.+--+-- /See:/ 'autoscaler' smart constructor.+data Autoscaler = Autoscaler+    { _aKind              :: !Text+    , _aSelfLink          :: !(Maybe Text)+    , _aName              :: !(Maybe Text)+    , _aCreationTimestamp :: !(Maybe Text)+    , _aAutoscalingPolicy :: !(Maybe AutoscalingPolicy)+    , _aId                :: !(Maybe (Textual Word64))+    , _aDescription       :: !(Maybe Text)+    , _aTarget            :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Autoscaler' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aKind'+--+-- * 'aSelfLink'+--+-- * 'aName'+--+-- * 'aCreationTimestamp'+--+-- * 'aAutoscalingPolicy'+--+-- * 'aId'+--+-- * 'aDescription'+--+-- * 'aTarget'+autoscaler+    :: Autoscaler+autoscaler =+    Autoscaler+    { _aKind = "compute#autoscaler"+    , _aSelfLink = Nothing+    , _aName = Nothing+    , _aCreationTimestamp = Nothing+    , _aAutoscalingPolicy = Nothing+    , _aId = Nothing+    , _aDescription = Nothing+    , _aTarget = Nothing+    }++-- | Type of resource.+aKind :: Lens' Autoscaler Text+aKind = lens _aKind (\ s a -> s{_aKind = a})++-- | [Output Only] A self-link to the Autoscaler configuration resource.+aSelfLink :: Lens' Autoscaler (Maybe Text)+aSelfLink+  = lens _aSelfLink (\ s a -> s{_aSelfLink = a})++-- | Name of the Autoscaler resource. Must be unique per project and zone.+aName :: Lens' Autoscaler (Maybe Text)+aName = lens _aName (\ s a -> s{_aName = a})++-- | [Output Only] Creation timestamp in RFC3339 text format.+aCreationTimestamp :: Lens' Autoscaler (Maybe Text)+aCreationTimestamp+  = lens _aCreationTimestamp+      (\ s a -> s{_aCreationTimestamp = a})++-- | Configuration parameters for autoscaling algorithm.+aAutoscalingPolicy :: Lens' Autoscaler (Maybe AutoscalingPolicy)+aAutoscalingPolicy+  = lens _aAutoscalingPolicy+      (\ s a -> s{_aAutoscalingPolicy = a})++-- | [Output Only] Unique identifier for the resource; defined by the server.+aId :: Lens' Autoscaler (Maybe Word64)+aId+  = lens _aId (\ s a -> s{_aId = a}) . mapping _Coerce++-- | An optional textual description of the resource provided by the client.+aDescription :: Lens' Autoscaler (Maybe Text)+aDescription+  = lens _aDescription (\ s a -> s{_aDescription = a})++-- | URL to the entity which will be autoscaled. Currently the only supported+-- value is ReplicaPool?s URL. Note: it is illegal to specify multiple+-- Autoscalers for the same target.+aTarget :: Lens' Autoscaler (Maybe Text)+aTarget = lens _aTarget (\ s a -> s{_aTarget = a})++instance FromJSON Autoscaler where+        parseJSON+          = withObject "Autoscaler"+              (\ o ->+                 Autoscaler <$>+                   (o .:? "kind" .!= "compute#autoscaler") <*>+                     (o .:? "selfLink")+                     <*> (o .:? "name")+                     <*> (o .:? "creationTimestamp")+                     <*> (o .:? "autoscalingPolicy")+                     <*> (o .:? "id")+                     <*> (o .:? "description")+                     <*> (o .:? "target"))++instance ToJSON Autoscaler where+        toJSON Autoscaler{..}+          = object+              (catMaybes+                 [Just ("kind" .= _aKind),+                  ("selfLink" .=) <$> _aSelfLink,+                  ("name" .=) <$> _aName,+                  ("creationTimestamp" .=) <$> _aCreationTimestamp,+                  ("autoscalingPolicy" .=) <$> _aAutoscalingPolicy,+                  ("id" .=) <$> _aId,+                  ("description" .=) <$> _aDescription,+                  ("target" .=) <$> _aTarget])++--+-- /See:/ 'operationErrorErrorsItem' smart constructor.+data OperationErrorErrorsItem = OperationErrorErrorsItem+    { _oeeiLocation :: !(Maybe Text)+    , _oeeiCode     :: !(Maybe Text)+    , _oeeiMessage  :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'OperationErrorErrorsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'oeeiLocation'+--+-- * 'oeeiCode'+--+-- * 'oeeiMessage'+operationErrorErrorsItem+    :: OperationErrorErrorsItem+operationErrorErrorsItem =+    OperationErrorErrorsItem+    { _oeeiLocation = Nothing+    , _oeeiCode = Nothing+    , _oeeiMessage = Nothing+    }++oeeiLocation :: Lens' OperationErrorErrorsItem (Maybe Text)+oeeiLocation+  = lens _oeeiLocation (\ s a -> s{_oeeiLocation = a})++oeeiCode :: Lens' OperationErrorErrorsItem (Maybe Text)+oeeiCode = lens _oeeiCode (\ s a -> s{_oeeiCode = a})++oeeiMessage :: Lens' OperationErrorErrorsItem (Maybe Text)+oeeiMessage+  = lens _oeeiMessage (\ s a -> s{_oeeiMessage = a})++instance FromJSON OperationErrorErrorsItem where+        parseJSON+          = withObject "OperationErrorErrorsItem"+              (\ o ->+                 OperationErrorErrorsItem <$>+                   (o .:? "location") <*> (o .:? "code") <*>+                     (o .:? "message"))++instance ToJSON OperationErrorErrorsItem where+        toJSON OperationErrorErrorsItem{..}+          = object+              (catMaybes+                 [("location" .=) <$> _oeeiLocation,+                  ("code" .=) <$> _oeeiCode,+                  ("message" .=) <$> _oeeiMessage])++-- | CPU utilization policy.+--+-- /See:/ 'autoscalingPolicyCPUUtilization' smart constructor.+newtype AutoscalingPolicyCPUUtilization = AutoscalingPolicyCPUUtilization+    { _apcuUtilizationTarget :: Maybe (Textual Double)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AutoscalingPolicyCPUUtilization' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'apcuUtilizationTarget'+autoscalingPolicyCPUUtilization+    :: AutoscalingPolicyCPUUtilization+autoscalingPolicyCPUUtilization =+    AutoscalingPolicyCPUUtilization+    { _apcuUtilizationTarget = Nothing+    }++-- | The target utilization that the Autoscaler should maintain. It is+-- represented as a fraction of used cores. For example: 6 cores used in+-- 8-core VM are represented here as 0.75. Must be a float value between+-- (0, 1]. If not defined, the default is 0.8.+apcuUtilizationTarget :: Lens' AutoscalingPolicyCPUUtilization (Maybe Double)+apcuUtilizationTarget+  = lens _apcuUtilizationTarget+      (\ s a -> s{_apcuUtilizationTarget = a})+      . mapping _Coerce++instance FromJSON AutoscalingPolicyCPUUtilization+         where+        parseJSON+          = withObject "AutoscalingPolicyCPUUtilization"+              (\ o ->+                 AutoscalingPolicyCPUUtilization <$>+                   (o .:? "utilizationTarget"))++instance ToJSON AutoscalingPolicyCPUUtilization where+        toJSON AutoscalingPolicyCPUUtilization{..}+          = object+              (catMaybes+                 [("utilizationTarget" .=) <$>+                    _apcuUtilizationTarget])++--+-- /See:/ 'operationWarningsItem' smart constructor.+data OperationWarningsItem = OperationWarningsItem+    { _owiData    :: !(Maybe [OperationWarningsItemDataItem])+    , _owiCode    :: !(Maybe Text)+    , _owiMessage :: !(Maybe Text)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'OperationWarningsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'owiData'+--+-- * 'owiCode'+--+-- * 'owiMessage'+operationWarningsItem+    :: OperationWarningsItem+operationWarningsItem =+    OperationWarningsItem+    { _owiData = Nothing+    , _owiCode = Nothing+    , _owiMessage = Nothing+    }++owiData :: Lens' OperationWarningsItem [OperationWarningsItemDataItem]+owiData+  = lens _owiData (\ s a -> s{_owiData = a}) . _Default+      . _Coerce++owiCode :: Lens' OperationWarningsItem (Maybe Text)+owiCode = lens _owiCode (\ s a -> s{_owiCode = a})++owiMessage :: Lens' OperationWarningsItem (Maybe Text)+owiMessage+  = lens _owiMessage (\ s a -> s{_owiMessage = a})++instance FromJSON OperationWarningsItem where+        parseJSON+          = withObject "OperationWarningsItem"+              (\ o ->+                 OperationWarningsItem <$>+                   (o .:? "data" .!= mempty) <*> (o .:? "code") <*>+                     (o .:? "message"))++instance ToJSON OperationWarningsItem where+        toJSON OperationWarningsItem{..}+          = object+              (catMaybes+                 [("data" .=) <$> _owiData, ("code" .=) <$> _owiCode,+                  ("message" .=) <$> _owiMessage])
+ gen/Network/Google/Autoscaler/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.Autoscaler.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.Autoscaler.Types.Sum where++import           Network.Google.Prelude
+ gen/Network/Google/Resource/Autoscaler/Autoscalers/Delete.hs view
@@ -0,0 +1,109 @@+{-# 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.Autoscaler.Autoscalers.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 the specified Autoscaler resource.+--+-- /See:/ <http://developers.google.com/compute/docs/autoscaler Google Compute Engine Autoscaler API Reference> for @autoscaler.autoscalers.delete@.+module Network.Google.Resource.Autoscaler.Autoscalers.Delete+    (+    -- * REST Resource+      AutoscalersDeleteResource++    -- * Creating a Request+    , autoscalersDelete+    , AutoscalersDelete++    -- * Request Lenses+    , adProject+    , adZone+    , adAutoscaler+    ) where++import           Network.Google.Autoscaler.Types+import           Network.Google.Prelude++-- | A resource alias for @autoscaler.autoscalers.delete@ method which the+-- 'AutoscalersDelete' request conforms to.+type AutoscalersDeleteResource =+     "autoscaler" :>+       "v1beta2" :>+         "projects" :>+           Capture "project" Text :>+             "zones" :>+               Capture "zone" Text :>+                 "autoscalers" :>+                   Capture "autoscaler" Text :>+                     QueryParam "alt" AltJSON :> Delete '[JSON] Operation++-- | Deletes the specified Autoscaler resource.+--+-- /See:/ 'autoscalersDelete' smart constructor.+data AutoscalersDelete = AutoscalersDelete+    { _adProject    :: !Text+    , _adZone       :: !Text+    , _adAutoscaler :: !Text+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AutoscalersDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'adProject'+--+-- * 'adZone'+--+-- * 'adAutoscaler'+autoscalersDelete+    :: Text -- ^ 'adProject'+    -> Text -- ^ 'adZone'+    -> Text -- ^ 'adAutoscaler'+    -> AutoscalersDelete+autoscalersDelete pAdProject_ pAdZone_ pAdAutoscaler_ =+    AutoscalersDelete+    { _adProject = pAdProject_+    , _adZone = pAdZone_+    , _adAutoscaler = pAdAutoscaler_+    }++-- | Project ID of Autoscaler resource.+adProject :: Lens' AutoscalersDelete Text+adProject+  = lens _adProject (\ s a -> s{_adProject = a})++-- | Zone name of Autoscaler resource.+adZone :: Lens' AutoscalersDelete Text+adZone = lens _adZone (\ s a -> s{_adZone = a})++-- | Name of the Autoscaler resource.+adAutoscaler :: Lens' AutoscalersDelete Text+adAutoscaler+  = lens _adAutoscaler (\ s a -> s{_adAutoscaler = a})++instance GoogleRequest AutoscalersDelete where+        type Rs AutoscalersDelete = Operation+        requestClient AutoscalersDelete{..}+          = go _adProject _adZone _adAutoscaler (Just AltJSON)+              autoscalerService+          where go+                  = buildClient+                      (Proxy :: Proxy AutoscalersDeleteResource)+                      mempty
+ gen/Network/Google/Resource/Autoscaler/Autoscalers/Get.hs view
@@ -0,0 +1,108 @@+{-# 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.Autoscaler.Autoscalers.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 specified Autoscaler resource.+--+-- /See:/ <http://developers.google.com/compute/docs/autoscaler Google Compute Engine Autoscaler API Reference> for @autoscaler.autoscalers.get@.+module Network.Google.Resource.Autoscaler.Autoscalers.Get+    (+    -- * REST Resource+      AutoscalersGetResource++    -- * Creating a Request+    , autoscalersGet+    , AutoscalersGet++    -- * Request Lenses+    , agProject+    , agZone+    , agAutoscaler+    ) where++import           Network.Google.Autoscaler.Types+import           Network.Google.Prelude++-- | A resource alias for @autoscaler.autoscalers.get@ method which the+-- 'AutoscalersGet' request conforms to.+type AutoscalersGetResource =+     "autoscaler" :>+       "v1beta2" :>+         "projects" :>+           Capture "project" Text :>+             "zones" :>+               Capture "zone" Text :>+                 "autoscalers" :>+                   Capture "autoscaler" Text :>+                     QueryParam "alt" AltJSON :> Get '[JSON] Autoscaler++-- | Gets the specified Autoscaler resource.+--+-- /See:/ 'autoscalersGet' smart constructor.+data AutoscalersGet = AutoscalersGet+    { _agProject    :: !Text+    , _agZone       :: !Text+    , _agAutoscaler :: !Text+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AutoscalersGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'agProject'+--+-- * 'agZone'+--+-- * 'agAutoscaler'+autoscalersGet+    :: Text -- ^ 'agProject'+    -> Text -- ^ 'agZone'+    -> Text -- ^ 'agAutoscaler'+    -> AutoscalersGet+autoscalersGet pAgProject_ pAgZone_ pAgAutoscaler_ =+    AutoscalersGet+    { _agProject = pAgProject_+    , _agZone = pAgZone_+    , _agAutoscaler = pAgAutoscaler_+    }++-- | Project ID of Autoscaler resource.+agProject :: Lens' AutoscalersGet Text+agProject+  = lens _agProject (\ s a -> s{_agProject = a})++-- | Zone name of Autoscaler resource.+agZone :: Lens' AutoscalersGet Text+agZone = lens _agZone (\ s a -> s{_agZone = a})++-- | Name of the Autoscaler resource.+agAutoscaler :: Lens' AutoscalersGet Text+agAutoscaler+  = lens _agAutoscaler (\ s a -> s{_agAutoscaler = a})++instance GoogleRequest AutoscalersGet where+        type Rs AutoscalersGet = Autoscaler+        requestClient AutoscalersGet{..}+          = go _agProject _agZone _agAutoscaler (Just AltJSON)+              autoscalerService+          where go+                  = buildClient (Proxy :: Proxy AutoscalersGetResource)+                      mempty
+ gen/Network/Google/Resource/Autoscaler/Autoscalers/Insert.hs view
@@ -0,0 +1,109 @@+{-# 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.Autoscaler.Autoscalers.Insert+-- 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)+--+-- Adds new Autoscaler resource.+--+-- /See:/ <http://developers.google.com/compute/docs/autoscaler Google Compute Engine Autoscaler API Reference> for @autoscaler.autoscalers.insert@.+module Network.Google.Resource.Autoscaler.Autoscalers.Insert+    (+    -- * REST Resource+      AutoscalersInsertResource++    -- * Creating a Request+    , autoscalersInsert+    , AutoscalersInsert++    -- * Request Lenses+    , aiProject+    , aiZone+    , aiPayload+    ) where++import           Network.Google.Autoscaler.Types+import           Network.Google.Prelude++-- | A resource alias for @autoscaler.autoscalers.insert@ method which the+-- 'AutoscalersInsert' request conforms to.+type AutoscalersInsertResource =+     "autoscaler" :>+       "v1beta2" :>+         "projects" :>+           Capture "project" Text :>+             "zones" :>+               Capture "zone" Text :>+                 "autoscalers" :>+                   QueryParam "alt" AltJSON :>+                     ReqBody '[JSON] Autoscaler :> Post '[JSON] Operation++-- | Adds new Autoscaler resource.+--+-- /See:/ 'autoscalersInsert' smart constructor.+data AutoscalersInsert = AutoscalersInsert+    { _aiProject :: !Text+    , _aiZone    :: !Text+    , _aiPayload :: !Autoscaler+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AutoscalersInsert' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aiProject'+--+-- * 'aiZone'+--+-- * 'aiPayload'+autoscalersInsert+    :: Text -- ^ 'aiProject'+    -> Text -- ^ 'aiZone'+    -> Autoscaler -- ^ 'aiPayload'+    -> AutoscalersInsert+autoscalersInsert pAiProject_ pAiZone_ pAiPayload_ =+    AutoscalersInsert+    { _aiProject = pAiProject_+    , _aiZone = pAiZone_+    , _aiPayload = pAiPayload_+    }++-- | Project ID of Autoscaler resource.+aiProject :: Lens' AutoscalersInsert Text+aiProject+  = lens _aiProject (\ s a -> s{_aiProject = a})++-- | Zone name of Autoscaler resource.+aiZone :: Lens' AutoscalersInsert Text+aiZone = lens _aiZone (\ s a -> s{_aiZone = a})++-- | Multipart request metadata.+aiPayload :: Lens' AutoscalersInsert Autoscaler+aiPayload+  = lens _aiPayload (\ s a -> s{_aiPayload = a})++instance GoogleRequest AutoscalersInsert where+        type Rs AutoscalersInsert = Operation+        requestClient AutoscalersInsert{..}+          = go _aiProject _aiZone (Just AltJSON) _aiPayload+              autoscalerService+          where go+                  = buildClient+                      (Proxy :: Proxy AutoscalersInsertResource)+                      mempty
+ gen/Network/Google/Resource/Autoscaler/Autoscalers/List.hs view
@@ -0,0 +1,130 @@+{-# 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.Autoscaler.Autoscalers.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 Autoscaler resources in this zone.+--+-- /See:/ <http://developers.google.com/compute/docs/autoscaler Google Compute Engine Autoscaler API Reference> for @autoscaler.autoscalers.list@.+module Network.Google.Resource.Autoscaler.Autoscalers.List+    (+    -- * REST Resource+      AutoscalersListResource++    -- * Creating a Request+    , autoscalersList+    , AutoscalersList++    -- * Request Lenses+    , alProject+    , alZone+    , alFilter+    , alPageToken+    , alMaxResults+    ) where++import           Network.Google.Autoscaler.Types+import           Network.Google.Prelude++-- | A resource alias for @autoscaler.autoscalers.list@ method which the+-- 'AutoscalersList' request conforms to.+type AutoscalersListResource =+     "autoscaler" :>+       "v1beta2" :>+         "projects" :>+           Capture "project" Text :>+             "zones" :>+               Capture "zone" Text :>+                 "autoscalers" :>+                   QueryParam "filter" Text :>+                     QueryParam "pageToken" Text :>+                       QueryParam "maxResults" (Textual Word32) :>+                         QueryParam "alt" AltJSON :>+                           Get '[JSON] AutoscalerListResponse++-- | Lists all Autoscaler resources in this zone.+--+-- /See:/ 'autoscalersList' smart constructor.+data AutoscalersList = AutoscalersList+    { _alProject    :: !Text+    , _alZone       :: !Text+    , _alFilter     :: !(Maybe Text)+    , _alPageToken  :: !(Maybe Text)+    , _alMaxResults :: !(Textual Word32)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AutoscalersList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'alProject'+--+-- * 'alZone'+--+-- * 'alFilter'+--+-- * 'alPageToken'+--+-- * 'alMaxResults'+autoscalersList+    :: Text -- ^ 'alProject'+    -> Text -- ^ 'alZone'+    -> AutoscalersList+autoscalersList pAlProject_ pAlZone_ =+    AutoscalersList+    { _alProject = pAlProject_+    , _alZone = pAlZone_+    , _alFilter = Nothing+    , _alPageToken = Nothing+    , _alMaxResults = 500+    }++-- | Project ID of Autoscaler resource.+alProject :: Lens' AutoscalersList Text+alProject+  = lens _alProject (\ s a -> s{_alProject = a})++-- | Zone name of Autoscaler resource.+alZone :: Lens' AutoscalersList Text+alZone = lens _alZone (\ s a -> s{_alZone = a})++alFilter :: Lens' AutoscalersList (Maybe Text)+alFilter = lens _alFilter (\ s a -> s{_alFilter = a})++alPageToken :: Lens' AutoscalersList (Maybe Text)+alPageToken+  = lens _alPageToken (\ s a -> s{_alPageToken = a})++alMaxResults :: Lens' AutoscalersList Word32+alMaxResults+  = lens _alMaxResults (\ s a -> s{_alMaxResults = a})+      . _Coerce++instance GoogleRequest AutoscalersList where+        type Rs AutoscalersList = AutoscalerListResponse+        requestClient AutoscalersList{..}+          = go _alProject _alZone _alFilter _alPageToken+              (Just _alMaxResults)+              (Just AltJSON)+              autoscalerService+          where go+                  = buildClient+                      (Proxy :: Proxy AutoscalersListResource)+                      mempty
+ gen/Network/Google/Resource/Autoscaler/Autoscalers/Patch.hs view
@@ -0,0 +1,124 @@+{-# 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.Autoscaler.Autoscalers.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)+--+-- Update the entire content of the Autoscaler resource. This method+-- supports patch semantics.+--+-- /See:/ <http://developers.google.com/compute/docs/autoscaler Google Compute Engine Autoscaler API Reference> for @autoscaler.autoscalers.patch@.+module Network.Google.Resource.Autoscaler.Autoscalers.Patch+    (+    -- * REST Resource+      AutoscalersPatchResource++    -- * Creating a Request+    , autoscalersPatch+    , AutoscalersPatch++    -- * Request Lenses+    , apProject+    , apZone+    , apPayload+    , apAutoscaler+    ) where++import           Network.Google.Autoscaler.Types+import           Network.Google.Prelude++-- | A resource alias for @autoscaler.autoscalers.patch@ method which the+-- 'AutoscalersPatch' request conforms to.+type AutoscalersPatchResource =+     "autoscaler" :>+       "v1beta2" :>+         "projects" :>+           Capture "project" Text :>+             "zones" :>+               Capture "zone" Text :>+                 "autoscalers" :>+                   Capture "autoscaler" Text :>+                     QueryParam "alt" AltJSON :>+                       ReqBody '[JSON] Autoscaler :> Patch '[JSON] Operation++-- | Update the entire content of the Autoscaler resource. This method+-- supports patch semantics.+--+-- /See:/ 'autoscalersPatch' smart constructor.+data AutoscalersPatch = AutoscalersPatch+    { _apProject    :: !Text+    , _apZone       :: !Text+    , _apPayload    :: !Autoscaler+    , _apAutoscaler :: !Text+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AutoscalersPatch' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'apProject'+--+-- * 'apZone'+--+-- * 'apPayload'+--+-- * 'apAutoscaler'+autoscalersPatch+    :: Text -- ^ 'apProject'+    -> Text -- ^ 'apZone'+    -> Autoscaler -- ^ 'apPayload'+    -> Text -- ^ 'apAutoscaler'+    -> AutoscalersPatch+autoscalersPatch pApProject_ pApZone_ pApPayload_ pApAutoscaler_ =+    AutoscalersPatch+    { _apProject = pApProject_+    , _apZone = pApZone_+    , _apPayload = pApPayload_+    , _apAutoscaler = pApAutoscaler_+    }++-- | Project ID of Autoscaler resource.+apProject :: Lens' AutoscalersPatch Text+apProject+  = lens _apProject (\ s a -> s{_apProject = a})++-- | Zone name of Autoscaler resource.+apZone :: Lens' AutoscalersPatch Text+apZone = lens _apZone (\ s a -> s{_apZone = a})++-- | Multipart request metadata.+apPayload :: Lens' AutoscalersPatch Autoscaler+apPayload+  = lens _apPayload (\ s a -> s{_apPayload = a})++-- | Name of the Autoscaler resource.+apAutoscaler :: Lens' AutoscalersPatch Text+apAutoscaler+  = lens _apAutoscaler (\ s a -> s{_apAutoscaler = a})++instance GoogleRequest AutoscalersPatch where+        type Rs AutoscalersPatch = Operation+        requestClient AutoscalersPatch{..}+          = go _apProject _apZone _apAutoscaler (Just AltJSON)+              _apPayload+              autoscalerService+          where go+                  = buildClient+                      (Proxy :: Proxy AutoscalersPatchResource)+                      mempty
+ gen/Network/Google/Resource/Autoscaler/Autoscalers/Update.hs view
@@ -0,0 +1,122 @@+{-# 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.Autoscaler.Autoscalers.Update+-- 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)+--+-- Update the entire content of the Autoscaler resource.+--+-- /See:/ <http://developers.google.com/compute/docs/autoscaler Google Compute Engine Autoscaler API Reference> for @autoscaler.autoscalers.update@.+module Network.Google.Resource.Autoscaler.Autoscalers.Update+    (+    -- * REST Resource+      AutoscalersUpdateResource++    -- * Creating a Request+    , autoscalersUpdate+    , AutoscalersUpdate++    -- * Request Lenses+    , auProject+    , auZone+    , auPayload+    , auAutoscaler+    ) where++import           Network.Google.Autoscaler.Types+import           Network.Google.Prelude++-- | A resource alias for @autoscaler.autoscalers.update@ method which the+-- 'AutoscalersUpdate' request conforms to.+type AutoscalersUpdateResource =+     "autoscaler" :>+       "v1beta2" :>+         "projects" :>+           Capture "project" Text :>+             "zones" :>+               Capture "zone" Text :>+                 "autoscalers" :>+                   Capture "autoscaler" Text :>+                     QueryParam "alt" AltJSON :>+                       ReqBody '[JSON] Autoscaler :> Put '[JSON] Operation++-- | Update the entire content of the Autoscaler resource.+--+-- /See:/ 'autoscalersUpdate' smart constructor.+data AutoscalersUpdate = AutoscalersUpdate+    { _auProject    :: !Text+    , _auZone       :: !Text+    , _auPayload    :: !Autoscaler+    , _auAutoscaler :: !Text+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AutoscalersUpdate' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'auProject'+--+-- * 'auZone'+--+-- * 'auPayload'+--+-- * 'auAutoscaler'+autoscalersUpdate+    :: Text -- ^ 'auProject'+    -> Text -- ^ 'auZone'+    -> Autoscaler -- ^ 'auPayload'+    -> Text -- ^ 'auAutoscaler'+    -> AutoscalersUpdate+autoscalersUpdate pAuProject_ pAuZone_ pAuPayload_ pAuAutoscaler_ =+    AutoscalersUpdate+    { _auProject = pAuProject_+    , _auZone = pAuZone_+    , _auPayload = pAuPayload_+    , _auAutoscaler = pAuAutoscaler_+    }++-- | Project ID of Autoscaler resource.+auProject :: Lens' AutoscalersUpdate Text+auProject+  = lens _auProject (\ s a -> s{_auProject = a})++-- | Zone name of Autoscaler resource.+auZone :: Lens' AutoscalersUpdate Text+auZone = lens _auZone (\ s a -> s{_auZone = a})++-- | Multipart request metadata.+auPayload :: Lens' AutoscalersUpdate Autoscaler+auPayload+  = lens _auPayload (\ s a -> s{_auPayload = a})++-- | Name of the Autoscaler resource.+auAutoscaler :: Lens' AutoscalersUpdate Text+auAutoscaler+  = lens _auAutoscaler (\ s a -> s{_auAutoscaler = a})++instance GoogleRequest AutoscalersUpdate where+        type Rs AutoscalersUpdate = Operation+        requestClient AutoscalersUpdate{..}+          = go _auProject _auZone _auAutoscaler (Just AltJSON)+              _auPayload+              autoscalerService+          where go+                  = buildClient+                      (Proxy :: Proxy AutoscalersUpdateResource)+                      mempty
+ gen/Network/Google/Resource/Autoscaler/ZoneOperations/Delete.hs view
@@ -0,0 +1,106 @@+{-# 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.Autoscaler.ZoneOperations.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 the specified zone-specific operation resource.+--+-- /See:/ <http://developers.google.com/compute/docs/autoscaler Google Compute Engine Autoscaler API Reference> for @autoscaler.zoneOperations.delete@.+module Network.Google.Resource.Autoscaler.ZoneOperations.Delete+    (+    -- * REST Resource+      ZoneOperationsDeleteResource++    -- * Creating a Request+    , zoneOperationsDelete+    , ZoneOperationsDelete++    -- * Request Lenses+    , zodProject+    , zodOperation+    , zodZone+    ) where++import           Network.Google.Autoscaler.Types+import           Network.Google.Prelude++-- | A resource alias for @autoscaler.zoneOperations.delete@ method which the+-- 'ZoneOperationsDelete' request conforms to.+type ZoneOperationsDeleteResource =+     "autoscaler" :>+       "v1beta2" :>+         Capture "project" Text :>+           "zones" :>+             Capture "zone" Text :>+               "operations" :>+                 Capture "operation" Text :>+                   QueryParam "alt" AltJSON :> Delete '[JSON] ()++-- | Deletes the specified zone-specific operation resource.+--+-- /See:/ 'zoneOperationsDelete' smart constructor.+data ZoneOperationsDelete = ZoneOperationsDelete+    { _zodProject   :: !Text+    , _zodOperation :: !Text+    , _zodZone      :: !Text+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ZoneOperationsDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'zodProject'+--+-- * 'zodOperation'+--+-- * 'zodZone'+zoneOperationsDelete+    :: Text -- ^ 'zodProject'+    -> Text -- ^ 'zodOperation'+    -> Text -- ^ 'zodZone'+    -> ZoneOperationsDelete+zoneOperationsDelete pZodProject_ pZodOperation_ pZodZone_ =+    ZoneOperationsDelete+    { _zodProject = pZodProject_+    , _zodOperation = pZodOperation_+    , _zodZone = pZodZone_+    }++zodProject :: Lens' ZoneOperationsDelete Text+zodProject+  = lens _zodProject (\ s a -> s{_zodProject = a})++zodOperation :: Lens' ZoneOperationsDelete Text+zodOperation+  = lens _zodOperation (\ s a -> s{_zodOperation = a})++zodZone :: Lens' ZoneOperationsDelete Text+zodZone = lens _zodZone (\ s a -> s{_zodZone = a})++instance GoogleRequest ZoneOperationsDelete where+        type Rs ZoneOperationsDelete = ()+        requestClient ZoneOperationsDelete{..}+          = go _zodProject _zodZone _zodOperation+              (Just AltJSON)+              autoscalerService+          where go+                  = buildClient+                      (Proxy :: Proxy ZoneOperationsDeleteResource)+                      mempty
+ gen/Network/Google/Resource/Autoscaler/ZoneOperations/Get.hs view
@@ -0,0 +1,106 @@+{-# 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.Autoscaler.ZoneOperations.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)+--+-- Retrieves the specified zone-specific operation resource.+--+-- /See:/ <http://developers.google.com/compute/docs/autoscaler Google Compute Engine Autoscaler API Reference> for @autoscaler.zoneOperations.get@.+module Network.Google.Resource.Autoscaler.ZoneOperations.Get+    (+    -- * REST Resource+      ZoneOperationsGetResource++    -- * Creating a Request+    , zoneOperationsGet+    , ZoneOperationsGet++    -- * Request Lenses+    , zogProject+    , zogOperation+    , zogZone+    ) where++import           Network.Google.Autoscaler.Types+import           Network.Google.Prelude++-- | A resource alias for @autoscaler.zoneOperations.get@ method which the+-- 'ZoneOperationsGet' request conforms to.+type ZoneOperationsGetResource =+     "autoscaler" :>+       "v1beta2" :>+         Capture "project" Text :>+           "zones" :>+             Capture "zone" Text :>+               "operations" :>+                 Capture "operation" Text :>+                   QueryParam "alt" AltJSON :> Get '[JSON] Operation++-- | Retrieves the specified zone-specific operation resource.+--+-- /See:/ 'zoneOperationsGet' smart constructor.+data ZoneOperationsGet = ZoneOperationsGet+    { _zogProject   :: !Text+    , _zogOperation :: !Text+    , _zogZone      :: !Text+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ZoneOperationsGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'zogProject'+--+-- * 'zogOperation'+--+-- * 'zogZone'+zoneOperationsGet+    :: Text -- ^ 'zogProject'+    -> Text -- ^ 'zogOperation'+    -> Text -- ^ 'zogZone'+    -> ZoneOperationsGet+zoneOperationsGet pZogProject_ pZogOperation_ pZogZone_ =+    ZoneOperationsGet+    { _zogProject = pZogProject_+    , _zogOperation = pZogOperation_+    , _zogZone = pZogZone_+    }++zogProject :: Lens' ZoneOperationsGet Text+zogProject+  = lens _zogProject (\ s a -> s{_zogProject = a})++zogOperation :: Lens' ZoneOperationsGet Text+zogOperation+  = lens _zogOperation (\ s a -> s{_zogOperation = a})++zogZone :: Lens' ZoneOperationsGet Text+zogZone = lens _zogZone (\ s a -> s{_zogZone = a})++instance GoogleRequest ZoneOperationsGet where+        type Rs ZoneOperationsGet = Operation+        requestClient ZoneOperationsGet{..}+          = go _zogProject _zogZone _zogOperation+              (Just AltJSON)+              autoscalerService+          where go+                  = buildClient+                      (Proxy :: Proxy ZoneOperationsGetResource)+                      mempty
+ gen/Network/Google/Resource/Autoscaler/ZoneOperations/List.hs view
@@ -0,0 +1,130 @@+{-# 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.Autoscaler.ZoneOperations.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)+--+-- Retrieves the list of operation resources contained within the specified+-- zone.+--+-- /See:/ <http://developers.google.com/compute/docs/autoscaler Google Compute Engine Autoscaler API Reference> for @autoscaler.zoneOperations.list@.+module Network.Google.Resource.Autoscaler.ZoneOperations.List+    (+    -- * REST Resource+      ZoneOperationsListResource++    -- * Creating a Request+    , zoneOperationsList+    , ZoneOperationsList++    -- * Request Lenses+    , zolProject+    , zolZone+    , zolFilter+    , zolPageToken+    , zolMaxResults+    ) where++import           Network.Google.Autoscaler.Types+import           Network.Google.Prelude++-- | A resource alias for @autoscaler.zoneOperations.list@ method which the+-- 'ZoneOperationsList' request conforms to.+type ZoneOperationsListResource =+     "autoscaler" :>+       "v1beta2" :>+         Capture "project" Text :>+           "zones" :>+             Capture "zone" Text :>+               "operations" :>+                 QueryParam "filter" Text :>+                   QueryParam "pageToken" Text :>+                     QueryParam "maxResults" (Textual Word32) :>+                       QueryParam "alt" AltJSON :> Get '[JSON] OperationList++-- | Retrieves the list of operation resources contained within the specified+-- zone.+--+-- /See:/ 'zoneOperationsList' smart constructor.+data ZoneOperationsList = ZoneOperationsList+    { _zolProject    :: !Text+    , _zolZone       :: !Text+    , _zolFilter     :: !(Maybe Text)+    , _zolPageToken  :: !(Maybe Text)+    , _zolMaxResults :: !(Textual Word32)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ZoneOperationsList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'zolProject'+--+-- * 'zolZone'+--+-- * 'zolFilter'+--+-- * 'zolPageToken'+--+-- * 'zolMaxResults'+zoneOperationsList+    :: Text -- ^ 'zolProject'+    -> Text -- ^ 'zolZone'+    -> ZoneOperationsList+zoneOperationsList pZolProject_ pZolZone_ =+    ZoneOperationsList+    { _zolProject = pZolProject_+    , _zolZone = pZolZone_+    , _zolFilter = Nothing+    , _zolPageToken = Nothing+    , _zolMaxResults = 500+    }++zolProject :: Lens' ZoneOperationsList Text+zolProject+  = lens _zolProject (\ s a -> s{_zolProject = a})++zolZone :: Lens' ZoneOperationsList Text+zolZone = lens _zolZone (\ s a -> s{_zolZone = a})++zolFilter :: Lens' ZoneOperationsList (Maybe Text)+zolFilter+  = lens _zolFilter (\ s a -> s{_zolFilter = a})++zolPageToken :: Lens' ZoneOperationsList (Maybe Text)+zolPageToken+  = lens _zolPageToken (\ s a -> s{_zolPageToken = a})++zolMaxResults :: Lens' ZoneOperationsList Word32+zolMaxResults+  = lens _zolMaxResults+      (\ s a -> s{_zolMaxResults = a})+      . _Coerce++instance GoogleRequest ZoneOperationsList where+        type Rs ZoneOperationsList = OperationList+        requestClient ZoneOperationsList{..}+          = go _zolProject _zolZone _zolFilter _zolPageToken+              (Just _zolMaxResults)+              (Just AltJSON)+              autoscalerService+          where go+                  = buildClient+                      (Proxy :: Proxy ZoneOperationsListResource)+                      mempty
+ gen/Network/Google/Resource/Autoscaler/Zones/List.hs view
@@ -0,0 +1,114 @@+{-# 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.Autoscaler.Zones.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)+--+-- -- |+--+-- /See:/ <http://developers.google.com/compute/docs/autoscaler Google Compute Engine Autoscaler API Reference> for @autoscaler.zones.list@.+module Network.Google.Resource.Autoscaler.Zones.List+    (+    -- * REST Resource+      ZonesListResource++    -- * Creating a Request+    , zonesList+    , ZonesList++    -- * Request Lenses+    , zlProject+    , zlFilter+    , zlPageToken+    , zlMaxResults+    ) where++import           Network.Google.Autoscaler.Types+import           Network.Google.Prelude++-- | A resource alias for @autoscaler.zones.list@ method which the+-- 'ZonesList' request conforms to.+type ZonesListResource =+     "autoscaler" :>+       "v1beta2" :>+         Capture "project" Text :>+           "zones" :>+             QueryParam "filter" Text :>+               QueryParam "pageToken" Text :>+                 QueryParam "maxResults" (Textual Word32) :>+                   QueryParam "alt" AltJSON :> Get '[JSON] ZoneList++-- |+--+-- /See:/ 'zonesList' smart constructor.+data ZonesList = ZonesList+    { _zlProject    :: !Text+    , _zlFilter     :: !(Maybe Text)+    , _zlPageToken  :: !(Maybe Text)+    , _zlMaxResults :: !(Textual Word32)+    } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ZonesList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'zlProject'+--+-- * 'zlFilter'+--+-- * 'zlPageToken'+--+-- * 'zlMaxResults'+zonesList+    :: Text -- ^ 'zlProject'+    -> ZonesList+zonesList pZlProject_ =+    ZonesList+    { _zlProject = pZlProject_+    , _zlFilter = Nothing+    , _zlPageToken = Nothing+    , _zlMaxResults = 500+    }++zlProject :: Lens' ZonesList Text+zlProject+  = lens _zlProject (\ s a -> s{_zlProject = a})++zlFilter :: Lens' ZonesList (Maybe Text)+zlFilter = lens _zlFilter (\ s a -> s{_zlFilter = a})++zlPageToken :: Lens' ZonesList (Maybe Text)+zlPageToken+  = lens _zlPageToken (\ s a -> s{_zlPageToken = a})++zlMaxResults :: Lens' ZonesList Word32+zlMaxResults+  = lens _zlMaxResults (\ s a -> s{_zlMaxResults = a})+      . _Coerce++instance GoogleRequest ZonesList where+        type Rs ZonesList = ZoneList+        requestClient ZonesList{..}+          = go _zlProject _zlFilter _zlPageToken+              (Just _zlMaxResults)+              (Just AltJSON)+              autoscalerService+          where go+                  = buildClient (Proxy :: Proxy ZonesListResource)+                      mempty
+ gogol-autoscaler.cabal view
@@ -0,0 +1,60 @@+name:                  gogol-autoscaler+version:               0.0.1+synopsis:              Google Compute Engine Autoscaler 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 Compute Engine Autoscaler API provides autoscaling for groups+    of Cloud VMs.+    .+    /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 @v1beta2@+    of the API.+    .+    Labels:+    .+    * Limited Availability++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.Autoscaler+        , Network.Google.Autoscaler.Types+        , Network.Google.Resource.Autoscaler.Autoscalers.Delete+        , Network.Google.Resource.Autoscaler.Autoscalers.Get+        , Network.Google.Resource.Autoscaler.Autoscalers.Insert+        , Network.Google.Resource.Autoscaler.Autoscalers.List+        , Network.Google.Resource.Autoscaler.Autoscalers.Patch+        , Network.Google.Resource.Autoscaler.Autoscalers.Update+        , Network.Google.Resource.Autoscaler.ZoneOperations.Delete+        , Network.Google.Resource.Autoscaler.ZoneOperations.Get+        , Network.Google.Resource.Autoscaler.ZoneOperations.List+        , Network.Google.Resource.Autoscaler.Zones.List++    other-modules:+          Network.Google.Autoscaler.Types.Product+        , Network.Google.Autoscaler.Types.Sum++    build-depends:+          gogol-core == 0.0.1.*+        , base       >= 4.7 && < 5