amazonka-devicefarm (empty) → 1.0.0
raw patch · 38 files changed
+8331/−0 lines, 38 filesdep +amazonka-coredep +amazonka-devicefarmdep +amazonka-testsetup-changed
Dependencies added: amazonka-core, amazonka-devicefarm, amazonka-test, base, bytestring, lens, tasty, tasty-hunit, text, time, unordered-containers
Files
- LICENSE +373/−0
- README.md +44/−0
- Setup.hs +2/−0
- amazonka-devicefarm.cabal +108/−0
- gen/Network/AWS/DeviceFarm.hs +454/−0
- gen/Network/AWS/DeviceFarm/CreateDevicePool.hs +161/−0
- gen/Network/AWS/DeviceFarm/CreateProject.hs +129/−0
- gen/Network/AWS/DeviceFarm/CreateUpload.hs +184/−0
- gen/Network/AWS/DeviceFarm/GetAccountSettings.hs +114/−0
- gen/Network/AWS/DeviceFarm/GetDevice.hs +128/−0
- gen/Network/AWS/DeviceFarm/GetDevicePool.hs +128/−0
- gen/Network/AWS/DeviceFarm/GetDevicePoolCompatibility.hs +187/−0
- gen/Network/AWS/DeviceFarm/GetJob.hs +128/−0
- gen/Network/AWS/DeviceFarm/GetProject.hs +128/−0
- gen/Network/AWS/DeviceFarm/GetRun.hs +128/−0
- gen/Network/AWS/DeviceFarm/GetSuite.hs +128/−0
- gen/Network/AWS/DeviceFarm/GetTest.hs +128/−0
- gen/Network/AWS/DeviceFarm/GetUpload.hs +128/−0
- gen/Network/AWS/DeviceFarm/ListArtifacts.hs +171/−0
- gen/Network/AWS/DeviceFarm/ListDevicePools.hs +174/−0
- gen/Network/AWS/DeviceFarm/ListDevices.hs +152/−0
- gen/Network/AWS/DeviceFarm/ListJobs.hs +153/−0
- gen/Network/AWS/DeviceFarm/ListProjects.hs +152/−0
- gen/Network/AWS/DeviceFarm/ListRuns.hs +153/−0
- gen/Network/AWS/DeviceFarm/ListSamples.hs +153/−0
- gen/Network/AWS/DeviceFarm/ListSuites.hs +152/−0
- gen/Network/AWS/DeviceFarm/ListTests.hs +153/−0
- gen/Network/AWS/DeviceFarm/ListUniqueProblems.hs +173/−0
- gen/Network/AWS/DeviceFarm/ListUploads.hs +153/−0
- gen/Network/AWS/DeviceFarm/ScheduleRun.hs +182/−0
- gen/Network/AWS/DeviceFarm/Types.hs +356/−0
- gen/Network/AWS/DeviceFarm/Types/Product.hs +2159/−0
- gen/Network/AWS/DeviceFarm/Types/Sum.hs +568/−0
- gen/Network/AWS/DeviceFarm/Waiters.hs +20/−0
- test/Main.hs +21/−0
- test/Test/AWS/DeviceFarm.hs +26/−0
- test/Test/AWS/DeviceFarm/Internal.hs +16/−0
- test/Test/AWS/Gen/DeviceFarm.hs +464/−0
+ LICENSE view
@@ -0,0 +1,373 @@+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.++Exhibit B - "Incompatible With Secondary Licenses" Notice+---------------------------------------------------------++ This Source Code Form is "Incompatible With Secondary Licenses", as+ defined by the Mozilla Public License, v. 2.0.
+ README.md view
@@ -0,0 +1,44 @@+# Amazon Device Farm SDK++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version++`1.0.0`+++## Description++AWS Device Farm is a service that enables mobile app developers to test+Android, iOS, and Fire OS apps on physical phones, tablets, and other+devices in the cloud.++Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-devicefarm)+and the [AWS API Reference](http://docs.aws.amazon.com/devicefarm/latest/APIReference/Welcome.html).++The types from this library are intended to be used with [amazonka](http://hackage.haskell.org/package/amazonka),+which provides mechanisms for specifying AuthN/AuthZ information and sending requests.++Use of lenses is required for constructing and manipulating types.+This is due to the amount of nesting of AWS types and transparency regarding+de/serialisation into more palatable Haskell values.+The provided lenses should be compatible with any of the major lens libraries+[lens](http://hackage.haskell.org/package/lens) or [lens-family-core](http://hackage.haskell.org/package/lens-family-core).++## 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++`amazonka-devicefarm` is released under the [Mozilla Public License Version 2.0](http://www.mozilla.org/MPL/).++Parts of the code are derived from AWS service descriptions, licensed under Apache 2.0.+Source files subject to this contain an additional licensing clause in their header.
+ Setup.hs view
@@ -0,0 +1,2 @@+import Distribution.Simple+main = defaultMain
+ amazonka-devicefarm.cabal view
@@ -0,0 +1,108 @@+name: amazonka-devicefarm+version: 1.0.0+synopsis: Amazon Device Farm SDK.+homepage: https://github.com/brendanhay/amazonka+license: OtherLicense+license-file: LICENSE+author: Brendan Hay+maintainer: Brendan Hay <brendan.g.hay@gmail.com>+copyright: Copyright (c) 2013-2015 Brendan Hay+category: Network, AWS, Cloud, Distributed Computing+build-type: Simple+extra-source-files: README.md+cabal-version: >= 1.10++description:+ AWS Device Farm is a service that enables mobile app developers to test+ Android, iOS, and Fire OS apps on physical phones, tablets, and other+ devices in the cloud.+ .+ The types from this library are intended to be used with+ <http://hackage.haskell.org/package/amazonka amazonka>, which provides+ mechanisms for specifying AuthN/AuthZ information and sending requests.+ .+ Use of lenses is required for constructing and manipulating types.+ This is due to the amount of nesting of AWS types and transparency regarding+ de/serialisation into more palatable Haskell values.+ The provided lenses should be compatible with any of the major lens libraries+ such as <http://hackage.haskell.org/package/lens lens> or+ <http://hackage.haskell.org/package/lens-family-core lens-family-core>.+ .+ See "Network.AWS.DeviceFarm" and the <http://docs.aws.amazon.com/devicefarm/latest/APIReference/Welcome.html AWS API Reference>+ to get started.++source-repository head+ type: git+ location: git://github.com/brendanhay/amazonka.git++library+ default-language: Haskell2010+ hs-source-dirs: src gen++ ghc-options: -Wall++ exposed-modules:+ Network.AWS.DeviceFarm+ , Network.AWS.DeviceFarm.CreateDevicePool+ , Network.AWS.DeviceFarm.CreateProject+ , Network.AWS.DeviceFarm.CreateUpload+ , Network.AWS.DeviceFarm.GetAccountSettings+ , Network.AWS.DeviceFarm.GetDevice+ , Network.AWS.DeviceFarm.GetDevicePool+ , Network.AWS.DeviceFarm.GetDevicePoolCompatibility+ , Network.AWS.DeviceFarm.GetJob+ , Network.AWS.DeviceFarm.GetProject+ , Network.AWS.DeviceFarm.GetRun+ , Network.AWS.DeviceFarm.GetSuite+ , Network.AWS.DeviceFarm.GetTest+ , Network.AWS.DeviceFarm.GetUpload+ , Network.AWS.DeviceFarm.ListArtifacts+ , Network.AWS.DeviceFarm.ListDevicePools+ , Network.AWS.DeviceFarm.ListDevices+ , Network.AWS.DeviceFarm.ListJobs+ , Network.AWS.DeviceFarm.ListProjects+ , Network.AWS.DeviceFarm.ListRuns+ , Network.AWS.DeviceFarm.ListSamples+ , Network.AWS.DeviceFarm.ListSuites+ , Network.AWS.DeviceFarm.ListTests+ , Network.AWS.DeviceFarm.ListUniqueProblems+ , Network.AWS.DeviceFarm.ListUploads+ , Network.AWS.DeviceFarm.ScheduleRun+ , Network.AWS.DeviceFarm.Types+ , Network.AWS.DeviceFarm.Waiters++ other-modules:+ Network.AWS.DeviceFarm.Types.Product+ , Network.AWS.DeviceFarm.Types.Sum++ build-depends:+ amazonka-core == 1.0.0.*+ , base >= 4.7 && < 5++test-suite amazonka-devicefarm-test+ type: exitcode-stdio-1.0+ default-language: Haskell2010+ hs-source-dirs: test+ main-is: Main.hs++ ghc-options: -Wall -threaded++ -- This is not comprehensive if modules have manually been added.+ -- It exists to ensure cabal 'somewhat' detects test module changes.+ other-modules:+ Test.AWS.DeviceFarm+ , Test.AWS.Gen.DeviceFarm+ , Test.AWS.DeviceFarm.Internal++ build-depends:+ amazonka-core == 1.0.0+ , amazonka-test == 1.0.0+ , amazonka-devicefarm == 1.0.0+ , base+ , bytestring+ , lens+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
+ gen/Network/AWS/DeviceFarm.hs view
@@ -0,0 +1,454 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm+-- Copyright : (c) 2013-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)+--+-- AWS Device Farm is a service that enables mobile app developers to test+-- Android, iOS, and Fire OS apps on physical phones, tablets, and other+-- devices in the cloud.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/Welcome.html AWS API Reference>+module Network.AWS.DeviceFarm+ (+ -- * Service+ DeviceFarm++ -- * Errors+ -- $errors++ -- ** IdempotencyException+ , _IdempotencyException++ -- ** NotFoundException+ , _NotFoundException++ -- ** ArgumentException+ , _ArgumentException++ -- ** ServiceAccountException+ , _ServiceAccountException++ -- ** LimitExceededException+ , _LimitExceededException++ -- * Waiters+ -- $waiters++ -- * Operations+ -- $operations++ -- ** ListProjects+ , module Network.AWS.DeviceFarm.ListProjects++ -- ** GetDevicePoolCompatibility+ , module Network.AWS.DeviceFarm.GetDevicePoolCompatibility++ -- ** ListTests+ , module Network.AWS.DeviceFarm.ListTests++ -- ** CreateUpload+ , module Network.AWS.DeviceFarm.CreateUpload++ -- ** ListArtifacts+ , module Network.AWS.DeviceFarm.ListArtifacts++ -- ** GetDevicePool+ , module Network.AWS.DeviceFarm.GetDevicePool++ -- ** GetUpload+ , module Network.AWS.DeviceFarm.GetUpload++ -- ** ListDevicePools+ , module Network.AWS.DeviceFarm.ListDevicePools++ -- ** GetTest+ , module Network.AWS.DeviceFarm.GetTest++ -- ** CreateDevicePool+ , module Network.AWS.DeviceFarm.CreateDevicePool++ -- ** ListRuns+ , module Network.AWS.DeviceFarm.ListRuns++ -- ** ListJobs+ , module Network.AWS.DeviceFarm.ListJobs++ -- ** GetDevice+ , module Network.AWS.DeviceFarm.GetDevice++ -- ** GetJob+ , module Network.AWS.DeviceFarm.GetJob++ -- ** ScheduleRun+ , module Network.AWS.DeviceFarm.ScheduleRun++ -- ** GetRun+ , module Network.AWS.DeviceFarm.GetRun++ -- ** ListSamples+ , module Network.AWS.DeviceFarm.ListSamples++ -- ** ListSuites+ , module Network.AWS.DeviceFarm.ListSuites++ -- ** GetAccountSettings+ , module Network.AWS.DeviceFarm.GetAccountSettings++ -- ** ListUploads+ , module Network.AWS.DeviceFarm.ListUploads++ -- ** GetSuite+ , module Network.AWS.DeviceFarm.GetSuite++ -- ** GetProject+ , module Network.AWS.DeviceFarm.GetProject++ -- ** ListDevices+ , module Network.AWS.DeviceFarm.ListDevices++ -- ** ListUniqueProblems+ , module Network.AWS.DeviceFarm.ListUniqueProblems++ -- ** CreateProject+ , module Network.AWS.DeviceFarm.CreateProject++ -- * Types++ -- ** ArtifactCategory+ , ArtifactCategory (..)++ -- ** ArtifactType+ , ArtifactType (..)++ -- ** BillingMethod+ , BillingMethod (..)++ -- ** DeviceAttribute+ , DeviceAttribute (..)++ -- ** DeviceFormFactor+ , DeviceFormFactor (..)++ -- ** DevicePlatform+ , DevicePlatform (..)++ -- ** DevicePoolType+ , DevicePoolType (..)++ -- ** ExecutionResult+ , ExecutionResult (..)++ -- ** ExecutionStatus+ , ExecutionStatus (..)++ -- ** RuleOperator+ , RuleOperator (..)++ -- ** SampleType+ , SampleType (..)++ -- ** TestType+ , TestType (..)++ -- ** UploadStatus+ , UploadStatus (..)++ -- ** UploadType+ , UploadType (..)++ -- ** AccountSettings+ , AccountSettings+ , accountSettings+ , asAwsAccountNumber+ , asUnmeteredDevices++ -- ** Artifact+ , Artifact+ , artifact+ , aArn+ , aUrl+ , aExtension+ , aName+ , aType++ -- ** CPU+ , CPU+ , cpu+ , cpuFrequency+ , cpuClock+ , cpuArchitecture++ -- ** Counters+ , Counters+ , counters+ , cPassed+ , cSkipped+ , cWarned+ , cStopped+ , cTotal+ , cFailed+ , cErrored++ -- ** Device+ , Device+ , device+ , dCarrier+ , dImage+ , dManufacturer+ , dPlatform+ , dArn+ , dFormFactor+ , dResolution+ , dMemory+ , dRadio+ , dOs+ , dName+ , dModel+ , dCpu+ , dHeapSize++ -- ** DevicePool+ , DevicePool+ , devicePool+ , dpArn+ , dpRules+ , dpName+ , dpType+ , dpDescription++ -- ** DevicePoolCompatibilityResult+ , DevicePoolCompatibilityResult+ , devicePoolCompatibilityResult+ , dpcrDevice+ , dpcrCompatible+ , dpcrIncompatibilityMessages++ -- ** IncompatibilityMessage+ , IncompatibilityMessage+ , incompatibilityMessage+ , imType+ , imMessage++ -- ** Job+ , Job+ , job+ , jobStatus+ , jobCounters+ , jobArn+ , jobCreated+ , jobDevice+ , jobStopped+ , jobResult+ , jobName+ , jobType+ , jobMessage+ , jobStarted++ -- ** Location+ , Location+ , location+ , lLatitude+ , lLongitude++ -- ** Problem+ , Problem+ , problem+ , pDevice+ , pTest+ , pResult+ , pRun+ , pJob+ , pMessage+ , pSuite++ -- ** ProblemDetail+ , ProblemDetail+ , problemDetail+ , pdArn+ , pdName++ -- ** Project+ , Project+ , project+ , pArn+ , pCreated+ , pName++ -- ** Radios+ , Radios+ , radios+ , rNfc+ , rGps+ , rBluetooth+ , rWifi++ -- ** Resolution+ , Resolution+ , resolution+ , rHeight+ , rWidth++ -- ** Rule+ , Rule+ , rule+ , rAttribute+ , rOperator+ , rValue++ -- ** Run+ , Run+ , run+ , runStatus+ , runBillingMethod+ , runCounters+ , runPlatform+ , runArn+ , runCreated+ , runCompletedJobs+ , runStopped+ , runResult+ , runName+ , runType+ , runMessage+ , runTotalJobs+ , runStarted++ -- ** Sample+ , Sample+ , sample+ , sArn+ , sUrl+ , sType++ -- ** ScheduleRunConfiguration+ , ScheduleRunConfiguration+ , scheduleRunConfiguration+ , srcBillingMethod+ , srcRadios+ , srcLocation+ , srcLocale+ , srcNetworkProfileARN+ , srcExtraDataPackageARN+ , srcAuxiliaryApps++ -- ** ScheduleRunTest+ , ScheduleRunTest+ , scheduleRunTest+ , srtTestPackageARN+ , srtParameters+ , srtFilter+ , srtType++ -- ** Suite+ , Suite+ , suite+ , suiStatus+ , suiCounters+ , suiArn+ , suiCreated+ , suiStopped+ , suiResult+ , suiName+ , suiType+ , suiMessage+ , suiStarted++ -- ** Test+ , Test+ , test+ , tStatus+ , tCounters+ , tArn+ , tCreated+ , tStopped+ , tResult+ , tName+ , tType+ , tMessage+ , tStarted++ -- ** UniqueProblem+ , UniqueProblem+ , uniqueProblem+ , upProblems+ , upMessage++ -- ** Upload+ , Upload+ , upload+ , uStatus+ , uArn+ , uCreated+ , uUrl+ , uName+ , uMetadata+ , uType+ , uMessage+ , uContentType+ ) where++import Network.AWS.DeviceFarm.CreateDevicePool+import Network.AWS.DeviceFarm.CreateProject+import Network.AWS.DeviceFarm.CreateUpload+import Network.AWS.DeviceFarm.GetAccountSettings+import Network.AWS.DeviceFarm.GetDevice+import Network.AWS.DeviceFarm.GetDevicePool+import Network.AWS.DeviceFarm.GetDevicePoolCompatibility+import Network.AWS.DeviceFarm.GetJob+import Network.AWS.DeviceFarm.GetProject+import Network.AWS.DeviceFarm.GetRun+import Network.AWS.DeviceFarm.GetSuite+import Network.AWS.DeviceFarm.GetTest+import Network.AWS.DeviceFarm.GetUpload+import Network.AWS.DeviceFarm.ListArtifacts+import Network.AWS.DeviceFarm.ListDevicePools+import Network.AWS.DeviceFarm.ListDevices+import Network.AWS.DeviceFarm.ListJobs+import Network.AWS.DeviceFarm.ListProjects+import Network.AWS.DeviceFarm.ListRuns+import Network.AWS.DeviceFarm.ListSamples+import Network.AWS.DeviceFarm.ListSuites+import Network.AWS.DeviceFarm.ListTests+import Network.AWS.DeviceFarm.ListUniqueProblems+import Network.AWS.DeviceFarm.ListUploads+import Network.AWS.DeviceFarm.ScheduleRun+import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Waiters++{- $errors+Error matchers are designed for use with the functions provided by+<http://hackage.haskell.org/package/lens/docs/Control-Exception-Lens.html Control.Exception.Lens>.+This allows catching (and rethrowing) service specific errors returned+by 'DeviceFarm'.+-}++{- $operations+Some AWS operations return results that are incomplete and require subsequent+requests in order to obtain the entire result set. The process of sending+subsequent requests to continue where a previous request left off is called+pagination. For example, the 'ListObjects' operation of Amazon S3 returns up to+1000 objects at a time, and you must send subsequent requests with the+appropriate Marker in order to retrieve the next page of results.++Operations that have an 'AWSPager' instance can transparently perform subsequent+requests, correctly setting Markers and other request facets to iterate through+the entire result set of a truncated API operation. Operations which support+this have an additional note in the documentation.++Many operations have the ability to filter results on the server side. See the+individual operation parameters for details.+-}++{- $waiters+Waiters poll by repeatedly sending a request until some remote success condition+configured by the 'Wait' specification is fulfilled. The 'Wait' specification+determines how many attempts should be made, in addition to delay and retry strategies.+-}
+ gen/Network/AWS/DeviceFarm/CreateDevicePool.hs view
@@ -0,0 +1,161 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.CreateDevicePool+-- Copyright : (c) 2013-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)+--+-- Creates a device pool.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_CreateDevicePool.html AWS API Reference> for CreateDevicePool.+module Network.AWS.DeviceFarm.CreateDevicePool+ (+ -- * Creating a Request+ createDevicePool+ , CreateDevicePool+ -- * Request Lenses+ , cdpDescription+ , cdpProjectARN+ , cdpName+ , cdpRules++ -- * Destructuring the Response+ , createDevicePoolResponse+ , CreateDevicePoolResponse+ -- * Response Lenses+ , cdprsDevicePool+ , cdprsStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents a request to the create device pool operation.+--+-- /See:/ 'createDevicePool' smart constructor.+data CreateDevicePool = CreateDevicePool'+ { _cdpDescription :: !(Maybe Text)+ , _cdpProjectARN :: !Text+ , _cdpName :: !Text+ , _cdpRules :: ![Rule]+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CreateDevicePool' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cdpDescription'+--+-- * 'cdpProjectARN'+--+-- * 'cdpName'+--+-- * 'cdpRules'+createDevicePool+ :: Text -- ^ 'cdpProjectARN'+ -> Text -- ^ 'cdpName'+ -> CreateDevicePool+createDevicePool pProjectARN_ pName_ =+ CreateDevicePool'+ { _cdpDescription = Nothing+ , _cdpProjectARN = pProjectARN_+ , _cdpName = pName_+ , _cdpRules = mempty+ }++-- | The device pool\'s description.+cdpDescription :: Lens' CreateDevicePool (Maybe Text)+cdpDescription = lens _cdpDescription (\ s a -> s{_cdpDescription = a});++-- | The ARN of the project for the device pool.+cdpProjectARN :: Lens' CreateDevicePool Text+cdpProjectARN = lens _cdpProjectARN (\ s a -> s{_cdpProjectARN = a});++-- | The device pool\'s name.+cdpName :: Lens' CreateDevicePool Text+cdpName = lens _cdpName (\ s a -> s{_cdpName = a});++-- | The device pool\'s rules.+cdpRules :: Lens' CreateDevicePool [Rule]+cdpRules = lens _cdpRules (\ s a -> s{_cdpRules = a}) . _Coerce;++instance AWSRequest CreateDevicePool where+ type Sv CreateDevicePool = DeviceFarm+ type Rs CreateDevicePool = CreateDevicePoolResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ CreateDevicePoolResponse' <$>+ (x .?> "devicePool") <*> (pure (fromEnum s)))++instance ToHeaders CreateDevicePool where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.CreateDevicePool" ::+ ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON CreateDevicePool where+ toJSON CreateDevicePool'{..}+ = object+ ["description" .= _cdpDescription,+ "projectArn" .= _cdpProjectARN, "name" .= _cdpName,+ "rules" .= _cdpRules]++instance ToPath CreateDevicePool where+ toPath = const "/"++instance ToQuery CreateDevicePool where+ toQuery = const mempty++-- | Represents the result of a create device pool request.+--+-- /See:/ 'createDevicePoolResponse' smart constructor.+data CreateDevicePoolResponse = CreateDevicePoolResponse'+ { _cdprsDevicePool :: !(Maybe DevicePool)+ , _cdprsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CreateDevicePoolResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cdprsDevicePool'+--+-- * 'cdprsStatus'+createDevicePoolResponse+ :: Int -- ^ 'cdprsStatus'+ -> CreateDevicePoolResponse+createDevicePoolResponse pStatus_ =+ CreateDevicePoolResponse'+ { _cdprsDevicePool = Nothing+ , _cdprsStatus = pStatus_+ }++-- | The newly created device pool.+cdprsDevicePool :: Lens' CreateDevicePoolResponse (Maybe DevicePool)+cdprsDevicePool = lens _cdprsDevicePool (\ s a -> s{_cdprsDevicePool = a});++-- | The response status code.+cdprsStatus :: Lens' CreateDevicePoolResponse Int+cdprsStatus = lens _cdprsStatus (\ s a -> s{_cdprsStatus = a});
+ gen/Network/AWS/DeviceFarm/CreateProject.hs view
@@ -0,0 +1,129 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.CreateProject+-- Copyright : (c) 2013-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)+--+-- Creates a new project.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_CreateProject.html AWS API Reference> for CreateProject.+module Network.AWS.DeviceFarm.CreateProject+ (+ -- * Creating a Request+ createProject+ , CreateProject+ -- * Request Lenses+ , cpName++ -- * Destructuring the Response+ , createProjectResponse+ , CreateProjectResponse+ -- * Response Lenses+ , cprsProject+ , cprsStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents a request to the create project operation.+--+-- /See:/ 'createProject' smart constructor.+newtype CreateProject = CreateProject'+ { _cpName :: Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CreateProject' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cpName'+createProject+ :: Text -- ^ 'cpName'+ -> CreateProject+createProject pName_ =+ CreateProject'+ { _cpName = pName_+ }++-- | The project\'s name.+cpName :: Lens' CreateProject Text+cpName = lens _cpName (\ s a -> s{_cpName = a});++instance AWSRequest CreateProject where+ type Sv CreateProject = DeviceFarm+ type Rs CreateProject = CreateProjectResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ CreateProjectResponse' <$>+ (x .?> "project") <*> (pure (fromEnum s)))++instance ToHeaders CreateProject where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.CreateProject" :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON CreateProject where+ toJSON CreateProject'{..}+ = object ["name" .= _cpName]++instance ToPath CreateProject where+ toPath = const "/"++instance ToQuery CreateProject where+ toQuery = const mempty++-- | Represents the result of a create project request.+--+-- /See:/ 'createProjectResponse' smart constructor.+data CreateProjectResponse = CreateProjectResponse'+ { _cprsProject :: !(Maybe Project)+ , _cprsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CreateProjectResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cprsProject'+--+-- * 'cprsStatus'+createProjectResponse+ :: Int -- ^ 'cprsStatus'+ -> CreateProjectResponse+createProjectResponse pStatus_ =+ CreateProjectResponse'+ { _cprsProject = Nothing+ , _cprsStatus = pStatus_+ }++-- | The newly created project.+cprsProject :: Lens' CreateProjectResponse (Maybe Project)+cprsProject = lens _cprsProject (\ s a -> s{_cprsProject = a});++-- | The response status code.+cprsStatus :: Lens' CreateProjectResponse Int+cprsStatus = lens _cprsStatus (\ s a -> s{_cprsStatus = a});
+ gen/Network/AWS/DeviceFarm/CreateUpload.hs view
@@ -0,0 +1,184 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.CreateUpload+-- Copyright : (c) 2013-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)+--+-- Uploads an app or test scripts.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_CreateUpload.html AWS API Reference> for CreateUpload.+module Network.AWS.DeviceFarm.CreateUpload+ (+ -- * Creating a Request+ createUpload+ , CreateUpload+ -- * Request Lenses+ , cuContentType+ , cuProjectARN+ , cuName+ , cuType++ -- * Destructuring the Response+ , createUploadResponse+ , CreateUploadResponse+ -- * Response Lenses+ , cursUpload+ , cursStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents a request to the create upload operation.+--+-- /See:/ 'createUpload' smart constructor.+data CreateUpload = CreateUpload'+ { _cuContentType :: !(Maybe Text)+ , _cuProjectARN :: !Text+ , _cuName :: !Text+ , _cuType :: !UploadType+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CreateUpload' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cuContentType'+--+-- * 'cuProjectARN'+--+-- * 'cuName'+--+-- * 'cuType'+createUpload+ :: Text -- ^ 'cuProjectARN'+ -> Text -- ^ 'cuName'+ -> UploadType -- ^ 'cuType'+ -> CreateUpload+createUpload pProjectARN_ pName_ pType_ =+ CreateUpload'+ { _cuContentType = Nothing+ , _cuProjectARN = pProjectARN_+ , _cuName = pName_+ , _cuType = pType_+ }++-- | The upload\'s content type (for example, \"application\/octet-stream\").+cuContentType :: Lens' CreateUpload (Maybe Text)+cuContentType = lens _cuContentType (\ s a -> s{_cuContentType = a});++-- | The ARN of the project for the upload.+cuProjectARN :: Lens' CreateUpload Text+cuProjectARN = lens _cuProjectARN (\ s a -> s{_cuProjectARN = a});++-- | The upload\'s file name.+cuName :: Lens' CreateUpload Text+cuName = lens _cuName (\ s a -> s{_cuName = a});++-- | The upload\'s upload type.+--+-- Must be one of the following values:+--+-- - ANDROID_APP: An Android upload.+--+-- - IOS_APP: An iOS upload.+--+-- - EXTERNAL_DATA: An external data upload.+--+-- - APPIUM_JAVA_JUNIT_TEST_PACKAGE: An Appium Java JUnit test package+-- upload.+--+-- - APPIUM_JAVA_TESTNG_TEST_PACKAGE: An Appium Java TestNG test package+-- upload.+--+-- - CALABASH_TEST_PACKAGE: A Calabash test package upload.+--+-- - INSTRUMENTATION_TEST_PACKAGE: An instrumentation upload.+--+-- - UIAUTOMATOR_TEST_PACKAGE: A uiautomator test package upload.+--+-- - XCTEST_TEST_PACKAGE: An XCode test package upload.+--+cuType :: Lens' CreateUpload UploadType+cuType = lens _cuType (\ s a -> s{_cuType = a});++instance AWSRequest CreateUpload where+ type Sv CreateUpload = DeviceFarm+ type Rs CreateUpload = CreateUploadResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ CreateUploadResponse' <$>+ (x .?> "upload") <*> (pure (fromEnum s)))++instance ToHeaders CreateUpload where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.CreateUpload" :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON CreateUpload where+ toJSON CreateUpload'{..}+ = object+ ["contentType" .= _cuContentType,+ "projectArn" .= _cuProjectARN, "name" .= _cuName,+ "type" .= _cuType]++instance ToPath CreateUpload where+ toPath = const "/"++instance ToQuery CreateUpload where+ toQuery = const mempty++-- | Represents the result of a create upload request.+--+-- /See:/ 'createUploadResponse' smart constructor.+data CreateUploadResponse = CreateUploadResponse'+ { _cursUpload :: !(Maybe Upload)+ , _cursStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CreateUploadResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cursUpload'+--+-- * 'cursStatus'+createUploadResponse+ :: Int -- ^ 'cursStatus'+ -> CreateUploadResponse+createUploadResponse pStatus_ =+ CreateUploadResponse'+ { _cursUpload = Nothing+ , _cursStatus = pStatus_+ }++-- | The newly created upload.+cursUpload :: Lens' CreateUploadResponse (Maybe Upload)+cursUpload = lens _cursUpload (\ s a -> s{_cursUpload = a});++-- | The response status code.+cursStatus :: Lens' CreateUploadResponse Int+cursStatus = lens _cursStatus (\ s a -> s{_cursStatus = a});
+ gen/Network/AWS/DeviceFarm/GetAccountSettings.hs view
@@ -0,0 +1,114 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.GetAccountSettings+-- Copyright : (c) 2013-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)+--+-- Returns the number of unmetered iOS and\/or unmetered Android devices+-- that have been purchased by the account.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_GetAccountSettings.html AWS API Reference> for GetAccountSettings.+module Network.AWS.DeviceFarm.GetAccountSettings+ (+ -- * Creating a Request+ getAccountSettings+ , GetAccountSettings++ -- * Destructuring the Response+ , getAccountSettingsResponse+ , GetAccountSettingsResponse+ -- * Response Lenses+ , gasrsAccountSettings+ , gasrsStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | /See:/ 'getAccountSettings' smart constructor.+data GetAccountSettings =+ GetAccountSettings'+ deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetAccountSettings' with the minimum fields required to make a request.+--+getAccountSettings+ :: GetAccountSettings+getAccountSettings = GetAccountSettings'++instance AWSRequest GetAccountSettings where+ type Sv GetAccountSettings = DeviceFarm+ type Rs GetAccountSettings =+ GetAccountSettingsResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ GetAccountSettingsResponse' <$>+ (x .?> "accountSettings") <*> (pure (fromEnum s)))++instance ToHeaders GetAccountSettings where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.GetAccountSettings" ::+ ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON GetAccountSettings where+ toJSON = const (Object mempty)++instance ToPath GetAccountSettings where+ toPath = const "/"++instance ToQuery GetAccountSettings where+ toQuery = const mempty++-- | /See:/ 'getAccountSettingsResponse' smart constructor.+data GetAccountSettingsResponse = GetAccountSettingsResponse'+ { _gasrsAccountSettings :: !(Maybe AccountSettings)+ , _gasrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetAccountSettingsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gasrsAccountSettings'+--+-- * 'gasrsStatus'+getAccountSettingsResponse+ :: Int -- ^ 'gasrsStatus'+ -> GetAccountSettingsResponse+getAccountSettingsResponse pStatus_ =+ GetAccountSettingsResponse'+ { _gasrsAccountSettings = Nothing+ , _gasrsStatus = pStatus_+ }++-- | Undocumented member.+gasrsAccountSettings :: Lens' GetAccountSettingsResponse (Maybe AccountSettings)+gasrsAccountSettings = lens _gasrsAccountSettings (\ s a -> s{_gasrsAccountSettings = a});++-- | The response status code.+gasrsStatus :: Lens' GetAccountSettingsResponse Int+gasrsStatus = lens _gasrsStatus (\ s a -> s{_gasrsStatus = a});
+ gen/Network/AWS/DeviceFarm/GetDevice.hs view
@@ -0,0 +1,128 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.GetDevice+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets information about a unique device type.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_GetDevice.html AWS API Reference> for GetDevice.+module Network.AWS.DeviceFarm.GetDevice+ (+ -- * Creating a Request+ getDevice+ , GetDevice+ -- * Request Lenses+ , gdArn++ -- * Destructuring the Response+ , getDeviceResponse+ , GetDeviceResponse+ -- * Response Lenses+ , gdrsDevice+ , gdrsStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents a request to the get device request.+--+-- /See:/ 'getDevice' smart constructor.+newtype GetDevice = GetDevice'+ { _gdArn :: Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetDevice' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gdArn'+getDevice+ :: Text -- ^ 'gdArn'+ -> GetDevice+getDevice pArn_ =+ GetDevice'+ { _gdArn = pArn_+ }++-- | The device type\'s ARN.+gdArn :: Lens' GetDevice Text+gdArn = lens _gdArn (\ s a -> s{_gdArn = a});++instance AWSRequest GetDevice where+ type Sv GetDevice = DeviceFarm+ type Rs GetDevice = GetDeviceResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ GetDeviceResponse' <$>+ (x .?> "device") <*> (pure (fromEnum s)))++instance ToHeaders GetDevice where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.GetDevice" :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON GetDevice where+ toJSON GetDevice'{..} = object ["arn" .= _gdArn]++instance ToPath GetDevice where+ toPath = const "/"++instance ToQuery GetDevice where+ toQuery = const mempty++-- | Represents the result of a get device request.+--+-- /See:/ 'getDeviceResponse' smart constructor.+data GetDeviceResponse = GetDeviceResponse'+ { _gdrsDevice :: !(Maybe Device)+ , _gdrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetDeviceResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gdrsDevice'+--+-- * 'gdrsStatus'+getDeviceResponse+ :: Int -- ^ 'gdrsStatus'+ -> GetDeviceResponse+getDeviceResponse pStatus_ =+ GetDeviceResponse'+ { _gdrsDevice = Nothing+ , _gdrsStatus = pStatus_+ }++-- | Undocumented member.+gdrsDevice :: Lens' GetDeviceResponse (Maybe Device)+gdrsDevice = lens _gdrsDevice (\ s a -> s{_gdrsDevice = a});++-- | The response status code.+gdrsStatus :: Lens' GetDeviceResponse Int+gdrsStatus = lens _gdrsStatus (\ s a -> s{_gdrsStatus = a});
+ gen/Network/AWS/DeviceFarm/GetDevicePool.hs view
@@ -0,0 +1,128 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.GetDevicePool+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets information about a device pool.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_GetDevicePool.html AWS API Reference> for GetDevicePool.+module Network.AWS.DeviceFarm.GetDevicePool+ (+ -- * Creating a Request+ getDevicePool+ , GetDevicePool+ -- * Request Lenses+ , gdpArn++ -- * Destructuring the Response+ , getDevicePoolResponse+ , GetDevicePoolResponse+ -- * Response Lenses+ , gdprsDevicePool+ , gdprsStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents a request to the get device pool operation.+--+-- /See:/ 'getDevicePool' smart constructor.+newtype GetDevicePool = GetDevicePool'+ { _gdpArn :: Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetDevicePool' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gdpArn'+getDevicePool+ :: Text -- ^ 'gdpArn'+ -> GetDevicePool+getDevicePool pArn_ =+ GetDevicePool'+ { _gdpArn = pArn_+ }++-- | The device pool\'s ARN.+gdpArn :: Lens' GetDevicePool Text+gdpArn = lens _gdpArn (\ s a -> s{_gdpArn = a});++instance AWSRequest GetDevicePool where+ type Sv GetDevicePool = DeviceFarm+ type Rs GetDevicePool = GetDevicePoolResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ GetDevicePoolResponse' <$>+ (x .?> "devicePool") <*> (pure (fromEnum s)))++instance ToHeaders GetDevicePool where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.GetDevicePool" :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON GetDevicePool where+ toJSON GetDevicePool'{..} = object ["arn" .= _gdpArn]++instance ToPath GetDevicePool where+ toPath = const "/"++instance ToQuery GetDevicePool where+ toQuery = const mempty++-- | Represents the result of a get device pool request.+--+-- /See:/ 'getDevicePoolResponse' smart constructor.+data GetDevicePoolResponse = GetDevicePoolResponse'+ { _gdprsDevicePool :: !(Maybe DevicePool)+ , _gdprsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetDevicePoolResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gdprsDevicePool'+--+-- * 'gdprsStatus'+getDevicePoolResponse+ :: Int -- ^ 'gdprsStatus'+ -> GetDevicePoolResponse+getDevicePoolResponse pStatus_ =+ GetDevicePoolResponse'+ { _gdprsDevicePool = Nothing+ , _gdprsStatus = pStatus_+ }++-- | Undocumented member.+gdprsDevicePool :: Lens' GetDevicePoolResponse (Maybe DevicePool)+gdprsDevicePool = lens _gdprsDevicePool (\ s a -> s{_gdprsDevicePool = a});++-- | The response status code.+gdprsStatus :: Lens' GetDevicePoolResponse Int+gdprsStatus = lens _gdprsStatus (\ s a -> s{_gdprsStatus = a});
+ gen/Network/AWS/DeviceFarm/GetDevicePoolCompatibility.hs view
@@ -0,0 +1,187 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.GetDevicePoolCompatibility+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets information about compatibility with a device pool.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_GetDevicePoolCompatibility.html AWS API Reference> for GetDevicePoolCompatibility.+module Network.AWS.DeviceFarm.GetDevicePoolCompatibility+ (+ -- * Creating a Request+ getDevicePoolCompatibility+ , GetDevicePoolCompatibility+ -- * Request Lenses+ , gdpcTestType+ , gdpcDevicePoolARN+ , gdpcAppARN++ -- * Destructuring the Response+ , getDevicePoolCompatibilityResponse+ , GetDevicePoolCompatibilityResponse+ -- * Response Lenses+ , gdpcrsIncompatibleDevices+ , gdpcrsCompatibleDevices+ , gdpcrsStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents a request to the get device pool compatibility operation.+--+-- /See:/ 'getDevicePoolCompatibility' smart constructor.+data GetDevicePoolCompatibility = GetDevicePoolCompatibility'+ { _gdpcTestType :: !(Maybe TestType)+ , _gdpcDevicePoolARN :: !Text+ , _gdpcAppARN :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetDevicePoolCompatibility' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gdpcTestType'+--+-- * 'gdpcDevicePoolARN'+--+-- * 'gdpcAppARN'+getDevicePoolCompatibility+ :: Text -- ^ 'gdpcDevicePoolARN'+ -> Text -- ^ 'gdpcAppARN'+ -> GetDevicePoolCompatibility+getDevicePoolCompatibility pDevicePoolARN_ pAppARN_ =+ GetDevicePoolCompatibility'+ { _gdpcTestType = Nothing+ , _gdpcDevicePoolARN = pDevicePoolARN_+ , _gdpcAppARN = pAppARN_+ }++-- | The test type for the specified device pool.+--+-- Allowed values include the following:+--+-- - BUILTIN_FUZZ: The built-in fuzz type.+--+-- - BUILTIN_EXPLORER: For Android, an app explorer that will traverse an+-- Android app, interacting with it and capturing screenshots at the+-- same time.+--+-- - APPIUM_JAVA_JUNIT: The Appium Java JUnit type.+--+-- - APPIUM_JAVA_TESTNG: The Appium Java TestNG type.+--+-- - CALABASH: The Calabash type.+--+-- - INSTRUMENTATION: The Instrumentation type.+--+-- - UIAUTOMATION: The uiautomation type.+--+-- - UIAUTOMATOR: The uiautomator type.+--+-- - XCTEST: The XCode test type.+--+gdpcTestType :: Lens' GetDevicePoolCompatibility (Maybe TestType)+gdpcTestType = lens _gdpcTestType (\ s a -> s{_gdpcTestType = a});++-- | The device pool\'s ARN.+gdpcDevicePoolARN :: Lens' GetDevicePoolCompatibility Text+gdpcDevicePoolARN = lens _gdpcDevicePoolARN (\ s a -> s{_gdpcDevicePoolARN = a});++-- | The ARN of the app that is associated with the specified device pool.+gdpcAppARN :: Lens' GetDevicePoolCompatibility Text+gdpcAppARN = lens _gdpcAppARN (\ s a -> s{_gdpcAppARN = a});++instance AWSRequest GetDevicePoolCompatibility where+ type Sv GetDevicePoolCompatibility = DeviceFarm+ type Rs GetDevicePoolCompatibility =+ GetDevicePoolCompatibilityResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ GetDevicePoolCompatibilityResponse' <$>+ (x .?> "incompatibleDevices" .!@ mempty) <*>+ (x .?> "compatibleDevices" .!@ mempty)+ <*> (pure (fromEnum s)))++instance ToHeaders GetDevicePoolCompatibility where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.GetDevicePoolCompatibility" ::+ ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON GetDevicePoolCompatibility where+ toJSON GetDevicePoolCompatibility'{..}+ = object+ ["testType" .= _gdpcTestType,+ "devicePoolArn" .= _gdpcDevicePoolARN,+ "appArn" .= _gdpcAppARN]++instance ToPath GetDevicePoolCompatibility where+ toPath = const "/"++instance ToQuery GetDevicePoolCompatibility where+ toQuery = const mempty++-- | Represents the result of describe device pool compatibility request.+--+-- /See:/ 'getDevicePoolCompatibilityResponse' smart constructor.+data GetDevicePoolCompatibilityResponse = GetDevicePoolCompatibilityResponse'+ { _gdpcrsIncompatibleDevices :: !(Maybe [DevicePoolCompatibilityResult])+ , _gdpcrsCompatibleDevices :: !(Maybe [DevicePoolCompatibilityResult])+ , _gdpcrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetDevicePoolCompatibilityResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gdpcrsIncompatibleDevices'+--+-- * 'gdpcrsCompatibleDevices'+--+-- * 'gdpcrsStatus'+getDevicePoolCompatibilityResponse+ :: Int -- ^ 'gdpcrsStatus'+ -> GetDevicePoolCompatibilityResponse+getDevicePoolCompatibilityResponse pStatus_ =+ GetDevicePoolCompatibilityResponse'+ { _gdpcrsIncompatibleDevices = Nothing+ , _gdpcrsCompatibleDevices = Nothing+ , _gdpcrsStatus = pStatus_+ }++-- | Information about incompatible devices.+gdpcrsIncompatibleDevices :: Lens' GetDevicePoolCompatibilityResponse [DevicePoolCompatibilityResult]+gdpcrsIncompatibleDevices = lens _gdpcrsIncompatibleDevices (\ s a -> s{_gdpcrsIncompatibleDevices = a}) . _Default . _Coerce;++-- | Information about compatible devices.+gdpcrsCompatibleDevices :: Lens' GetDevicePoolCompatibilityResponse [DevicePoolCompatibilityResult]+gdpcrsCompatibleDevices = lens _gdpcrsCompatibleDevices (\ s a -> s{_gdpcrsCompatibleDevices = a}) . _Default . _Coerce;++-- | The response status code.+gdpcrsStatus :: Lens' GetDevicePoolCompatibilityResponse Int+gdpcrsStatus = lens _gdpcrsStatus (\ s a -> s{_gdpcrsStatus = a});
+ gen/Network/AWS/DeviceFarm/GetJob.hs view
@@ -0,0 +1,128 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.GetJob+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets information about a job.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_GetJob.html AWS API Reference> for GetJob.+module Network.AWS.DeviceFarm.GetJob+ (+ -- * Creating a Request+ getJob+ , GetJob+ -- * Request Lenses+ , gjArn++ -- * Destructuring the Response+ , getJobResponse+ , GetJobResponse+ -- * Response Lenses+ , gjrsJob+ , gjrsStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents a request to the get job operation.+--+-- /See:/ 'getJob' smart constructor.+newtype GetJob = GetJob'+ { _gjArn :: Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetJob' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gjArn'+getJob+ :: Text -- ^ 'gjArn'+ -> GetJob+getJob pArn_ =+ GetJob'+ { _gjArn = pArn_+ }++-- | The job\'s ARN.+gjArn :: Lens' GetJob Text+gjArn = lens _gjArn (\ s a -> s{_gjArn = a});++instance AWSRequest GetJob where+ type Sv GetJob = DeviceFarm+ type Rs GetJob = GetJobResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ GetJobResponse' <$>+ (x .?> "job") <*> (pure (fromEnum s)))++instance ToHeaders GetJob where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.GetJob" :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON GetJob where+ toJSON GetJob'{..} = object ["arn" .= _gjArn]++instance ToPath GetJob where+ toPath = const "/"++instance ToQuery GetJob where+ toQuery = const mempty++-- | Represents the result of a get job request.+--+-- /See:/ 'getJobResponse' smart constructor.+data GetJobResponse = GetJobResponse'+ { _gjrsJob :: !(Maybe Job)+ , _gjrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetJobResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gjrsJob'+--+-- * 'gjrsStatus'+getJobResponse+ :: Int -- ^ 'gjrsStatus'+ -> GetJobResponse+getJobResponse pStatus_ =+ GetJobResponse'+ { _gjrsJob = Nothing+ , _gjrsStatus = pStatus_+ }++-- | Undocumented member.+gjrsJob :: Lens' GetJobResponse (Maybe Job)+gjrsJob = lens _gjrsJob (\ s a -> s{_gjrsJob = a});++-- | The response status code.+gjrsStatus :: Lens' GetJobResponse Int+gjrsStatus = lens _gjrsStatus (\ s a -> s{_gjrsStatus = a});
+ gen/Network/AWS/DeviceFarm/GetProject.hs view
@@ -0,0 +1,128 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.GetProject+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets information about a project.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_GetProject.html AWS API Reference> for GetProject.+module Network.AWS.DeviceFarm.GetProject+ (+ -- * Creating a Request+ getProject+ , GetProject+ -- * Request Lenses+ , gpArn++ -- * Destructuring the Response+ , getProjectResponse+ , GetProjectResponse+ -- * Response Lenses+ , gprsProject+ , gprsStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents a request to the get project operation.+--+-- /See:/ 'getProject' smart constructor.+newtype GetProject = GetProject'+ { _gpArn :: Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetProject' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gpArn'+getProject+ :: Text -- ^ 'gpArn'+ -> GetProject+getProject pArn_ =+ GetProject'+ { _gpArn = pArn_+ }++-- | The project\'s ARN.+gpArn :: Lens' GetProject Text+gpArn = lens _gpArn (\ s a -> s{_gpArn = a});++instance AWSRequest GetProject where+ type Sv GetProject = DeviceFarm+ type Rs GetProject = GetProjectResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ GetProjectResponse' <$>+ (x .?> "project") <*> (pure (fromEnum s)))++instance ToHeaders GetProject where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.GetProject" :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON GetProject where+ toJSON GetProject'{..} = object ["arn" .= _gpArn]++instance ToPath GetProject where+ toPath = const "/"++instance ToQuery GetProject where+ toQuery = const mempty++-- | Represents the result of a get project request.+--+-- /See:/ 'getProjectResponse' smart constructor.+data GetProjectResponse = GetProjectResponse'+ { _gprsProject :: !(Maybe Project)+ , _gprsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetProjectResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gprsProject'+--+-- * 'gprsStatus'+getProjectResponse+ :: Int -- ^ 'gprsStatus'+ -> GetProjectResponse+getProjectResponse pStatus_ =+ GetProjectResponse'+ { _gprsProject = Nothing+ , _gprsStatus = pStatus_+ }++-- | Undocumented member.+gprsProject :: Lens' GetProjectResponse (Maybe Project)+gprsProject = lens _gprsProject (\ s a -> s{_gprsProject = a});++-- | The response status code.+gprsStatus :: Lens' GetProjectResponse Int+gprsStatus = lens _gprsStatus (\ s a -> s{_gprsStatus = a});
+ gen/Network/AWS/DeviceFarm/GetRun.hs view
@@ -0,0 +1,128 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.GetRun+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets information about a run.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_GetRun.html AWS API Reference> for GetRun.+module Network.AWS.DeviceFarm.GetRun+ (+ -- * Creating a Request+ getRun+ , GetRun+ -- * Request Lenses+ , grArn++ -- * Destructuring the Response+ , getRunResponse+ , GetRunResponse+ -- * Response Lenses+ , grrsRun+ , grrsStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents a request to the get run operation.+--+-- /See:/ 'getRun' smart constructor.+newtype GetRun = GetRun'+ { _grArn :: Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetRun' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'grArn'+getRun+ :: Text -- ^ 'grArn'+ -> GetRun+getRun pArn_ =+ GetRun'+ { _grArn = pArn_+ }++-- | The run\'s ARN.+grArn :: Lens' GetRun Text+grArn = lens _grArn (\ s a -> s{_grArn = a});++instance AWSRequest GetRun where+ type Sv GetRun = DeviceFarm+ type Rs GetRun = GetRunResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ GetRunResponse' <$>+ (x .?> "run") <*> (pure (fromEnum s)))++instance ToHeaders GetRun where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.GetRun" :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON GetRun where+ toJSON GetRun'{..} = object ["arn" .= _grArn]++instance ToPath GetRun where+ toPath = const "/"++instance ToQuery GetRun where+ toQuery = const mempty++-- | Represents the result of a get run request.+--+-- /See:/ 'getRunResponse' smart constructor.+data GetRunResponse = GetRunResponse'+ { _grrsRun :: !(Maybe Run)+ , _grrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetRunResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'grrsRun'+--+-- * 'grrsStatus'+getRunResponse+ :: Int -- ^ 'grrsStatus'+ -> GetRunResponse+getRunResponse pStatus_ =+ GetRunResponse'+ { _grrsRun = Nothing+ , _grrsStatus = pStatus_+ }++-- | Undocumented member.+grrsRun :: Lens' GetRunResponse (Maybe Run)+grrsRun = lens _grrsRun (\ s a -> s{_grrsRun = a});++-- | The response status code.+grrsStatus :: Lens' GetRunResponse Int+grrsStatus = lens _grrsStatus (\ s a -> s{_grrsStatus = a});
+ gen/Network/AWS/DeviceFarm/GetSuite.hs view
@@ -0,0 +1,128 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.GetSuite+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets information about a suite.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_GetSuite.html AWS API Reference> for GetSuite.+module Network.AWS.DeviceFarm.GetSuite+ (+ -- * Creating a Request+ getSuite+ , GetSuite+ -- * Request Lenses+ , gsArn++ -- * Destructuring the Response+ , getSuiteResponse+ , GetSuiteResponse+ -- * Response Lenses+ , gsrsSuite+ , gsrsStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents a request to the get suite operation.+--+-- /See:/ 'getSuite' smart constructor.+newtype GetSuite = GetSuite'+ { _gsArn :: Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetSuite' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gsArn'+getSuite+ :: Text -- ^ 'gsArn'+ -> GetSuite+getSuite pArn_ =+ GetSuite'+ { _gsArn = pArn_+ }++-- | The suite\'s ARN.+gsArn :: Lens' GetSuite Text+gsArn = lens _gsArn (\ s a -> s{_gsArn = a});++instance AWSRequest GetSuite where+ type Sv GetSuite = DeviceFarm+ type Rs GetSuite = GetSuiteResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ GetSuiteResponse' <$>+ (x .?> "suite") <*> (pure (fromEnum s)))++instance ToHeaders GetSuite where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.GetSuite" :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON GetSuite where+ toJSON GetSuite'{..} = object ["arn" .= _gsArn]++instance ToPath GetSuite where+ toPath = const "/"++instance ToQuery GetSuite where+ toQuery = const mempty++-- | Represents the result of a get suite request.+--+-- /See:/ 'getSuiteResponse' smart constructor.+data GetSuiteResponse = GetSuiteResponse'+ { _gsrsSuite :: !(Maybe Suite)+ , _gsrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetSuiteResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gsrsSuite'+--+-- * 'gsrsStatus'+getSuiteResponse+ :: Int -- ^ 'gsrsStatus'+ -> GetSuiteResponse+getSuiteResponse pStatus_ =+ GetSuiteResponse'+ { _gsrsSuite = Nothing+ , _gsrsStatus = pStatus_+ }++-- | Undocumented member.+gsrsSuite :: Lens' GetSuiteResponse (Maybe Suite)+gsrsSuite = lens _gsrsSuite (\ s a -> s{_gsrsSuite = a});++-- | The response status code.+gsrsStatus :: Lens' GetSuiteResponse Int+gsrsStatus = lens _gsrsStatus (\ s a -> s{_gsrsStatus = a});
+ gen/Network/AWS/DeviceFarm/GetTest.hs view
@@ -0,0 +1,128 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.GetTest+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets information about a test.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_GetTest.html AWS API Reference> for GetTest.+module Network.AWS.DeviceFarm.GetTest+ (+ -- * Creating a Request+ getTest+ , GetTest+ -- * Request Lenses+ , gtArn++ -- * Destructuring the Response+ , getTestResponse+ , GetTestResponse+ -- * Response Lenses+ , gtrsTest+ , gtrsStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents a request to the get test operation.+--+-- /See:/ 'getTest' smart constructor.+newtype GetTest = GetTest'+ { _gtArn :: Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetTest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gtArn'+getTest+ :: Text -- ^ 'gtArn'+ -> GetTest+getTest pArn_ =+ GetTest'+ { _gtArn = pArn_+ }++-- | The test\'s ARN.+gtArn :: Lens' GetTest Text+gtArn = lens _gtArn (\ s a -> s{_gtArn = a});++instance AWSRequest GetTest where+ type Sv GetTest = DeviceFarm+ type Rs GetTest = GetTestResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ GetTestResponse' <$>+ (x .?> "test") <*> (pure (fromEnum s)))++instance ToHeaders GetTest where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.GetTest" :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON GetTest where+ toJSON GetTest'{..} = object ["arn" .= _gtArn]++instance ToPath GetTest where+ toPath = const "/"++instance ToQuery GetTest where+ toQuery = const mempty++-- | Represents the result of a get test request.+--+-- /See:/ 'getTestResponse' smart constructor.+data GetTestResponse = GetTestResponse'+ { _gtrsTest :: !(Maybe Test)+ , _gtrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetTestResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gtrsTest'+--+-- * 'gtrsStatus'+getTestResponse+ :: Int -- ^ 'gtrsStatus'+ -> GetTestResponse+getTestResponse pStatus_ =+ GetTestResponse'+ { _gtrsTest = Nothing+ , _gtrsStatus = pStatus_+ }++-- | Undocumented member.+gtrsTest :: Lens' GetTestResponse (Maybe Test)+gtrsTest = lens _gtrsTest (\ s a -> s{_gtrsTest = a});++-- | The response status code.+gtrsStatus :: Lens' GetTestResponse Int+gtrsStatus = lens _gtrsStatus (\ s a -> s{_gtrsStatus = a});
+ gen/Network/AWS/DeviceFarm/GetUpload.hs view
@@ -0,0 +1,128 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.GetUpload+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets information about an upload.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_GetUpload.html AWS API Reference> for GetUpload.+module Network.AWS.DeviceFarm.GetUpload+ (+ -- * Creating a Request+ getUpload+ , GetUpload+ -- * Request Lenses+ , guArn++ -- * Destructuring the Response+ , getUploadResponse+ , GetUploadResponse+ -- * Response Lenses+ , gursUpload+ , gursStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents a request to the get upload operation.+--+-- /See:/ 'getUpload' smart constructor.+newtype GetUpload = GetUpload'+ { _guArn :: Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetUpload' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'guArn'+getUpload+ :: Text -- ^ 'guArn'+ -> GetUpload+getUpload pArn_ =+ GetUpload'+ { _guArn = pArn_+ }++-- | The upload\'s ARN.+guArn :: Lens' GetUpload Text+guArn = lens _guArn (\ s a -> s{_guArn = a});++instance AWSRequest GetUpload where+ type Sv GetUpload = DeviceFarm+ type Rs GetUpload = GetUploadResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ GetUploadResponse' <$>+ (x .?> "upload") <*> (pure (fromEnum s)))++instance ToHeaders GetUpload where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.GetUpload" :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON GetUpload where+ toJSON GetUpload'{..} = object ["arn" .= _guArn]++instance ToPath GetUpload where+ toPath = const "/"++instance ToQuery GetUpload where+ toQuery = const mempty++-- | Represents the result of a get upload request.+--+-- /See:/ 'getUploadResponse' smart constructor.+data GetUploadResponse = GetUploadResponse'+ { _gursUpload :: !(Maybe Upload)+ , _gursStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetUploadResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gursUpload'+--+-- * 'gursStatus'+getUploadResponse+ :: Int -- ^ 'gursStatus'+ -> GetUploadResponse+getUploadResponse pStatus_ =+ GetUploadResponse'+ { _gursUpload = Nothing+ , _gursStatus = pStatus_+ }++-- | Undocumented member.+gursUpload :: Lens' GetUploadResponse (Maybe Upload)+gursUpload = lens _gursUpload (\ s a -> s{_gursUpload = a});++-- | The response status code.+gursStatus :: Lens' GetUploadResponse Int+gursStatus = lens _gursStatus (\ s a -> s{_gursStatus = a});
+ gen/Network/AWS/DeviceFarm/ListArtifacts.hs view
@@ -0,0 +1,171 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.ListArtifacts+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets information about artifacts.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_ListArtifacts.html AWS API Reference> for ListArtifacts.+module Network.AWS.DeviceFarm.ListArtifacts+ (+ -- * Creating a Request+ listArtifacts+ , ListArtifacts+ -- * Request Lenses+ , laNextToken+ , laArn+ , laType++ -- * Destructuring the Response+ , listArtifactsResponse+ , ListArtifactsResponse+ -- * Response Lenses+ , larsArtifacts+ , larsNextToken+ , larsStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents a request to the list artifacts operation.+--+-- /See:/ 'listArtifacts' smart constructor.+data ListArtifacts = ListArtifacts'+ { _laNextToken :: !(Maybe Text)+ , _laArn :: !Text+ , _laType :: !ArtifactCategory+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListArtifacts' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'laNextToken'+--+-- * 'laArn'+--+-- * 'laType'+listArtifacts+ :: Text -- ^ 'laArn'+ -> ArtifactCategory -- ^ 'laType'+ -> ListArtifacts+listArtifacts pArn_ pType_ =+ ListArtifacts'+ { _laNextToken = Nothing+ , _laArn = pArn_+ , _laType = pType_+ }++-- | An identifier that was returned from the previous call to this+-- operation, which can be used to return the next set of items in the+-- list.+laNextToken :: Lens' ListArtifacts (Maybe Text)+laNextToken = lens _laNextToken (\ s a -> s{_laNextToken = a});++-- | The artifacts\' ARNs.+laArn :: Lens' ListArtifacts Text+laArn = lens _laArn (\ s a -> s{_laArn = a});++-- | The artifacts\' type.+--+-- Allowed values include:+--+-- - FILE: The artifacts are files.+-- - LOG: The artifacts are logs.+-- - SCREENSHOT: The artifacts are screenshots.+laType :: Lens' ListArtifacts ArtifactCategory+laType = lens _laType (\ s a -> s{_laType = a});++instance AWSRequest ListArtifacts where+ type Sv ListArtifacts = DeviceFarm+ type Rs ListArtifacts = ListArtifactsResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ ListArtifactsResponse' <$>+ (x .?> "artifacts" .!@ mempty) <*>+ (x .?> "nextToken")+ <*> (pure (fromEnum s)))++instance ToHeaders ListArtifacts where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.ListArtifacts" :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON ListArtifacts where+ toJSON ListArtifacts'{..}+ = object+ ["nextToken" .= _laNextToken, "arn" .= _laArn,+ "type" .= _laType]++instance ToPath ListArtifacts where+ toPath = const "/"++instance ToQuery ListArtifacts where+ toQuery = const mempty++-- | Represents the result of a list artifacts operation.+--+-- /See:/ 'listArtifactsResponse' smart constructor.+data ListArtifactsResponse = ListArtifactsResponse'+ { _larsArtifacts :: !(Maybe [Artifact])+ , _larsNextToken :: !(Maybe Text)+ , _larsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListArtifactsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'larsArtifacts'+--+-- * 'larsNextToken'+--+-- * 'larsStatus'+listArtifactsResponse+ :: Int -- ^ 'larsStatus'+ -> ListArtifactsResponse+listArtifactsResponse pStatus_ =+ ListArtifactsResponse'+ { _larsArtifacts = Nothing+ , _larsNextToken = Nothing+ , _larsStatus = pStatus_+ }++-- | Information about the artifacts.+larsArtifacts :: Lens' ListArtifactsResponse [Artifact]+larsArtifacts = lens _larsArtifacts (\ s a -> s{_larsArtifacts = a}) . _Default . _Coerce;++-- | If the number of items that are returned is significantly large, this is+-- an identifier that is also returned, which can be used in a subsequent+-- call to this operation to return the next set of items in the list.+larsNextToken :: Lens' ListArtifactsResponse (Maybe Text)+larsNextToken = lens _larsNextToken (\ s a -> s{_larsNextToken = a});++-- | The response status code.+larsStatus :: Lens' ListArtifactsResponse Int+larsStatus = lens _larsStatus (\ s a -> s{_larsStatus = a});
+ gen/Network/AWS/DeviceFarm/ListDevicePools.hs view
@@ -0,0 +1,174 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.ListDevicePools+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets information about device pools.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_ListDevicePools.html AWS API Reference> for ListDevicePools.+module Network.AWS.DeviceFarm.ListDevicePools+ (+ -- * Creating a Request+ listDevicePools+ , ListDevicePools+ -- * Request Lenses+ , ldpNextToken+ , ldpType+ , ldpArn++ -- * Destructuring the Response+ , listDevicePoolsResponse+ , ListDevicePoolsResponse+ -- * Response Lenses+ , ldprsDevicePools+ , ldprsNextToken+ , ldprsStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents the result of a list device pools request.+--+-- /See:/ 'listDevicePools' smart constructor.+data ListDevicePools = ListDevicePools'+ { _ldpNextToken :: !(Maybe Text)+ , _ldpType :: !(Maybe DevicePoolType)+ , _ldpArn :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListDevicePools' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ldpNextToken'+--+-- * 'ldpType'+--+-- * 'ldpArn'+listDevicePools+ :: Text -- ^ 'ldpArn'+ -> ListDevicePools+listDevicePools pArn_ =+ ListDevicePools'+ { _ldpNextToken = Nothing+ , _ldpType = Nothing+ , _ldpArn = pArn_+ }++-- | An identifier that was returned from the previous call to this+-- operation, which can be used to return the next set of items in the+-- list.+ldpNextToken :: Lens' ListDevicePools (Maybe Text)+ldpNextToken = lens _ldpNextToken (\ s a -> s{_ldpNextToken = a});++-- | The device pools\' type.+--+-- Allowed values include:+--+-- - CURATED: A device pool that is created and managed by AWS Device+-- Farm.+--+-- - PRIVATE: A device pool that is created and managed by the device+-- pool developer.+--+ldpType :: Lens' ListDevicePools (Maybe DevicePoolType)+ldpType = lens _ldpType (\ s a -> s{_ldpType = a});++-- | The project ARN.+ldpArn :: Lens' ListDevicePools Text+ldpArn = lens _ldpArn (\ s a -> s{_ldpArn = a});++instance AWSRequest ListDevicePools where+ type Sv ListDevicePools = DeviceFarm+ type Rs ListDevicePools = ListDevicePoolsResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ ListDevicePoolsResponse' <$>+ (x .?> "devicePools" .!@ mempty) <*>+ (x .?> "nextToken")+ <*> (pure (fromEnum s)))++instance ToHeaders ListDevicePools where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.ListDevicePools" ::+ ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON ListDevicePools where+ toJSON ListDevicePools'{..}+ = object+ ["nextToken" .= _ldpNextToken, "type" .= _ldpType,+ "arn" .= _ldpArn]++instance ToPath ListDevicePools where+ toPath = const "/"++instance ToQuery ListDevicePools where+ toQuery = const mempty++-- | Represents the result of a list device pools request.+--+-- /See:/ 'listDevicePoolsResponse' smart constructor.+data ListDevicePoolsResponse = ListDevicePoolsResponse'+ { _ldprsDevicePools :: !(Maybe [DevicePool])+ , _ldprsNextToken :: !(Maybe Text)+ , _ldprsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListDevicePoolsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ldprsDevicePools'+--+-- * 'ldprsNextToken'+--+-- * 'ldprsStatus'+listDevicePoolsResponse+ :: Int -- ^ 'ldprsStatus'+ -> ListDevicePoolsResponse+listDevicePoolsResponse pStatus_ =+ ListDevicePoolsResponse'+ { _ldprsDevicePools = Nothing+ , _ldprsNextToken = Nothing+ , _ldprsStatus = pStatus_+ }++-- | Information about the device pools.+ldprsDevicePools :: Lens' ListDevicePoolsResponse [DevicePool]+ldprsDevicePools = lens _ldprsDevicePools (\ s a -> s{_ldprsDevicePools = a}) . _Default . _Coerce;++-- | If the number of items that are returned is significantly large, this is+-- an identifier that is also returned, which can be used in a subsequent+-- call to this operation to return the next set of items in the list.+ldprsNextToken :: Lens' ListDevicePoolsResponse (Maybe Text)+ldprsNextToken = lens _ldprsNextToken (\ s a -> s{_ldprsNextToken = a});++-- | The response status code.+ldprsStatus :: Lens' ListDevicePoolsResponse Int+ldprsStatus = lens _ldprsStatus (\ s a -> s{_ldprsStatus = a});
+ gen/Network/AWS/DeviceFarm/ListDevices.hs view
@@ -0,0 +1,152 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.ListDevices+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets information about unique device types.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_ListDevices.html AWS API Reference> for ListDevices.+module Network.AWS.DeviceFarm.ListDevices+ (+ -- * Creating a Request+ listDevices+ , ListDevices+ -- * Request Lenses+ , ldArn+ , ldNextToken++ -- * Destructuring the Response+ , listDevicesResponse+ , ListDevicesResponse+ -- * Response Lenses+ , ldrsNextToken+ , ldrsDevices+ , ldrsStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents the result of a list devices request.+--+-- /See:/ 'listDevices' smart constructor.+data ListDevices = ListDevices'+ { _ldArn :: !(Maybe Text)+ , _ldNextToken :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListDevices' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ldArn'+--+-- * 'ldNextToken'+listDevices+ :: ListDevices+listDevices =+ ListDevices'+ { _ldArn = Nothing+ , _ldNextToken = Nothing+ }++-- | The device types\' ARNs.+ldArn :: Lens' ListDevices (Maybe Text)+ldArn = lens _ldArn (\ s a -> s{_ldArn = a});++-- | An identifier that was returned from the previous call to this+-- operation, which can be used to return the next set of items in the+-- list.+ldNextToken :: Lens' ListDevices (Maybe Text)+ldNextToken = lens _ldNextToken (\ s a -> s{_ldNextToken = a});++instance AWSRequest ListDevices where+ type Sv ListDevices = DeviceFarm+ type Rs ListDevices = ListDevicesResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ ListDevicesResponse' <$>+ (x .?> "nextToken") <*> (x .?> "devices" .!@ mempty)+ <*> (pure (fromEnum s)))++instance ToHeaders ListDevices where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.ListDevices" :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON ListDevices where+ toJSON ListDevices'{..}+ = object+ ["arn" .= _ldArn, "nextToken" .= _ldNextToken]++instance ToPath ListDevices where+ toPath = const "/"++instance ToQuery ListDevices where+ toQuery = const mempty++-- | Represents the result of a list devices operation.+--+-- /See:/ 'listDevicesResponse' smart constructor.+data ListDevicesResponse = ListDevicesResponse'+ { _ldrsNextToken :: !(Maybe Text)+ , _ldrsDevices :: !(Maybe [Device])+ , _ldrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListDevicesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ldrsNextToken'+--+-- * 'ldrsDevices'+--+-- * 'ldrsStatus'+listDevicesResponse+ :: Int -- ^ 'ldrsStatus'+ -> ListDevicesResponse+listDevicesResponse pStatus_ =+ ListDevicesResponse'+ { _ldrsNextToken = Nothing+ , _ldrsDevices = Nothing+ , _ldrsStatus = pStatus_+ }++-- | If the number of items that are returned is significantly large, this is+-- an identifier that is also returned, which can be used in a subsequent+-- call to this operation to return the next set of items in the list.+ldrsNextToken :: Lens' ListDevicesResponse (Maybe Text)+ldrsNextToken = lens _ldrsNextToken (\ s a -> s{_ldrsNextToken = a});++-- | Information about the devices.+ldrsDevices :: Lens' ListDevicesResponse [Device]+ldrsDevices = lens _ldrsDevices (\ s a -> s{_ldrsDevices = a}) . _Default . _Coerce;++-- | The response status code.+ldrsStatus :: Lens' ListDevicesResponse Int+ldrsStatus = lens _ldrsStatus (\ s a -> s{_ldrsStatus = a});
+ gen/Network/AWS/DeviceFarm/ListJobs.hs view
@@ -0,0 +1,153 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.ListJobs+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets information about jobs.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_ListJobs.html AWS API Reference> for ListJobs.+module Network.AWS.DeviceFarm.ListJobs+ (+ -- * Creating a Request+ listJobs+ , ListJobs+ -- * Request Lenses+ , ljNextToken+ , ljArn++ -- * Destructuring the Response+ , listJobsResponse+ , ListJobsResponse+ -- * Response Lenses+ , ljrsJobs+ , ljrsNextToken+ , ljrsStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents a request to the list jobs operation.+--+-- /See:/ 'listJobs' smart constructor.+data ListJobs = ListJobs'+ { _ljNextToken :: !(Maybe Text)+ , _ljArn :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListJobs' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ljNextToken'+--+-- * 'ljArn'+listJobs+ :: Text -- ^ 'ljArn'+ -> ListJobs+listJobs pArn_ =+ ListJobs'+ { _ljNextToken = Nothing+ , _ljArn = pArn_+ }++-- | An identifier that was returned from the previous call to this+-- operation, which can be used to return the next set of items in the+-- list.+ljNextToken :: Lens' ListJobs (Maybe Text)+ljNextToken = lens _ljNextToken (\ s a -> s{_ljNextToken = a});++-- | The jobs\' ARNs.+ljArn :: Lens' ListJobs Text+ljArn = lens _ljArn (\ s a -> s{_ljArn = a});++instance AWSRequest ListJobs where+ type Sv ListJobs = DeviceFarm+ type Rs ListJobs = ListJobsResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ ListJobsResponse' <$>+ (x .?> "jobs" .!@ mempty) <*> (x .?> "nextToken") <*>+ (pure (fromEnum s)))++instance ToHeaders ListJobs where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.ListJobs" :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON ListJobs where+ toJSON ListJobs'{..}+ = object+ ["nextToken" .= _ljNextToken, "arn" .= _ljArn]++instance ToPath ListJobs where+ toPath = const "/"++instance ToQuery ListJobs where+ toQuery = const mempty++-- | Represents the result of a list jobs request.+--+-- /See:/ 'listJobsResponse' smart constructor.+data ListJobsResponse = ListJobsResponse'+ { _ljrsJobs :: !(Maybe [Job])+ , _ljrsNextToken :: !(Maybe Text)+ , _ljrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListJobsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ljrsJobs'+--+-- * 'ljrsNextToken'+--+-- * 'ljrsStatus'+listJobsResponse+ :: Int -- ^ 'ljrsStatus'+ -> ListJobsResponse+listJobsResponse pStatus_ =+ ListJobsResponse'+ { _ljrsJobs = Nothing+ , _ljrsNextToken = Nothing+ , _ljrsStatus = pStatus_+ }++-- | Information about the jobs.+ljrsJobs :: Lens' ListJobsResponse [Job]+ljrsJobs = lens _ljrsJobs (\ s a -> s{_ljrsJobs = a}) . _Default . _Coerce;++-- | If the number of items that are returned is significantly large, this is+-- an identifier that is also returned, which can be used in a subsequent+-- call to this operation to return the next set of items in the list.+ljrsNextToken :: Lens' ListJobsResponse (Maybe Text)+ljrsNextToken = lens _ljrsNextToken (\ s a -> s{_ljrsNextToken = a});++-- | The response status code.+ljrsStatus :: Lens' ListJobsResponse Int+ljrsStatus = lens _ljrsStatus (\ s a -> s{_ljrsStatus = a});
+ gen/Network/AWS/DeviceFarm/ListProjects.hs view
@@ -0,0 +1,152 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.ListProjects+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets information about projects.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_ListProjects.html AWS API Reference> for ListProjects.+module Network.AWS.DeviceFarm.ListProjects+ (+ -- * Creating a Request+ listProjects+ , ListProjects+ -- * Request Lenses+ , lpArn+ , lpNextToken++ -- * Destructuring the Response+ , listProjectsResponse+ , ListProjectsResponse+ -- * Response Lenses+ , lprsNextToken+ , lprsProjects+ , lprsStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents a request to the list projects operation.+--+-- /See:/ 'listProjects' smart constructor.+data ListProjects = ListProjects'+ { _lpArn :: !(Maybe Text)+ , _lpNextToken :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListProjects' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lpArn'+--+-- * 'lpNextToken'+listProjects+ :: ListProjects+listProjects =+ ListProjects'+ { _lpArn = Nothing+ , _lpNextToken = Nothing+ }++-- | The projects\' ARNs.+lpArn :: Lens' ListProjects (Maybe Text)+lpArn = lens _lpArn (\ s a -> s{_lpArn = a});++-- | An identifier that was returned from the previous call to this+-- operation, which can be used to return the next set of items in the+-- list.+lpNextToken :: Lens' ListProjects (Maybe Text)+lpNextToken = lens _lpNextToken (\ s a -> s{_lpNextToken = a});++instance AWSRequest ListProjects where+ type Sv ListProjects = DeviceFarm+ type Rs ListProjects = ListProjectsResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ ListProjectsResponse' <$>+ (x .?> "nextToken") <*> (x .?> "projects" .!@ mempty)+ <*> (pure (fromEnum s)))++instance ToHeaders ListProjects where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.ListProjects" :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON ListProjects where+ toJSON ListProjects'{..}+ = object+ ["arn" .= _lpArn, "nextToken" .= _lpNextToken]++instance ToPath ListProjects where+ toPath = const "/"++instance ToQuery ListProjects where+ toQuery = const mempty++-- | Represents the result of a list projects request.+--+-- /See:/ 'listProjectsResponse' smart constructor.+data ListProjectsResponse = ListProjectsResponse'+ { _lprsNextToken :: !(Maybe Text)+ , _lprsProjects :: !(Maybe [Project])+ , _lprsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListProjectsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lprsNextToken'+--+-- * 'lprsProjects'+--+-- * 'lprsStatus'+listProjectsResponse+ :: Int -- ^ 'lprsStatus'+ -> ListProjectsResponse+listProjectsResponse pStatus_ =+ ListProjectsResponse'+ { _lprsNextToken = Nothing+ , _lprsProjects = Nothing+ , _lprsStatus = pStatus_+ }++-- | If the number of items that are returned is significantly large, this is+-- an identifier that is also returned, which can be used in a subsequent+-- call to this operation to return the next set of items in the list.+lprsNextToken :: Lens' ListProjectsResponse (Maybe Text)+lprsNextToken = lens _lprsNextToken (\ s a -> s{_lprsNextToken = a});++-- | Information about the projects.+lprsProjects :: Lens' ListProjectsResponse [Project]+lprsProjects = lens _lprsProjects (\ s a -> s{_lprsProjects = a}) . _Default . _Coerce;++-- | The response status code.+lprsStatus :: Lens' ListProjectsResponse Int+lprsStatus = lens _lprsStatus (\ s a -> s{_lprsStatus = a});
+ gen/Network/AWS/DeviceFarm/ListRuns.hs view
@@ -0,0 +1,153 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.ListRuns+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets information about runs.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_ListRuns.html AWS API Reference> for ListRuns.+module Network.AWS.DeviceFarm.ListRuns+ (+ -- * Creating a Request+ listRuns+ , ListRuns+ -- * Request Lenses+ , lrNextToken+ , lrArn++ -- * Destructuring the Response+ , listRunsResponse+ , ListRunsResponse+ -- * Response Lenses+ , lrrsRuns+ , lrrsNextToken+ , lrrsStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents a request to the list runs operation.+--+-- /See:/ 'listRuns' smart constructor.+data ListRuns = ListRuns'+ { _lrNextToken :: !(Maybe Text)+ , _lrArn :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListRuns' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lrNextToken'+--+-- * 'lrArn'+listRuns+ :: Text -- ^ 'lrArn'+ -> ListRuns+listRuns pArn_ =+ ListRuns'+ { _lrNextToken = Nothing+ , _lrArn = pArn_+ }++-- | An identifier that was returned from the previous call to this+-- operation, which can be used to return the next set of items in the+-- list.+lrNextToken :: Lens' ListRuns (Maybe Text)+lrNextToken = lens _lrNextToken (\ s a -> s{_lrNextToken = a});++-- | The runs\' ARNs.+lrArn :: Lens' ListRuns Text+lrArn = lens _lrArn (\ s a -> s{_lrArn = a});++instance AWSRequest ListRuns where+ type Sv ListRuns = DeviceFarm+ type Rs ListRuns = ListRunsResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ ListRunsResponse' <$>+ (x .?> "runs" .!@ mempty) <*> (x .?> "nextToken") <*>+ (pure (fromEnum s)))++instance ToHeaders ListRuns where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.ListRuns" :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON ListRuns where+ toJSON ListRuns'{..}+ = object+ ["nextToken" .= _lrNextToken, "arn" .= _lrArn]++instance ToPath ListRuns where+ toPath = const "/"++instance ToQuery ListRuns where+ toQuery = const mempty++-- | Represents the result of a list runs request.+--+-- /See:/ 'listRunsResponse' smart constructor.+data ListRunsResponse = ListRunsResponse'+ { _lrrsRuns :: !(Maybe [Run])+ , _lrrsNextToken :: !(Maybe Text)+ , _lrrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListRunsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lrrsRuns'+--+-- * 'lrrsNextToken'+--+-- * 'lrrsStatus'+listRunsResponse+ :: Int -- ^ 'lrrsStatus'+ -> ListRunsResponse+listRunsResponse pStatus_ =+ ListRunsResponse'+ { _lrrsRuns = Nothing+ , _lrrsNextToken = Nothing+ , _lrrsStatus = pStatus_+ }++-- | Information about the runs.+lrrsRuns :: Lens' ListRunsResponse [Run]+lrrsRuns = lens _lrrsRuns (\ s a -> s{_lrrsRuns = a}) . _Default . _Coerce;++-- | If the number of items that are returned is significantly large, this is+-- an identifier that is also returned, which can be used in a subsequent+-- call to this operation to return the next set of items in the list.+lrrsNextToken :: Lens' ListRunsResponse (Maybe Text)+lrrsNextToken = lens _lrrsNextToken (\ s a -> s{_lrrsNextToken = a});++-- | The response status code.+lrrsStatus :: Lens' ListRunsResponse Int+lrrsStatus = lens _lrrsStatus (\ s a -> s{_lrrsStatus = a});
+ gen/Network/AWS/DeviceFarm/ListSamples.hs view
@@ -0,0 +1,153 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.ListSamples+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets information about samples.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_ListSamples.html AWS API Reference> for ListSamples.+module Network.AWS.DeviceFarm.ListSamples+ (+ -- * Creating a Request+ listSamples+ , ListSamples+ -- * Request Lenses+ , lsNextToken+ , lsArn++ -- * Destructuring the Response+ , listSamplesResponse+ , ListSamplesResponse+ -- * Response Lenses+ , lsrsNextToken+ , lsrsSamples+ , lsrsStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents a request to the list samples operation.+--+-- /See:/ 'listSamples' smart constructor.+data ListSamples = ListSamples'+ { _lsNextToken :: !(Maybe Text)+ , _lsArn :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListSamples' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lsNextToken'+--+-- * 'lsArn'+listSamples+ :: Text -- ^ 'lsArn'+ -> ListSamples+listSamples pArn_ =+ ListSamples'+ { _lsNextToken = Nothing+ , _lsArn = pArn_+ }++-- | An identifier that was returned from the previous call to this+-- operation, which can be used to return the next set of items in the+-- list.+lsNextToken :: Lens' ListSamples (Maybe Text)+lsNextToken = lens _lsNextToken (\ s a -> s{_lsNextToken = a});++-- | The samples\' ARNs.+lsArn :: Lens' ListSamples Text+lsArn = lens _lsArn (\ s a -> s{_lsArn = a});++instance AWSRequest ListSamples where+ type Sv ListSamples = DeviceFarm+ type Rs ListSamples = ListSamplesResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ ListSamplesResponse' <$>+ (x .?> "nextToken") <*> (x .?> "samples" .!@ mempty)+ <*> (pure (fromEnum s)))++instance ToHeaders ListSamples where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.ListSamples" :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON ListSamples where+ toJSON ListSamples'{..}+ = object+ ["nextToken" .= _lsNextToken, "arn" .= _lsArn]++instance ToPath ListSamples where+ toPath = const "/"++instance ToQuery ListSamples where+ toQuery = const mempty++-- | Represents the result of a list samples request.+--+-- /See:/ 'listSamplesResponse' smart constructor.+data ListSamplesResponse = ListSamplesResponse'+ { _lsrsNextToken :: !(Maybe Text)+ , _lsrsSamples :: !(Maybe [Sample])+ , _lsrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListSamplesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lsrsNextToken'+--+-- * 'lsrsSamples'+--+-- * 'lsrsStatus'+listSamplesResponse+ :: Int -- ^ 'lsrsStatus'+ -> ListSamplesResponse+listSamplesResponse pStatus_ =+ ListSamplesResponse'+ { _lsrsNextToken = Nothing+ , _lsrsSamples = Nothing+ , _lsrsStatus = pStatus_+ }++-- | If the number of items that are returned is significantly large, this is+-- an identifier that is also returned, which can be used in a subsequent+-- call to this operation to return the next set of items in the list.+lsrsNextToken :: Lens' ListSamplesResponse (Maybe Text)+lsrsNextToken = lens _lsrsNextToken (\ s a -> s{_lsrsNextToken = a});++-- | Information about the samples.+lsrsSamples :: Lens' ListSamplesResponse [Sample]+lsrsSamples = lens _lsrsSamples (\ s a -> s{_lsrsSamples = a}) . _Default . _Coerce;++-- | The response status code.+lsrsStatus :: Lens' ListSamplesResponse Int+lsrsStatus = lens _lsrsStatus (\ s a -> s{_lsrsStatus = a});
+ gen/Network/AWS/DeviceFarm/ListSuites.hs view
@@ -0,0 +1,152 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.ListSuites+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets information about suites.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_ListSuites.html AWS API Reference> for ListSuites.+module Network.AWS.DeviceFarm.ListSuites+ (+ -- * Creating a Request+ listSuites+ , ListSuites+ -- * Request Lenses+ , lNextToken+ , lArn++ -- * Destructuring the Response+ , listSuitesResponse+ , ListSuitesResponse+ -- * Response Lenses+ , lrsNextToken+ , lrsSuites+ , lrsStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents a request to the list suites operation.+--+-- /See:/ 'listSuites' smart constructor.+data ListSuites = ListSuites'+ { _lNextToken :: !(Maybe Text)+ , _lArn :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListSuites' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lNextToken'+--+-- * 'lArn'+listSuites+ :: Text -- ^ 'lArn'+ -> ListSuites+listSuites pArn_ =+ ListSuites'+ { _lNextToken = Nothing+ , _lArn = pArn_+ }++-- | An identifier that was returned from the previous call to this+-- operation, which can be used to return the next set of items in the+-- list.+lNextToken :: Lens' ListSuites (Maybe Text)+lNextToken = lens _lNextToken (\ s a -> s{_lNextToken = a});++-- | The suites\' ARNs.+lArn :: Lens' ListSuites Text+lArn = lens _lArn (\ s a -> s{_lArn = a});++instance AWSRequest ListSuites where+ type Sv ListSuites = DeviceFarm+ type Rs ListSuites = ListSuitesResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ ListSuitesResponse' <$>+ (x .?> "nextToken") <*> (x .?> "suites" .!@ mempty)+ <*> (pure (fromEnum s)))++instance ToHeaders ListSuites where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.ListSuites" :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON ListSuites where+ toJSON ListSuites'{..}+ = object ["nextToken" .= _lNextToken, "arn" .= _lArn]++instance ToPath ListSuites where+ toPath = const "/"++instance ToQuery ListSuites where+ toQuery = const mempty++-- | Represents the result of a list suites request.+--+-- /See:/ 'listSuitesResponse' smart constructor.+data ListSuitesResponse = ListSuitesResponse'+ { _lrsNextToken :: !(Maybe Text)+ , _lrsSuites :: !(Maybe [Suite])+ , _lrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListSuitesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lrsNextToken'+--+-- * 'lrsSuites'+--+-- * 'lrsStatus'+listSuitesResponse+ :: Int -- ^ 'lrsStatus'+ -> ListSuitesResponse+listSuitesResponse pStatus_ =+ ListSuitesResponse'+ { _lrsNextToken = Nothing+ , _lrsSuites = Nothing+ , _lrsStatus = pStatus_+ }++-- | If the number of items that are returned is significantly large, this is+-- an identifier that is also returned, which can be used in a subsequent+-- call to this operation to return the next set of items in the list.+lrsNextToken :: Lens' ListSuitesResponse (Maybe Text)+lrsNextToken = lens _lrsNextToken (\ s a -> s{_lrsNextToken = a});++-- | Information about the suites.+lrsSuites :: Lens' ListSuitesResponse [Suite]+lrsSuites = lens _lrsSuites (\ s a -> s{_lrsSuites = a}) . _Default . _Coerce;++-- | The response status code.+lrsStatus :: Lens' ListSuitesResponse Int+lrsStatus = lens _lrsStatus (\ s a -> s{_lrsStatus = a});
+ gen/Network/AWS/DeviceFarm/ListTests.hs view
@@ -0,0 +1,153 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.ListTests+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets information about tests.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_ListTests.html AWS API Reference> for ListTests.+module Network.AWS.DeviceFarm.ListTests+ (+ -- * Creating a Request+ listTests+ , ListTests+ -- * Request Lenses+ , ltNextToken+ , ltArn++ -- * Destructuring the Response+ , listTestsResponse+ , ListTestsResponse+ -- * Response Lenses+ , ltrsTests+ , ltrsNextToken+ , ltrsStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents a request to the list tests operation.+--+-- /See:/ 'listTests' smart constructor.+data ListTests = ListTests'+ { _ltNextToken :: !(Maybe Text)+ , _ltArn :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListTests' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ltNextToken'+--+-- * 'ltArn'+listTests+ :: Text -- ^ 'ltArn'+ -> ListTests+listTests pArn_ =+ ListTests'+ { _ltNextToken = Nothing+ , _ltArn = pArn_+ }++-- | An identifier that was returned from the previous call to this+-- operation, which can be used to return the next set of items in the+-- list.+ltNextToken :: Lens' ListTests (Maybe Text)+ltNextToken = lens _ltNextToken (\ s a -> s{_ltNextToken = a});++-- | The tests\' ARNs.+ltArn :: Lens' ListTests Text+ltArn = lens _ltArn (\ s a -> s{_ltArn = a});++instance AWSRequest ListTests where+ type Sv ListTests = DeviceFarm+ type Rs ListTests = ListTestsResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ ListTestsResponse' <$>+ (x .?> "tests" .!@ mempty) <*> (x .?> "nextToken")+ <*> (pure (fromEnum s)))++instance ToHeaders ListTests where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.ListTests" :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON ListTests where+ toJSON ListTests'{..}+ = object+ ["nextToken" .= _ltNextToken, "arn" .= _ltArn]++instance ToPath ListTests where+ toPath = const "/"++instance ToQuery ListTests where+ toQuery = const mempty++-- | Represents the result of a list tests request.+--+-- /See:/ 'listTestsResponse' smart constructor.+data ListTestsResponse = ListTestsResponse'+ { _ltrsTests :: !(Maybe [Test])+ , _ltrsNextToken :: !(Maybe Text)+ , _ltrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListTestsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ltrsTests'+--+-- * 'ltrsNextToken'+--+-- * 'ltrsStatus'+listTestsResponse+ :: Int -- ^ 'ltrsStatus'+ -> ListTestsResponse+listTestsResponse pStatus_ =+ ListTestsResponse'+ { _ltrsTests = Nothing+ , _ltrsNextToken = Nothing+ , _ltrsStatus = pStatus_+ }++-- | Information about the tests.+ltrsTests :: Lens' ListTestsResponse [Test]+ltrsTests = lens _ltrsTests (\ s a -> s{_ltrsTests = a}) . _Default . _Coerce;++-- | If the number of items that are returned is significantly large, this is+-- an identifier that is also returned, which can be used in a subsequent+-- call to this operation to return the next set of items in the list.+ltrsNextToken :: Lens' ListTestsResponse (Maybe Text)+ltrsNextToken = lens _ltrsNextToken (\ s a -> s{_ltrsNextToken = a});++-- | The response status code.+ltrsStatus :: Lens' ListTestsResponse Int+ltrsStatus = lens _ltrsStatus (\ s a -> s{_ltrsStatus = a});
+ gen/Network/AWS/DeviceFarm/ListUniqueProblems.hs view
@@ -0,0 +1,173 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.ListUniqueProblems+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets information about unique problems.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_ListUniqueProblems.html AWS API Reference> for ListUniqueProblems.+module Network.AWS.DeviceFarm.ListUniqueProblems+ (+ -- * Creating a Request+ listUniqueProblems+ , ListUniqueProblems+ -- * Request Lenses+ , lupNextToken+ , lupArn++ -- * Destructuring the Response+ , listUniqueProblemsResponse+ , ListUniqueProblemsResponse+ -- * Response Lenses+ , luprsNextToken+ , luprsUniqueProblems+ , luprsStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents a request to the list unique problems operation.+--+-- /See:/ 'listUniqueProblems' smart constructor.+data ListUniqueProblems = ListUniqueProblems'+ { _lupNextToken :: !(Maybe Text)+ , _lupArn :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListUniqueProblems' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lupNextToken'+--+-- * 'lupArn'+listUniqueProblems+ :: Text -- ^ 'lupArn'+ -> ListUniqueProblems+listUniqueProblems pArn_ =+ ListUniqueProblems'+ { _lupNextToken = Nothing+ , _lupArn = pArn_+ }++-- | An identifier that was returned from the previous call to this+-- operation, which can be used to return the next set of items in the+-- list.+lupNextToken :: Lens' ListUniqueProblems (Maybe Text)+lupNextToken = lens _lupNextToken (\ s a -> s{_lupNextToken = a});++-- | The unique problems\' ARNs.+lupArn :: Lens' ListUniqueProblems Text+lupArn = lens _lupArn (\ s a -> s{_lupArn = a});++instance AWSRequest ListUniqueProblems where+ type Sv ListUniqueProblems = DeviceFarm+ type Rs ListUniqueProblems =+ ListUniqueProblemsResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ ListUniqueProblemsResponse' <$>+ (x .?> "nextToken") <*>+ (x .?> "uniqueProblems" .!@ mempty)+ <*> (pure (fromEnum s)))++instance ToHeaders ListUniqueProblems where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.ListUniqueProblems" ::+ ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON ListUniqueProblems where+ toJSON ListUniqueProblems'{..}+ = object+ ["nextToken" .= _lupNextToken, "arn" .= _lupArn]++instance ToPath ListUniqueProblems where+ toPath = const "/"++instance ToQuery ListUniqueProblems where+ toQuery = const mempty++-- | Represents the result of a list unique problems request.+--+-- /See:/ 'listUniqueProblemsResponse' smart constructor.+data ListUniqueProblemsResponse = ListUniqueProblemsResponse'+ { _luprsNextToken :: !(Maybe Text)+ , _luprsUniqueProblems :: !(Maybe (Map ExecutionResult [UniqueProblem]))+ , _luprsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListUniqueProblemsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'luprsNextToken'+--+-- * 'luprsUniqueProblems'+--+-- * 'luprsStatus'+listUniqueProblemsResponse+ :: Int -- ^ 'luprsStatus'+ -> ListUniqueProblemsResponse+listUniqueProblemsResponse pStatus_ =+ ListUniqueProblemsResponse'+ { _luprsNextToken = Nothing+ , _luprsUniqueProblems = Nothing+ , _luprsStatus = pStatus_+ }++-- | If the number of items that are returned is significantly large, this is+-- an identifier that is also returned, which can be used in a subsequent+-- call to this operation to return the next set of items in the list.+luprsNextToken :: Lens' ListUniqueProblemsResponse (Maybe Text)+luprsNextToken = lens _luprsNextToken (\ s a -> s{_luprsNextToken = a});++-- | Information about the unique problems.+--+-- Allowed values include:+--+-- - ERRORED: An error condition.+--+-- - FAILED: A failed condition.+--+-- - SKIPPED: A skipped condition.+--+-- - STOPPED: A stopped condition.+--+-- - PASSED: A passing condition.+--+-- - PENDING: A pending condition.+--+-- - WARNED: A warning condition.+--+luprsUniqueProblems :: Lens' ListUniqueProblemsResponse (HashMap ExecutionResult [UniqueProblem])+luprsUniqueProblems = lens _luprsUniqueProblems (\ s a -> s{_luprsUniqueProblems = a}) . _Default . _Map;++-- | The response status code.+luprsStatus :: Lens' ListUniqueProblemsResponse Int+luprsStatus = lens _luprsStatus (\ s a -> s{_luprsStatus = a});
+ gen/Network/AWS/DeviceFarm/ListUploads.hs view
@@ -0,0 +1,153 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.ListUploads+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets information about uploads.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_ListUploads.html AWS API Reference> for ListUploads.+module Network.AWS.DeviceFarm.ListUploads+ (+ -- * Creating a Request+ listUploads+ , ListUploads+ -- * Request Lenses+ , luNextToken+ , luArn++ -- * Destructuring the Response+ , listUploadsResponse+ , ListUploadsResponse+ -- * Response Lenses+ , lursNextToken+ , lursUploads+ , lursStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents a request to the list uploads operation.+--+-- /See:/ 'listUploads' smart constructor.+data ListUploads = ListUploads'+ { _luNextToken :: !(Maybe Text)+ , _luArn :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListUploads' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'luNextToken'+--+-- * 'luArn'+listUploads+ :: Text -- ^ 'luArn'+ -> ListUploads+listUploads pArn_ =+ ListUploads'+ { _luNextToken = Nothing+ , _luArn = pArn_+ }++-- | An identifier that was returned from the previous call to this+-- operation, which can be used to return the next set of items in the+-- list.+luNextToken :: Lens' ListUploads (Maybe Text)+luNextToken = lens _luNextToken (\ s a -> s{_luNextToken = a});++-- | The uploads\' ARNs.+luArn :: Lens' ListUploads Text+luArn = lens _luArn (\ s a -> s{_luArn = a});++instance AWSRequest ListUploads where+ type Sv ListUploads = DeviceFarm+ type Rs ListUploads = ListUploadsResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ ListUploadsResponse' <$>+ (x .?> "nextToken") <*> (x .?> "uploads" .!@ mempty)+ <*> (pure (fromEnum s)))++instance ToHeaders ListUploads where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.ListUploads" :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON ListUploads where+ toJSON ListUploads'{..}+ = object+ ["nextToken" .= _luNextToken, "arn" .= _luArn]++instance ToPath ListUploads where+ toPath = const "/"++instance ToQuery ListUploads where+ toQuery = const mempty++-- | Represents the result of a list uploads request.+--+-- /See:/ 'listUploadsResponse' smart constructor.+data ListUploadsResponse = ListUploadsResponse'+ { _lursNextToken :: !(Maybe Text)+ , _lursUploads :: !(Maybe [Upload])+ , _lursStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListUploadsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lursNextToken'+--+-- * 'lursUploads'+--+-- * 'lursStatus'+listUploadsResponse+ :: Int -- ^ 'lursStatus'+ -> ListUploadsResponse+listUploadsResponse pStatus_ =+ ListUploadsResponse'+ { _lursNextToken = Nothing+ , _lursUploads = Nothing+ , _lursStatus = pStatus_+ }++-- | If the number of items that are returned is significantly large, this is+-- an identifier that is also returned, which can be used in a subsequent+-- call to this operation to return the next set of items in the list.+lursNextToken :: Lens' ListUploadsResponse (Maybe Text)+lursNextToken = lens _lursNextToken (\ s a -> s{_lursNextToken = a});++-- | Information about the uploads.+lursUploads :: Lens' ListUploadsResponse [Upload]+lursUploads = lens _lursUploads (\ s a -> s{_lursUploads = a}) . _Default . _Coerce;++-- | The response status code.+lursStatus :: Lens' ListUploadsResponse Int+lursStatus = lens _lursStatus (\ s a -> s{_lursStatus = a});
+ gen/Network/AWS/DeviceFarm/ScheduleRun.hs view
@@ -0,0 +1,182 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.ScheduleRun+-- Copyright : (c) 2013-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)+--+-- Schedules a run.+--+-- /See:/ <http://docs.aws.amazon.com/devicefarm/latest/APIReference/API_ScheduleRun.html AWS API Reference> for ScheduleRun.+module Network.AWS.DeviceFarm.ScheduleRun+ (+ -- * Creating a Request+ scheduleRun+ , ScheduleRun+ -- * Request Lenses+ , srName+ , srConfiguration+ , srProjectARN+ , srAppARN+ , srDevicePoolARN+ , srTest++ -- * Destructuring the Response+ , scheduleRunResponse+ , ScheduleRunResponse+ -- * Response Lenses+ , srrsRun+ , srrsStatus+ ) where++import Network.AWS.DeviceFarm.Types+import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | Represents a request to the schedule run operation.+--+-- /See:/ 'scheduleRun' smart constructor.+data ScheduleRun = ScheduleRun'+ { _srName :: !(Maybe Text)+ , _srConfiguration :: !(Maybe ScheduleRunConfiguration)+ , _srProjectARN :: !Text+ , _srAppARN :: !Text+ , _srDevicePoolARN :: !Text+ , _srTest :: !ScheduleRunTest+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ScheduleRun' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'srName'+--+-- * 'srConfiguration'+--+-- * 'srProjectARN'+--+-- * 'srAppARN'+--+-- * 'srDevicePoolARN'+--+-- * 'srTest'+scheduleRun+ :: Text -- ^ 'srProjectARN'+ -> Text -- ^ 'srAppARN'+ -> Text -- ^ 'srDevicePoolARN'+ -> ScheduleRunTest -- ^ 'srTest'+ -> ScheduleRun+scheduleRun pProjectARN_ pAppARN_ pDevicePoolARN_ pTest_ =+ ScheduleRun'+ { _srName = Nothing+ , _srConfiguration = Nothing+ , _srProjectARN = pProjectARN_+ , _srAppARN = pAppARN_+ , _srDevicePoolARN = pDevicePoolARN_+ , _srTest = pTest_+ }++-- | The name for the run to be scheduled.+srName :: Lens' ScheduleRun (Maybe Text)+srName = lens _srName (\ s a -> s{_srName = a});++-- | Information about the settings for the run to be scheduled.+srConfiguration :: Lens' ScheduleRun (Maybe ScheduleRunConfiguration)+srConfiguration = lens _srConfiguration (\ s a -> s{_srConfiguration = a});++-- | The ARN of the project for the run to be scheduled.+srProjectARN :: Lens' ScheduleRun Text+srProjectARN = lens _srProjectARN (\ s a -> s{_srProjectARN = a});++-- | The ARN of the app to schedule a run.+srAppARN :: Lens' ScheduleRun Text+srAppARN = lens _srAppARN (\ s a -> s{_srAppARN = a});++-- | The ARN of the device pool for the run to be scheduled.+srDevicePoolARN :: Lens' ScheduleRun Text+srDevicePoolARN = lens _srDevicePoolARN (\ s a -> s{_srDevicePoolARN = a});++-- | Information about the test for the run to be scheduled.+srTest :: Lens' ScheduleRun ScheduleRunTest+srTest = lens _srTest (\ s a -> s{_srTest = a});++instance AWSRequest ScheduleRun where+ type Sv ScheduleRun = DeviceFarm+ type Rs ScheduleRun = ScheduleRunResponse+ request = postJSON+ response+ = receiveJSON+ (\ s h x ->+ ScheduleRunResponse' <$>+ (x .?> "run") <*> (pure (fromEnum s)))++instance ToHeaders ScheduleRun where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("DeviceFarm_20150623.ScheduleRun" :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON ScheduleRun where+ toJSON ScheduleRun'{..}+ = object+ ["name" .= _srName,+ "configuration" .= _srConfiguration,+ "projectArn" .= _srProjectARN, "appArn" .= _srAppARN,+ "devicePoolArn" .= _srDevicePoolARN,+ "test" .= _srTest]++instance ToPath ScheduleRun where+ toPath = const "/"++instance ToQuery ScheduleRun where+ toQuery = const mempty++-- | Represents the result of a schedule run request.+--+-- /See:/ 'scheduleRunResponse' smart constructor.+data ScheduleRunResponse = ScheduleRunResponse'+ { _srrsRun :: !(Maybe Run)+ , _srrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ScheduleRunResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'srrsRun'+--+-- * 'srrsStatus'+scheduleRunResponse+ :: Int -- ^ 'srrsStatus'+ -> ScheduleRunResponse+scheduleRunResponse pStatus_ =+ ScheduleRunResponse'+ { _srrsRun = Nothing+ , _srrsStatus = pStatus_+ }++-- | Information about the scheduled run.+srrsRun :: Lens' ScheduleRunResponse (Maybe Run)+srrsRun = lens _srrsRun (\ s a -> s{_srrsRun = a});++-- | The response status code.+srrsStatus :: Lens' ScheduleRunResponse Int+srrsStatus = lens _srrsStatus (\ s a -> s{_srrsStatus = a});
+ gen/Network/AWS/DeviceFarm/Types.hs view
@@ -0,0 +1,356 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TypeFamilies #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.Types+-- Copyright : (c) 2013-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.AWS.DeviceFarm.Types+ (+ -- * Service+ DeviceFarm++ -- * Errors+ , _IdempotencyException+ , _NotFoundException+ , _ArgumentException+ , _ServiceAccountException+ , _LimitExceededException++ -- * ArtifactCategory+ , ArtifactCategory (..)++ -- * ArtifactType+ , ArtifactType (..)++ -- * BillingMethod+ , BillingMethod (..)++ -- * DeviceAttribute+ , DeviceAttribute (..)++ -- * DeviceFormFactor+ , DeviceFormFactor (..)++ -- * DevicePlatform+ , DevicePlatform (..)++ -- * DevicePoolType+ , DevicePoolType (..)++ -- * ExecutionResult+ , ExecutionResult (..)++ -- * ExecutionStatus+ , ExecutionStatus (..)++ -- * RuleOperator+ , RuleOperator (..)++ -- * SampleType+ , SampleType (..)++ -- * TestType+ , TestType (..)++ -- * UploadStatus+ , UploadStatus (..)++ -- * UploadType+ , UploadType (..)++ -- * AccountSettings+ , AccountSettings+ , accountSettings+ , asAwsAccountNumber+ , asUnmeteredDevices++ -- * Artifact+ , Artifact+ , artifact+ , aArn+ , aUrl+ , aExtension+ , aName+ , aType++ -- * CPU+ , CPU+ , cpu+ , cpuFrequency+ , cpuClock+ , cpuArchitecture++ -- * Counters+ , Counters+ , counters+ , cPassed+ , cSkipped+ , cWarned+ , cStopped+ , cTotal+ , cFailed+ , cErrored++ -- * Device+ , Device+ , device+ , dCarrier+ , dImage+ , dManufacturer+ , dPlatform+ , dArn+ , dFormFactor+ , dResolution+ , dMemory+ , dRadio+ , dOs+ , dName+ , dModel+ , dCpu+ , dHeapSize++ -- * DevicePool+ , DevicePool+ , devicePool+ , dpArn+ , dpRules+ , dpName+ , dpType+ , dpDescription++ -- * DevicePoolCompatibilityResult+ , DevicePoolCompatibilityResult+ , devicePoolCompatibilityResult+ , dpcrDevice+ , dpcrCompatible+ , dpcrIncompatibilityMessages++ -- * IncompatibilityMessage+ , IncompatibilityMessage+ , incompatibilityMessage+ , imType+ , imMessage++ -- * Job+ , Job+ , job+ , jobStatus+ , jobCounters+ , jobArn+ , jobCreated+ , jobDevice+ , jobStopped+ , jobResult+ , jobName+ , jobType+ , jobMessage+ , jobStarted++ -- * Location+ , Location+ , location+ , lLatitude+ , lLongitude++ -- * Problem+ , Problem+ , problem+ , pDevice+ , pTest+ , pResult+ , pRun+ , pJob+ , pMessage+ , pSuite++ -- * ProblemDetail+ , ProblemDetail+ , problemDetail+ , pdArn+ , pdName++ -- * Project+ , Project+ , project+ , pArn+ , pCreated+ , pName++ -- * Radios+ , Radios+ , radios+ , rNfc+ , rGps+ , rBluetooth+ , rWifi++ -- * Resolution+ , Resolution+ , resolution+ , rHeight+ , rWidth++ -- * Rule+ , Rule+ , rule+ , rAttribute+ , rOperator+ , rValue++ -- * Run+ , Run+ , run+ , runStatus+ , runBillingMethod+ , runCounters+ , runPlatform+ , runArn+ , runCreated+ , runCompletedJobs+ , runStopped+ , runResult+ , runName+ , runType+ , runMessage+ , runTotalJobs+ , runStarted++ -- * Sample+ , Sample+ , sample+ , sArn+ , sUrl+ , sType++ -- * ScheduleRunConfiguration+ , ScheduleRunConfiguration+ , scheduleRunConfiguration+ , srcBillingMethod+ , srcRadios+ , srcLocation+ , srcLocale+ , srcNetworkProfileARN+ , srcExtraDataPackageARN+ , srcAuxiliaryApps++ -- * ScheduleRunTest+ , ScheduleRunTest+ , scheduleRunTest+ , srtTestPackageARN+ , srtParameters+ , srtFilter+ , srtType++ -- * Suite+ , Suite+ , suite+ , suiStatus+ , suiCounters+ , suiArn+ , suiCreated+ , suiStopped+ , suiResult+ , suiName+ , suiType+ , suiMessage+ , suiStarted++ -- * Test+ , Test+ , test+ , tStatus+ , tCounters+ , tArn+ , tCreated+ , tStopped+ , tResult+ , tName+ , tType+ , tMessage+ , tStarted++ -- * UniqueProblem+ , UniqueProblem+ , uniqueProblem+ , upProblems+ , upMessage++ -- * Upload+ , Upload+ , upload+ , uStatus+ , uArn+ , uCreated+ , uUrl+ , uName+ , uMetadata+ , uType+ , uMessage+ , uContentType+ ) where++import Network.AWS.DeviceFarm.Types.Product+import Network.AWS.DeviceFarm.Types.Sum+import Network.AWS.Prelude+import Network.AWS.Sign.V4++-- | Version @2015-06-23@ of the Amazon Device Farm SDK.+data DeviceFarm++instance AWSService DeviceFarm where+ type Sg DeviceFarm = V4+ service = const svc+ where+ svc =+ Service+ { _svcAbbrev = "DeviceFarm"+ , _svcPrefix = "devicefarm"+ , _svcVersion = "2015-06-23"+ , _svcEndpoint = defaultEndpoint svc+ , _svcTimeout = Just 70+ , _svcStatus = statusSuccess+ , _svcError = parseJSONError+ , _svcRetry = retry+ }+ retry =+ Exponential+ { _retryBase = 5.0e-2+ , _retryGrowth = 2+ , _retryAttempts = 5+ , _retryCheck = check+ }+ check e+ | has (hasCode "ThrottlingException" . hasStatus 400) e =+ Just "throttling_exception"+ | has (hasCode "Throttling" . hasStatus 400) e = Just "throttling"+ | has (hasStatus 503) e = Just "service_unavailable"+ | has (hasStatus 500) e = Just "general_server_error"+ | has (hasStatus 509) e = Just "limit_exceeded"+ | otherwise = Nothing++-- | An entity with the same name already exists.+_IdempotencyException :: AsError a => Getting (First ServiceError) a ServiceError+_IdempotencyException = _ServiceError . hasCode "IdempotencyException"++-- | The specified entity was not found.+_NotFoundException :: AsError a => Getting (First ServiceError) a ServiceError+_NotFoundException = _ServiceError . hasCode "NotFoundException"++-- | An invalid argument was specified.+_ArgumentException :: AsError a => Getting (First ServiceError) a ServiceError+_ArgumentException = _ServiceError . hasCode "ArgumentException"++-- | There was a problem with the service account.+_ServiceAccountException :: AsError a => Getting (First ServiceError) a ServiceError+_ServiceAccountException = _ServiceError . hasCode "ServiceAccountException"++-- | A limit was exceeded.+_LimitExceededException :: AsError a => Getting (First ServiceError) a ServiceError+_LimitExceededException = _ServiceError . hasCode "LimitExceededException"
+ gen/Network/AWS/DeviceFarm/Types/Product.hs view
@@ -0,0 +1,2159 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.Types.Product+-- Copyright : (c) 2013-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.AWS.DeviceFarm.Types.Product where++import Network.AWS.DeviceFarm.Types.Sum+import Network.AWS.Prelude++-- | A container for account-level settings within AWS Device Farm.+--+-- /See:/ 'accountSettings' smart constructor.+data AccountSettings = AccountSettings'+ { _asAwsAccountNumber :: !(Maybe Text)+ , _asUnmeteredDevices :: !(Maybe (Map DevicePlatform Int))+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'AccountSettings' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'asAwsAccountNumber'+--+-- * 'asUnmeteredDevices'+accountSettings+ :: AccountSettings+accountSettings =+ AccountSettings'+ { _asAwsAccountNumber = Nothing+ , _asUnmeteredDevices = Nothing+ }++-- | The AWS account number specified in the 'AccountSettings' container.+asAwsAccountNumber :: Lens' AccountSettings (Maybe Text)+asAwsAccountNumber = lens _asAwsAccountNumber (\ s a -> s{_asAwsAccountNumber = a});++-- | Returns the unmetered devices you have purchased.+asUnmeteredDevices :: Lens' AccountSettings (HashMap DevicePlatform Int)+asUnmeteredDevices = lens _asUnmeteredDevices (\ s a -> s{_asUnmeteredDevices = a}) . _Default . _Map;++instance FromJSON AccountSettings where+ parseJSON+ = withObject "AccountSettings"+ (\ x ->+ AccountSettings' <$>+ (x .:? "awsAccountNumber") <*>+ (x .:? "unmeteredDevices" .!= mempty))++-- | Represents the output of a test. Examples of artifacts include logs and+-- screenshots.+--+-- /See:/ 'artifact' smart constructor.+data Artifact = Artifact'+ { _aArn :: !(Maybe Text)+ , _aUrl :: !(Maybe Text)+ , _aExtension :: !(Maybe Text)+ , _aName :: !(Maybe Text)+ , _aType :: !(Maybe ArtifactType)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Artifact' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aArn'+--+-- * 'aUrl'+--+-- * 'aExtension'+--+-- * 'aName'+--+-- * 'aType'+artifact+ :: Artifact+artifact =+ Artifact'+ { _aArn = Nothing+ , _aUrl = Nothing+ , _aExtension = Nothing+ , _aName = Nothing+ , _aType = Nothing+ }++-- | The artifact\'s ARN.+aArn :: Lens' Artifact (Maybe Text)+aArn = lens _aArn (\ s a -> s{_aArn = a});++-- | The pre-signed Amazon S3 URL that can be used with a corresponding GET+-- request to download the artifact\'s file.+aUrl :: Lens' Artifact (Maybe Text)+aUrl = lens _aUrl (\ s a -> s{_aUrl = a});++-- | The artifact\'s file extension.+aExtension :: Lens' Artifact (Maybe Text)+aExtension = lens _aExtension (\ s a -> s{_aExtension = a});++-- | The artifact\'s name.+aName :: Lens' Artifact (Maybe Text)+aName = lens _aName (\ s a -> s{_aName = a});++-- | The artifact\'s type.+--+-- Allowed values include the following:+--+-- - APPIUM_JAVA_OUTPUT: The Appium Java output type.+--+-- - APPIUM_JAVA_XML_OUTPUT: The Appium Java XML output type.+--+-- - APPIUM_SERVER_OUTPUT: The Appium server output type.+--+-- - AUTOMATION_OUTPUT: The automation output type.+--+-- - CALABASH_JSON_OUTPUT: The Calabash JSON output type.+--+-- - CALABASH_JAVA_XML_OUTPUT: The Calabash Java XML output type.+--+-- - CALABASH_PRETTY_OUTPUT: The Calabash pretty output type.+--+-- - CALABASH_STANDARD_OUTPUT: The Calabash standard output type.+--+-- - DEVICE_LOG: The device log type.+--+-- - EXERCISER_MONKEY_OUTPUT: For Android, the artifact (log) generated+-- by an Android fuzz test.+--+-- - INSTRUMENTATION_OUTPUT: The instrumentation type.+--+-- - MESSAGE_LOG: The message log type.+--+-- - RESULT_LOG: The result log type.+--+-- - SCREENSHOT: The screenshot type.+--+-- - SERVICE_LOG: The service log type.+--+-- - UNKNOWN: An unknown type.+--+aType :: Lens' Artifact (Maybe ArtifactType)+aType = lens _aType (\ s a -> s{_aType = a});++instance FromJSON Artifact where+ parseJSON+ = withObject "Artifact"+ (\ x ->+ Artifact' <$>+ (x .:? "arn") <*> (x .:? "url") <*>+ (x .:? "extension")+ <*> (x .:? "name")+ <*> (x .:? "type"))++-- | Represents the amount of CPU that an app is using on a physical device.+--+-- Note that this does not represent system-wide CPU usage.+--+-- /See:/ 'cpu' smart constructor.+data CPU = CPU'+ { _cpuFrequency :: !(Maybe Text)+ , _cpuClock :: !(Maybe Double)+ , _cpuArchitecture :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CPU' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cpuFrequency'+--+-- * 'cpuClock'+--+-- * 'cpuArchitecture'+cpu+ :: CPU+cpu =+ CPU'+ { _cpuFrequency = Nothing+ , _cpuClock = Nothing+ , _cpuArchitecture = Nothing+ }++-- | The CPU\'s frequency.+cpuFrequency :: Lens' CPU (Maybe Text)+cpuFrequency = lens _cpuFrequency (\ s a -> s{_cpuFrequency = a});++-- | The clock speed of the device\'s CPU, expressed in hertz (Hz). For+-- example, a 1.2 GHz CPU is expressed as 1200000000.+cpuClock :: Lens' CPU (Maybe Double)+cpuClock = lens _cpuClock (\ s a -> s{_cpuClock = a});++-- | The CPU\'s architecture, for example x86 or ARM.+cpuArchitecture :: Lens' CPU (Maybe Text)+cpuArchitecture = lens _cpuArchitecture (\ s a -> s{_cpuArchitecture = a});++instance FromJSON CPU where+ parseJSON+ = withObject "CPU"+ (\ x ->+ CPU' <$>+ (x .:? "frequency") <*> (x .:? "clock") <*>+ (x .:? "architecture"))++-- | Represents entity counters.+--+-- /See:/ 'counters' smart constructor.+data Counters = Counters'+ { _cPassed :: !(Maybe Int)+ , _cSkipped :: !(Maybe Int)+ , _cWarned :: !(Maybe Int)+ , _cStopped :: !(Maybe Int)+ , _cTotal :: !(Maybe Int)+ , _cFailed :: !(Maybe Int)+ , _cErrored :: !(Maybe Int)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Counters' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cPassed'+--+-- * 'cSkipped'+--+-- * 'cWarned'+--+-- * 'cStopped'+--+-- * 'cTotal'+--+-- * 'cFailed'+--+-- * 'cErrored'+counters+ :: Counters+counters =+ Counters'+ { _cPassed = Nothing+ , _cSkipped = Nothing+ , _cWarned = Nothing+ , _cStopped = Nothing+ , _cTotal = Nothing+ , _cFailed = Nothing+ , _cErrored = Nothing+ }++-- | The number of passed entities.+cPassed :: Lens' Counters (Maybe Int)+cPassed = lens _cPassed (\ s a -> s{_cPassed = a});++-- | The number of skipped entities.+cSkipped :: Lens' Counters (Maybe Int)+cSkipped = lens _cSkipped (\ s a -> s{_cSkipped = a});++-- | The number of warned entities.+cWarned :: Lens' Counters (Maybe Int)+cWarned = lens _cWarned (\ s a -> s{_cWarned = a});++-- | The number of stopped entities.+cStopped :: Lens' Counters (Maybe Int)+cStopped = lens _cStopped (\ s a -> s{_cStopped = a});++-- | The total number of entities.+cTotal :: Lens' Counters (Maybe Int)+cTotal = lens _cTotal (\ s a -> s{_cTotal = a});++-- | The number of failed entities.+cFailed :: Lens' Counters (Maybe Int)+cFailed = lens _cFailed (\ s a -> s{_cFailed = a});++-- | The number of errored entities.+cErrored :: Lens' Counters (Maybe Int)+cErrored = lens _cErrored (\ s a -> s{_cErrored = a});++instance FromJSON Counters where+ parseJSON+ = withObject "Counters"+ (\ x ->+ Counters' <$>+ (x .:? "passed") <*> (x .:? "skipped") <*>+ (x .:? "warned")+ <*> (x .:? "stopped")+ <*> (x .:? "total")+ <*> (x .:? "failed")+ <*> (x .:? "errored"))++-- | Represents a device type that an app is tested against.+--+-- /See:/ 'device' smart constructor.+data Device = Device'+ { _dCarrier :: !(Maybe Text)+ , _dImage :: !(Maybe Text)+ , _dManufacturer :: !(Maybe Text)+ , _dPlatform :: !(Maybe DevicePlatform)+ , _dArn :: !(Maybe Text)+ , _dFormFactor :: !(Maybe DeviceFormFactor)+ , _dResolution :: !(Maybe Resolution)+ , _dMemory :: !(Maybe Integer)+ , _dRadio :: !(Maybe Text)+ , _dOs :: !(Maybe Text)+ , _dName :: !(Maybe Text)+ , _dModel :: !(Maybe Text)+ , _dCpu :: !(Maybe CPU)+ , _dHeapSize :: !(Maybe Integer)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Device' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dCarrier'+--+-- * 'dImage'+--+-- * 'dManufacturer'+--+-- * 'dPlatform'+--+-- * 'dArn'+--+-- * 'dFormFactor'+--+-- * 'dResolution'+--+-- * 'dMemory'+--+-- * 'dRadio'+--+-- * 'dOs'+--+-- * 'dName'+--+-- * 'dModel'+--+-- * 'dCpu'+--+-- * 'dHeapSize'+device+ :: Device+device =+ Device'+ { _dCarrier = Nothing+ , _dImage = Nothing+ , _dManufacturer = Nothing+ , _dPlatform = Nothing+ , _dArn = Nothing+ , _dFormFactor = Nothing+ , _dResolution = Nothing+ , _dMemory = Nothing+ , _dRadio = Nothing+ , _dOs = Nothing+ , _dName = Nothing+ , _dModel = Nothing+ , _dCpu = Nothing+ , _dHeapSize = Nothing+ }++-- | The device\'s carrier.+dCarrier :: Lens' Device (Maybe Text)+dCarrier = lens _dCarrier (\ s a -> s{_dCarrier = a});++-- | The device\'s image name.+dImage :: Lens' Device (Maybe Text)+dImage = lens _dImage (\ s a -> s{_dImage = a});++-- | The device\'s manufacturer name.+dManufacturer :: Lens' Device (Maybe Text)+dManufacturer = lens _dManufacturer (\ s a -> s{_dManufacturer = a});++-- | The device\'s platform.+--+-- Allowed values include:+--+-- - ANDROID: The Android platform.+--+-- - IOS: The iOS platform.+--+dPlatform :: Lens' Device (Maybe DevicePlatform)+dPlatform = lens _dPlatform (\ s a -> s{_dPlatform = a});++-- | The device\'s ARN.+dArn :: Lens' Device (Maybe Text)+dArn = lens _dArn (\ s a -> s{_dArn = a});++-- | The device\'s form factor.+--+-- Allowed values include:+--+-- - PHONE: The phone form factor.+--+-- - TABLET: The tablet form factor.+--+dFormFactor :: Lens' Device (Maybe DeviceFormFactor)+dFormFactor = lens _dFormFactor (\ s a -> s{_dFormFactor = a});++-- | Undocumented member.+dResolution :: Lens' Device (Maybe Resolution)+dResolution = lens _dResolution (\ s a -> s{_dResolution = a});++-- | The device\'s total memory size, expressed in bytes.+dMemory :: Lens' Device (Maybe Integer)+dMemory = lens _dMemory (\ s a -> s{_dMemory = a});++-- | The device\'s radio.+dRadio :: Lens' Device (Maybe Text)+dRadio = lens _dRadio (\ s a -> s{_dRadio = a});++-- | The device\'s operating system type.+dOs :: Lens' Device (Maybe Text)+dOs = lens _dOs (\ s a -> s{_dOs = a});++-- | The device\'s display name.+dName :: Lens' Device (Maybe Text)+dName = lens _dName (\ s a -> s{_dName = a});++-- | The device\'s model name.+dModel :: Lens' Device (Maybe Text)+dModel = lens _dModel (\ s a -> s{_dModel = a});++-- | Information about the device\'s CPU.+dCpu :: Lens' Device (Maybe CPU)+dCpu = lens _dCpu (\ s a -> s{_dCpu = a});++-- | The device\'s heap size, expressed in bytes.+dHeapSize :: Lens' Device (Maybe Integer)+dHeapSize = lens _dHeapSize (\ s a -> s{_dHeapSize = a});++instance FromJSON Device where+ parseJSON+ = withObject "Device"+ (\ x ->+ Device' <$>+ (x .:? "carrier") <*> (x .:? "image") <*>+ (x .:? "manufacturer")+ <*> (x .:? "platform")+ <*> (x .:? "arn")+ <*> (x .:? "formFactor")+ <*> (x .:? "resolution")+ <*> (x .:? "memory")+ <*> (x .:? "radio")+ <*> (x .:? "os")+ <*> (x .:? "name")+ <*> (x .:? "model")+ <*> (x .:? "cpu")+ <*> (x .:? "heapSize"))++-- | Represents a collection of device types.+--+-- /See:/ 'devicePool' smart constructor.+data DevicePool = DevicePool'+ { _dpArn :: !(Maybe Text)+ , _dpRules :: !(Maybe [Rule])+ , _dpName :: !(Maybe Text)+ , _dpType :: !(Maybe DevicePoolType)+ , _dpDescription :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DevicePool' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dpArn'+--+-- * 'dpRules'+--+-- * 'dpName'+--+-- * 'dpType'+--+-- * 'dpDescription'+devicePool+ :: DevicePool+devicePool =+ DevicePool'+ { _dpArn = Nothing+ , _dpRules = Nothing+ , _dpName = Nothing+ , _dpType = Nothing+ , _dpDescription = Nothing+ }++-- | The device pool\'s ARN.+dpArn :: Lens' DevicePool (Maybe Text)+dpArn = lens _dpArn (\ s a -> s{_dpArn = a});++-- | Information about the device pool\'s rules.+dpRules :: Lens' DevicePool [Rule]+dpRules = lens _dpRules (\ s a -> s{_dpRules = a}) . _Default . _Coerce;++-- | The device pool\'s name.+dpName :: Lens' DevicePool (Maybe Text)+dpName = lens _dpName (\ s a -> s{_dpName = a});++-- | The device pool\'s type.+--+-- Allowed values include:+--+-- - CURATED: A device pool that is created and managed by AWS Device+-- Farm.+--+-- - PRIVATE: A device pool that is created and managed by the device+-- pool developer.+--+dpType :: Lens' DevicePool (Maybe DevicePoolType)+dpType = lens _dpType (\ s a -> s{_dpType = a});++-- | The device pool\'s description.+dpDescription :: Lens' DevicePool (Maybe Text)+dpDescription = lens _dpDescription (\ s a -> s{_dpDescription = a});++instance FromJSON DevicePool where+ parseJSON+ = withObject "DevicePool"+ (\ x ->+ DevicePool' <$>+ (x .:? "arn") <*> (x .:? "rules" .!= mempty) <*>+ (x .:? "name")+ <*> (x .:? "type")+ <*> (x .:? "description"))++-- | Represents a device pool compatibility result.+--+-- /See:/ 'devicePoolCompatibilityResult' smart constructor.+data DevicePoolCompatibilityResult = DevicePoolCompatibilityResult'+ { _dpcrDevice :: !(Maybe Device)+ , _dpcrCompatible :: !(Maybe Bool)+ , _dpcrIncompatibilityMessages :: !(Maybe [IncompatibilityMessage])+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DevicePoolCompatibilityResult' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dpcrDevice'+--+-- * 'dpcrCompatible'+--+-- * 'dpcrIncompatibilityMessages'+devicePoolCompatibilityResult+ :: DevicePoolCompatibilityResult+devicePoolCompatibilityResult =+ DevicePoolCompatibilityResult'+ { _dpcrDevice = Nothing+ , _dpcrCompatible = Nothing+ , _dpcrIncompatibilityMessages = Nothing+ }++-- | Undocumented member.+dpcrDevice :: Lens' DevicePoolCompatibilityResult (Maybe Device)+dpcrDevice = lens _dpcrDevice (\ s a -> s{_dpcrDevice = a});++-- | Whether the result was compatible with the device pool.+dpcrCompatible :: Lens' DevicePoolCompatibilityResult (Maybe Bool)+dpcrCompatible = lens _dpcrCompatible (\ s a -> s{_dpcrCompatible = a});++-- | Information about the compatibility.+dpcrIncompatibilityMessages :: Lens' DevicePoolCompatibilityResult [IncompatibilityMessage]+dpcrIncompatibilityMessages = lens _dpcrIncompatibilityMessages (\ s a -> s{_dpcrIncompatibilityMessages = a}) . _Default . _Coerce;++instance FromJSON DevicePoolCompatibilityResult where+ parseJSON+ = withObject "DevicePoolCompatibilityResult"+ (\ x ->+ DevicePoolCompatibilityResult' <$>+ (x .:? "device") <*> (x .:? "compatible") <*>+ (x .:? "incompatibilityMessages" .!= mempty))++-- | Represents information about incompatibility.+--+-- /See:/ 'incompatibilityMessage' smart constructor.+data IncompatibilityMessage = IncompatibilityMessage'+ { _imType :: !(Maybe DeviceAttribute)+ , _imMessage :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'IncompatibilityMessage' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'imType'+--+-- * 'imMessage'+incompatibilityMessage+ :: IncompatibilityMessage+incompatibilityMessage =+ IncompatibilityMessage'+ { _imType = Nothing+ , _imMessage = Nothing+ }++-- | The type of incompatibility.+--+-- Allowed values include:+--+-- - ARN: The ARN.+--+-- - FORM_FACTOR: The form factor (for example, phone or tablet).+--+-- - MANUFACTURER: The manufacturer.+--+-- - PLATFORM: The platform (for example, Android or iOS).+--+imType :: Lens' IncompatibilityMessage (Maybe DeviceAttribute)+imType = lens _imType (\ s a -> s{_imType = a});++-- | A message about the incompatibility.+imMessage :: Lens' IncompatibilityMessage (Maybe Text)+imMessage = lens _imMessage (\ s a -> s{_imMessage = a});++instance FromJSON IncompatibilityMessage where+ parseJSON+ = withObject "IncompatibilityMessage"+ (\ x ->+ IncompatibilityMessage' <$>+ (x .:? "type") <*> (x .:? "message"))++-- | Represents a device.+--+-- /See:/ 'job' smart constructor.+data Job = Job'+ { _jobStatus :: !(Maybe ExecutionStatus)+ , _jobCounters :: !(Maybe Counters)+ , _jobArn :: !(Maybe Text)+ , _jobCreated :: !(Maybe POSIX)+ , _jobDevice :: !(Maybe Device)+ , _jobStopped :: !(Maybe POSIX)+ , _jobResult :: !(Maybe ExecutionResult)+ , _jobName :: !(Maybe Text)+ , _jobType :: !(Maybe TestType)+ , _jobMessage :: !(Maybe Text)+ , _jobStarted :: !(Maybe POSIX)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Job' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'jobStatus'+--+-- * 'jobCounters'+--+-- * 'jobArn'+--+-- * 'jobCreated'+--+-- * 'jobDevice'+--+-- * 'jobStopped'+--+-- * 'jobResult'+--+-- * 'jobName'+--+-- * 'jobType'+--+-- * 'jobMessage'+--+-- * 'jobStarted'+job+ :: Job+job =+ Job'+ { _jobStatus = Nothing+ , _jobCounters = Nothing+ , _jobArn = Nothing+ , _jobCreated = Nothing+ , _jobDevice = Nothing+ , _jobStopped = Nothing+ , _jobResult = Nothing+ , _jobName = Nothing+ , _jobType = Nothing+ , _jobMessage = Nothing+ , _jobStarted = Nothing+ }++-- | The job\'s status.+--+-- Allowed values include:+--+-- - COMPLETED: A completed status.+--+-- - PENDING: A pending status.+--+-- - PROCESSING: A processing status.+--+-- - RUNNING: A running status.+--+-- - SCHEDULING: A scheduling status.+--+jobStatus :: Lens' Job (Maybe ExecutionStatus)+jobStatus = lens _jobStatus (\ s a -> s{_jobStatus = a});++-- | The job\'s result counters.+jobCounters :: Lens' Job (Maybe Counters)+jobCounters = lens _jobCounters (\ s a -> s{_jobCounters = a});++-- | The job\'s ARN.+jobArn :: Lens' Job (Maybe Text)+jobArn = lens _jobArn (\ s a -> s{_jobArn = a});++-- | When the job was created.+jobCreated :: Lens' Job (Maybe UTCTime)+jobCreated = lens _jobCreated (\ s a -> s{_jobCreated = a}) . mapping _Time;++-- | Undocumented member.+jobDevice :: Lens' Job (Maybe Device)+jobDevice = lens _jobDevice (\ s a -> s{_jobDevice = a});++-- | The job\'s stop time.+jobStopped :: Lens' Job (Maybe UTCTime)+jobStopped = lens _jobStopped (\ s a -> s{_jobStopped = a}) . mapping _Time;++-- | The job\'s result.+--+-- Allowed values include:+--+-- - ERRORED: An error condition.+--+-- - FAILED: A failed condition.+--+-- - SKIPPED: A skipped condition.+--+-- - STOPPED: A stopped condition.+--+-- - PASSED: A passing condition.+--+-- - PENDING: A pending condition.+--+-- - WARNED: A warning condition.+--+jobResult :: Lens' Job (Maybe ExecutionResult)+jobResult = lens _jobResult (\ s a -> s{_jobResult = a});++-- | The job\'s name.+jobName :: Lens' Job (Maybe Text)+jobName = lens _jobName (\ s a -> s{_jobName = a});++-- | The job\'s type.+--+-- Allowed values include the following:+--+-- - BUILTIN_FUZZ: The built-in fuzz type.+--+-- - BUILTIN_EXPLORER: For Android, an app explorer that will traverse an+-- Android app, interacting with it and capturing screenshots at the+-- same time.+--+-- - APPIUM_JAVA_JUNIT: The Appium Java JUnit type.+--+-- - APPIUM_JAVA_TESTNG: The Appium Java TestNG type.+--+-- - CALABASH: The Calabash type.+--+-- - INSTRUMENTATION: The Instrumentation type.+--+-- - UIAUTOMATION: The uiautomation type.+--+-- - UIAUTOMATOR: The uiautomator type.+--+-- - XCTEST: The XCode test type.+--+jobType :: Lens' Job (Maybe TestType)+jobType = lens _jobType (\ s a -> s{_jobType = a});++-- | A message about the job\'s result.+jobMessage :: Lens' Job (Maybe Text)+jobMessage = lens _jobMessage (\ s a -> s{_jobMessage = a});++-- | The job\'s start time.+jobStarted :: Lens' Job (Maybe UTCTime)+jobStarted = lens _jobStarted (\ s a -> s{_jobStarted = a}) . mapping _Time;++instance FromJSON Job where+ parseJSON+ = withObject "Job"+ (\ x ->+ Job' <$>+ (x .:? "status") <*> (x .:? "counters") <*>+ (x .:? "arn")+ <*> (x .:? "created")+ <*> (x .:? "device")+ <*> (x .:? "stopped")+ <*> (x .:? "result")+ <*> (x .:? "name")+ <*> (x .:? "type")+ <*> (x .:? "message")+ <*> (x .:? "started"))++-- | Represents a latitude and longitude pair, expressed in geographic+-- coordinate system degrees (for example 47.6204, -122.3491).+--+-- Elevation is currently not supported.+--+-- /See:/ 'location' smart constructor.+data Location = Location'+ { _lLatitude :: !Double+ , _lLongitude :: !Double+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Location' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lLatitude'+--+-- * 'lLongitude'+location+ :: Double -- ^ 'lLatitude'+ -> Double -- ^ 'lLongitude'+ -> Location+location pLatitude_ pLongitude_ =+ Location'+ { _lLatitude = pLatitude_+ , _lLongitude = pLongitude_+ }++-- | The latitude.+lLatitude :: Lens' Location Double+lLatitude = lens _lLatitude (\ s a -> s{_lLatitude = a});++-- | The longitude.+lLongitude :: Lens' Location Double+lLongitude = lens _lLongitude (\ s a -> s{_lLongitude = a});++instance ToJSON Location where+ toJSON Location'{..}+ = object+ ["latitude" .= _lLatitude,+ "longitude" .= _lLongitude]++-- | Represents a specific warning or failure.+--+-- /See:/ 'problem' smart constructor.+data Problem = Problem'+ { _pDevice :: !(Maybe Device)+ , _pTest :: !(Maybe ProblemDetail)+ , _pResult :: !(Maybe ExecutionResult)+ , _pRun :: !(Maybe ProblemDetail)+ , _pJob :: !(Maybe ProblemDetail)+ , _pMessage :: !(Maybe Text)+ , _pSuite :: !(Maybe ProblemDetail)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Problem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pDevice'+--+-- * 'pTest'+--+-- * 'pResult'+--+-- * 'pRun'+--+-- * 'pJob'+--+-- * 'pMessage'+--+-- * 'pSuite'+problem+ :: Problem+problem =+ Problem'+ { _pDevice = Nothing+ , _pTest = Nothing+ , _pResult = Nothing+ , _pRun = Nothing+ , _pJob = Nothing+ , _pMessage = Nothing+ , _pSuite = Nothing+ }++-- | Information about the associated device.+pDevice :: Lens' Problem (Maybe Device)+pDevice = lens _pDevice (\ s a -> s{_pDevice = a});++-- | Information about the associated test.+pTest :: Lens' Problem (Maybe ProblemDetail)+pTest = lens _pTest (\ s a -> s{_pTest = a});++-- | The problem\'s result.+--+-- Allowed values include:+--+-- - ERRORED: An error condition.+--+-- - FAILED: A failed condition.+--+-- - SKIPPED: A skipped condition.+--+-- - STOPPED: A stopped condition.+--+-- - PASSED: A passing condition.+--+-- - PENDING: A pending condition.+--+-- - WARNED: A warning condition.+--+pResult :: Lens' Problem (Maybe ExecutionResult)+pResult = lens _pResult (\ s a -> s{_pResult = a});++-- | Information about the associated run.+pRun :: Lens' Problem (Maybe ProblemDetail)+pRun = lens _pRun (\ s a -> s{_pRun = a});++-- | Information about the associated job.+pJob :: Lens' Problem (Maybe ProblemDetail)+pJob = lens _pJob (\ s a -> s{_pJob = a});++-- | A message about the problem\'s result.+pMessage :: Lens' Problem (Maybe Text)+pMessage = lens _pMessage (\ s a -> s{_pMessage = a});++-- | Information about the associated suite.+pSuite :: Lens' Problem (Maybe ProblemDetail)+pSuite = lens _pSuite (\ s a -> s{_pSuite = a});++instance FromJSON Problem where+ parseJSON+ = withObject "Problem"+ (\ x ->+ Problem' <$>+ (x .:? "device") <*> (x .:? "test") <*>+ (x .:? "result")+ <*> (x .:? "run")+ <*> (x .:? "job")+ <*> (x .:? "message")+ <*> (x .:? "suite"))++-- | Information about a problem detail.+--+-- /See:/ 'problemDetail' smart constructor.+data ProblemDetail = ProblemDetail'+ { _pdArn :: !(Maybe Text)+ , _pdName :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ProblemDetail' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pdArn'+--+-- * 'pdName'+problemDetail+ :: ProblemDetail+problemDetail =+ ProblemDetail'+ { _pdArn = Nothing+ , _pdName = Nothing+ }++-- | The problem detail\'s ARN.+pdArn :: Lens' ProblemDetail (Maybe Text)+pdArn = lens _pdArn (\ s a -> s{_pdArn = a});++-- | The problem detail\'s name.+pdName :: Lens' ProblemDetail (Maybe Text)+pdName = lens _pdName (\ s a -> s{_pdName = a});++instance FromJSON ProblemDetail where+ parseJSON+ = withObject "ProblemDetail"+ (\ x ->+ ProblemDetail' <$> (x .:? "arn") <*> (x .:? "name"))++-- | Represents an operating-system neutral workspace for running and+-- managing tests.+--+-- /See:/ 'project' smart constructor.+data Project = Project'+ { _pArn :: !(Maybe Text)+ , _pCreated :: !(Maybe POSIX)+ , _pName :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Project' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pArn'+--+-- * 'pCreated'+--+-- * 'pName'+project+ :: Project+project =+ Project'+ { _pArn = Nothing+ , _pCreated = Nothing+ , _pName = Nothing+ }++-- | The project\'s ARN.+pArn :: Lens' Project (Maybe Text)+pArn = lens _pArn (\ s a -> s{_pArn = a});++-- | When the project was created.+pCreated :: Lens' Project (Maybe UTCTime)+pCreated = lens _pCreated (\ s a -> s{_pCreated = a}) . mapping _Time;++-- | The project\'s name.+pName :: Lens' Project (Maybe Text)+pName = lens _pName (\ s a -> s{_pName = a});++instance FromJSON Project where+ parseJSON+ = withObject "Project"+ (\ x ->+ Project' <$>+ (x .:? "arn") <*> (x .:? "created") <*>+ (x .:? "name"))++-- | Represents the set of radios and their states on a device. Examples of+-- radios include Wi-Fi, GPS, Bluetooth, and NFC.+--+-- /See:/ 'radios' smart constructor.+data Radios = Radios'+ { _rNfc :: !(Maybe Bool)+ , _rGps :: !(Maybe Bool)+ , _rBluetooth :: !(Maybe Bool)+ , _rWifi :: !(Maybe Bool)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Radios' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rNfc'+--+-- * 'rGps'+--+-- * 'rBluetooth'+--+-- * 'rWifi'+radios+ :: Radios+radios =+ Radios'+ { _rNfc = Nothing+ , _rGps = Nothing+ , _rBluetooth = Nothing+ , _rWifi = Nothing+ }++-- | True if NFC is enabled at the beginning of the test; otherwise, false.+rNfc :: Lens' Radios (Maybe Bool)+rNfc = lens _rNfc (\ s a -> s{_rNfc = a});++-- | True if GPS is enabled at the beginning of the test; otherwise, false.+rGps :: Lens' Radios (Maybe Bool)+rGps = lens _rGps (\ s a -> s{_rGps = a});++-- | True if Bluetooth is enabled at the beginning of the test; otherwise,+-- false.+rBluetooth :: Lens' Radios (Maybe Bool)+rBluetooth = lens _rBluetooth (\ s a -> s{_rBluetooth = a});++-- | True if Wi-Fi is enabled at the beginning of the test; otherwise, false.+rWifi :: Lens' Radios (Maybe Bool)+rWifi = lens _rWifi (\ s a -> s{_rWifi = a});++instance ToJSON Radios where+ toJSON Radios'{..}+ = object+ ["nfc" .= _rNfc, "gps" .= _rGps,+ "bluetooth" .= _rBluetooth, "wifi" .= _rWifi]++-- | Represents the screen resolution of a device in height and width,+-- expressed in pixels.+--+-- /See:/ 'resolution' smart constructor.+data Resolution = Resolution'+ { _rHeight :: !(Maybe Int)+ , _rWidth :: !(Maybe Int)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Resolution' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rHeight'+--+-- * 'rWidth'+resolution+ :: Resolution+resolution =+ Resolution'+ { _rHeight = Nothing+ , _rWidth = Nothing+ }++-- | The screen resolution\'s height, expressed in pixels.+rHeight :: Lens' Resolution (Maybe Int)+rHeight = lens _rHeight (\ s a -> s{_rHeight = a});++-- | The screen resolution\'s width, expressed in pixels.+rWidth :: Lens' Resolution (Maybe Int)+rWidth = lens _rWidth (\ s a -> s{_rWidth = a});++instance FromJSON Resolution where+ parseJSON+ = withObject "Resolution"+ (\ x ->+ Resolution' <$> (x .:? "height") <*> (x .:? "width"))++-- | Represents a condition for a device pool.+--+-- /See:/ 'rule' smart constructor.+data Rule = Rule'+ { _rAttribute :: !(Maybe DeviceAttribute)+ , _rOperator :: !(Maybe RuleOperator)+ , _rValue :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Rule' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rAttribute'+--+-- * 'rOperator'+--+-- * 'rValue'+rule+ :: Rule+rule =+ Rule'+ { _rAttribute = Nothing+ , _rOperator = Nothing+ , _rValue = Nothing+ }++-- | The rule\'s attribute.+--+-- Allowed values include:+--+-- - ARN: The ARN.+--+-- - FORM_FACTOR: The form factor (for example, phone or tablet).+--+-- - MANUFACTURER: The manufacturer.+--+-- - PLATFORM: The platform (for example, Android or iOS).+--+rAttribute :: Lens' Rule (Maybe DeviceAttribute)+rAttribute = lens _rAttribute (\ s a -> s{_rAttribute = a});++-- | The rule\'s operator.+--+-- - EQUALS: The equals operator.+--+-- - GREATER_THAN: The greater-than operator.+--+-- - IN: The in operator.+--+-- - LESS_THAN: The less-than operator.+--+-- - NOT_IN: The not-in operator.+--+rOperator :: Lens' Rule (Maybe RuleOperator)+rOperator = lens _rOperator (\ s a -> s{_rOperator = a});++-- | The rule\'s value.+rValue :: Lens' Rule (Maybe Text)+rValue = lens _rValue (\ s a -> s{_rValue = a});++instance FromJSON Rule where+ parseJSON+ = withObject "Rule"+ (\ x ->+ Rule' <$>+ (x .:? "attribute") <*> (x .:? "operator") <*>+ (x .:? "value"))++instance ToJSON Rule where+ toJSON Rule'{..}+ = object+ ["attribute" .= _rAttribute,+ "operator" .= _rOperator, "value" .= _rValue]++-- | Represents an app on a set of devices with a specific test and+-- configuration.+--+-- /See:/ 'run' smart constructor.+data Run = Run'+ { _runStatus :: !(Maybe ExecutionStatus)+ , _runBillingMethod :: !(Maybe BillingMethod)+ , _runCounters :: !(Maybe Counters)+ , _runPlatform :: !(Maybe DevicePlatform)+ , _runArn :: !(Maybe Text)+ , _runCreated :: !(Maybe POSIX)+ , _runCompletedJobs :: !(Maybe Int)+ , _runStopped :: !(Maybe POSIX)+ , _runResult :: !(Maybe ExecutionResult)+ , _runName :: !(Maybe Text)+ , _runType :: !(Maybe TestType)+ , _runMessage :: !(Maybe Text)+ , _runTotalJobs :: !(Maybe Int)+ , _runStarted :: !(Maybe POSIX)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Run' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'runStatus'+--+-- * 'runBillingMethod'+--+-- * 'runCounters'+--+-- * 'runPlatform'+--+-- * 'runArn'+--+-- * 'runCreated'+--+-- * 'runCompletedJobs'+--+-- * 'runStopped'+--+-- * 'runResult'+--+-- * 'runName'+--+-- * 'runType'+--+-- * 'runMessage'+--+-- * 'runTotalJobs'+--+-- * 'runStarted'+run+ :: Run+run =+ Run'+ { _runStatus = Nothing+ , _runBillingMethod = Nothing+ , _runCounters = Nothing+ , _runPlatform = Nothing+ , _runArn = Nothing+ , _runCreated = Nothing+ , _runCompletedJobs = Nothing+ , _runStopped = Nothing+ , _runResult = Nothing+ , _runName = Nothing+ , _runType = Nothing+ , _runMessage = Nothing+ , _runTotalJobs = Nothing+ , _runStarted = Nothing+ }++-- | The run\'s status.+--+-- Allowed values include:+--+-- - COMPLETED: A completed status.+--+-- - PENDING: A pending status.+--+-- - PROCESSING: A processing status.+--+-- - RUNNING: A running status.+--+-- - SCHEDULING: A scheduling status.+--+runStatus :: Lens' Run (Maybe ExecutionStatus)+runStatus = lens _runStatus (\ s a -> s{_runStatus = a});++-- | Specifies the billing method for a test run: 'metered' or 'unmetered'.+-- If the parameter is not specified, the default value is 'unmetered'.+runBillingMethod :: Lens' Run (Maybe BillingMethod)+runBillingMethod = lens _runBillingMethod (\ s a -> s{_runBillingMethod = a});++-- | The run\'s result counters.+runCounters :: Lens' Run (Maybe Counters)+runCounters = lens _runCounters (\ s a -> s{_runCounters = a});++-- | The run\'s platform.+--+-- Allowed values include:+--+-- - ANDROID: The Android platform.+--+-- - IOS: The iOS platform.+--+runPlatform :: Lens' Run (Maybe DevicePlatform)+runPlatform = lens _runPlatform (\ s a -> s{_runPlatform = a});++-- | The run\'s ARN.+runArn :: Lens' Run (Maybe Text)+runArn = lens _runArn (\ s a -> s{_runArn = a});++-- | When the run was created.+runCreated :: Lens' Run (Maybe UTCTime)+runCreated = lens _runCreated (\ s a -> s{_runCreated = a}) . mapping _Time;++-- | The total number of completed jobs.+runCompletedJobs :: Lens' Run (Maybe Int)+runCompletedJobs = lens _runCompletedJobs (\ s a -> s{_runCompletedJobs = a});++-- | The run\'s stop time.+runStopped :: Lens' Run (Maybe UTCTime)+runStopped = lens _runStopped (\ s a -> s{_runStopped = a}) . mapping _Time;++-- | The run\'s result.+--+-- Allowed values include:+--+-- - ERRORED: An error condition.+--+-- - FAILED: A failed condition.+--+-- - SKIPPED: A skipped condition.+--+-- - STOPPED: A stopped condition.+--+-- - PASSED: A passing condition.+--+-- - PENDING: A pending condition.+--+-- - WARNED: A warning condition.+--+runResult :: Lens' Run (Maybe ExecutionResult)+runResult = lens _runResult (\ s a -> s{_runResult = a});++-- | The run\'s name.+runName :: Lens' Run (Maybe Text)+runName = lens _runName (\ s a -> s{_runName = a});++-- | The run\'s type.+--+-- Must be one of the following values:+--+-- - BUILTIN_FUZZ: The built-in fuzz type.+--+-- - BUILTIN_EXPLORER: For Android, an app explorer that will traverse an+-- Android app, interacting with it and capturing screenshots at the+-- same time.+--+-- - APPIUM_JAVA_JUNIT: The Appium Java JUnit type.+--+-- - APPIUM_JAVA_TESTNG: The Appium Java TestNG type.+--+-- - CALABASH: The Calabash type.+--+-- - INSTRUMENTATION: The Instrumentation type.+--+-- - UIAUTOMATION: The uiautomation type.+--+-- - UIAUTOMATOR: The uiautomator type.+--+-- - XCTEST: The XCode test type.+--+runType :: Lens' Run (Maybe TestType)+runType = lens _runType (\ s a -> s{_runType = a});++-- | A message about the run\'s result.+runMessage :: Lens' Run (Maybe Text)+runMessage = lens _runMessage (\ s a -> s{_runMessage = a});++-- | The total number of jobs for the run.+runTotalJobs :: Lens' Run (Maybe Int)+runTotalJobs = lens _runTotalJobs (\ s a -> s{_runTotalJobs = a});++-- | The run\'s start time.+runStarted :: Lens' Run (Maybe UTCTime)+runStarted = lens _runStarted (\ s a -> s{_runStarted = a}) . mapping _Time;++instance FromJSON Run where+ parseJSON+ = withObject "Run"+ (\ x ->+ Run' <$>+ (x .:? "status") <*> (x .:? "billingMethod") <*>+ (x .:? "counters")+ <*> (x .:? "platform")+ <*> (x .:? "arn")+ <*> (x .:? "created")+ <*> (x .:? "completedJobs")+ <*> (x .:? "stopped")+ <*> (x .:? "result")+ <*> (x .:? "name")+ <*> (x .:? "type")+ <*> (x .:? "message")+ <*> (x .:? "totalJobs")+ <*> (x .:? "started"))++-- | Represents a sample of performance data.+--+-- /See:/ 'sample' smart constructor.+data Sample = Sample'+ { _sArn :: !(Maybe Text)+ , _sUrl :: !(Maybe Text)+ , _sType :: !(Maybe SampleType)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Sample' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sArn'+--+-- * 'sUrl'+--+-- * 'sType'+sample+ :: Sample+sample =+ Sample'+ { _sArn = Nothing+ , _sUrl = Nothing+ , _sType = Nothing+ }++-- | The sample\'s ARN.+sArn :: Lens' Sample (Maybe Text)+sArn = lens _sArn (\ s a -> s{_sArn = a});++-- | The pre-signed Amazon S3 URL that can be used with a corresponding GET+-- request to download the sample\'s file.+sUrl :: Lens' Sample (Maybe Text)+sUrl = lens _sUrl (\ s a -> s{_sUrl = a});++-- | The sample\'s type.+--+-- Must be one of the following values:+--+-- - CPU: A CPU sample type. This is expressed as the app processing CPU+-- time (including child processes) as reported by process, as a+-- percentage.+--+-- - MEMORY: A memory usage sample type. This is expressed as the total+-- proportional set size of an app process, in kilobytes.+--+-- - NATIVE_AVG_DRAWTIME+--+-- - NATIVE_FPS+--+-- - NATIVE_FRAMES+--+-- - NATIVE_MAX_DRAWTIME+--+-- - NATIVE_MIN_DRAWTIME+--+-- - OPENGL_AVG_DRAWTIME+--+-- - OPENGL_FPS+--+-- - OPENGL_FRAMES+--+-- - OPENGL_MAX_DRAWTIME+--+-- - OPENGL_MIN_DRAWTIME+--+-- - RX+--+-- - RX_RATE: The total number of bytes per second (TCP and UDP) that are+-- sent, by app process.+--+-- - THREADS: A threads sample type. This is expressed as the total+-- number of threads per app process.+--+-- - TX+--+-- - TX_RATE: The total number of bytes per second (TCP and UDP) that are+-- received, by app process.+--+sType :: Lens' Sample (Maybe SampleType)+sType = lens _sType (\ s a -> s{_sType = a});++instance FromJSON Sample where+ parseJSON+ = withObject "Sample"+ (\ x ->+ Sample' <$>+ (x .:? "arn") <*> (x .:? "url") <*> (x .:? "type"))++-- | Represents the settings for a run. Includes things like location, radio+-- states, auxiliary apps, and network profiles.+--+-- /See:/ 'scheduleRunConfiguration' smart constructor.+data ScheduleRunConfiguration = ScheduleRunConfiguration'+ { _srcBillingMethod :: !(Maybe BillingMethod)+ , _srcRadios :: !(Maybe Radios)+ , _srcLocation :: !(Maybe Location)+ , _srcLocale :: !(Maybe Text)+ , _srcNetworkProfileARN :: !(Maybe Text)+ , _srcExtraDataPackageARN :: !(Maybe Text)+ , _srcAuxiliaryApps :: !(Maybe [Text])+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ScheduleRunConfiguration' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'srcBillingMethod'+--+-- * 'srcRadios'+--+-- * 'srcLocation'+--+-- * 'srcLocale'+--+-- * 'srcNetworkProfileARN'+--+-- * 'srcExtraDataPackageARN'+--+-- * 'srcAuxiliaryApps'+scheduleRunConfiguration+ :: ScheduleRunConfiguration+scheduleRunConfiguration =+ ScheduleRunConfiguration'+ { _srcBillingMethod = Nothing+ , _srcRadios = Nothing+ , _srcLocation = Nothing+ , _srcLocale = Nothing+ , _srcNetworkProfileARN = Nothing+ , _srcExtraDataPackageARN = Nothing+ , _srcAuxiliaryApps = Nothing+ }++-- | Specifies the billing method for a test run: 'metered' or 'unmetered'.+-- If the parameter is not specified, the default value is 'unmetered'.+srcBillingMethod :: Lens' ScheduleRunConfiguration (Maybe BillingMethod)+srcBillingMethod = lens _srcBillingMethod (\ s a -> s{_srcBillingMethod = a});++-- | Information about the radio states for the run.+srcRadios :: Lens' ScheduleRunConfiguration (Maybe Radios)+srcRadios = lens _srcRadios (\ s a -> s{_srcRadios = a});++-- | Information about the location that is used for the run.+srcLocation :: Lens' ScheduleRunConfiguration (Maybe Location)+srcLocation = lens _srcLocation (\ s a -> s{_srcLocation = a});++-- | Information about the locale that is used for the run.+srcLocale :: Lens' ScheduleRunConfiguration (Maybe Text)+srcLocale = lens _srcLocale (\ s a -> s{_srcLocale = a});++-- | Reserved for internal use.+srcNetworkProfileARN :: Lens' ScheduleRunConfiguration (Maybe Text)+srcNetworkProfileARN = lens _srcNetworkProfileARN (\ s a -> s{_srcNetworkProfileARN = a});++-- | The ARN of the extra data for the run. The extra data is a .zip file+-- that AWS Device Farm will extract to external data for Android or the+-- app\'s sandbox for iOS.+srcExtraDataPackageARN :: Lens' ScheduleRunConfiguration (Maybe Text)+srcExtraDataPackageARN = lens _srcExtraDataPackageARN (\ s a -> s{_srcExtraDataPackageARN = a});++-- | A list of auxiliary apps for the run.+srcAuxiliaryApps :: Lens' ScheduleRunConfiguration [Text]+srcAuxiliaryApps = lens _srcAuxiliaryApps (\ s a -> s{_srcAuxiliaryApps = a}) . _Default . _Coerce;++instance ToJSON ScheduleRunConfiguration where+ toJSON ScheduleRunConfiguration'{..}+ = object+ ["billingMethod" .= _srcBillingMethod,+ "radios" .= _srcRadios, "location" .= _srcLocation,+ "locale" .= _srcLocale,+ "networkProfileArn" .= _srcNetworkProfileARN,+ "extraDataPackageArn" .= _srcExtraDataPackageARN,+ "auxiliaryApps" .= _srcAuxiliaryApps]++-- | Represents additional test settings.+--+-- /See:/ 'scheduleRunTest' smart constructor.+data ScheduleRunTest = ScheduleRunTest'+ { _srtTestPackageARN :: !(Maybe Text)+ , _srtParameters :: !(Maybe (Map Text Text))+ , _srtFilter :: !(Maybe Text)+ , _srtType :: !TestType+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ScheduleRunTest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'srtTestPackageARN'+--+-- * 'srtParameters'+--+-- * 'srtFilter'+--+-- * 'srtType'+scheduleRunTest+ :: TestType -- ^ 'srtType'+ -> ScheduleRunTest+scheduleRunTest pType_ =+ ScheduleRunTest'+ { _srtTestPackageARN = Nothing+ , _srtParameters = Nothing+ , _srtFilter = Nothing+ , _srtType = pType_+ }++-- | The ARN of the uploaded test that will be run.+srtTestPackageARN :: Lens' ScheduleRunTest (Maybe Text)+srtTestPackageARN = lens _srtTestPackageARN (\ s a -> s{_srtTestPackageARN = a});++-- | The test\'s parameters, such as test framework parameters and fixture+-- settings.+srtParameters :: Lens' ScheduleRunTest (HashMap Text Text)+srtParameters = lens _srtParameters (\ s a -> s{_srtParameters = a}) . _Default . _Map;++-- | The test\'s filter.+srtFilter :: Lens' ScheduleRunTest (Maybe Text)+srtFilter = lens _srtFilter (\ s a -> s{_srtFilter = a});++-- | The test\'s type.+--+-- Must be one of the following values:+--+-- - BUILTIN_FUZZ: The built-in fuzz type.+--+-- - BUILTIN_EXPLORER: For Android, an app explorer that will traverse an+-- Android app, interacting with it and capturing screenshots at the+-- same time.+--+-- - APPIUM_JAVA_JUNIT: The Appium Java JUnit type.+--+-- - APPIUM_JAVA_TESTNG: The Appium Java TestNG type.+--+-- - CALABASH: The Calabash type.+--+-- - INSTRUMENTATION: The Instrumentation type.+--+-- - UIAUTOMATION: The uiautomation type.+--+-- - UIAUTOMATOR: The uiautomator type.+--+-- - XCTEST: The XCode test type.+--+srtType :: Lens' ScheduleRunTest TestType+srtType = lens _srtType (\ s a -> s{_srtType = a});++instance ToJSON ScheduleRunTest where+ toJSON ScheduleRunTest'{..}+ = object+ ["testPackageArn" .= _srtTestPackageARN,+ "parameters" .= _srtParameters,+ "filter" .= _srtFilter, "type" .= _srtType]++-- | Represents a collection of one or more tests.+--+-- /See:/ 'suite' smart constructor.+data Suite = Suite'+ { _suiStatus :: !(Maybe ExecutionStatus)+ , _suiCounters :: !(Maybe Counters)+ , _suiArn :: !(Maybe Text)+ , _suiCreated :: !(Maybe POSIX)+ , _suiStopped :: !(Maybe POSIX)+ , _suiResult :: !(Maybe ExecutionResult)+ , _suiName :: !(Maybe Text)+ , _suiType :: !(Maybe TestType)+ , _suiMessage :: !(Maybe Text)+ , _suiStarted :: !(Maybe POSIX)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Suite' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'suiStatus'+--+-- * 'suiCounters'+--+-- * 'suiArn'+--+-- * 'suiCreated'+--+-- * 'suiStopped'+--+-- * 'suiResult'+--+-- * 'suiName'+--+-- * 'suiType'+--+-- * 'suiMessage'+--+-- * 'suiStarted'+suite+ :: Suite+suite =+ Suite'+ { _suiStatus = Nothing+ , _suiCounters = Nothing+ , _suiArn = Nothing+ , _suiCreated = Nothing+ , _suiStopped = Nothing+ , _suiResult = Nothing+ , _suiName = Nothing+ , _suiType = Nothing+ , _suiMessage = Nothing+ , _suiStarted = Nothing+ }++-- | The suite\'s status.+--+-- Allowed values include:+--+-- - COMPLETED: A completed status.+--+-- - PENDING: A pending status.+--+-- - PROCESSING: A processing status.+--+-- - RUNNING: A running status.+--+-- - SCHEDULING: A scheduling status.+--+suiStatus :: Lens' Suite (Maybe ExecutionStatus)+suiStatus = lens _suiStatus (\ s a -> s{_suiStatus = a});++-- | The suite\'s result counters.+suiCounters :: Lens' Suite (Maybe Counters)+suiCounters = lens _suiCounters (\ s a -> s{_suiCounters = a});++-- | The suite\'s ARN.+suiArn :: Lens' Suite (Maybe Text)+suiArn = lens _suiArn (\ s a -> s{_suiArn = a});++-- | When the suite was created.+suiCreated :: Lens' Suite (Maybe UTCTime)+suiCreated = lens _suiCreated (\ s a -> s{_suiCreated = a}) . mapping _Time;++-- | The suite\'s stop time.+suiStopped :: Lens' Suite (Maybe UTCTime)+suiStopped = lens _suiStopped (\ s a -> s{_suiStopped = a}) . mapping _Time;++-- | The suite\'s result.+--+-- Allowed values include:+--+-- - ERRORED: An error condition.+--+-- - FAILED: A failed condition.+--+-- - SKIPPED: A skipped condition.+--+-- - STOPPED: A stopped condition.+--+-- - PASSED: A passing condition.+--+-- - PENDING: A pending condition.+--+-- - WARNED: A warning condition.+--+suiResult :: Lens' Suite (Maybe ExecutionResult)+suiResult = lens _suiResult (\ s a -> s{_suiResult = a});++-- | The suite\'s name.+suiName :: Lens' Suite (Maybe Text)+suiName = lens _suiName (\ s a -> s{_suiName = a});++-- | The suite\'s type.+--+-- Must be one of the following values:+--+-- - BUILTIN_FUZZ: The built-in fuzz type.+--+-- - BUILTIN_EXPLORER: For Android, an app explorer that will traverse an+-- Android app, interacting with it and capturing screenshots at the+-- same time.+--+-- - APPIUM_JAVA_JUNIT: The Appium Java JUnit type.+--+-- - APPIUM_JAVA_TESTNG: The Appium Java TestNG type.+--+-- - CALABASH: The Calabash type.+--+-- - INSTRUMENTATION: The Instrumentation type.+--+-- - UIAUTOMATION: The uiautomation type.+--+-- - UIAUTOMATOR: The uiautomator type.+--+-- - XCTEST: The XCode test type.+--+suiType :: Lens' Suite (Maybe TestType)+suiType = lens _suiType (\ s a -> s{_suiType = a});++-- | A message about the suite\'s result.+suiMessage :: Lens' Suite (Maybe Text)+suiMessage = lens _suiMessage (\ s a -> s{_suiMessage = a});++-- | The suite\'s start time.+suiStarted :: Lens' Suite (Maybe UTCTime)+suiStarted = lens _suiStarted (\ s a -> s{_suiStarted = a}) . mapping _Time;++instance FromJSON Suite where+ parseJSON+ = withObject "Suite"+ (\ x ->+ Suite' <$>+ (x .:? "status") <*> (x .:? "counters") <*>+ (x .:? "arn")+ <*> (x .:? "created")+ <*> (x .:? "stopped")+ <*> (x .:? "result")+ <*> (x .:? "name")+ <*> (x .:? "type")+ <*> (x .:? "message")+ <*> (x .:? "started"))++-- | Represents a condition that is evaluated.+--+-- /See:/ 'test' smart constructor.+data Test = Test'+ { _tStatus :: !(Maybe ExecutionStatus)+ , _tCounters :: !(Maybe Counters)+ , _tArn :: !(Maybe Text)+ , _tCreated :: !(Maybe POSIX)+ , _tStopped :: !(Maybe POSIX)+ , _tResult :: !(Maybe ExecutionResult)+ , _tName :: !(Maybe Text)+ , _tType :: !(Maybe TestType)+ , _tMessage :: !(Maybe Text)+ , _tStarted :: !(Maybe POSIX)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Test' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tStatus'+--+-- * 'tCounters'+--+-- * 'tArn'+--+-- * 'tCreated'+--+-- * 'tStopped'+--+-- * 'tResult'+--+-- * 'tName'+--+-- * 'tType'+--+-- * 'tMessage'+--+-- * 'tStarted'+test+ :: Test+test =+ Test'+ { _tStatus = Nothing+ , _tCounters = Nothing+ , _tArn = Nothing+ , _tCreated = Nothing+ , _tStopped = Nothing+ , _tResult = Nothing+ , _tName = Nothing+ , _tType = Nothing+ , _tMessage = Nothing+ , _tStarted = Nothing+ }++-- | The test\'s status.+--+-- Allowed values include:+--+-- - COMPLETED: A completed status.+--+-- - PENDING: A pending status.+--+-- - PROCESSING: A processing status.+--+-- - RUNNING: A running status.+--+-- - SCHEDULING: A scheduling status.+--+tStatus :: Lens' Test (Maybe ExecutionStatus)+tStatus = lens _tStatus (\ s a -> s{_tStatus = a});++-- | The test\'s result counters.+tCounters :: Lens' Test (Maybe Counters)+tCounters = lens _tCounters (\ s a -> s{_tCounters = a});++-- | The test\'s ARN.+tArn :: Lens' Test (Maybe Text)+tArn = lens _tArn (\ s a -> s{_tArn = a});++-- | When the test was created.+tCreated :: Lens' Test (Maybe UTCTime)+tCreated = lens _tCreated (\ s a -> s{_tCreated = a}) . mapping _Time;++-- | The test\'s stop time.+tStopped :: Lens' Test (Maybe UTCTime)+tStopped = lens _tStopped (\ s a -> s{_tStopped = a}) . mapping _Time;++-- | The test\'s result.+--+-- Allowed values include:+--+-- - ERRORED: An error condition.+--+-- - FAILED: A failed condition.+--+-- - SKIPPED: A skipped condition.+--+-- - STOPPED: A stopped condition.+--+-- - PASSED: A passing condition.+--+-- - PENDING: A pending condition.+--+-- - WARNED: A warning condition.+--+tResult :: Lens' Test (Maybe ExecutionResult)+tResult = lens _tResult (\ s a -> s{_tResult = a});++-- | The test\'s name.+tName :: Lens' Test (Maybe Text)+tName = lens _tName (\ s a -> s{_tName = a});++-- | The test\'s type.+--+-- Must be one of the following values:+--+-- - BUILTIN_FUZZ: The built-in fuzz type.+--+-- - BUILTIN_EXPLORER: For Android, an app explorer that will traverse an+-- Android app, interacting with it and capturing screenshots at the+-- same time.+--+-- - APPIUM_JAVA_JUNIT: The Appium Java JUnit type.+--+-- - APPIUM_JAVA_TESTNG: The Appium Java TestNG type.+--+-- - CALABASH: The Calabash type.+--+-- - INSTRUMENTATION: The Instrumentation type.+--+-- - UIAUTOMATION: The uiautomation type.+--+-- - UIAUTOMATOR: The uiautomator type.+--+-- - XCTEST: The XCode test type.+--+tType :: Lens' Test (Maybe TestType)+tType = lens _tType (\ s a -> s{_tType = a});++-- | A message about the test\'s result.+tMessage :: Lens' Test (Maybe Text)+tMessage = lens _tMessage (\ s a -> s{_tMessage = a});++-- | The test\'s start time.+tStarted :: Lens' Test (Maybe UTCTime)+tStarted = lens _tStarted (\ s a -> s{_tStarted = a}) . mapping _Time;++instance FromJSON Test where+ parseJSON+ = withObject "Test"+ (\ x ->+ Test' <$>+ (x .:? "status") <*> (x .:? "counters") <*>+ (x .:? "arn")+ <*> (x .:? "created")+ <*> (x .:? "stopped")+ <*> (x .:? "result")+ <*> (x .:? "name")+ <*> (x .:? "type")+ <*> (x .:? "message")+ <*> (x .:? "started"))++-- | A collection of one or more problems, grouped by their result.+--+-- /See:/ 'uniqueProblem' smart constructor.+data UniqueProblem = UniqueProblem'+ { _upProblems :: !(Maybe [Problem])+ , _upMessage :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'UniqueProblem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'upProblems'+--+-- * 'upMessage'+uniqueProblem+ :: UniqueProblem+uniqueProblem =+ UniqueProblem'+ { _upProblems = Nothing+ , _upMessage = Nothing+ }++-- | Information about the problems.+upProblems :: Lens' UniqueProblem [Problem]+upProblems = lens _upProblems (\ s a -> s{_upProblems = a}) . _Default . _Coerce;++-- | A message about the unique problems\' result.+upMessage :: Lens' UniqueProblem (Maybe Text)+upMessage = lens _upMessage (\ s a -> s{_upMessage = a});++instance FromJSON UniqueProblem where+ parseJSON+ = withObject "UniqueProblem"+ (\ x ->+ UniqueProblem' <$>+ (x .:? "problems" .!= mempty) <*> (x .:? "message"))++-- | An app or a set of one or more tests to upload or that have been+-- uploaded.+--+-- /See:/ 'upload' smart constructor.+data Upload = Upload'+ { _uStatus :: !(Maybe UploadStatus)+ , _uArn :: !(Maybe Text)+ , _uCreated :: !(Maybe POSIX)+ , _uUrl :: !(Maybe Text)+ , _uName :: !(Maybe Text)+ , _uMetadata :: !(Maybe Text)+ , _uType :: !(Maybe UploadType)+ , _uMessage :: !(Maybe Text)+ , _uContentType :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Upload' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uStatus'+--+-- * 'uArn'+--+-- * 'uCreated'+--+-- * 'uUrl'+--+-- * 'uName'+--+-- * 'uMetadata'+--+-- * 'uType'+--+-- * 'uMessage'+--+-- * 'uContentType'+upload+ :: Upload+upload =+ Upload'+ { _uStatus = Nothing+ , _uArn = Nothing+ , _uCreated = Nothing+ , _uUrl = Nothing+ , _uName = Nothing+ , _uMetadata = Nothing+ , _uType = Nothing+ , _uMessage = Nothing+ , _uContentType = Nothing+ }++-- | The upload\'s status.+--+-- Must be one of the following values:+--+-- - FAILED: A failed status.+--+-- - INITIALIZED: An initialized status.+--+-- - PROCESSING: A processing status.+--+-- - SUCCEEDED: A succeeded status.+--+uStatus :: Lens' Upload (Maybe UploadStatus)+uStatus = lens _uStatus (\ s a -> s{_uStatus = a});++-- | The upload\'s ARN.+uArn :: Lens' Upload (Maybe Text)+uArn = lens _uArn (\ s a -> s{_uArn = a});++-- | When the upload was created.+uCreated :: Lens' Upload (Maybe UTCTime)+uCreated = lens _uCreated (\ s a -> s{_uCreated = a}) . mapping _Time;++-- | The pre-signed Amazon S3 URL that was used to store a file through a+-- corresponding PUT request.+uUrl :: Lens' Upload (Maybe Text)+uUrl = lens _uUrl (\ s a -> s{_uUrl = a});++-- | The upload\'s file name.+uName :: Lens' Upload (Maybe Text)+uName = lens _uName (\ s a -> s{_uName = a});++-- | The upload\'s metadata. For example, for Android, this contains+-- information that is parsed from the manifest and is displayed in the AWS+-- Device Farm console after the associated app is uploaded.+uMetadata :: Lens' Upload (Maybe Text)+uMetadata = lens _uMetadata (\ s a -> s{_uMetadata = a});++-- | The upload\'s type.+--+-- Must be one of the following values:+--+-- - ANDROID_APP: An Android upload.+--+-- - IOS_APP: An iOS upload.+--+-- - EXTERNAL_DATA: An external data upload.+--+-- - APPIUM_JAVA_JUNIT_TEST_PACKAGE: An Appium Java JUnit test package+-- upload.+--+-- - APPIUM_JAVA_TESTNG_TEST_PACKAGE: An Appium Java TestNG test package+-- upload.+--+-- - CALABASH_TEST_PACKAGE: A Calabash test package upload.+--+-- - INSTRUMENTATION_TEST_PACKAGE: An instrumentation upload.+--+-- - UIAUTOMATOR_TEST_PACKAGE: A uiautomator test package upload.+--+-- - XCTEST_TEST_PACKAGE: An XCode test package upload.+--+uType :: Lens' Upload (Maybe UploadType)+uType = lens _uType (\ s a -> s{_uType = a});++-- | A message about the upload\'s result.+uMessage :: Lens' Upload (Maybe Text)+uMessage = lens _uMessage (\ s a -> s{_uMessage = a});++-- | The upload\'s content type (for example, \"application\/octet-stream\").+uContentType :: Lens' Upload (Maybe Text)+uContentType = lens _uContentType (\ s a -> s{_uContentType = a});++instance FromJSON Upload where+ parseJSON+ = withObject "Upload"+ (\ x ->+ Upload' <$>+ (x .:? "status") <*> (x .:? "arn") <*>+ (x .:? "created")+ <*> (x .:? "url")+ <*> (x .:? "name")+ <*> (x .:? "metadata")+ <*> (x .:? "type")+ <*> (x .:? "message")+ <*> (x .:? "contentType"))
+ gen/Network/AWS/DeviceFarm/Types/Sum.hs view
@@ -0,0 +1,568 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.Types.Sum+-- Copyright : (c) 2013-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.AWS.DeviceFarm.Types.Sum where++import Network.AWS.Prelude++data ArtifactCategory+ = ACFile+ | ACLog+ | ACScreenshot+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText ArtifactCategory where+ parser = takeLowerText >>= \case+ "file" -> pure ACFile+ "log" -> pure ACLog+ "screenshot" -> pure ACScreenshot+ e -> fromTextError $ "Failure parsing ArtifactCategory from value: '" <> e+ <> "'. Accepted values: file, log, screenshot"++instance ToText ArtifactCategory where+ toText = \case+ ACFile -> "file"+ ACLog -> "log"+ ACScreenshot -> "screenshot"++instance Hashable ArtifactCategory+instance ToByteString ArtifactCategory+instance ToQuery ArtifactCategory+instance ToHeader ArtifactCategory++instance ToJSON ArtifactCategory where+ toJSON = toJSONText++data ArtifactType+ = AppiumJavaOutput+ | AppiumJavaXMLOutput+ | AppiumServerOutput+ | AutomationOutput+ | CalabashJSONOutput+ | CalabashJavaXMLOutput+ | CalabashPrettyOutput+ | CalabashStandardOutput+ | DeviceLog+ | ExerciserMonkeyOutput+ | InstrumentationOutput+ | MessageLog+ | ResultLog+ | Screenshot+ | ServiceLog+ | Unknown+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText ArtifactType where+ parser = takeLowerText >>= \case+ "appium_java_output" -> pure AppiumJavaOutput+ "appium_java_xml_output" -> pure AppiumJavaXMLOutput+ "appium_server_output" -> pure AppiumServerOutput+ "automation_output" -> pure AutomationOutput+ "calabash_json_output" -> pure CalabashJSONOutput+ "calabash_java_xml_output" -> pure CalabashJavaXMLOutput+ "calabash_pretty_output" -> pure CalabashPrettyOutput+ "calabash_standard_output" -> pure CalabashStandardOutput+ "device_log" -> pure DeviceLog+ "exerciser_monkey_output" -> pure ExerciserMonkeyOutput+ "instrumentation_output" -> pure InstrumentationOutput+ "message_log" -> pure MessageLog+ "result_log" -> pure ResultLog+ "screenshot" -> pure Screenshot+ "service_log" -> pure ServiceLog+ "unknown" -> pure Unknown+ e -> fromTextError $ "Failure parsing ArtifactType from value: '" <> e+ <> "'. Accepted values: appium_java_output, appium_java_xml_output, appium_server_output, automation_output, calabash_json_output, calabash_java_xml_output, calabash_pretty_output, calabash_standard_output, device_log, exerciser_monkey_output, instrumentation_output, message_log, result_log, screenshot, service_log, unknown"++instance ToText ArtifactType where+ toText = \case+ AppiumJavaOutput -> "appium_java_output"+ AppiumJavaXMLOutput -> "appium_java_xml_output"+ AppiumServerOutput -> "appium_server_output"+ AutomationOutput -> "automation_output"+ CalabashJSONOutput -> "calabash_json_output"+ CalabashJavaXMLOutput -> "calabash_java_xml_output"+ CalabashPrettyOutput -> "calabash_pretty_output"+ CalabashStandardOutput -> "calabash_standard_output"+ DeviceLog -> "device_log"+ ExerciserMonkeyOutput -> "exerciser_monkey_output"+ InstrumentationOutput -> "instrumentation_output"+ MessageLog -> "message_log"+ ResultLog -> "result_log"+ Screenshot -> "screenshot"+ ServiceLog -> "service_log"+ Unknown -> "unknown"++instance Hashable ArtifactType+instance ToByteString ArtifactType+instance ToQuery ArtifactType+instance ToHeader ArtifactType++instance FromJSON ArtifactType where+ parseJSON = parseJSONText "ArtifactType"++data BillingMethod+ = Metered+ | Unmetered+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText BillingMethod where+ parser = takeLowerText >>= \case+ "metered" -> pure Metered+ "unmetered" -> pure Unmetered+ e -> fromTextError $ "Failure parsing BillingMethod from value: '" <> e+ <> "'. Accepted values: metered, unmetered"++instance ToText BillingMethod where+ toText = \case+ Metered -> "metered"+ Unmetered -> "unmetered"++instance Hashable BillingMethod+instance ToByteString BillingMethod+instance ToQuery BillingMethod+instance ToHeader BillingMethod++instance ToJSON BillingMethod where+ toJSON = toJSONText++instance FromJSON BillingMethod where+ parseJSON = parseJSONText "BillingMethod"++data DeviceAttribute+ = ARN+ | FormFactor+ | Manufacturer+ | Platform+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText DeviceAttribute where+ parser = takeLowerText >>= \case+ "arn" -> pure ARN+ "form_factor" -> pure FormFactor+ "manufacturer" -> pure Manufacturer+ "platform" -> pure Platform+ e -> fromTextError $ "Failure parsing DeviceAttribute from value: '" <> e+ <> "'. Accepted values: arn, form_factor, manufacturer, platform"++instance ToText DeviceAttribute where+ toText = \case+ ARN -> "arn"+ FormFactor -> "form_factor"+ Manufacturer -> "manufacturer"+ Platform -> "platform"++instance Hashable DeviceAttribute+instance ToByteString DeviceAttribute+instance ToQuery DeviceAttribute+instance ToHeader DeviceAttribute++instance ToJSON DeviceAttribute where+ toJSON = toJSONText++instance FromJSON DeviceAttribute where+ parseJSON = parseJSONText "DeviceAttribute"++data DeviceFormFactor+ = Phone+ | Tablet+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText DeviceFormFactor where+ parser = takeLowerText >>= \case+ "phone" -> pure Phone+ "tablet" -> pure Tablet+ e -> fromTextError $ "Failure parsing DeviceFormFactor from value: '" <> e+ <> "'. Accepted values: phone, tablet"++instance ToText DeviceFormFactor where+ toText = \case+ Phone -> "phone"+ Tablet -> "tablet"++instance Hashable DeviceFormFactor+instance ToByteString DeviceFormFactor+instance ToQuery DeviceFormFactor+instance ToHeader DeviceFormFactor++instance FromJSON DeviceFormFactor where+ parseJSON = parseJSONText "DeviceFormFactor"++data DevicePlatform+ = Android+ | Ios+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText DevicePlatform where+ parser = takeLowerText >>= \case+ "android" -> pure Android+ "ios" -> pure Ios+ e -> fromTextError $ "Failure parsing DevicePlatform from value: '" <> e+ <> "'. Accepted values: android, ios"++instance ToText DevicePlatform where+ toText = \case+ Android -> "android"+ Ios -> "ios"++instance Hashable DevicePlatform+instance ToByteString DevicePlatform+instance ToQuery DevicePlatform+instance ToHeader DevicePlatform++instance FromJSON DevicePlatform where+ parseJSON = parseJSONText "DevicePlatform"++data DevicePoolType+ = Curated+ | Private+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText DevicePoolType where+ parser = takeLowerText >>= \case+ "curated" -> pure Curated+ "private" -> pure Private+ e -> fromTextError $ "Failure parsing DevicePoolType from value: '" <> e+ <> "'. Accepted values: curated, private"++instance ToText DevicePoolType where+ toText = \case+ Curated -> "curated"+ Private -> "private"++instance Hashable DevicePoolType+instance ToByteString DevicePoolType+instance ToQuery DevicePoolType+instance ToHeader DevicePoolType++instance ToJSON DevicePoolType where+ toJSON = toJSONText++instance FromJSON DevicePoolType where+ parseJSON = parseJSONText "DevicePoolType"++data ExecutionResult+ = ERErrored+ | ERFailed+ | ERPassed+ | ERPending+ | ERSkipped+ | ERStopped+ | ERWarned+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText ExecutionResult where+ parser = takeLowerText >>= \case+ "errored" -> pure ERErrored+ "failed" -> pure ERFailed+ "passed" -> pure ERPassed+ "pending" -> pure ERPending+ "skipped" -> pure ERSkipped+ "stopped" -> pure ERStopped+ "warned" -> pure ERWarned+ e -> fromTextError $ "Failure parsing ExecutionResult from value: '" <> e+ <> "'. Accepted values: errored, failed, passed, pending, skipped, stopped, warned"++instance ToText ExecutionResult where+ toText = \case+ ERErrored -> "errored"+ ERFailed -> "failed"+ ERPassed -> "passed"+ ERPending -> "pending"+ ERSkipped -> "skipped"+ ERStopped -> "stopped"+ ERWarned -> "warned"++instance Hashable ExecutionResult+instance ToByteString ExecutionResult+instance ToQuery ExecutionResult+instance ToHeader ExecutionResult++instance FromJSON ExecutionResult where+ parseJSON = parseJSONText "ExecutionResult"++data ExecutionStatus+ = Completed+ | Pending+ | Processing+ | Running+ | Scheduling+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText ExecutionStatus where+ parser = takeLowerText >>= \case+ "completed" -> pure Completed+ "pending" -> pure Pending+ "processing" -> pure Processing+ "running" -> pure Running+ "scheduling" -> pure Scheduling+ e -> fromTextError $ "Failure parsing ExecutionStatus from value: '" <> e+ <> "'. Accepted values: completed, pending, processing, running, scheduling"++instance ToText ExecutionStatus where+ toText = \case+ Completed -> "completed"+ Pending -> "pending"+ Processing -> "processing"+ Running -> "running"+ Scheduling -> "scheduling"++instance Hashable ExecutionStatus+instance ToByteString ExecutionStatus+instance ToQuery ExecutionStatus+instance ToHeader ExecutionStatus++instance FromJSON ExecutionStatus where+ parseJSON = parseJSONText "ExecutionStatus"++data RuleOperator+ = Equals+ | GreaterThan+ | IN+ | LessThan+ | NotIn+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText RuleOperator where+ parser = takeLowerText >>= \case+ "equals" -> pure Equals+ "greater_than" -> pure GreaterThan+ "in" -> pure IN+ "less_than" -> pure LessThan+ "not_in" -> pure NotIn+ e -> fromTextError $ "Failure parsing RuleOperator from value: '" <> e+ <> "'. Accepted values: equals, greater_than, in, less_than, not_in"++instance ToText RuleOperator where+ toText = \case+ Equals -> "equals"+ GreaterThan -> "greater_than"+ IN -> "in"+ LessThan -> "less_than"+ NotIn -> "not_in"++instance Hashable RuleOperator+instance ToByteString RuleOperator+instance ToQuery RuleOperator+instance ToHeader RuleOperator++instance ToJSON RuleOperator where+ toJSON = toJSONText++instance FromJSON RuleOperator where+ parseJSON = parseJSONText "RuleOperator"++data SampleType+ = CPU+ | Memory+ | NativeAvgDrawtime+ | NativeFps+ | NativeFrames+ | NativeMaxDrawtime+ | NativeMinDrawtime+ | OpenglAvgDrawtime+ | OpenglFps+ | OpenglFrames+ | OpenglMaxDrawtime+ | OpenglMinDrawtime+ | RX+ | RxRate+ | TX+ | Threads+ | TxRate+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText SampleType where+ parser = takeLowerText >>= \case+ "cpu" -> pure CPU+ "memory" -> pure Memory+ "native_avg_drawtime" -> pure NativeAvgDrawtime+ "native_fps" -> pure NativeFps+ "native_frames" -> pure NativeFrames+ "native_max_drawtime" -> pure NativeMaxDrawtime+ "native_min_drawtime" -> pure NativeMinDrawtime+ "opengl_avg_drawtime" -> pure OpenglAvgDrawtime+ "opengl_fps" -> pure OpenglFps+ "opengl_frames" -> pure OpenglFrames+ "opengl_max_drawtime" -> pure OpenglMaxDrawtime+ "opengl_min_drawtime" -> pure OpenglMinDrawtime+ "rx" -> pure RX+ "rx_rate" -> pure RxRate+ "tx" -> pure TX+ "threads" -> pure Threads+ "tx_rate" -> pure TxRate+ e -> fromTextError $ "Failure parsing SampleType from value: '" <> e+ <> "'. Accepted values: cpu, memory, native_avg_drawtime, native_fps, native_frames, native_max_drawtime, native_min_drawtime, opengl_avg_drawtime, opengl_fps, opengl_frames, opengl_max_drawtime, opengl_min_drawtime, rx, rx_rate, tx, threads, tx_rate"++instance ToText SampleType where+ toText = \case+ CPU -> "cpu"+ Memory -> "memory"+ NativeAvgDrawtime -> "native_avg_drawtime"+ NativeFps -> "native_fps"+ NativeFrames -> "native_frames"+ NativeMaxDrawtime -> "native_max_drawtime"+ NativeMinDrawtime -> "native_min_drawtime"+ OpenglAvgDrawtime -> "opengl_avg_drawtime"+ OpenglFps -> "opengl_fps"+ OpenglFrames -> "opengl_frames"+ OpenglMaxDrawtime -> "opengl_max_drawtime"+ OpenglMinDrawtime -> "opengl_min_drawtime"+ RX -> "rx"+ RxRate -> "rx_rate"+ TX -> "tx"+ Threads -> "threads"+ TxRate -> "tx_rate"++instance Hashable SampleType+instance ToByteString SampleType+instance ToQuery SampleType+instance ToHeader SampleType++instance FromJSON SampleType where+ parseJSON = parseJSONText "SampleType"++data TestType+ = AppiumJavaJunit+ | AppiumJavaTestng+ | BuiltinExplorer+ | BuiltinFuzz+ | Calabash+ | Instrumentation+ | Uiautomation+ | Uiautomator+ | Xctest+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText TestType where+ parser = takeLowerText >>= \case+ "appium_java_junit" -> pure AppiumJavaJunit+ "appium_java_testng" -> pure AppiumJavaTestng+ "builtin_explorer" -> pure BuiltinExplorer+ "builtin_fuzz" -> pure BuiltinFuzz+ "calabash" -> pure Calabash+ "instrumentation" -> pure Instrumentation+ "uiautomation" -> pure Uiautomation+ "uiautomator" -> pure Uiautomator+ "xctest" -> pure Xctest+ e -> fromTextError $ "Failure parsing TestType from value: '" <> e+ <> "'. Accepted values: appium_java_junit, appium_java_testng, builtin_explorer, builtin_fuzz, calabash, instrumentation, uiautomation, uiautomator, xctest"++instance ToText TestType where+ toText = \case+ AppiumJavaJunit -> "appium_java_junit"+ AppiumJavaTestng -> "appium_java_testng"+ BuiltinExplorer -> "builtin_explorer"+ BuiltinFuzz -> "builtin_fuzz"+ Calabash -> "calabash"+ Instrumentation -> "instrumentation"+ Uiautomation -> "uiautomation"+ Uiautomator -> "uiautomator"+ Xctest -> "xctest"++instance Hashable TestType+instance ToByteString TestType+instance ToQuery TestType+instance ToHeader TestType++instance ToJSON TestType where+ toJSON = toJSONText++instance FromJSON TestType where+ parseJSON = parseJSONText "TestType"++data UploadStatus+ = USFailed+ | USInitialized+ | USProcessing+ | USSucceeded+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText UploadStatus where+ parser = takeLowerText >>= \case+ "failed" -> pure USFailed+ "initialized" -> pure USInitialized+ "processing" -> pure USProcessing+ "succeeded" -> pure USSucceeded+ e -> fromTextError $ "Failure parsing UploadStatus from value: '" <> e+ <> "'. Accepted values: failed, initialized, processing, succeeded"++instance ToText UploadStatus where+ toText = \case+ USFailed -> "failed"+ USInitialized -> "initialized"+ USProcessing -> "processing"+ USSucceeded -> "succeeded"++instance Hashable UploadStatus+instance ToByteString UploadStatus+instance ToQuery UploadStatus+instance ToHeader UploadStatus++instance FromJSON UploadStatus where+ parseJSON = parseJSONText "UploadStatus"++data UploadType+ = AndroidApp+ | AppiumJavaJunitTestPackage+ | AppiumJavaTestngTestPackage+ | CalabashTestPackage+ | ExternalData+ | InstrumentationTestPackage+ | IosApp+ | UiautomationTestPackage+ | UiautomatorTestPackage+ | XctestTestPackage+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText UploadType where+ parser = takeLowerText >>= \case+ "android_app" -> pure AndroidApp+ "appium_java_junit_test_package" -> pure AppiumJavaJunitTestPackage+ "appium_java_testng_test_package" -> pure AppiumJavaTestngTestPackage+ "calabash_test_package" -> pure CalabashTestPackage+ "external_data" -> pure ExternalData+ "instrumentation_test_package" -> pure InstrumentationTestPackage+ "ios_app" -> pure IosApp+ "uiautomation_test_package" -> pure UiautomationTestPackage+ "uiautomator_test_package" -> pure UiautomatorTestPackage+ "xctest_test_package" -> pure XctestTestPackage+ e -> fromTextError $ "Failure parsing UploadType from value: '" <> e+ <> "'. Accepted values: android_app, appium_java_junit_test_package, appium_java_testng_test_package, calabash_test_package, external_data, instrumentation_test_package, ios_app, uiautomation_test_package, uiautomator_test_package, xctest_test_package"++instance ToText UploadType where+ toText = \case+ AndroidApp -> "android_app"+ AppiumJavaJunitTestPackage -> "appium_java_junit_test_package"+ AppiumJavaTestngTestPackage -> "appium_java_testng_test_package"+ CalabashTestPackage -> "calabash_test_package"+ ExternalData -> "external_data"+ InstrumentationTestPackage -> "instrumentation_test_package"+ IosApp -> "ios_app"+ UiautomationTestPackage -> "uiautomation_test_package"+ UiautomatorTestPackage -> "uiautomator_test_package"+ XctestTestPackage -> "xctest_test_package"++instance Hashable UploadType+instance ToByteString UploadType+instance ToQuery UploadType+instance ToHeader UploadType++instance ToJSON UploadType where+ toJSON = toJSONText++instance FromJSON UploadType where+ parseJSON = parseJSONText "UploadType"
+ gen/Network/AWS/DeviceFarm/Waiters.hs view
@@ -0,0 +1,20 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.DeviceFarm.Waiters+-- Copyright : (c) 2013-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.AWS.DeviceFarm.Waiters where++import Network.AWS.DeviceFarm.Types+import Network.AWS.Prelude+import Network.AWS.Waiter
+ test/Main.hs view
@@ -0,0 +1,21 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Main+-- Copyright : (c) 2013-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 Main (main) where++import Test.Tasty+import Test.AWS.DeviceFarm+import Test.AWS.DeviceFarm.Internal++main :: IO ()+main = defaultMain $ testGroup "DeviceFarm"+ [ testGroup "tests" tests+ , testGroup "fixtures" fixtures+ ]
+ test/Test/AWS/DeviceFarm.hs view
@@ -0,0 +1,26 @@+{-# LANGUAGE OverloadedStrings #-}++-- Module : Test.AWS.DeviceFarm+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : This Source Code Form is subject to the terms of+-- the Mozilla Public License, v. 2.0.+-- A copy of the MPL can be found in the LICENSE file or+-- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : experimental+-- Portability : non-portable (GHC extensions)++module Test.AWS.DeviceFarm+ ( tests+ , fixtures+ ) where++import Network.AWS.DeviceFarm+import Test.AWS.Gen.DeviceFarm+import Test.Tasty++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/AWS/DeviceFarm/Internal.hs view
@@ -0,0 +1,16 @@+{-# LANGUAGE OverloadedStrings #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module : Test.AWS.DeviceFarm.Internal+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : This Source Code Form is subject to the terms of+-- the Mozilla Public License, v. 2.0.+-- A copy of the MPL can be found in the LICENSE file or+-- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : experimental+-- Portability : non-portable (GHC extensions)++module Test.AWS.DeviceFarm.Internal where++import Test.AWS.Prelude
+ test/Test/AWS/Gen/DeviceFarm.hs view
@@ -0,0 +1,464 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Test.AWS.Gen.DeviceFarm+-- Copyright : (c) 2013-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 Test.AWS.Gen.DeviceFarm where++import Data.Proxy+import Test.AWS.Fixture+import Test.AWS.Prelude+import Test.Tasty+import Network.AWS.DeviceFarm+import Test.AWS.DeviceFarm.Internal++-- Auto-generated: the actual test selection needs to be manually placed into+-- the top-level so that real test data can be incrementally added.+--+-- This commented snippet is what the entire set should look like:++-- fixtures :: TestTree+-- fixtures =+-- [ testGroup "request"+-- [ testListProjects $+-- listProjects+--+-- , testGetDevicePoolCompatibility $+-- getDevicePoolCompatibility+--+-- , testListTests $+-- listTests+--+-- , testCreateUpload $+-- createUpload+--+-- , testListArtifacts $+-- listArtifacts+--+-- , testGetDevicePool $+-- getDevicePool+--+-- , testGetUpload $+-- getUpload+--+-- , testListDevicePools $+-- listDevicePools+--+-- , testGetTest $+-- getTest+--+-- , testCreateDevicePool $+-- createDevicePool+--+-- , testListRuns $+-- listRuns+--+-- , testListJobs $+-- listJobs+--+-- , testGetDevice $+-- getDevice+--+-- , testGetJob $+-- getJob+--+-- , testScheduleRun $+-- scheduleRun+--+-- , testGetRun $+-- getRun+--+-- , testListSamples $+-- listSamples+--+-- , testListSuites $+-- listSuites+--+-- , testGetAccountSettings $+-- getAccountSettings+--+-- , testListUploads $+-- listUploads+--+-- , testGetSuite $+-- getSuite+--+-- , testGetProject $+-- getProject+--+-- , testListDevices $+-- listDevices+--+-- , testListUniqueProblems $+-- listUniqueProblems+--+-- , testCreateProject $+-- createProject+--+-- ]++-- , testGroup "response"+-- [ testListProjectsResponse $+-- listProjectsResponse+--+-- , testGetDevicePoolCompatibilityResponse $+-- getDevicePoolCompatibilityResponse+--+-- , testListTestsResponse $+-- listTestsResponse+--+-- , testCreateUploadResponse $+-- createUploadResponse+--+-- , testListArtifactsResponse $+-- listArtifactsResponse+--+-- , testGetDevicePoolResponse $+-- getDevicePoolResponse+--+-- , testGetUploadResponse $+-- getUploadResponse+--+-- , testListDevicePoolsResponse $+-- listDevicePoolsResponse+--+-- , testGetTestResponse $+-- getTestResponse+--+-- , testCreateDevicePoolResponse $+-- createDevicePoolResponse+--+-- , testListRunsResponse $+-- listRunsResponse+--+-- , testListJobsResponse $+-- listJobsResponse+--+-- , testGetDeviceResponse $+-- getDeviceResponse+--+-- , testGetJobResponse $+-- getJobResponse+--+-- , testScheduleRunResponse $+-- scheduleRunResponse+--+-- , testGetRunResponse $+-- getRunResponse+--+-- , testListSamplesResponse $+-- listSamplesResponse+--+-- , testListSuitesResponse $+-- listSuitesResponse+--+-- , testGetAccountSettingsResponse $+-- getAccountSettingsResponse+--+-- , testListUploadsResponse $+-- listUploadsResponse+--+-- , testGetSuiteResponse $+-- getSuiteResponse+--+-- , testGetProjectResponse $+-- getProjectResponse+--+-- , testListDevicesResponse $+-- listDevicesResponse+--+-- , testListUniqueProblemsResponse $+-- listUniqueProblemsResponse+--+-- , testCreateProjectResponse $+-- createProjectResponse+--+-- ]+-- ]++-- Requests++testListProjects :: ListProjects -> TestTree+testListProjects = req+ "ListProjects"+ "fixture/ListProjects"++testGetDevicePoolCompatibility :: GetDevicePoolCompatibility -> TestTree+testGetDevicePoolCompatibility = req+ "GetDevicePoolCompatibility"+ "fixture/GetDevicePoolCompatibility"++testListTests :: ListTests -> TestTree+testListTests = req+ "ListTests"+ "fixture/ListTests"++testCreateUpload :: CreateUpload -> TestTree+testCreateUpload = req+ "CreateUpload"+ "fixture/CreateUpload"++testListArtifacts :: ListArtifacts -> TestTree+testListArtifacts = req+ "ListArtifacts"+ "fixture/ListArtifacts"++testGetDevicePool :: GetDevicePool -> TestTree+testGetDevicePool = req+ "GetDevicePool"+ "fixture/GetDevicePool"++testGetUpload :: GetUpload -> TestTree+testGetUpload = req+ "GetUpload"+ "fixture/GetUpload"++testListDevicePools :: ListDevicePools -> TestTree+testListDevicePools = req+ "ListDevicePools"+ "fixture/ListDevicePools"++testGetTest :: GetTest -> TestTree+testGetTest = req+ "GetTest"+ "fixture/GetTest"++testCreateDevicePool :: CreateDevicePool -> TestTree+testCreateDevicePool = req+ "CreateDevicePool"+ "fixture/CreateDevicePool"++testListRuns :: ListRuns -> TestTree+testListRuns = req+ "ListRuns"+ "fixture/ListRuns"++testListJobs :: ListJobs -> TestTree+testListJobs = req+ "ListJobs"+ "fixture/ListJobs"++testGetDevice :: GetDevice -> TestTree+testGetDevice = req+ "GetDevice"+ "fixture/GetDevice"++testGetJob :: GetJob -> TestTree+testGetJob = req+ "GetJob"+ "fixture/GetJob"++testScheduleRun :: ScheduleRun -> TestTree+testScheduleRun = req+ "ScheduleRun"+ "fixture/ScheduleRun"++testGetRun :: GetRun -> TestTree+testGetRun = req+ "GetRun"+ "fixture/GetRun"++testListSamples :: ListSamples -> TestTree+testListSamples = req+ "ListSamples"+ "fixture/ListSamples"++testListSuites :: ListSuites -> TestTree+testListSuites = req+ "ListSuites"+ "fixture/ListSuites"++testGetAccountSettings :: GetAccountSettings -> TestTree+testGetAccountSettings = req+ "GetAccountSettings"+ "fixture/GetAccountSettings"++testListUploads :: ListUploads -> TestTree+testListUploads = req+ "ListUploads"+ "fixture/ListUploads"++testGetSuite :: GetSuite -> TestTree+testGetSuite = req+ "GetSuite"+ "fixture/GetSuite"++testGetProject :: GetProject -> TestTree+testGetProject = req+ "GetProject"+ "fixture/GetProject"++testListDevices :: ListDevices -> TestTree+testListDevices = req+ "ListDevices"+ "fixture/ListDevices"++testListUniqueProblems :: ListUniqueProblems -> TestTree+testListUniqueProblems = req+ "ListUniqueProblems"+ "fixture/ListUniqueProblems"++testCreateProject :: CreateProject -> TestTree+testCreateProject = req+ "CreateProject"+ "fixture/CreateProject"++-- Responses++testListProjectsResponse :: ListProjectsResponse -> TestTree+testListProjectsResponse = res+ "ListProjectsResponse"+ "fixture/ListProjectsResponse"+ (Proxy :: Proxy ListProjects)++testGetDevicePoolCompatibilityResponse :: GetDevicePoolCompatibilityResponse -> TestTree+testGetDevicePoolCompatibilityResponse = res+ "GetDevicePoolCompatibilityResponse"+ "fixture/GetDevicePoolCompatibilityResponse"+ (Proxy :: Proxy GetDevicePoolCompatibility)++testListTestsResponse :: ListTestsResponse -> TestTree+testListTestsResponse = res+ "ListTestsResponse"+ "fixture/ListTestsResponse"+ (Proxy :: Proxy ListTests)++testCreateUploadResponse :: CreateUploadResponse -> TestTree+testCreateUploadResponse = res+ "CreateUploadResponse"+ "fixture/CreateUploadResponse"+ (Proxy :: Proxy CreateUpload)++testListArtifactsResponse :: ListArtifactsResponse -> TestTree+testListArtifactsResponse = res+ "ListArtifactsResponse"+ "fixture/ListArtifactsResponse"+ (Proxy :: Proxy ListArtifacts)++testGetDevicePoolResponse :: GetDevicePoolResponse -> TestTree+testGetDevicePoolResponse = res+ "GetDevicePoolResponse"+ "fixture/GetDevicePoolResponse"+ (Proxy :: Proxy GetDevicePool)++testGetUploadResponse :: GetUploadResponse -> TestTree+testGetUploadResponse = res+ "GetUploadResponse"+ "fixture/GetUploadResponse"+ (Proxy :: Proxy GetUpload)++testListDevicePoolsResponse :: ListDevicePoolsResponse -> TestTree+testListDevicePoolsResponse = res+ "ListDevicePoolsResponse"+ "fixture/ListDevicePoolsResponse"+ (Proxy :: Proxy ListDevicePools)++testGetTestResponse :: GetTestResponse -> TestTree+testGetTestResponse = res+ "GetTestResponse"+ "fixture/GetTestResponse"+ (Proxy :: Proxy GetTest)++testCreateDevicePoolResponse :: CreateDevicePoolResponse -> TestTree+testCreateDevicePoolResponse = res+ "CreateDevicePoolResponse"+ "fixture/CreateDevicePoolResponse"+ (Proxy :: Proxy CreateDevicePool)++testListRunsResponse :: ListRunsResponse -> TestTree+testListRunsResponse = res+ "ListRunsResponse"+ "fixture/ListRunsResponse"+ (Proxy :: Proxy ListRuns)++testListJobsResponse :: ListJobsResponse -> TestTree+testListJobsResponse = res+ "ListJobsResponse"+ "fixture/ListJobsResponse"+ (Proxy :: Proxy ListJobs)++testGetDeviceResponse :: GetDeviceResponse -> TestTree+testGetDeviceResponse = res+ "GetDeviceResponse"+ "fixture/GetDeviceResponse"+ (Proxy :: Proxy GetDevice)++testGetJobResponse :: GetJobResponse -> TestTree+testGetJobResponse = res+ "GetJobResponse"+ "fixture/GetJobResponse"+ (Proxy :: Proxy GetJob)++testScheduleRunResponse :: ScheduleRunResponse -> TestTree+testScheduleRunResponse = res+ "ScheduleRunResponse"+ "fixture/ScheduleRunResponse"+ (Proxy :: Proxy ScheduleRun)++testGetRunResponse :: GetRunResponse -> TestTree+testGetRunResponse = res+ "GetRunResponse"+ "fixture/GetRunResponse"+ (Proxy :: Proxy GetRun)++testListSamplesResponse :: ListSamplesResponse -> TestTree+testListSamplesResponse = res+ "ListSamplesResponse"+ "fixture/ListSamplesResponse"+ (Proxy :: Proxy ListSamples)++testListSuitesResponse :: ListSuitesResponse -> TestTree+testListSuitesResponse = res+ "ListSuitesResponse"+ "fixture/ListSuitesResponse"+ (Proxy :: Proxy ListSuites)++testGetAccountSettingsResponse :: GetAccountSettingsResponse -> TestTree+testGetAccountSettingsResponse = res+ "GetAccountSettingsResponse"+ "fixture/GetAccountSettingsResponse"+ (Proxy :: Proxy GetAccountSettings)++testListUploadsResponse :: ListUploadsResponse -> TestTree+testListUploadsResponse = res+ "ListUploadsResponse"+ "fixture/ListUploadsResponse"+ (Proxy :: Proxy ListUploads)++testGetSuiteResponse :: GetSuiteResponse -> TestTree+testGetSuiteResponse = res+ "GetSuiteResponse"+ "fixture/GetSuiteResponse"+ (Proxy :: Proxy GetSuite)++testGetProjectResponse :: GetProjectResponse -> TestTree+testGetProjectResponse = res+ "GetProjectResponse"+ "fixture/GetProjectResponse"+ (Proxy :: Proxy GetProject)++testListDevicesResponse :: ListDevicesResponse -> TestTree+testListDevicesResponse = res+ "ListDevicesResponse"+ "fixture/ListDevicesResponse"+ (Proxy :: Proxy ListDevices)++testListUniqueProblemsResponse :: ListUniqueProblemsResponse -> TestTree+testListUniqueProblemsResponse = res+ "ListUniqueProblemsResponse"+ "fixture/ListUniqueProblemsResponse"+ (Proxy :: Proxy ListUniqueProblems)++testCreateProjectResponse :: CreateProjectResponse -> TestTree+testCreateProjectResponse = res+ "CreateProjectResponse"+ "fixture/CreateProjectResponse"+ (Proxy :: Proxy CreateProject)