amazonka-iottwinmaker (empty) → 2.0
raw patch · 182 files changed
+19086/−0 lines, 182 filesdep +amazonka-coredep +amazonka-iottwinmakerdep +amazonka-test
Dependencies added: amazonka-core, amazonka-iottwinmaker, amazonka-test, base, bytestring, case-insensitive, tasty, tasty-hunit, text, time, unordered-containers
Files
- LICENSE +367/−0
- README.md +44/−0
- amazonka-iottwinmaker.cabal +185/−0
- fixture/BatchPutPropertyValues.yaml +10/−0
- fixture/BatchPutPropertyValuesResponse.proto +0/−0
- fixture/CreateComponentType.yaml +10/−0
- fixture/CreateComponentTypeResponse.proto +0/−0
- fixture/CreateEntity.yaml +10/−0
- fixture/CreateEntityResponse.proto +0/−0
- fixture/CreateScene.yaml +10/−0
- fixture/CreateSceneResponse.proto +0/−0
- fixture/CreateSyncJob.yaml +10/−0
- fixture/CreateSyncJobResponse.proto +0/−0
- fixture/CreateWorkspace.yaml +10/−0
- fixture/CreateWorkspaceResponse.proto +0/−0
- fixture/DeleteComponentType.yaml +10/−0
- fixture/DeleteComponentTypeResponse.proto +0/−0
- fixture/DeleteEntity.yaml +10/−0
- fixture/DeleteEntityResponse.proto +0/−0
- fixture/DeleteScene.yaml +10/−0
- fixture/DeleteSceneResponse.proto +0/−0
- fixture/DeleteSyncJob.yaml +10/−0
- fixture/DeleteSyncJobResponse.proto +0/−0
- fixture/DeleteWorkspace.yaml +10/−0
- fixture/DeleteWorkspaceResponse.proto +0/−0
- fixture/ExecuteQuery.yaml +10/−0
- fixture/ExecuteQueryResponse.proto +0/−0
- fixture/GetComponentType.yaml +10/−0
- fixture/GetComponentTypeResponse.proto +0/−0
- fixture/GetEntity.yaml +10/−0
- fixture/GetEntityResponse.proto +0/−0
- fixture/GetPricingPlan.yaml +10/−0
- fixture/GetPricingPlanResponse.proto +0/−0
- fixture/GetPropertyValue.yaml +10/−0
- fixture/GetPropertyValueHistory.yaml +10/−0
- fixture/GetPropertyValueHistoryResponse.proto +0/−0
- fixture/GetPropertyValueResponse.proto +0/−0
- fixture/GetScene.yaml +10/−0
- fixture/GetSceneResponse.proto +0/−0
- fixture/GetSyncJob.yaml +10/−0
- fixture/GetSyncJobResponse.proto +0/−0
- fixture/GetWorkspace.yaml +10/−0
- fixture/GetWorkspaceResponse.proto +0/−0
- fixture/ListComponentTypes.yaml +10/−0
- fixture/ListComponentTypesResponse.proto +0/−0
- fixture/ListEntities.yaml +10/−0
- fixture/ListEntitiesResponse.proto +0/−0
- fixture/ListScenes.yaml +10/−0
- fixture/ListScenesResponse.proto +0/−0
- fixture/ListSyncJobs.yaml +10/−0
- fixture/ListSyncJobsResponse.proto +0/−0
- fixture/ListSyncResources.yaml +10/−0
- fixture/ListSyncResourcesResponse.proto +0/−0
- fixture/ListTagsForResource.yaml +10/−0
- fixture/ListTagsForResourceResponse.proto +0/−0
- fixture/ListWorkspaces.yaml +10/−0
- fixture/ListWorkspacesResponse.proto +0/−0
- fixture/TagResource.yaml +10/−0
- fixture/TagResourceResponse.proto +0/−0
- fixture/UntagResource.yaml +10/−0
- fixture/UntagResourceResponse.proto +0/−0
- fixture/UpdateComponentType.yaml +10/−0
- fixture/UpdateComponentTypeResponse.proto +0/−0
- fixture/UpdateEntity.yaml +10/−0
- fixture/UpdateEntityResponse.proto +0/−0
- fixture/UpdatePricingPlan.yaml +10/−0
- fixture/UpdatePricingPlanResponse.proto +0/−0
- fixture/UpdateScene.yaml +10/−0
- fixture/UpdateSceneResponse.proto +0/−0
- fixture/UpdateWorkspace.yaml +10/−0
- fixture/UpdateWorkspaceResponse.proto +0/−0
- gen/Amazonka/IotTwinMaker.hs +590/−0
- gen/Amazonka/IotTwinMaker/BatchPutPropertyValues.hs +199/−0
- gen/Amazonka/IotTwinMaker/CreateComponentType.hs +340/−0
- gen/Amazonka/IotTwinMaker/CreateEntity.hs +301/−0
- gen/Amazonka/IotTwinMaker/CreateScene.hs +263/−0
- gen/Amazonka/IotTwinMaker/CreateSyncJob.hs +265/−0
- gen/Amazonka/IotTwinMaker/CreateWorkspace.hs +248/−0
- gen/Amazonka/IotTwinMaker/DeleteComponentType.hs +185/−0
- gen/Amazonka/IotTwinMaker/DeleteEntity.hs +196/−0
- gen/Amazonka/IotTwinMaker/DeleteScene.hs +163/−0
- gen/Amazonka/IotTwinMaker/DeleteSyncJob.hs +188/−0
- gen/Amazonka/IotTwinMaker/DeleteWorkspace.hs +144/−0
- gen/Amazonka/IotTwinMaker/ExecuteQuery.hs +243/−0
- gen/Amazonka/IotTwinMaker/GetComponentType.hs +403/−0
- gen/Amazonka/IotTwinMaker/GetEntity.hs +348/−0
- gen/Amazonka/IotTwinMaker/GetPricingPlan.hs +157/−0
- gen/Amazonka/IotTwinMaker/GetPropertyValue.hs +332/−0
- gen/Amazonka/IotTwinMaker/GetPropertyValueHistory.hs +410/−0
- gen/Amazonka/IotTwinMaker/GetScene.hs +285/−0
- gen/Amazonka/IotTwinMaker/GetSyncJob.hs +280/−0
- gen/Amazonka/IotTwinMaker/GetWorkspace.hs +252/−0
- gen/Amazonka/IotTwinMaker/Lens.hs +715/−0
- gen/Amazonka/IotTwinMaker/ListComponentTypes.hs +261/−0
- gen/Amazonka/IotTwinMaker/ListEntities.hs +237/−0
- gen/Amazonka/IotTwinMaker/ListScenes.hs +208/−0
- gen/Amazonka/IotTwinMaker/ListSyncJobs.hs +217/−0
- gen/Amazonka/IotTwinMaker/ListSyncResources.hs +252/−0
- gen/Amazonka/IotTwinMaker/ListTagsForResource.hs +213/−0
- gen/Amazonka/IotTwinMaker/ListWorkspaces.hs +201/−0
- gen/Amazonka/IotTwinMaker/TagResource.hs +164/−0
- gen/Amazonka/IotTwinMaker/Types.hs +692/−0
- gen/Amazonka/IotTwinMaker/Types/BatchPutPropertyError.hs +109/−0
- gen/Amazonka/IotTwinMaker/Types/BatchPutPropertyErrorEntry.hs +79/−0
- gen/Amazonka/IotTwinMaker/Types/BundleInformation.hs +87/−0
- gen/Amazonka/IotTwinMaker/Types/ColumnDescription.hs +84/−0
- gen/Amazonka/IotTwinMaker/Types/ColumnType.hs +76/−0
- gen/Amazonka/IotTwinMaker/Types/ComponentPropertyGroupRequest.hs +101/−0
- gen/Amazonka/IotTwinMaker/Types/ComponentPropertyGroupResponse.hs +115/−0
- gen/Amazonka/IotTwinMaker/Types/ComponentRequest.hs +116/−0
- gen/Amazonka/IotTwinMaker/Types/ComponentResponse.hs +166/−0
- gen/Amazonka/IotTwinMaker/Types/ComponentTypeSummary.hs +159/−0
- gen/Amazonka/IotTwinMaker/Types/ComponentUpdateRequest.hs +129/−0
- gen/Amazonka/IotTwinMaker/Types/ComponentUpdateType.hs +76/−0
- gen/Amazonka/IotTwinMaker/Types/DataConnector.hs +97/−0
- gen/Amazonka/IotTwinMaker/Types/DataType.hs +137/−0
- gen/Amazonka/IotTwinMaker/Types/DataValue.hs +186/−0
- gen/Amazonka/IotTwinMaker/Types/EntityPropertyReference.hs +129/−0
- gen/Amazonka/IotTwinMaker/Types/EntitySummary.hs +191/−0
- gen/Amazonka/IotTwinMaker/Types/ErrorCode.hs +86/−0
- gen/Amazonka/IotTwinMaker/Types/ErrorDetails.hs +84/−0
- gen/Amazonka/IotTwinMaker/Types/FunctionRequest.hs +98/−0
- gen/Amazonka/IotTwinMaker/Types/FunctionResponse.hs +113/−0
- gen/Amazonka/IotTwinMaker/Types/GroupType.hs +66/−0
- gen/Amazonka/IotTwinMaker/Types/InterpolationParameters.hs +87/−0
- gen/Amazonka/IotTwinMaker/Types/InterpolationType.hs +66/−0
- gen/Amazonka/IotTwinMaker/Types/LambdaFunction.hs +76/−0
- gen/Amazonka/IotTwinMaker/Types/ListComponentTypesFilter.hs +101/−0
- gen/Amazonka/IotTwinMaker/Types/ListEntitiesFilter.hs +101/−0
- gen/Amazonka/IotTwinMaker/Types/Order.hs +68/−0
- gen/Amazonka/IotTwinMaker/Types/OrderBy.hs +87/−0
- gen/Amazonka/IotTwinMaker/Types/OrderByTime.hs +71/−0
- gen/Amazonka/IotTwinMaker/Types/ParentEntityUpdateRequest.hs +88/−0
- gen/Amazonka/IotTwinMaker/Types/ParentEntityUpdateType.hs +71/−0
- gen/Amazonka/IotTwinMaker/Types/PricingMode.hs +76/−0
- gen/Amazonka/IotTwinMaker/Types/PricingPlan.hs +148/−0
- gen/Amazonka/IotTwinMaker/Types/PricingTier.hs +81/−0
- gen/Amazonka/IotTwinMaker/Types/PropertyDefinitionRequest.hs +175/−0
- gen/Amazonka/IotTwinMaker/Types/PropertyDefinitionResponse.hs +241/−0
- gen/Amazonka/IotTwinMaker/Types/PropertyFilter.hs +96/−0
- gen/Amazonka/IotTwinMaker/Types/PropertyGroupRequest.hs +84/−0
- gen/Amazonka/IotTwinMaker/Types/PropertyGroupResponse.hs +104/−0
- gen/Amazonka/IotTwinMaker/Types/PropertyGroupUpdateType.hs +76/−0
- gen/Amazonka/IotTwinMaker/Types/PropertyLatestValue.hs +89/−0
- gen/Amazonka/IotTwinMaker/Types/PropertyRequest.hs +98/−0
- gen/Amazonka/IotTwinMaker/Types/PropertyResponse.hs +86/−0
- gen/Amazonka/IotTwinMaker/Types/PropertyUpdateType.hs +76/−0
- gen/Amazonka/IotTwinMaker/Types/PropertyValue.hs +185/−0
- gen/Amazonka/IotTwinMaker/Types/PropertyValueEntry.hs +108/−0
- gen/Amazonka/IotTwinMaker/Types/PropertyValueHistory.hs +91/−0
- gen/Amazonka/IotTwinMaker/Types/QueryResultValue.hs +52/−0
- gen/Amazonka/IotTwinMaker/Types/Relationship.hs +95/−0
- gen/Amazonka/IotTwinMaker/Types/RelationshipValue.hs +96/−0
- gen/Amazonka/IotTwinMaker/Types/Row.hs +68/−0
- gen/Amazonka/IotTwinMaker/Types/SceneSummary.hs +151/−0
- gen/Amazonka/IotTwinMaker/Types/Scope.hs +68/−0
- gen/Amazonka/IotTwinMaker/Types/State.hs +83/−0
- gen/Amazonka/IotTwinMaker/Types/Status.hs +89/−0
- gen/Amazonka/IotTwinMaker/Types/SyncJobState.hs +86/−0
- gen/Amazonka/IotTwinMaker/Types/SyncJobStatus.hs +85/−0
- gen/Amazonka/IotTwinMaker/Types/SyncJobSummary.hs +133/−0
- gen/Amazonka/IotTwinMaker/Types/SyncResourceFilter.hs +109/−0
- gen/Amazonka/IotTwinMaker/Types/SyncResourceState.hs +86/−0
- gen/Amazonka/IotTwinMaker/Types/SyncResourceStatus.hs +85/−0
- gen/Amazonka/IotTwinMaker/Types/SyncResourceSummary.hs +122/−0
- gen/Amazonka/IotTwinMaker/Types/SyncResourceType.hs +71/−0
- gen/Amazonka/IotTwinMaker/Types/TabularConditions.hs +98/−0
- gen/Amazonka/IotTwinMaker/Types/Type.hs +98/−0
- gen/Amazonka/IotTwinMaker/Types/UpdateReason.hs +86/−0
- gen/Amazonka/IotTwinMaker/Types/WorkspaceSummary.hs +133/−0
- gen/Amazonka/IotTwinMaker/UntagResource.hs +165/−0
- gen/Amazonka/IotTwinMaker/UpdateComponentType.hs +343/−0
- gen/Amazonka/IotTwinMaker/UpdateEntity.hs +261/−0
- gen/Amazonka/IotTwinMaker/UpdatePricingPlan.hs +198/−0
- gen/Amazonka/IotTwinMaker/UpdateScene.hs +230/−0
- gen/Amazonka/IotTwinMaker/UpdateWorkspace.hs +200/−0
- gen/Amazonka/IotTwinMaker/Waiters.hs +24/−0
- src/.gitkeep +0/−0
- test/Main.hs +23/−0
- test/Test/Amazonka/Gen/IotTwinMaker.hs +718/−0
- test/Test/Amazonka/IotTwinMaker.hs +20/−0
- test/Test/Amazonka/IotTwinMaker/Internal.hs +8/−0
+ LICENSE view
@@ -0,0 +1,367 @@+Mozilla Public License Version 2.0+==================================++1. Definitions+--------------++1.1. "Contributor"+ means each individual or legal entity that creates, contributes to+ the creation of, or owns Covered Software.++1.2. "Contributor Version"+ means the combination of the Contributions of others (if any) used+ by a Contributor and that particular Contributor's Contribution.++1.3. "Contribution"+ means Covered Software of a particular Contributor.++1.4. "Covered Software"+ means Source Code Form to which the initial Contributor has attached+ the notice in Exhibit A, the Executable Form of such Source Code+ Form, and Modifications of such Source Code Form, in each case+ including portions thereof.++1.5. "Incompatible With Secondary Licenses"+ means++ (a) that the initial Contributor has attached the notice described+ in Exhibit B to the Covered Software; or++ (b) that the Covered Software was made available under the terms of+ version 1.1 or earlier of the License, but not also under the+ terms of a Secondary License.++1.6. "Executable Form"+ means any form of the work other than Source Code Form.++1.7. "Larger Work"+ means a work that combines Covered Software with other material, in+ a separate file or files, that is not Covered Software.++1.8. "License"+ means this document.++1.9. "Licensable"+ means having the right to grant, to the maximum extent possible,+ whether at the time of the initial grant or subsequently, any and+ all of the rights conveyed by this License.++1.10. "Modifications"+ means any of the following:++ (a) any file in Source Code Form that results from an addition to,+ deletion from, or modification of the contents of Covered+ Software; or++ (b) any new file in Source Code Form that contains any Covered+ Software.++1.11. "Patent Claims" of a Contributor+ means any patent claim(s), including without limitation, method,+ process, and apparatus claims, in any patent Licensable by such+ Contributor that would be infringed, but for the grant of the+ License, by the making, using, selling, offering for sale, having+ made, import, or transfer of either its Contributions or its+ Contributor Version.++1.12. "Secondary License"+ means either the GNU General Public License, Version 2.0, the GNU+ Lesser General Public License, Version 2.1, the GNU Affero General+ Public License, Version 3.0, or any later versions of those+ licenses.++1.13. "Source Code Form"+ means the form of the work preferred for making modifications.++1.14. "You" (or "Your")+ means an individual or a legal entity exercising rights under this+ License. For legal entities, "You" includes any entity that+ controls, is controlled by, or is under common control with You. For+ purposes of this definition, "control" means (a) the power, direct+ or indirect, to cause the direction or management of such entity,+ whether by contract or otherwise, or (b) ownership of more than+ fifty percent (50%) of the outstanding shares or beneficial+ ownership of such entity.++2. License Grants and Conditions+--------------------------------++2.1. Grants++Each Contributor hereby grants You a world-wide, royalty-free,+non-exclusive license:++(a) under intellectual property rights (other than patent or trademark)+ Licensable by such Contributor to use, reproduce, make available,+ modify, display, perform, distribute, and otherwise exploit its+ Contributions, either on an unmodified basis, with Modifications, or+ as part of a Larger Work; and++(b) under Patent Claims of such Contributor to make, use, sell, offer+ for sale, have made, import, and otherwise transfer either its+ Contributions or its Contributor Version.++2.2. Effective Date++The licenses granted in Section 2.1 with respect to any Contribution+become effective for each Contribution on the date the Contributor first+distributes such Contribution.++2.3. Limitations on Grant Scope++The licenses granted in this Section 2 are the only rights granted under+this License. No additional rights or licenses will be implied from the+distribution or licensing of Covered Software under this License.+Notwithstanding Section 2.1(b) above, no patent license is granted by a+Contributor:++(a) for any code that a Contributor has removed from Covered Software;+ or++(b) for infringements caused by: (i) Your and any other third party's+ modifications of Covered Software, or (ii) the combination of its+ Contributions with other software (except as part of its Contributor+ Version); or++(c) under Patent Claims infringed by Covered Software in the absence of+ its Contributions.++This License does not grant any rights in the trademarks, service marks,+or logos of any Contributor (except as may be necessary to comply with+the notice requirements in Section 3.4).++2.4. Subsequent Licenses++No Contributor makes additional grants as a result of Your choice to+distribute the Covered Software under a subsequent version of this+License (see Section 10.2) or under the terms of a Secondary License (if+permitted under the terms of Section 3.3).++2.5. Representation++Each Contributor represents that the Contributor believes its+Contributions are its original creation(s) or it has sufficient rights+to grant the rights to its Contributions conveyed by this License.++2.6. Fair Use++This License is not intended to limit any rights You have under+applicable copyright doctrines of fair use, fair dealing, or other+equivalents.++2.7. Conditions++Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted+in Section 2.1.++3. Responsibilities+-------------------++3.1. Distribution of Source Form++All distribution of Covered Software in Source Code Form, including any+Modifications that You create or to which You contribute, must be under+the terms of this License. You must inform recipients that the Source+Code Form of the Covered Software is governed by the terms of this+License, and how they can obtain a copy of this License. You may not+attempt to alter or restrict the recipients' rights in the Source Code+Form.++3.2. Distribution of Executable Form++If You distribute Covered Software in Executable Form then:++(a) such Covered Software must also be made available in Source Code+ Form, as described in Section 3.1, and You must inform recipients of+ the Executable Form how they can obtain a copy of such Source Code+ Form by reasonable means in a timely manner, at a charge no more+ than the cost of distribution to the recipient; and++(b) You may distribute such Executable Form under the terms of this+ License, or sublicense it under different terms, provided that the+ license for the Executable Form does not attempt to limit or alter+ the recipients' rights in the Source Code Form under this License.++3.3. Distribution of a Larger Work++You may create and distribute a Larger Work under terms of Your choice,+provided that You also comply with the requirements of this License for+the Covered Software. If the Larger Work is a combination of Covered+Software with a work governed by one or more Secondary Licenses, and the+Covered Software is not Incompatible With Secondary Licenses, this+License permits You to additionally distribute such Covered Software+under the terms of such Secondary License(s), so that the recipient of+the Larger Work may, at their option, further distribute the Covered+Software under the terms of either this License or such Secondary+License(s).++3.4. Notices++You may not remove or alter the substance of any license notices+(including copyright notices, patent notices, disclaimers of warranty,+or limitations of liability) contained within the Source Code Form of+the Covered Software, except that You may alter any license notices to+the extent required to remedy known factual inaccuracies.++3.5. Application of Additional Terms++You may choose to offer, and to charge a fee for, warranty, support,+indemnity or liability obligations to one or more recipients of Covered+Software. However, You may do so only on Your own behalf, and not on+behalf of any Contributor. You must make it absolutely clear that any+such warranty, support, indemnity, or liability obligation is offered by+You alone, and You hereby agree to indemnify every Contributor for any+liability incurred by such Contributor as a result of warranty, support,+indemnity or liability terms You offer. You may include additional+disclaimers of warranty and limitations of liability specific to any+jurisdiction.++4. Inability to Comply Due to Statute or Regulation+---------------------------------------------------++If it is impossible for You to comply with any of the terms of this+License with respect to some or all of the Covered Software due to+statute, judicial order, or regulation then You must: (a) comply with+the terms of this License to the maximum extent possible; and (b)+describe the limitations and the code they affect. Such description must+be placed in a text file included with all distributions of the Covered+Software under this License. Except to the extent prohibited by statute+or regulation, such description must be sufficiently detailed for a+recipient of ordinary skill to be able to understand it.++5. Termination+--------------++5.1. The rights granted under this License will terminate automatically+if You fail to comply with any of its terms. However, if You become+compliant, then the rights granted under this License from a particular+Contributor are reinstated (a) provisionally, unless and until such+Contributor explicitly and finally terminates Your grants, and (b) on an+ongoing basis, if such Contributor fails to notify You of the+non-compliance by some reasonable means prior to 60 days after You have+come back into compliance. Moreover, Your grants from a particular+Contributor are reinstated on an ongoing basis if such Contributor+notifies You of the non-compliance by some reasonable means, this is the+first time You have received notice of non-compliance with this License+from such Contributor, and You become compliant prior to 30 days after+Your receipt of the notice.++5.2. If You initiate litigation against any entity by asserting a patent+infringement claim (excluding declaratory judgment actions,+counter-claims, and cross-claims) alleging that a Contributor Version+directly or indirectly infringes any patent, then the rights granted to+You by any and all Contributors for the Covered Software under Section+2.1 of this License shall terminate.++5.3. In the event of termination under Sections 5.1 or 5.2 above, all+end user license agreements (excluding distributors and resellers) which+have been validly granted by You or Your distributors under this License+prior to termination shall survive termination.++************************************************************************+* *+* 6. Disclaimer of Warranty *+* ------------------------- *+* *+* Covered Software is provided under this License on an "as is" *+* basis, without warranty of any kind, either expressed, implied, or *+* statutory, including, without limitation, warranties that the *+* Covered Software is free of defects, merchantable, fit for a *+* particular purpose or non-infringing. The entire risk as to the *+* quality and performance of the Covered Software is with You. *+* Should any Covered Software prove defective in any respect, You *+* (not any Contributor) assume the cost of any necessary servicing, *+* repair, or correction. This disclaimer of warranty constitutes an *+* essential part of this License. No use of any Covered Software is *+* authorized under this License except under this disclaimer. *+* *+************************************************************************++************************************************************************+* *+* 7. Limitation of Liability *+* -------------------------- *+* *+* Under no circumstances and under no legal theory, whether tort *+* (including negligence), contract, or otherwise, shall any *+* Contributor, or anyone who distributes Covered Software as *+* permitted above, be liable to You for any direct, indirect, *+* special, incidental, or consequential damages of any character *+* including, without limitation, damages for lost profits, loss of *+* goodwill, work stoppage, computer failure or malfunction, or any *+* and all other commercial damages or losses, even if such party *+* shall have been informed of the possibility of such damages. This *+* limitation of liability shall not apply to liability for death or *+* personal injury resulting from such party's negligence to the *+* extent applicable law prohibits such limitation. Some *+* jurisdictions do not allow the exclusion or limitation of *+* incidental or consequential damages, so this exclusion and *+* limitation may not apply to You. *+* *+************************************************************************++8. Litigation+-------------++Any litigation relating to this License may be brought only in the+courts of a jurisdiction where the defendant maintains its principal+place of business and such litigation shall be governed by laws of that+jurisdiction, without reference to its conflict-of-law provisions.+Nothing in this Section shall prevent a party's ability to bring+cross-claims or counter-claims.++9. Miscellaneous+----------------++This License represents the complete agreement concerning the subject+matter hereof. If any provision of this License is held to be+unenforceable, such provision shall be reformed only to the extent+necessary to make it enforceable. Any law or regulation which provides+that the language of a contract shall be construed against the drafter+shall not be used to construe this License against a Contributor.++10. Versions of the License+---------------------------++10.1. New Versions++Mozilla Foundation is the license steward. Except as provided in Section+10.3, no one other than the license steward has the right to modify or+publish new versions of this License. Each version will be given a+distinguishing version number.++10.2. Effect of New Versions++You may distribute the Covered Software under the terms of the version+of the License under which You originally received the Covered Software,+or under the terms of any subsequent version published by the license+steward.++10.3. Modified Versions++If you create software not governed by this License, and you want to+create a new license for such software, you may create and use a+modified version of this License if you rename the license and remove+any references to the name of the license steward (except to note that+such modified license differs from this License).++10.4. Distributing Source Code Form that is Incompatible With Secondary+Licenses++If You choose to distribute Source Code Form that is Incompatible With+Secondary Licenses under the terms of this version of the License, the+notice described in Exhibit B of this License must be attached.++Exhibit A - Source Code Form License Notice+-------------------------------------------++ This Source Code Form is subject to the terms of the Mozilla Public+ License, v. 2.0. If a copy of the MPL was not distributed with this+ file, You can obtain one at http://mozilla.org/MPL/2.0/.++If it is not possible or desirable to put the notice in a particular+file, then You may include the notice in a location (such as a LICENSE+file in a relevant directory) where a recipient would be likely to look+for such a notice.++You may add additional accurate notices of copyright ownership.
+ README.md view
@@ -0,0 +1,44 @@+# Amazon IoT TwinMaker SDK++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version+ +`2.0` - Derived from API version @2021-11-29@ of the AWS service descriptions, licensed under Apache 2.0.++## Description++Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-iottwinmaker)+and the [AWS API Reference](https://aws.amazon.com/documentation/).++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, sending requests,+and receiving responses.++Lenses are used for constructing and manipulating types,+due to the depth 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).++See [Amazonka.IotTwinMaker](http://hackage.haskell.org/package/amazonka-iottwinmaker/docs/Amazonka-IotTwinMaker.html)+or [the AWS documentation](https://aws.amazon.com/documentation/) to get started.+++## 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-iottwinmaker` 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.
+ amazonka-iottwinmaker.cabal view
@@ -0,0 +1,185 @@+cabal-version: 2.2+name: amazonka-iottwinmaker+version: 2.0+synopsis: Amazon IoT TwinMaker SDK.+homepage: https://github.com/brendanhay/amazonka+bug-reports: https://github.com/brendanhay/amazonka/issues+license: MPL-2.0+license-file: LICENSE+author: Brendan Hay+maintainer:+ Brendan Hay <brendan.g.hay+amazonka@gmail.com>, Jack Kelly <jack@jackkelly.name>++copyright: Copyright (c) 2013-2023 Brendan Hay+category: AWS+build-type: Simple+extra-source-files:+ fixture/*.proto+ fixture/*.yaml+ README.md+ src/.gitkeep++description:+ Derived from API version @2021-11-29@ of the AWS service descriptions, licensed under Apache 2.0.+ .+ 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, sending requests, and receiving responses.+ .+ It is recommended to use generic lenses or optics from packages such as <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify optional fields and deconstruct responses.+ .+ Generated lenses can be found in "Amazonka.IotTwinMaker.Lens" and are+ suitable for use with a lens package such as <http://hackage.haskell.org/package/lens lens> or <http://hackage.haskell.org/package/lens-family-core lens-family-core>.+ .+ See "Amazonka.IotTwinMaker" and the <https://aws.amazon.com/documentation/ AWS documentation> to get started.++source-repository head+ type: git+ location: git://github.com/brendanhay/amazonka.git+ subdir: amazonka-iottwinmaker++library+ default-language: Haskell2010+ hs-source-dirs: src gen+ ghc-options:+ -Wall -fwarn-incomplete-uni-patterns+ -fwarn-incomplete-record-updates -funbox-strict-fields++ exposed-modules:+ Amazonka.IotTwinMaker+ Amazonka.IotTwinMaker.BatchPutPropertyValues+ Amazonka.IotTwinMaker.CreateComponentType+ Amazonka.IotTwinMaker.CreateEntity+ Amazonka.IotTwinMaker.CreateScene+ Amazonka.IotTwinMaker.CreateSyncJob+ Amazonka.IotTwinMaker.CreateWorkspace+ Amazonka.IotTwinMaker.DeleteComponentType+ Amazonka.IotTwinMaker.DeleteEntity+ Amazonka.IotTwinMaker.DeleteScene+ Amazonka.IotTwinMaker.DeleteSyncJob+ Amazonka.IotTwinMaker.DeleteWorkspace+ Amazonka.IotTwinMaker.ExecuteQuery+ Amazonka.IotTwinMaker.GetComponentType+ Amazonka.IotTwinMaker.GetEntity+ Amazonka.IotTwinMaker.GetPricingPlan+ Amazonka.IotTwinMaker.GetPropertyValue+ Amazonka.IotTwinMaker.GetPropertyValueHistory+ Amazonka.IotTwinMaker.GetScene+ Amazonka.IotTwinMaker.GetSyncJob+ Amazonka.IotTwinMaker.GetWorkspace+ Amazonka.IotTwinMaker.Lens+ Amazonka.IotTwinMaker.ListComponentTypes+ Amazonka.IotTwinMaker.ListEntities+ Amazonka.IotTwinMaker.ListScenes+ Amazonka.IotTwinMaker.ListSyncJobs+ Amazonka.IotTwinMaker.ListSyncResources+ Amazonka.IotTwinMaker.ListTagsForResource+ Amazonka.IotTwinMaker.ListWorkspaces+ Amazonka.IotTwinMaker.TagResource+ Amazonka.IotTwinMaker.Types+ Amazonka.IotTwinMaker.Types.BatchPutPropertyError+ Amazonka.IotTwinMaker.Types.BatchPutPropertyErrorEntry+ Amazonka.IotTwinMaker.Types.BundleInformation+ Amazonka.IotTwinMaker.Types.ColumnDescription+ Amazonka.IotTwinMaker.Types.ColumnType+ Amazonka.IotTwinMaker.Types.ComponentPropertyGroupRequest+ Amazonka.IotTwinMaker.Types.ComponentPropertyGroupResponse+ Amazonka.IotTwinMaker.Types.ComponentRequest+ Amazonka.IotTwinMaker.Types.ComponentResponse+ Amazonka.IotTwinMaker.Types.ComponentTypeSummary+ Amazonka.IotTwinMaker.Types.ComponentUpdateRequest+ Amazonka.IotTwinMaker.Types.ComponentUpdateType+ Amazonka.IotTwinMaker.Types.DataConnector+ Amazonka.IotTwinMaker.Types.DataType+ Amazonka.IotTwinMaker.Types.DataValue+ Amazonka.IotTwinMaker.Types.EntityPropertyReference+ Amazonka.IotTwinMaker.Types.EntitySummary+ Amazonka.IotTwinMaker.Types.ErrorCode+ Amazonka.IotTwinMaker.Types.ErrorDetails+ Amazonka.IotTwinMaker.Types.FunctionRequest+ Amazonka.IotTwinMaker.Types.FunctionResponse+ Amazonka.IotTwinMaker.Types.GroupType+ Amazonka.IotTwinMaker.Types.InterpolationParameters+ Amazonka.IotTwinMaker.Types.InterpolationType+ Amazonka.IotTwinMaker.Types.LambdaFunction+ Amazonka.IotTwinMaker.Types.ListComponentTypesFilter+ Amazonka.IotTwinMaker.Types.ListEntitiesFilter+ Amazonka.IotTwinMaker.Types.Order+ Amazonka.IotTwinMaker.Types.OrderBy+ Amazonka.IotTwinMaker.Types.OrderByTime+ Amazonka.IotTwinMaker.Types.ParentEntityUpdateRequest+ Amazonka.IotTwinMaker.Types.ParentEntityUpdateType+ Amazonka.IotTwinMaker.Types.PricingMode+ Amazonka.IotTwinMaker.Types.PricingPlan+ Amazonka.IotTwinMaker.Types.PricingTier+ Amazonka.IotTwinMaker.Types.PropertyDefinitionRequest+ Amazonka.IotTwinMaker.Types.PropertyDefinitionResponse+ Amazonka.IotTwinMaker.Types.PropertyFilter+ Amazonka.IotTwinMaker.Types.PropertyGroupRequest+ Amazonka.IotTwinMaker.Types.PropertyGroupResponse+ Amazonka.IotTwinMaker.Types.PropertyGroupUpdateType+ Amazonka.IotTwinMaker.Types.PropertyLatestValue+ Amazonka.IotTwinMaker.Types.PropertyRequest+ Amazonka.IotTwinMaker.Types.PropertyResponse+ Amazonka.IotTwinMaker.Types.PropertyUpdateType+ Amazonka.IotTwinMaker.Types.PropertyValue+ Amazonka.IotTwinMaker.Types.PropertyValueEntry+ Amazonka.IotTwinMaker.Types.PropertyValueHistory+ Amazonka.IotTwinMaker.Types.QueryResultValue+ Amazonka.IotTwinMaker.Types.Relationship+ Amazonka.IotTwinMaker.Types.RelationshipValue+ Amazonka.IotTwinMaker.Types.Row+ Amazonka.IotTwinMaker.Types.SceneSummary+ Amazonka.IotTwinMaker.Types.Scope+ Amazonka.IotTwinMaker.Types.State+ Amazonka.IotTwinMaker.Types.Status+ Amazonka.IotTwinMaker.Types.SyncJobState+ Amazonka.IotTwinMaker.Types.SyncJobStatus+ Amazonka.IotTwinMaker.Types.SyncJobSummary+ Amazonka.IotTwinMaker.Types.SyncResourceFilter+ Amazonka.IotTwinMaker.Types.SyncResourceState+ Amazonka.IotTwinMaker.Types.SyncResourceStatus+ Amazonka.IotTwinMaker.Types.SyncResourceSummary+ Amazonka.IotTwinMaker.Types.SyncResourceType+ Amazonka.IotTwinMaker.Types.TabularConditions+ Amazonka.IotTwinMaker.Types.Type+ Amazonka.IotTwinMaker.Types.UpdateReason+ Amazonka.IotTwinMaker.Types.WorkspaceSummary+ Amazonka.IotTwinMaker.UntagResource+ Amazonka.IotTwinMaker.UpdateComponentType+ Amazonka.IotTwinMaker.UpdateEntity+ Amazonka.IotTwinMaker.UpdatePricingPlan+ Amazonka.IotTwinMaker.UpdateScene+ Amazonka.IotTwinMaker.UpdateWorkspace+ Amazonka.IotTwinMaker.Waiters++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , base >=4.12 && <5++test-suite amazonka-iottwinmaker-test+ type: exitcode-stdio-1.0+ default-language: Haskell2010+ hs-source-dirs: test+ main-is: Main.hs+ ghc-options: -Wall -threaded++ -- This section is encoded by the template and any modules added by+ -- hand outside these namespaces will not correctly be added to the+ -- distribution package.+ other-modules:+ Test.Amazonka.Gen.IotTwinMaker+ Test.Amazonka.IotTwinMaker+ Test.Amazonka.IotTwinMaker.Internal++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , amazonka-iottwinmaker+ , amazonka-test >=2.0 && <2.1+ , base+ , bytestring+ , case-insensitive+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
+ fixture/BatchPutPropertyValues.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/BatchPutPropertyValuesResponse.proto view
+ fixture/CreateComponentType.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateComponentTypeResponse.proto view
+ fixture/CreateEntity.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateEntityResponse.proto view
+ fixture/CreateScene.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateSceneResponse.proto view
+ fixture/CreateSyncJob.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateSyncJobResponse.proto view
+ fixture/CreateWorkspace.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateWorkspaceResponse.proto view
+ fixture/DeleteComponentType.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteComponentTypeResponse.proto view
+ fixture/DeleteEntity.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteEntityResponse.proto view
+ fixture/DeleteScene.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteSceneResponse.proto view
+ fixture/DeleteSyncJob.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteSyncJobResponse.proto view
+ fixture/DeleteWorkspace.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteWorkspaceResponse.proto view
+ fixture/ExecuteQuery.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ExecuteQueryResponse.proto view
+ fixture/GetComponentType.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetComponentTypeResponse.proto view
+ fixture/GetEntity.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetEntityResponse.proto view
+ fixture/GetPricingPlan.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetPricingPlanResponse.proto view
+ fixture/GetPropertyValue.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetPropertyValueHistory.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetPropertyValueHistoryResponse.proto view
+ fixture/GetPropertyValueResponse.proto view
+ fixture/GetScene.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetSceneResponse.proto view
+ fixture/GetSyncJob.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetSyncJobResponse.proto view
+ fixture/GetWorkspace.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetWorkspaceResponse.proto view
+ fixture/ListComponentTypes.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListComponentTypesResponse.proto view
+ fixture/ListEntities.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListEntitiesResponse.proto view
+ fixture/ListScenes.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListScenesResponse.proto view
+ fixture/ListSyncJobs.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListSyncJobsResponse.proto view
+ fixture/ListSyncResources.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListSyncResourcesResponse.proto view
+ fixture/ListTagsForResource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListTagsForResourceResponse.proto view
+ fixture/ListWorkspaces.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListWorkspacesResponse.proto view
+ fixture/TagResource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/TagResourceResponse.proto view
+ fixture/UntagResource.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UntagResourceResponse.proto view
+ fixture/UpdateComponentType.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UpdateComponentTypeResponse.proto view
+ fixture/UpdateEntity.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UpdateEntityResponse.proto view
+ fixture/UpdatePricingPlan.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UpdatePricingPlanResponse.proto view
+ fixture/UpdateScene.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UpdateSceneResponse.proto view
+ fixture/UpdateWorkspace.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iottwinmaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iottwinmaker.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UpdateWorkspaceResponse.proto view
+ gen/Amazonka/IotTwinMaker.hs view
@@ -0,0 +1,590 @@+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Amazonka.IotTwinMaker+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Derived from API version @2021-11-29@ of the AWS service descriptions, licensed under Apache 2.0.+--+-- IoT TwinMaker is a service that enables you to build operational digital+-- twins of physical systems. IoT TwinMaker overlays measurements and+-- analysis from real-world sensors, cameras, and enterprise applications+-- so you can create data visualizations to monitor your physical factory,+-- building, or industrial plant. You can use this real-world data to+-- monitor operations and diagnose and repair errors.+module Amazonka.IotTwinMaker+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ -- $errors++ -- ** AccessDeniedException+ _AccessDeniedException,++ -- ** ConflictException+ _ConflictException,++ -- ** ConnectorFailureException+ _ConnectorFailureException,++ -- ** ConnectorTimeoutException+ _ConnectorTimeoutException,++ -- ** InternalServerException+ _InternalServerException,++ -- ** QueryTimeoutException+ _QueryTimeoutException,++ -- ** ResourceNotFoundException+ _ResourceNotFoundException,++ -- ** ServiceQuotaExceededException+ _ServiceQuotaExceededException,++ -- ** ThrottlingException+ _ThrottlingException,++ -- ** TooManyTagsException+ _TooManyTagsException,++ -- ** ValidationException+ _ValidationException,++ -- * Waiters+ -- $waiters++ -- * Operations+ -- $operations++ -- ** BatchPutPropertyValues+ BatchPutPropertyValues (BatchPutPropertyValues'),+ newBatchPutPropertyValues,+ BatchPutPropertyValuesResponse (BatchPutPropertyValuesResponse'),+ newBatchPutPropertyValuesResponse,++ -- ** CreateComponentType+ CreateComponentType (CreateComponentType'),+ newCreateComponentType,+ CreateComponentTypeResponse (CreateComponentTypeResponse'),+ newCreateComponentTypeResponse,++ -- ** CreateEntity+ CreateEntity (CreateEntity'),+ newCreateEntity,+ CreateEntityResponse (CreateEntityResponse'),+ newCreateEntityResponse,++ -- ** CreateScene+ CreateScene (CreateScene'),+ newCreateScene,+ CreateSceneResponse (CreateSceneResponse'),+ newCreateSceneResponse,++ -- ** CreateSyncJob+ CreateSyncJob (CreateSyncJob'),+ newCreateSyncJob,+ CreateSyncJobResponse (CreateSyncJobResponse'),+ newCreateSyncJobResponse,++ -- ** CreateWorkspace+ CreateWorkspace (CreateWorkspace'),+ newCreateWorkspace,+ CreateWorkspaceResponse (CreateWorkspaceResponse'),+ newCreateWorkspaceResponse,++ -- ** DeleteComponentType+ DeleteComponentType (DeleteComponentType'),+ newDeleteComponentType,+ DeleteComponentTypeResponse (DeleteComponentTypeResponse'),+ newDeleteComponentTypeResponse,++ -- ** DeleteEntity+ DeleteEntity (DeleteEntity'),+ newDeleteEntity,+ DeleteEntityResponse (DeleteEntityResponse'),+ newDeleteEntityResponse,++ -- ** DeleteScene+ DeleteScene (DeleteScene'),+ newDeleteScene,+ DeleteSceneResponse (DeleteSceneResponse'),+ newDeleteSceneResponse,++ -- ** DeleteSyncJob+ DeleteSyncJob (DeleteSyncJob'),+ newDeleteSyncJob,+ DeleteSyncJobResponse (DeleteSyncJobResponse'),+ newDeleteSyncJobResponse,++ -- ** DeleteWorkspace+ DeleteWorkspace (DeleteWorkspace'),+ newDeleteWorkspace,+ DeleteWorkspaceResponse (DeleteWorkspaceResponse'),+ newDeleteWorkspaceResponse,++ -- ** ExecuteQuery+ ExecuteQuery (ExecuteQuery'),+ newExecuteQuery,+ ExecuteQueryResponse (ExecuteQueryResponse'),+ newExecuteQueryResponse,++ -- ** GetComponentType+ GetComponentType (GetComponentType'),+ newGetComponentType,+ GetComponentTypeResponse (GetComponentTypeResponse'),+ newGetComponentTypeResponse,++ -- ** GetEntity+ GetEntity (GetEntity'),+ newGetEntity,+ GetEntityResponse (GetEntityResponse'),+ newGetEntityResponse,++ -- ** GetPricingPlan+ GetPricingPlan (GetPricingPlan'),+ newGetPricingPlan,+ GetPricingPlanResponse (GetPricingPlanResponse'),+ newGetPricingPlanResponse,++ -- ** GetPropertyValue+ GetPropertyValue (GetPropertyValue'),+ newGetPropertyValue,+ GetPropertyValueResponse (GetPropertyValueResponse'),+ newGetPropertyValueResponse,++ -- ** GetPropertyValueHistory+ GetPropertyValueHistory (GetPropertyValueHistory'),+ newGetPropertyValueHistory,+ GetPropertyValueHistoryResponse (GetPropertyValueHistoryResponse'),+ newGetPropertyValueHistoryResponse,++ -- ** GetScene+ GetScene (GetScene'),+ newGetScene,+ GetSceneResponse (GetSceneResponse'),+ newGetSceneResponse,++ -- ** GetSyncJob+ GetSyncJob (GetSyncJob'),+ newGetSyncJob,+ GetSyncJobResponse (GetSyncJobResponse'),+ newGetSyncJobResponse,++ -- ** GetWorkspace+ GetWorkspace (GetWorkspace'),+ newGetWorkspace,+ GetWorkspaceResponse (GetWorkspaceResponse'),+ newGetWorkspaceResponse,++ -- ** ListComponentTypes+ ListComponentTypes (ListComponentTypes'),+ newListComponentTypes,+ ListComponentTypesResponse (ListComponentTypesResponse'),+ newListComponentTypesResponse,++ -- ** ListEntities+ ListEntities (ListEntities'),+ newListEntities,+ ListEntitiesResponse (ListEntitiesResponse'),+ newListEntitiesResponse,++ -- ** ListScenes+ ListScenes (ListScenes'),+ newListScenes,+ ListScenesResponse (ListScenesResponse'),+ newListScenesResponse,++ -- ** ListSyncJobs+ ListSyncJobs (ListSyncJobs'),+ newListSyncJobs,+ ListSyncJobsResponse (ListSyncJobsResponse'),+ newListSyncJobsResponse,++ -- ** ListSyncResources+ ListSyncResources (ListSyncResources'),+ newListSyncResources,+ ListSyncResourcesResponse (ListSyncResourcesResponse'),+ newListSyncResourcesResponse,++ -- ** ListTagsForResource+ ListTagsForResource (ListTagsForResource'),+ newListTagsForResource,+ ListTagsForResourceResponse (ListTagsForResourceResponse'),+ newListTagsForResourceResponse,++ -- ** ListWorkspaces+ ListWorkspaces (ListWorkspaces'),+ newListWorkspaces,+ ListWorkspacesResponse (ListWorkspacesResponse'),+ newListWorkspacesResponse,++ -- ** TagResource+ TagResource (TagResource'),+ newTagResource,+ TagResourceResponse (TagResourceResponse'),+ newTagResourceResponse,++ -- ** UntagResource+ UntagResource (UntagResource'),+ newUntagResource,+ UntagResourceResponse (UntagResourceResponse'),+ newUntagResourceResponse,++ -- ** UpdateComponentType+ UpdateComponentType (UpdateComponentType'),+ newUpdateComponentType,+ UpdateComponentTypeResponse (UpdateComponentTypeResponse'),+ newUpdateComponentTypeResponse,++ -- ** UpdateEntity+ UpdateEntity (UpdateEntity'),+ newUpdateEntity,+ UpdateEntityResponse (UpdateEntityResponse'),+ newUpdateEntityResponse,++ -- ** UpdatePricingPlan+ UpdatePricingPlan (UpdatePricingPlan'),+ newUpdatePricingPlan,+ UpdatePricingPlanResponse (UpdatePricingPlanResponse'),+ newUpdatePricingPlanResponse,++ -- ** UpdateScene+ UpdateScene (UpdateScene'),+ newUpdateScene,+ UpdateSceneResponse (UpdateSceneResponse'),+ newUpdateSceneResponse,++ -- ** UpdateWorkspace+ UpdateWorkspace (UpdateWorkspace'),+ newUpdateWorkspace,+ UpdateWorkspaceResponse (UpdateWorkspaceResponse'),+ newUpdateWorkspaceResponse,++ -- * Types++ -- ** ColumnType+ ColumnType (..),++ -- ** ComponentUpdateType+ ComponentUpdateType (..),++ -- ** ErrorCode+ ErrorCode (..),++ -- ** GroupType+ GroupType (..),++ -- ** InterpolationType+ InterpolationType (..),++ -- ** Order+ Order (..),++ -- ** OrderByTime+ OrderByTime (..),++ -- ** ParentEntityUpdateType+ ParentEntityUpdateType (..),++ -- ** PricingMode+ PricingMode (..),++ -- ** PricingTier+ PricingTier (..),++ -- ** PropertyGroupUpdateType+ PropertyGroupUpdateType (..),++ -- ** PropertyUpdateType+ PropertyUpdateType (..),++ -- ** Scope+ Scope (..),++ -- ** State+ State (..),++ -- ** SyncJobState+ SyncJobState (..),++ -- ** SyncResourceState+ SyncResourceState (..),++ -- ** SyncResourceType+ SyncResourceType (..),++ -- ** Type+ Type (..),++ -- ** UpdateReason+ UpdateReason (..),++ -- ** BatchPutPropertyError+ BatchPutPropertyError (BatchPutPropertyError'),+ newBatchPutPropertyError,++ -- ** BatchPutPropertyErrorEntry+ BatchPutPropertyErrorEntry (BatchPutPropertyErrorEntry'),+ newBatchPutPropertyErrorEntry,++ -- ** BundleInformation+ BundleInformation (BundleInformation'),+ newBundleInformation,++ -- ** ColumnDescription+ ColumnDescription (ColumnDescription'),+ newColumnDescription,++ -- ** ComponentPropertyGroupRequest+ ComponentPropertyGroupRequest (ComponentPropertyGroupRequest'),+ newComponentPropertyGroupRequest,++ -- ** ComponentPropertyGroupResponse+ ComponentPropertyGroupResponse (ComponentPropertyGroupResponse'),+ newComponentPropertyGroupResponse,++ -- ** ComponentRequest+ ComponentRequest (ComponentRequest'),+ newComponentRequest,++ -- ** ComponentResponse+ ComponentResponse (ComponentResponse'),+ newComponentResponse,++ -- ** ComponentTypeSummary+ ComponentTypeSummary (ComponentTypeSummary'),+ newComponentTypeSummary,++ -- ** ComponentUpdateRequest+ ComponentUpdateRequest (ComponentUpdateRequest'),+ newComponentUpdateRequest,++ -- ** DataConnector+ DataConnector (DataConnector'),+ newDataConnector,++ -- ** DataType+ DataType (DataType'),+ newDataType,++ -- ** DataValue+ DataValue (DataValue'),+ newDataValue,++ -- ** EntityPropertyReference+ EntityPropertyReference (EntityPropertyReference'),+ newEntityPropertyReference,++ -- ** EntitySummary+ EntitySummary (EntitySummary'),+ newEntitySummary,++ -- ** ErrorDetails+ ErrorDetails (ErrorDetails'),+ newErrorDetails,++ -- ** FunctionRequest+ FunctionRequest (FunctionRequest'),+ newFunctionRequest,++ -- ** FunctionResponse+ FunctionResponse (FunctionResponse'),+ newFunctionResponse,++ -- ** InterpolationParameters+ InterpolationParameters (InterpolationParameters'),+ newInterpolationParameters,++ -- ** LambdaFunction+ LambdaFunction (LambdaFunction'),+ newLambdaFunction,++ -- ** ListComponentTypesFilter+ ListComponentTypesFilter (ListComponentTypesFilter'),+ newListComponentTypesFilter,++ -- ** ListEntitiesFilter+ ListEntitiesFilter (ListEntitiesFilter'),+ newListEntitiesFilter,++ -- ** OrderBy+ OrderBy (OrderBy'),+ newOrderBy,++ -- ** ParentEntityUpdateRequest+ ParentEntityUpdateRequest (ParentEntityUpdateRequest'),+ newParentEntityUpdateRequest,++ -- ** PricingPlan+ PricingPlan (PricingPlan'),+ newPricingPlan,++ -- ** PropertyDefinitionRequest+ PropertyDefinitionRequest (PropertyDefinitionRequest'),+ newPropertyDefinitionRequest,++ -- ** PropertyDefinitionResponse+ PropertyDefinitionResponse (PropertyDefinitionResponse'),+ newPropertyDefinitionResponse,++ -- ** PropertyFilter+ PropertyFilter (PropertyFilter'),+ newPropertyFilter,++ -- ** PropertyGroupRequest+ PropertyGroupRequest (PropertyGroupRequest'),+ newPropertyGroupRequest,++ -- ** PropertyGroupResponse+ PropertyGroupResponse (PropertyGroupResponse'),+ newPropertyGroupResponse,++ -- ** PropertyLatestValue+ PropertyLatestValue (PropertyLatestValue'),+ newPropertyLatestValue,++ -- ** PropertyRequest+ PropertyRequest (PropertyRequest'),+ newPropertyRequest,++ -- ** PropertyResponse+ PropertyResponse (PropertyResponse'),+ newPropertyResponse,++ -- ** PropertyValue+ PropertyValue (PropertyValue'),+ newPropertyValue,++ -- ** PropertyValueEntry+ PropertyValueEntry (PropertyValueEntry'),+ newPropertyValueEntry,++ -- ** PropertyValueHistory+ PropertyValueHistory (PropertyValueHistory'),+ newPropertyValueHistory,++ -- ** QueryResultValue+ QueryResultValue (QueryResultValue'),+ newQueryResultValue,++ -- ** Relationship+ Relationship (Relationship'),+ newRelationship,++ -- ** RelationshipValue+ RelationshipValue (RelationshipValue'),+ newRelationshipValue,++ -- ** Row+ Row (Row'),+ newRow,++ -- ** SceneSummary+ SceneSummary (SceneSummary'),+ newSceneSummary,++ -- ** Status+ Status (Status'),+ newStatus,++ -- ** SyncJobStatus+ SyncJobStatus (SyncJobStatus'),+ newSyncJobStatus,++ -- ** SyncJobSummary+ SyncJobSummary (SyncJobSummary'),+ newSyncJobSummary,++ -- ** SyncResourceFilter+ SyncResourceFilter (SyncResourceFilter'),+ newSyncResourceFilter,++ -- ** SyncResourceStatus+ SyncResourceStatus (SyncResourceStatus'),+ newSyncResourceStatus,++ -- ** SyncResourceSummary+ SyncResourceSummary (SyncResourceSummary'),+ newSyncResourceSummary,++ -- ** TabularConditions+ TabularConditions (TabularConditions'),+ newTabularConditions,++ -- ** WorkspaceSummary+ WorkspaceSummary (WorkspaceSummary'),+ newWorkspaceSummary,+ )+where++import Amazonka.IotTwinMaker.BatchPutPropertyValues+import Amazonka.IotTwinMaker.CreateComponentType+import Amazonka.IotTwinMaker.CreateEntity+import Amazonka.IotTwinMaker.CreateScene+import Amazonka.IotTwinMaker.CreateSyncJob+import Amazonka.IotTwinMaker.CreateWorkspace+import Amazonka.IotTwinMaker.DeleteComponentType+import Amazonka.IotTwinMaker.DeleteEntity+import Amazonka.IotTwinMaker.DeleteScene+import Amazonka.IotTwinMaker.DeleteSyncJob+import Amazonka.IotTwinMaker.DeleteWorkspace+import Amazonka.IotTwinMaker.ExecuteQuery+import Amazonka.IotTwinMaker.GetComponentType+import Amazonka.IotTwinMaker.GetEntity+import Amazonka.IotTwinMaker.GetPricingPlan+import Amazonka.IotTwinMaker.GetPropertyValue+import Amazonka.IotTwinMaker.GetPropertyValueHistory+import Amazonka.IotTwinMaker.GetScene+import Amazonka.IotTwinMaker.GetSyncJob+import Amazonka.IotTwinMaker.GetWorkspace+import Amazonka.IotTwinMaker.Lens+import Amazonka.IotTwinMaker.ListComponentTypes+import Amazonka.IotTwinMaker.ListEntities+import Amazonka.IotTwinMaker.ListScenes+import Amazonka.IotTwinMaker.ListSyncJobs+import Amazonka.IotTwinMaker.ListSyncResources+import Amazonka.IotTwinMaker.ListTagsForResource+import Amazonka.IotTwinMaker.ListWorkspaces+import Amazonka.IotTwinMaker.TagResource+import Amazonka.IotTwinMaker.Types+import Amazonka.IotTwinMaker.UntagResource+import Amazonka.IotTwinMaker.UpdateComponentType+import Amazonka.IotTwinMaker.UpdateEntity+import Amazonka.IotTwinMaker.UpdatePricingPlan+import Amazonka.IotTwinMaker.UpdateScene+import Amazonka.IotTwinMaker.UpdateWorkspace+import Amazonka.IotTwinMaker.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 'IotTwinMaker'.++-- $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/Amazonka/IotTwinMaker/BatchPutPropertyValues.hs view
@@ -0,0 +1,199 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.BatchPutPropertyValues+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Sets values for multiple time series properties.+module Amazonka.IotTwinMaker.BatchPutPropertyValues+ ( -- * Creating a Request+ BatchPutPropertyValues (..),+ newBatchPutPropertyValues,++ -- * Request Lenses+ batchPutPropertyValues_workspaceId,+ batchPutPropertyValues_entries,++ -- * Destructuring the Response+ BatchPutPropertyValuesResponse (..),+ newBatchPutPropertyValuesResponse,++ -- * Response Lenses+ batchPutPropertyValuesResponse_httpStatus,+ batchPutPropertyValuesResponse_errorEntries,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newBatchPutPropertyValues' smart constructor.+data BatchPutPropertyValues = BatchPutPropertyValues'+ { -- | The ID of the workspace that contains the properties to set.+ workspaceId :: Prelude.Text,+ -- | An object that maps strings to the property value entries to set. Each+ -- string in the mapping must be unique to this object.+ entries :: Prelude.NonEmpty PropertyValueEntry+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BatchPutPropertyValues' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'workspaceId', 'batchPutPropertyValues_workspaceId' - The ID of the workspace that contains the properties to set.+--+-- 'entries', 'batchPutPropertyValues_entries' - An object that maps strings to the property value entries to set. Each+-- string in the mapping must be unique to this object.+newBatchPutPropertyValues ::+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'entries'+ Prelude.NonEmpty PropertyValueEntry ->+ BatchPutPropertyValues+newBatchPutPropertyValues pWorkspaceId_ pEntries_ =+ BatchPutPropertyValues'+ { workspaceId =+ pWorkspaceId_,+ entries = Lens.coerced Lens.# pEntries_+ }++-- | The ID of the workspace that contains the properties to set.+batchPutPropertyValues_workspaceId :: Lens.Lens' BatchPutPropertyValues Prelude.Text+batchPutPropertyValues_workspaceId = Lens.lens (\BatchPutPropertyValues' {workspaceId} -> workspaceId) (\s@BatchPutPropertyValues' {} a -> s {workspaceId = a} :: BatchPutPropertyValues)++-- | An object that maps strings to the property value entries to set. Each+-- string in the mapping must be unique to this object.+batchPutPropertyValues_entries :: Lens.Lens' BatchPutPropertyValues (Prelude.NonEmpty PropertyValueEntry)+batchPutPropertyValues_entries = Lens.lens (\BatchPutPropertyValues' {entries} -> entries) (\s@BatchPutPropertyValues' {} a -> s {entries = a} :: BatchPutPropertyValues) Prelude.. Lens.coerced++instance Core.AWSRequest BatchPutPropertyValues where+ type+ AWSResponse BatchPutPropertyValues =+ BatchPutPropertyValuesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ BatchPutPropertyValuesResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "errorEntries")+ )++instance Prelude.Hashable BatchPutPropertyValues where+ hashWithSalt _salt BatchPutPropertyValues' {..} =+ _salt+ `Prelude.hashWithSalt` workspaceId+ `Prelude.hashWithSalt` entries++instance Prelude.NFData BatchPutPropertyValues where+ rnf BatchPutPropertyValues' {..} =+ Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf entries++instance Data.ToHeaders BatchPutPropertyValues where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON BatchPutPropertyValues where+ toJSON BatchPutPropertyValues' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("entries" Data..= entries)]+ )++instance Data.ToPath BatchPutPropertyValues where+ toPath BatchPutPropertyValues' {..} =+ Prelude.mconcat+ [ "/workspaces/",+ Data.toBS workspaceId,+ "/entity-properties"+ ]++instance Data.ToQuery BatchPutPropertyValues where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newBatchPutPropertyValuesResponse' smart constructor.+data BatchPutPropertyValuesResponse = BatchPutPropertyValuesResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Entries that caused errors in the batch put operation.+ errorEntries :: Prelude.NonEmpty BatchPutPropertyErrorEntry+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BatchPutPropertyValuesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'batchPutPropertyValuesResponse_httpStatus' - The response's http status code.+--+-- 'errorEntries', 'batchPutPropertyValuesResponse_errorEntries' - Entries that caused errors in the batch put operation.+newBatchPutPropertyValuesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'errorEntries'+ Prelude.NonEmpty BatchPutPropertyErrorEntry ->+ BatchPutPropertyValuesResponse+newBatchPutPropertyValuesResponse+ pHttpStatus_+ pErrorEntries_ =+ BatchPutPropertyValuesResponse'+ { httpStatus =+ pHttpStatus_,+ errorEntries =+ Lens.coerced Lens.# pErrorEntries_+ }++-- | The response's http status code.+batchPutPropertyValuesResponse_httpStatus :: Lens.Lens' BatchPutPropertyValuesResponse Prelude.Int+batchPutPropertyValuesResponse_httpStatus = Lens.lens (\BatchPutPropertyValuesResponse' {httpStatus} -> httpStatus) (\s@BatchPutPropertyValuesResponse' {} a -> s {httpStatus = a} :: BatchPutPropertyValuesResponse)++-- | Entries that caused errors in the batch put operation.+batchPutPropertyValuesResponse_errorEntries :: Lens.Lens' BatchPutPropertyValuesResponse (Prelude.NonEmpty BatchPutPropertyErrorEntry)+batchPutPropertyValuesResponse_errorEntries = Lens.lens (\BatchPutPropertyValuesResponse' {errorEntries} -> errorEntries) (\s@BatchPutPropertyValuesResponse' {} a -> s {errorEntries = a} :: BatchPutPropertyValuesResponse) Prelude.. Lens.coerced++instance+ Prelude.NFData+ BatchPutPropertyValuesResponse+ where+ rnf BatchPutPropertyValuesResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf errorEntries
+ gen/Amazonka/IotTwinMaker/CreateComponentType.hs view
@@ -0,0 +1,340 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.CreateComponentType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a component type.+module Amazonka.IotTwinMaker.CreateComponentType+ ( -- * Creating a Request+ CreateComponentType (..),+ newCreateComponentType,++ -- * Request Lenses+ createComponentType_componentTypeName,+ createComponentType_description,+ createComponentType_extendsFrom,+ createComponentType_functions,+ createComponentType_isSingleton,+ createComponentType_propertyDefinitions,+ createComponentType_propertyGroups,+ createComponentType_tags,+ createComponentType_workspaceId,+ createComponentType_componentTypeId,++ -- * Destructuring the Response+ CreateComponentTypeResponse (..),+ newCreateComponentTypeResponse,++ -- * Response Lenses+ createComponentTypeResponse_httpStatus,+ createComponentTypeResponse_arn,+ createComponentTypeResponse_creationDateTime,+ createComponentTypeResponse_state,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateComponentType' smart constructor.+data CreateComponentType = CreateComponentType'+ { -- | A friendly name for the component type.+ componentTypeName :: Prelude.Maybe Prelude.Text,+ -- | The description of the component type.+ description :: Prelude.Maybe Prelude.Text,+ -- | Specifies the parent component type to extend.+ extendsFrom :: Prelude.Maybe [Prelude.Text],+ -- | An object that maps strings to the functions in the component type. Each+ -- string in the mapping must be unique to this object.+ functions :: Prelude.Maybe (Prelude.HashMap Prelude.Text FunctionRequest),+ -- | A Boolean value that specifies whether an entity can have more than one+ -- component of this type.+ isSingleton :: Prelude.Maybe Prelude.Bool,+ -- | An object that maps strings to the property definitions in the component+ -- type. Each string in the mapping must be unique to this object.+ propertyDefinitions :: Prelude.Maybe (Prelude.HashMap Prelude.Text PropertyDefinitionRequest),+ propertyGroups :: Prelude.Maybe (Prelude.HashMap Prelude.Text PropertyGroupRequest),+ -- | Metadata that you can use to manage the component type.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The ID of the workspace that contains the component type.+ workspaceId :: Prelude.Text,+ -- | The ID of the component type.+ componentTypeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateComponentType' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'componentTypeName', 'createComponentType_componentTypeName' - A friendly name for the component type.+--+-- 'description', 'createComponentType_description' - The description of the component type.+--+-- 'extendsFrom', 'createComponentType_extendsFrom' - Specifies the parent component type to extend.+--+-- 'functions', 'createComponentType_functions' - An object that maps strings to the functions in the component type. Each+-- string in the mapping must be unique to this object.+--+-- 'isSingleton', 'createComponentType_isSingleton' - A Boolean value that specifies whether an entity can have more than one+-- component of this type.+--+-- 'propertyDefinitions', 'createComponentType_propertyDefinitions' - An object that maps strings to the property definitions in the component+-- type. Each string in the mapping must be unique to this object.+--+-- 'propertyGroups', 'createComponentType_propertyGroups' -+--+-- 'tags', 'createComponentType_tags' - Metadata that you can use to manage the component type.+--+-- 'workspaceId', 'createComponentType_workspaceId' - The ID of the workspace that contains the component type.+--+-- 'componentTypeId', 'createComponentType_componentTypeId' - The ID of the component type.+newCreateComponentType ::+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'componentTypeId'+ Prelude.Text ->+ CreateComponentType+newCreateComponentType+ pWorkspaceId_+ pComponentTypeId_ =+ CreateComponentType'+ { componentTypeName =+ Prelude.Nothing,+ description = Prelude.Nothing,+ extendsFrom = Prelude.Nothing,+ functions = Prelude.Nothing,+ isSingleton = Prelude.Nothing,+ propertyDefinitions = Prelude.Nothing,+ propertyGroups = Prelude.Nothing,+ tags = Prelude.Nothing,+ workspaceId = pWorkspaceId_,+ componentTypeId = pComponentTypeId_+ }++-- | A friendly name for the component type.+createComponentType_componentTypeName :: Lens.Lens' CreateComponentType (Prelude.Maybe Prelude.Text)+createComponentType_componentTypeName = Lens.lens (\CreateComponentType' {componentTypeName} -> componentTypeName) (\s@CreateComponentType' {} a -> s {componentTypeName = a} :: CreateComponentType)++-- | The description of the component type.+createComponentType_description :: Lens.Lens' CreateComponentType (Prelude.Maybe Prelude.Text)+createComponentType_description = Lens.lens (\CreateComponentType' {description} -> description) (\s@CreateComponentType' {} a -> s {description = a} :: CreateComponentType)++-- | Specifies the parent component type to extend.+createComponentType_extendsFrom :: Lens.Lens' CreateComponentType (Prelude.Maybe [Prelude.Text])+createComponentType_extendsFrom = Lens.lens (\CreateComponentType' {extendsFrom} -> extendsFrom) (\s@CreateComponentType' {} a -> s {extendsFrom = a} :: CreateComponentType) Prelude.. Lens.mapping Lens.coerced++-- | An object that maps strings to the functions in the component type. Each+-- string in the mapping must be unique to this object.+createComponentType_functions :: Lens.Lens' CreateComponentType (Prelude.Maybe (Prelude.HashMap Prelude.Text FunctionRequest))+createComponentType_functions = Lens.lens (\CreateComponentType' {functions} -> functions) (\s@CreateComponentType' {} a -> s {functions = a} :: CreateComponentType) Prelude.. Lens.mapping Lens.coerced++-- | A Boolean value that specifies whether an entity can have more than one+-- component of this type.+createComponentType_isSingleton :: Lens.Lens' CreateComponentType (Prelude.Maybe Prelude.Bool)+createComponentType_isSingleton = Lens.lens (\CreateComponentType' {isSingleton} -> isSingleton) (\s@CreateComponentType' {} a -> s {isSingleton = a} :: CreateComponentType)++-- | An object that maps strings to the property definitions in the component+-- type. Each string in the mapping must be unique to this object.+createComponentType_propertyDefinitions :: Lens.Lens' CreateComponentType (Prelude.Maybe (Prelude.HashMap Prelude.Text PropertyDefinitionRequest))+createComponentType_propertyDefinitions = Lens.lens (\CreateComponentType' {propertyDefinitions} -> propertyDefinitions) (\s@CreateComponentType' {} a -> s {propertyDefinitions = a} :: CreateComponentType) Prelude.. Lens.mapping Lens.coerced++createComponentType_propertyGroups :: Lens.Lens' CreateComponentType (Prelude.Maybe (Prelude.HashMap Prelude.Text PropertyGroupRequest))+createComponentType_propertyGroups = Lens.lens (\CreateComponentType' {propertyGroups} -> propertyGroups) (\s@CreateComponentType' {} a -> s {propertyGroups = a} :: CreateComponentType) Prelude.. Lens.mapping Lens.coerced++-- | Metadata that you can use to manage the component type.+createComponentType_tags :: Lens.Lens' CreateComponentType (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createComponentType_tags = Lens.lens (\CreateComponentType' {tags} -> tags) (\s@CreateComponentType' {} a -> s {tags = a} :: CreateComponentType) Prelude.. Lens.mapping Lens.coerced++-- | The ID of the workspace that contains the component type.+createComponentType_workspaceId :: Lens.Lens' CreateComponentType Prelude.Text+createComponentType_workspaceId = Lens.lens (\CreateComponentType' {workspaceId} -> workspaceId) (\s@CreateComponentType' {} a -> s {workspaceId = a} :: CreateComponentType)++-- | The ID of the component type.+createComponentType_componentTypeId :: Lens.Lens' CreateComponentType Prelude.Text+createComponentType_componentTypeId = Lens.lens (\CreateComponentType' {componentTypeId} -> componentTypeId) (\s@CreateComponentType' {} a -> s {componentTypeId = a} :: CreateComponentType)++instance Core.AWSRequest CreateComponentType where+ type+ AWSResponse CreateComponentType =+ CreateComponentTypeResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateComponentTypeResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "arn")+ Prelude.<*> (x Data..:> "creationDateTime")+ Prelude.<*> (x Data..:> "state")+ )++instance Prelude.Hashable CreateComponentType where+ hashWithSalt _salt CreateComponentType' {..} =+ _salt+ `Prelude.hashWithSalt` componentTypeName+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` extendsFrom+ `Prelude.hashWithSalt` functions+ `Prelude.hashWithSalt` isSingleton+ `Prelude.hashWithSalt` propertyDefinitions+ `Prelude.hashWithSalt` propertyGroups+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` workspaceId+ `Prelude.hashWithSalt` componentTypeId++instance Prelude.NFData CreateComponentType where+ rnf CreateComponentType' {..} =+ Prelude.rnf componentTypeName+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf extendsFrom+ `Prelude.seq` Prelude.rnf functions+ `Prelude.seq` Prelude.rnf isSingleton+ `Prelude.seq` Prelude.rnf propertyDefinitions+ `Prelude.seq` Prelude.rnf propertyGroups+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf componentTypeId++instance Data.ToHeaders CreateComponentType where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateComponentType where+ toJSON CreateComponentType' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("componentTypeName" Data..=)+ Prelude.<$> componentTypeName,+ ("description" Data..=) Prelude.<$> description,+ ("extendsFrom" Data..=) Prelude.<$> extendsFrom,+ ("functions" Data..=) Prelude.<$> functions,+ ("isSingleton" Data..=) Prelude.<$> isSingleton,+ ("propertyDefinitions" Data..=)+ Prelude.<$> propertyDefinitions,+ ("propertyGroups" Data..=)+ Prelude.<$> propertyGroups,+ ("tags" Data..=) Prelude.<$> tags+ ]+ )++instance Data.ToPath CreateComponentType where+ toPath CreateComponentType' {..} =+ Prelude.mconcat+ [ "/workspaces/",+ Data.toBS workspaceId,+ "/component-types/",+ Data.toBS componentTypeId+ ]++instance Data.ToQuery CreateComponentType where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateComponentTypeResponse' smart constructor.+data CreateComponentTypeResponse = CreateComponentTypeResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The ARN of the component type.+ arn :: Prelude.Text,+ -- | The date and time when the entity was created.+ creationDateTime :: Data.POSIX,+ -- | The current state of the component type.+ state :: State+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateComponentTypeResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'createComponentTypeResponse_httpStatus' - The response's http status code.+--+-- 'arn', 'createComponentTypeResponse_arn' - The ARN of the component type.+--+-- 'creationDateTime', 'createComponentTypeResponse_creationDateTime' - The date and time when the entity was created.+--+-- 'state', 'createComponentTypeResponse_state' - The current state of the component type.+newCreateComponentTypeResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'arn'+ Prelude.Text ->+ -- | 'creationDateTime'+ Prelude.UTCTime ->+ -- | 'state'+ State ->+ CreateComponentTypeResponse+newCreateComponentTypeResponse+ pHttpStatus_+ pArn_+ pCreationDateTime_+ pState_ =+ CreateComponentTypeResponse'+ { httpStatus =+ pHttpStatus_,+ arn = pArn_,+ creationDateTime =+ Data._Time Lens.# pCreationDateTime_,+ state = pState_+ }++-- | The response's http status code.+createComponentTypeResponse_httpStatus :: Lens.Lens' CreateComponentTypeResponse Prelude.Int+createComponentTypeResponse_httpStatus = Lens.lens (\CreateComponentTypeResponse' {httpStatus} -> httpStatus) (\s@CreateComponentTypeResponse' {} a -> s {httpStatus = a} :: CreateComponentTypeResponse)++-- | The ARN of the component type.+createComponentTypeResponse_arn :: Lens.Lens' CreateComponentTypeResponse Prelude.Text+createComponentTypeResponse_arn = Lens.lens (\CreateComponentTypeResponse' {arn} -> arn) (\s@CreateComponentTypeResponse' {} a -> s {arn = a} :: CreateComponentTypeResponse)++-- | The date and time when the entity was created.+createComponentTypeResponse_creationDateTime :: Lens.Lens' CreateComponentTypeResponse Prelude.UTCTime+createComponentTypeResponse_creationDateTime = Lens.lens (\CreateComponentTypeResponse' {creationDateTime} -> creationDateTime) (\s@CreateComponentTypeResponse' {} a -> s {creationDateTime = a} :: CreateComponentTypeResponse) Prelude.. Data._Time++-- | The current state of the component type.+createComponentTypeResponse_state :: Lens.Lens' CreateComponentTypeResponse State+createComponentTypeResponse_state = Lens.lens (\CreateComponentTypeResponse' {state} -> state) (\s@CreateComponentTypeResponse' {} a -> s {state = a} :: CreateComponentTypeResponse)++instance Prelude.NFData CreateComponentTypeResponse where+ rnf CreateComponentTypeResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf state
+ gen/Amazonka/IotTwinMaker/CreateEntity.hs view
@@ -0,0 +1,301 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.CreateEntity+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates an entity.+module Amazonka.IotTwinMaker.CreateEntity+ ( -- * Creating a Request+ CreateEntity (..),+ newCreateEntity,++ -- * Request Lenses+ createEntity_components,+ createEntity_description,+ createEntity_entityId,+ createEntity_parentEntityId,+ createEntity_tags,+ createEntity_workspaceId,+ createEntity_entityName,++ -- * Destructuring the Response+ CreateEntityResponse (..),+ newCreateEntityResponse,++ -- * Response Lenses+ createEntityResponse_httpStatus,+ createEntityResponse_entityId,+ createEntityResponse_arn,+ createEntityResponse_creationDateTime,+ createEntityResponse_state,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateEntity' smart constructor.+data CreateEntity = CreateEntity'+ { -- | An object that maps strings to the components in the entity. Each string+ -- in the mapping must be unique to this object.+ components :: Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentRequest),+ -- | The description of the entity.+ description :: Prelude.Maybe Prelude.Text,+ -- | The ID of the entity.+ entityId :: Prelude.Maybe Prelude.Text,+ -- | The ID of the entity\'s parent entity.+ parentEntityId :: Prelude.Maybe Prelude.Text,+ -- | Metadata that you can use to manage the entity.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The ID of the workspace that contains the entity.+ workspaceId :: Prelude.Text,+ -- | The name of the entity.+ entityName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateEntity' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'components', 'createEntity_components' - An object that maps strings to the components in the entity. Each string+-- in the mapping must be unique to this object.+--+-- 'description', 'createEntity_description' - The description of the entity.+--+-- 'entityId', 'createEntity_entityId' - The ID of the entity.+--+-- 'parentEntityId', 'createEntity_parentEntityId' - The ID of the entity\'s parent entity.+--+-- 'tags', 'createEntity_tags' - Metadata that you can use to manage the entity.+--+-- 'workspaceId', 'createEntity_workspaceId' - The ID of the workspace that contains the entity.+--+-- 'entityName', 'createEntity_entityName' - The name of the entity.+newCreateEntity ::+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'entityName'+ Prelude.Text ->+ CreateEntity+newCreateEntity pWorkspaceId_ pEntityName_ =+ CreateEntity'+ { components = Prelude.Nothing,+ description = Prelude.Nothing,+ entityId = Prelude.Nothing,+ parentEntityId = Prelude.Nothing,+ tags = Prelude.Nothing,+ workspaceId = pWorkspaceId_,+ entityName = pEntityName_+ }++-- | An object that maps strings to the components in the entity. Each string+-- in the mapping must be unique to this object.+createEntity_components :: Lens.Lens' CreateEntity (Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentRequest))+createEntity_components = Lens.lens (\CreateEntity' {components} -> components) (\s@CreateEntity' {} a -> s {components = a} :: CreateEntity) Prelude.. Lens.mapping Lens.coerced++-- | The description of the entity.+createEntity_description :: Lens.Lens' CreateEntity (Prelude.Maybe Prelude.Text)+createEntity_description = Lens.lens (\CreateEntity' {description} -> description) (\s@CreateEntity' {} a -> s {description = a} :: CreateEntity)++-- | The ID of the entity.+createEntity_entityId :: Lens.Lens' CreateEntity (Prelude.Maybe Prelude.Text)+createEntity_entityId = Lens.lens (\CreateEntity' {entityId} -> entityId) (\s@CreateEntity' {} a -> s {entityId = a} :: CreateEntity)++-- | The ID of the entity\'s parent entity.+createEntity_parentEntityId :: Lens.Lens' CreateEntity (Prelude.Maybe Prelude.Text)+createEntity_parentEntityId = Lens.lens (\CreateEntity' {parentEntityId} -> parentEntityId) (\s@CreateEntity' {} a -> s {parentEntityId = a} :: CreateEntity)++-- | Metadata that you can use to manage the entity.+createEntity_tags :: Lens.Lens' CreateEntity (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createEntity_tags = Lens.lens (\CreateEntity' {tags} -> tags) (\s@CreateEntity' {} a -> s {tags = a} :: CreateEntity) Prelude.. Lens.mapping Lens.coerced++-- | The ID of the workspace that contains the entity.+createEntity_workspaceId :: Lens.Lens' CreateEntity Prelude.Text+createEntity_workspaceId = Lens.lens (\CreateEntity' {workspaceId} -> workspaceId) (\s@CreateEntity' {} a -> s {workspaceId = a} :: CreateEntity)++-- | The name of the entity.+createEntity_entityName :: Lens.Lens' CreateEntity Prelude.Text+createEntity_entityName = Lens.lens (\CreateEntity' {entityName} -> entityName) (\s@CreateEntity' {} a -> s {entityName = a} :: CreateEntity)++instance Core.AWSRequest CreateEntity where+ type AWSResponse CreateEntity = CreateEntityResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateEntityResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "entityId")+ Prelude.<*> (x Data..:> "arn")+ Prelude.<*> (x Data..:> "creationDateTime")+ Prelude.<*> (x Data..:> "state")+ )++instance Prelude.Hashable CreateEntity where+ hashWithSalt _salt CreateEntity' {..} =+ _salt+ `Prelude.hashWithSalt` components+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` entityId+ `Prelude.hashWithSalt` parentEntityId+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` workspaceId+ `Prelude.hashWithSalt` entityName++instance Prelude.NFData CreateEntity where+ rnf CreateEntity' {..} =+ Prelude.rnf components+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf entityId+ `Prelude.seq` Prelude.rnf parentEntityId+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf entityName++instance Data.ToHeaders CreateEntity where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateEntity where+ toJSON CreateEntity' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("components" Data..=) Prelude.<$> components,+ ("description" Data..=) Prelude.<$> description,+ ("entityId" Data..=) Prelude.<$> entityId,+ ("parentEntityId" Data..=)+ Prelude.<$> parentEntityId,+ ("tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("entityName" Data..= entityName)+ ]+ )++instance Data.ToPath CreateEntity where+ toPath CreateEntity' {..} =+ Prelude.mconcat+ ["/workspaces/", Data.toBS workspaceId, "/entities"]++instance Data.ToQuery CreateEntity where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateEntityResponse' smart constructor.+data CreateEntityResponse = CreateEntityResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The ID of the entity.+ entityId :: Prelude.Text,+ -- | The ARN of the entity.+ arn :: Prelude.Text,+ -- | The date and time when the entity was created.+ creationDateTime :: Data.POSIX,+ -- | The current state of the entity.+ state :: State+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateEntityResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'createEntityResponse_httpStatus' - The response's http status code.+--+-- 'entityId', 'createEntityResponse_entityId' - The ID of the entity.+--+-- 'arn', 'createEntityResponse_arn' - The ARN of the entity.+--+-- 'creationDateTime', 'createEntityResponse_creationDateTime' - The date and time when the entity was created.+--+-- 'state', 'createEntityResponse_state' - The current state of the entity.+newCreateEntityResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'entityId'+ Prelude.Text ->+ -- | 'arn'+ Prelude.Text ->+ -- | 'creationDateTime'+ Prelude.UTCTime ->+ -- | 'state'+ State ->+ CreateEntityResponse+newCreateEntityResponse+ pHttpStatus_+ pEntityId_+ pArn_+ pCreationDateTime_+ pState_ =+ CreateEntityResponse'+ { httpStatus = pHttpStatus_,+ entityId = pEntityId_,+ arn = pArn_,+ creationDateTime =+ Data._Time Lens.# pCreationDateTime_,+ state = pState_+ }++-- | The response's http status code.+createEntityResponse_httpStatus :: Lens.Lens' CreateEntityResponse Prelude.Int+createEntityResponse_httpStatus = Lens.lens (\CreateEntityResponse' {httpStatus} -> httpStatus) (\s@CreateEntityResponse' {} a -> s {httpStatus = a} :: CreateEntityResponse)++-- | The ID of the entity.+createEntityResponse_entityId :: Lens.Lens' CreateEntityResponse Prelude.Text+createEntityResponse_entityId = Lens.lens (\CreateEntityResponse' {entityId} -> entityId) (\s@CreateEntityResponse' {} a -> s {entityId = a} :: CreateEntityResponse)++-- | The ARN of the entity.+createEntityResponse_arn :: Lens.Lens' CreateEntityResponse Prelude.Text+createEntityResponse_arn = Lens.lens (\CreateEntityResponse' {arn} -> arn) (\s@CreateEntityResponse' {} a -> s {arn = a} :: CreateEntityResponse)++-- | The date and time when the entity was created.+createEntityResponse_creationDateTime :: Lens.Lens' CreateEntityResponse Prelude.UTCTime+createEntityResponse_creationDateTime = Lens.lens (\CreateEntityResponse' {creationDateTime} -> creationDateTime) (\s@CreateEntityResponse' {} a -> s {creationDateTime = a} :: CreateEntityResponse) Prelude.. Data._Time++-- | The current state of the entity.+createEntityResponse_state :: Lens.Lens' CreateEntityResponse State+createEntityResponse_state = Lens.lens (\CreateEntityResponse' {state} -> state) (\s@CreateEntityResponse' {} a -> s {state = a} :: CreateEntityResponse)++instance Prelude.NFData CreateEntityResponse where+ rnf CreateEntityResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf entityId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf state
+ gen/Amazonka/IotTwinMaker/CreateScene.hs view
@@ -0,0 +1,263 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.CreateScene+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a scene.+module Amazonka.IotTwinMaker.CreateScene+ ( -- * Creating a Request+ CreateScene (..),+ newCreateScene,++ -- * Request Lenses+ createScene_capabilities,+ createScene_description,+ createScene_tags,+ createScene_workspaceId,+ createScene_sceneId,+ createScene_contentLocation,++ -- * Destructuring the Response+ CreateSceneResponse (..),+ newCreateSceneResponse,++ -- * Response Lenses+ createSceneResponse_httpStatus,+ createSceneResponse_arn,+ createSceneResponse_creationDateTime,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateScene' smart constructor.+data CreateScene = CreateScene'+ { -- | A list of capabilities that the scene uses to render itself.+ capabilities :: Prelude.Maybe [Prelude.Text],+ -- | The description for this scene.+ description :: Prelude.Maybe Prelude.Text,+ -- | Metadata that you can use to manage the scene.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The ID of the workspace that contains the scene.+ workspaceId :: Prelude.Text,+ -- | The ID of the scene.+ sceneId :: Prelude.Text,+ -- | The relative path that specifies the location of the content definition+ -- file.+ contentLocation :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateScene' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'capabilities', 'createScene_capabilities' - A list of capabilities that the scene uses to render itself.+--+-- 'description', 'createScene_description' - The description for this scene.+--+-- 'tags', 'createScene_tags' - Metadata that you can use to manage the scene.+--+-- 'workspaceId', 'createScene_workspaceId' - The ID of the workspace that contains the scene.+--+-- 'sceneId', 'createScene_sceneId' - The ID of the scene.+--+-- 'contentLocation', 'createScene_contentLocation' - The relative path that specifies the location of the content definition+-- file.+newCreateScene ::+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'sceneId'+ Prelude.Text ->+ -- | 'contentLocation'+ Prelude.Text ->+ CreateScene+newCreateScene+ pWorkspaceId_+ pSceneId_+ pContentLocation_ =+ CreateScene'+ { capabilities = Prelude.Nothing,+ description = Prelude.Nothing,+ tags = Prelude.Nothing,+ workspaceId = pWorkspaceId_,+ sceneId = pSceneId_,+ contentLocation = pContentLocation_+ }++-- | A list of capabilities that the scene uses to render itself.+createScene_capabilities :: Lens.Lens' CreateScene (Prelude.Maybe [Prelude.Text])+createScene_capabilities = Lens.lens (\CreateScene' {capabilities} -> capabilities) (\s@CreateScene' {} a -> s {capabilities = a} :: CreateScene) Prelude.. Lens.mapping Lens.coerced++-- | The description for this scene.+createScene_description :: Lens.Lens' CreateScene (Prelude.Maybe Prelude.Text)+createScene_description = Lens.lens (\CreateScene' {description} -> description) (\s@CreateScene' {} a -> s {description = a} :: CreateScene)++-- | Metadata that you can use to manage the scene.+createScene_tags :: Lens.Lens' CreateScene (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createScene_tags = Lens.lens (\CreateScene' {tags} -> tags) (\s@CreateScene' {} a -> s {tags = a} :: CreateScene) Prelude.. Lens.mapping Lens.coerced++-- | The ID of the workspace that contains the scene.+createScene_workspaceId :: Lens.Lens' CreateScene Prelude.Text+createScene_workspaceId = Lens.lens (\CreateScene' {workspaceId} -> workspaceId) (\s@CreateScene' {} a -> s {workspaceId = a} :: CreateScene)++-- | The ID of the scene.+createScene_sceneId :: Lens.Lens' CreateScene Prelude.Text+createScene_sceneId = Lens.lens (\CreateScene' {sceneId} -> sceneId) (\s@CreateScene' {} a -> s {sceneId = a} :: CreateScene)++-- | The relative path that specifies the location of the content definition+-- file.+createScene_contentLocation :: Lens.Lens' CreateScene Prelude.Text+createScene_contentLocation = Lens.lens (\CreateScene' {contentLocation} -> contentLocation) (\s@CreateScene' {} a -> s {contentLocation = a} :: CreateScene)++instance Core.AWSRequest CreateScene where+ type AWSResponse CreateScene = CreateSceneResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateSceneResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "arn")+ Prelude.<*> (x Data..:> "creationDateTime")+ )++instance Prelude.Hashable CreateScene where+ hashWithSalt _salt CreateScene' {..} =+ _salt+ `Prelude.hashWithSalt` capabilities+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` workspaceId+ `Prelude.hashWithSalt` sceneId+ `Prelude.hashWithSalt` contentLocation++instance Prelude.NFData CreateScene where+ rnf CreateScene' {..} =+ Prelude.rnf capabilities+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf sceneId+ `Prelude.seq` Prelude.rnf contentLocation++instance Data.ToHeaders CreateScene where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateScene where+ toJSON CreateScene' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("capabilities" Data..=) Prelude.<$> capabilities,+ ("description" Data..=) Prelude.<$> description,+ ("tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("sceneId" Data..= sceneId),+ Prelude.Just+ ("contentLocation" Data..= contentLocation)+ ]+ )++instance Data.ToPath CreateScene where+ toPath CreateScene' {..} =+ Prelude.mconcat+ ["/workspaces/", Data.toBS workspaceId, "/scenes"]++instance Data.ToQuery CreateScene where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateSceneResponse' smart constructor.+data CreateSceneResponse = CreateSceneResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The ARN of the scene.+ arn :: Prelude.Text,+ -- | The date and time when the scene was created.+ creationDateTime :: Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateSceneResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'createSceneResponse_httpStatus' - The response's http status code.+--+-- 'arn', 'createSceneResponse_arn' - The ARN of the scene.+--+-- 'creationDateTime', 'createSceneResponse_creationDateTime' - The date and time when the scene was created.+newCreateSceneResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'arn'+ Prelude.Text ->+ -- | 'creationDateTime'+ Prelude.UTCTime ->+ CreateSceneResponse+newCreateSceneResponse+ pHttpStatus_+ pArn_+ pCreationDateTime_ =+ CreateSceneResponse'+ { httpStatus = pHttpStatus_,+ arn = pArn_,+ creationDateTime =+ Data._Time Lens.# pCreationDateTime_+ }++-- | The response's http status code.+createSceneResponse_httpStatus :: Lens.Lens' CreateSceneResponse Prelude.Int+createSceneResponse_httpStatus = Lens.lens (\CreateSceneResponse' {httpStatus} -> httpStatus) (\s@CreateSceneResponse' {} a -> s {httpStatus = a} :: CreateSceneResponse)++-- | The ARN of the scene.+createSceneResponse_arn :: Lens.Lens' CreateSceneResponse Prelude.Text+createSceneResponse_arn = Lens.lens (\CreateSceneResponse' {arn} -> arn) (\s@CreateSceneResponse' {} a -> s {arn = a} :: CreateSceneResponse)++-- | The date and time when the scene was created.+createSceneResponse_creationDateTime :: Lens.Lens' CreateSceneResponse Prelude.UTCTime+createSceneResponse_creationDateTime = Lens.lens (\CreateSceneResponse' {creationDateTime} -> creationDateTime) (\s@CreateSceneResponse' {} a -> s {creationDateTime = a} :: CreateSceneResponse) Prelude.. Data._Time++instance Prelude.NFData CreateSceneResponse where+ rnf CreateSceneResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf creationDateTime
+ gen/Amazonka/IotTwinMaker/CreateSyncJob.hs view
@@ -0,0 +1,265 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.CreateSyncJob+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- This action creates a SyncJob.+module Amazonka.IotTwinMaker.CreateSyncJob+ ( -- * Creating a Request+ CreateSyncJob (..),+ newCreateSyncJob,++ -- * Request Lenses+ createSyncJob_tags,+ createSyncJob_workspaceId,+ createSyncJob_syncSource,+ createSyncJob_syncRole,++ -- * Destructuring the Response+ CreateSyncJobResponse (..),+ newCreateSyncJobResponse,++ -- * Response Lenses+ createSyncJobResponse_httpStatus,+ createSyncJobResponse_arn,+ createSyncJobResponse_creationDateTime,+ createSyncJobResponse_state,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateSyncJob' smart constructor.+data CreateSyncJob = CreateSyncJob'+ { -- | The SyncJob tags.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The workspace Id.+ workspaceId :: Prelude.Text,+ -- | The sync source.+ --+ -- Currently the only supported syncSoucre is @SITEWISE @.+ syncSource :: Prelude.Text,+ -- | The SyncJob IAM role. This IAM role is used by the sync job to read from+ -- the syncSource, and create, update or delete the corresponding+ -- resources.+ syncRole :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateSyncJob' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'tags', 'createSyncJob_tags' - The SyncJob tags.+--+-- 'workspaceId', 'createSyncJob_workspaceId' - The workspace Id.+--+-- 'syncSource', 'createSyncJob_syncSource' - The sync source.+--+-- Currently the only supported syncSoucre is @SITEWISE @.+--+-- 'syncRole', 'createSyncJob_syncRole' - The SyncJob IAM role. This IAM role is used by the sync job to read from+-- the syncSource, and create, update or delete the corresponding+-- resources.+newCreateSyncJob ::+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'syncSource'+ Prelude.Text ->+ -- | 'syncRole'+ Prelude.Text ->+ CreateSyncJob+newCreateSyncJob+ pWorkspaceId_+ pSyncSource_+ pSyncRole_ =+ CreateSyncJob'+ { tags = Prelude.Nothing,+ workspaceId = pWorkspaceId_,+ syncSource = pSyncSource_,+ syncRole = pSyncRole_+ }++-- | The SyncJob tags.+createSyncJob_tags :: Lens.Lens' CreateSyncJob (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createSyncJob_tags = Lens.lens (\CreateSyncJob' {tags} -> tags) (\s@CreateSyncJob' {} a -> s {tags = a} :: CreateSyncJob) Prelude.. Lens.mapping Lens.coerced++-- | The workspace Id.+createSyncJob_workspaceId :: Lens.Lens' CreateSyncJob Prelude.Text+createSyncJob_workspaceId = Lens.lens (\CreateSyncJob' {workspaceId} -> workspaceId) (\s@CreateSyncJob' {} a -> s {workspaceId = a} :: CreateSyncJob)++-- | The sync source.+--+-- Currently the only supported syncSoucre is @SITEWISE @.+createSyncJob_syncSource :: Lens.Lens' CreateSyncJob Prelude.Text+createSyncJob_syncSource = Lens.lens (\CreateSyncJob' {syncSource} -> syncSource) (\s@CreateSyncJob' {} a -> s {syncSource = a} :: CreateSyncJob)++-- | The SyncJob IAM role. This IAM role is used by the sync job to read from+-- the syncSource, and create, update or delete the corresponding+-- resources.+createSyncJob_syncRole :: Lens.Lens' CreateSyncJob Prelude.Text+createSyncJob_syncRole = Lens.lens (\CreateSyncJob' {syncRole} -> syncRole) (\s@CreateSyncJob' {} a -> s {syncRole = a} :: CreateSyncJob)++instance Core.AWSRequest CreateSyncJob where+ type+ AWSResponse CreateSyncJob =+ CreateSyncJobResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateSyncJobResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "arn")+ Prelude.<*> (x Data..:> "creationDateTime")+ Prelude.<*> (x Data..:> "state")+ )++instance Prelude.Hashable CreateSyncJob where+ hashWithSalt _salt CreateSyncJob' {..} =+ _salt+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` workspaceId+ `Prelude.hashWithSalt` syncSource+ `Prelude.hashWithSalt` syncRole++instance Prelude.NFData CreateSyncJob where+ rnf CreateSyncJob' {..} =+ Prelude.rnf tags+ `Prelude.seq` Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf syncSource+ `Prelude.seq` Prelude.rnf syncRole++instance Data.ToHeaders CreateSyncJob where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateSyncJob where+ toJSON CreateSyncJob' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("syncRole" Data..= syncRole)+ ]+ )++instance Data.ToPath CreateSyncJob where+ toPath CreateSyncJob' {..} =+ Prelude.mconcat+ [ "/workspaces/",+ Data.toBS workspaceId,+ "/sync-jobs/",+ Data.toBS syncSource+ ]++instance Data.ToQuery CreateSyncJob where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateSyncJobResponse' smart constructor.+data CreateSyncJobResponse = CreateSyncJobResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The SyncJob ARN.+ arn :: Prelude.Text,+ -- | The date and time for the SyncJob creation.+ creationDateTime :: Data.POSIX,+ -- | The SyncJob response state.+ state :: SyncJobState+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateSyncJobResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'createSyncJobResponse_httpStatus' - The response's http status code.+--+-- 'arn', 'createSyncJobResponse_arn' - The SyncJob ARN.+--+-- 'creationDateTime', 'createSyncJobResponse_creationDateTime' - The date and time for the SyncJob creation.+--+-- 'state', 'createSyncJobResponse_state' - The SyncJob response state.+newCreateSyncJobResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'arn'+ Prelude.Text ->+ -- | 'creationDateTime'+ Prelude.UTCTime ->+ -- | 'state'+ SyncJobState ->+ CreateSyncJobResponse+newCreateSyncJobResponse+ pHttpStatus_+ pArn_+ pCreationDateTime_+ pState_ =+ CreateSyncJobResponse'+ { httpStatus = pHttpStatus_,+ arn = pArn_,+ creationDateTime =+ Data._Time Lens.# pCreationDateTime_,+ state = pState_+ }++-- | The response's http status code.+createSyncJobResponse_httpStatus :: Lens.Lens' CreateSyncJobResponse Prelude.Int+createSyncJobResponse_httpStatus = Lens.lens (\CreateSyncJobResponse' {httpStatus} -> httpStatus) (\s@CreateSyncJobResponse' {} a -> s {httpStatus = a} :: CreateSyncJobResponse)++-- | The SyncJob ARN.+createSyncJobResponse_arn :: Lens.Lens' CreateSyncJobResponse Prelude.Text+createSyncJobResponse_arn = Lens.lens (\CreateSyncJobResponse' {arn} -> arn) (\s@CreateSyncJobResponse' {} a -> s {arn = a} :: CreateSyncJobResponse)++-- | The date and time for the SyncJob creation.+createSyncJobResponse_creationDateTime :: Lens.Lens' CreateSyncJobResponse Prelude.UTCTime+createSyncJobResponse_creationDateTime = Lens.lens (\CreateSyncJobResponse' {creationDateTime} -> creationDateTime) (\s@CreateSyncJobResponse' {} a -> s {creationDateTime = a} :: CreateSyncJobResponse) Prelude.. Data._Time++-- | The SyncJob response state.+createSyncJobResponse_state :: Lens.Lens' CreateSyncJobResponse SyncJobState+createSyncJobResponse_state = Lens.lens (\CreateSyncJobResponse' {state} -> state) (\s@CreateSyncJobResponse' {} a -> s {state = a} :: CreateSyncJobResponse)++instance Prelude.NFData CreateSyncJobResponse where+ rnf CreateSyncJobResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf state
+ gen/Amazonka/IotTwinMaker/CreateWorkspace.hs view
@@ -0,0 +1,248 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.CreateWorkspace+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a workplace.+module Amazonka.IotTwinMaker.CreateWorkspace+ ( -- * Creating a Request+ CreateWorkspace (..),+ newCreateWorkspace,++ -- * Request Lenses+ createWorkspace_description,+ createWorkspace_tags,+ createWorkspace_workspaceId,+ createWorkspace_s3Location,+ createWorkspace_role,++ -- * Destructuring the Response+ CreateWorkspaceResponse (..),+ newCreateWorkspaceResponse,++ -- * Response Lenses+ createWorkspaceResponse_httpStatus,+ createWorkspaceResponse_arn,+ createWorkspaceResponse_creationDateTime,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateWorkspace' smart constructor.+data CreateWorkspace = CreateWorkspace'+ { -- | The description of the workspace.+ description :: Prelude.Maybe Prelude.Text,+ -- | Metadata that you can use to manage the workspace+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The ID of the workspace.+ workspaceId :: Prelude.Text,+ -- | The ARN of the S3 bucket where resources associated with the workspace+ -- are stored.+ s3Location :: Prelude.Text,+ -- | The ARN of the execution role associated with the workspace.+ role' :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateWorkspace' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'createWorkspace_description' - The description of the workspace.+--+-- 'tags', 'createWorkspace_tags' - Metadata that you can use to manage the workspace+--+-- 'workspaceId', 'createWorkspace_workspaceId' - The ID of the workspace.+--+-- 's3Location', 'createWorkspace_s3Location' - The ARN of the S3 bucket where resources associated with the workspace+-- are stored.+--+-- 'role'', 'createWorkspace_role' - The ARN of the execution role associated with the workspace.+newCreateWorkspace ::+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 's3Location'+ Prelude.Text ->+ -- | 'role''+ Prelude.Text ->+ CreateWorkspace+newCreateWorkspace pWorkspaceId_ pS3Location_ pRole_ =+ CreateWorkspace'+ { description = Prelude.Nothing,+ tags = Prelude.Nothing,+ workspaceId = pWorkspaceId_,+ s3Location = pS3Location_,+ role' = pRole_+ }++-- | The description of the workspace.+createWorkspace_description :: Lens.Lens' CreateWorkspace (Prelude.Maybe Prelude.Text)+createWorkspace_description = Lens.lens (\CreateWorkspace' {description} -> description) (\s@CreateWorkspace' {} a -> s {description = a} :: CreateWorkspace)++-- | Metadata that you can use to manage the workspace+createWorkspace_tags :: Lens.Lens' CreateWorkspace (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createWorkspace_tags = Lens.lens (\CreateWorkspace' {tags} -> tags) (\s@CreateWorkspace' {} a -> s {tags = a} :: CreateWorkspace) Prelude.. Lens.mapping Lens.coerced++-- | The ID of the workspace.+createWorkspace_workspaceId :: Lens.Lens' CreateWorkspace Prelude.Text+createWorkspace_workspaceId = Lens.lens (\CreateWorkspace' {workspaceId} -> workspaceId) (\s@CreateWorkspace' {} a -> s {workspaceId = a} :: CreateWorkspace)++-- | The ARN of the S3 bucket where resources associated with the workspace+-- are stored.+createWorkspace_s3Location :: Lens.Lens' CreateWorkspace Prelude.Text+createWorkspace_s3Location = Lens.lens (\CreateWorkspace' {s3Location} -> s3Location) (\s@CreateWorkspace' {} a -> s {s3Location = a} :: CreateWorkspace)++-- | The ARN of the execution role associated with the workspace.+createWorkspace_role :: Lens.Lens' CreateWorkspace Prelude.Text+createWorkspace_role = Lens.lens (\CreateWorkspace' {role'} -> role') (\s@CreateWorkspace' {} a -> s {role' = a} :: CreateWorkspace)++instance Core.AWSRequest CreateWorkspace where+ type+ AWSResponse CreateWorkspace =+ CreateWorkspaceResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateWorkspaceResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "arn")+ Prelude.<*> (x Data..:> "creationDateTime")+ )++instance Prelude.Hashable CreateWorkspace where+ hashWithSalt _salt CreateWorkspace' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` workspaceId+ `Prelude.hashWithSalt` s3Location+ `Prelude.hashWithSalt` role'++instance Prelude.NFData CreateWorkspace where+ rnf CreateWorkspace' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf s3Location+ `Prelude.seq` Prelude.rnf role'++instance Data.ToHeaders CreateWorkspace where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateWorkspace where+ toJSON CreateWorkspace' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("description" Data..=) Prelude.<$> description,+ ("tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("s3Location" Data..= s3Location),+ Prelude.Just ("role" Data..= role')+ ]+ )++instance Data.ToPath CreateWorkspace where+ toPath CreateWorkspace' {..} =+ Prelude.mconcat+ ["/workspaces/", Data.toBS workspaceId]++instance Data.ToQuery CreateWorkspace where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateWorkspaceResponse' smart constructor.+data CreateWorkspaceResponse = CreateWorkspaceResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The ARN of the workspace.+ arn :: Prelude.Text,+ -- | The date and time when the workspace was created.+ creationDateTime :: Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateWorkspaceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'createWorkspaceResponse_httpStatus' - The response's http status code.+--+-- 'arn', 'createWorkspaceResponse_arn' - The ARN of the workspace.+--+-- 'creationDateTime', 'createWorkspaceResponse_creationDateTime' - The date and time when the workspace was created.+newCreateWorkspaceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'arn'+ Prelude.Text ->+ -- | 'creationDateTime'+ Prelude.UTCTime ->+ CreateWorkspaceResponse+newCreateWorkspaceResponse+ pHttpStatus_+ pArn_+ pCreationDateTime_ =+ CreateWorkspaceResponse'+ { httpStatus = pHttpStatus_,+ arn = pArn_,+ creationDateTime =+ Data._Time Lens.# pCreationDateTime_+ }++-- | The response's http status code.+createWorkspaceResponse_httpStatus :: Lens.Lens' CreateWorkspaceResponse Prelude.Int+createWorkspaceResponse_httpStatus = Lens.lens (\CreateWorkspaceResponse' {httpStatus} -> httpStatus) (\s@CreateWorkspaceResponse' {} a -> s {httpStatus = a} :: CreateWorkspaceResponse)++-- | The ARN of the workspace.+createWorkspaceResponse_arn :: Lens.Lens' CreateWorkspaceResponse Prelude.Text+createWorkspaceResponse_arn = Lens.lens (\CreateWorkspaceResponse' {arn} -> arn) (\s@CreateWorkspaceResponse' {} a -> s {arn = a} :: CreateWorkspaceResponse)++-- | The date and time when the workspace was created.+createWorkspaceResponse_creationDateTime :: Lens.Lens' CreateWorkspaceResponse Prelude.UTCTime+createWorkspaceResponse_creationDateTime = Lens.lens (\CreateWorkspaceResponse' {creationDateTime} -> creationDateTime) (\s@CreateWorkspaceResponse' {} a -> s {creationDateTime = a} :: CreateWorkspaceResponse) Prelude.. Data._Time++instance Prelude.NFData CreateWorkspaceResponse where+ rnf CreateWorkspaceResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf creationDateTime
+ gen/Amazonka/IotTwinMaker/DeleteComponentType.hs view
@@ -0,0 +1,185 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.DeleteComponentType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a component type.+module Amazonka.IotTwinMaker.DeleteComponentType+ ( -- * Creating a Request+ DeleteComponentType (..),+ newDeleteComponentType,++ -- * Request Lenses+ deleteComponentType_workspaceId,+ deleteComponentType_componentTypeId,++ -- * Destructuring the Response+ DeleteComponentTypeResponse (..),+ newDeleteComponentTypeResponse,++ -- * Response Lenses+ deleteComponentTypeResponse_httpStatus,+ deleteComponentTypeResponse_state,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteComponentType' smart constructor.+data DeleteComponentType = DeleteComponentType'+ { -- | The ID of the workspace that contains the component type.+ workspaceId :: Prelude.Text,+ -- | The ID of the component type to delete.+ componentTypeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteComponentType' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'workspaceId', 'deleteComponentType_workspaceId' - The ID of the workspace that contains the component type.+--+-- 'componentTypeId', 'deleteComponentType_componentTypeId' - The ID of the component type to delete.+newDeleteComponentType ::+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'componentTypeId'+ Prelude.Text ->+ DeleteComponentType+newDeleteComponentType+ pWorkspaceId_+ pComponentTypeId_ =+ DeleteComponentType'+ { workspaceId = pWorkspaceId_,+ componentTypeId = pComponentTypeId_+ }++-- | The ID of the workspace that contains the component type.+deleteComponentType_workspaceId :: Lens.Lens' DeleteComponentType Prelude.Text+deleteComponentType_workspaceId = Lens.lens (\DeleteComponentType' {workspaceId} -> workspaceId) (\s@DeleteComponentType' {} a -> s {workspaceId = a} :: DeleteComponentType)++-- | The ID of the component type to delete.+deleteComponentType_componentTypeId :: Lens.Lens' DeleteComponentType Prelude.Text+deleteComponentType_componentTypeId = Lens.lens (\DeleteComponentType' {componentTypeId} -> componentTypeId) (\s@DeleteComponentType' {} a -> s {componentTypeId = a} :: DeleteComponentType)++instance Core.AWSRequest DeleteComponentType where+ type+ AWSResponse DeleteComponentType =+ DeleteComponentTypeResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteComponentTypeResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "state")+ )++instance Prelude.Hashable DeleteComponentType where+ hashWithSalt _salt DeleteComponentType' {..} =+ _salt+ `Prelude.hashWithSalt` workspaceId+ `Prelude.hashWithSalt` componentTypeId++instance Prelude.NFData DeleteComponentType where+ rnf DeleteComponentType' {..} =+ Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf componentTypeId++instance Data.ToHeaders DeleteComponentType where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteComponentType where+ toPath DeleteComponentType' {..} =+ Prelude.mconcat+ [ "/workspaces/",+ Data.toBS workspaceId,+ "/component-types/",+ Data.toBS componentTypeId+ ]++instance Data.ToQuery DeleteComponentType where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteComponentTypeResponse' smart constructor.+data DeleteComponentTypeResponse = DeleteComponentTypeResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The current state of the component type to be deleted.+ state :: State+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteComponentTypeResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'deleteComponentTypeResponse_httpStatus' - The response's http status code.+--+-- 'state', 'deleteComponentTypeResponse_state' - The current state of the component type to be deleted.+newDeleteComponentTypeResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'state'+ State ->+ DeleteComponentTypeResponse+newDeleteComponentTypeResponse pHttpStatus_ pState_ =+ DeleteComponentTypeResponse'+ { httpStatus =+ pHttpStatus_,+ state = pState_+ }++-- | The response's http status code.+deleteComponentTypeResponse_httpStatus :: Lens.Lens' DeleteComponentTypeResponse Prelude.Int+deleteComponentTypeResponse_httpStatus = Lens.lens (\DeleteComponentTypeResponse' {httpStatus} -> httpStatus) (\s@DeleteComponentTypeResponse' {} a -> s {httpStatus = a} :: DeleteComponentTypeResponse)++-- | The current state of the component type to be deleted.+deleteComponentTypeResponse_state :: Lens.Lens' DeleteComponentTypeResponse State+deleteComponentTypeResponse_state = Lens.lens (\DeleteComponentTypeResponse' {state} -> state) (\s@DeleteComponentTypeResponse' {} a -> s {state = a} :: DeleteComponentTypeResponse)++instance Prelude.NFData DeleteComponentTypeResponse where+ rnf DeleteComponentTypeResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf state
+ gen/Amazonka/IotTwinMaker/DeleteEntity.hs view
@@ -0,0 +1,196 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.DeleteEntity+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes an entity.+module Amazonka.IotTwinMaker.DeleteEntity+ ( -- * Creating a Request+ DeleteEntity (..),+ newDeleteEntity,++ -- * Request Lenses+ deleteEntity_isRecursive,+ deleteEntity_workspaceId,+ deleteEntity_entityId,++ -- * Destructuring the Response+ DeleteEntityResponse (..),+ newDeleteEntityResponse,++ -- * Response Lenses+ deleteEntityResponse_httpStatus,+ deleteEntityResponse_state,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteEntity' smart constructor.+data DeleteEntity = DeleteEntity'+ { -- | A Boolean value that specifies whether the operation deletes child+ -- entities.+ isRecursive :: Prelude.Maybe Prelude.Bool,+ -- | The ID of the workspace that contains the entity to delete.+ workspaceId :: Prelude.Text,+ -- | The ID of the entity to delete.+ entityId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteEntity' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isRecursive', 'deleteEntity_isRecursive' - A Boolean value that specifies whether the operation deletes child+-- entities.+--+-- 'workspaceId', 'deleteEntity_workspaceId' - The ID of the workspace that contains the entity to delete.+--+-- 'entityId', 'deleteEntity_entityId' - The ID of the entity to delete.+newDeleteEntity ::+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'entityId'+ Prelude.Text ->+ DeleteEntity+newDeleteEntity pWorkspaceId_ pEntityId_ =+ DeleteEntity'+ { isRecursive = Prelude.Nothing,+ workspaceId = pWorkspaceId_,+ entityId = pEntityId_+ }++-- | A Boolean value that specifies whether the operation deletes child+-- entities.+deleteEntity_isRecursive :: Lens.Lens' DeleteEntity (Prelude.Maybe Prelude.Bool)+deleteEntity_isRecursive = Lens.lens (\DeleteEntity' {isRecursive} -> isRecursive) (\s@DeleteEntity' {} a -> s {isRecursive = a} :: DeleteEntity)++-- | The ID of the workspace that contains the entity to delete.+deleteEntity_workspaceId :: Lens.Lens' DeleteEntity Prelude.Text+deleteEntity_workspaceId = Lens.lens (\DeleteEntity' {workspaceId} -> workspaceId) (\s@DeleteEntity' {} a -> s {workspaceId = a} :: DeleteEntity)++-- | The ID of the entity to delete.+deleteEntity_entityId :: Lens.Lens' DeleteEntity Prelude.Text+deleteEntity_entityId = Lens.lens (\DeleteEntity' {entityId} -> entityId) (\s@DeleteEntity' {} a -> s {entityId = a} :: DeleteEntity)++instance Core.AWSRequest DeleteEntity where+ type AWSResponse DeleteEntity = DeleteEntityResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteEntityResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "state")+ )++instance Prelude.Hashable DeleteEntity where+ hashWithSalt _salt DeleteEntity' {..} =+ _salt+ `Prelude.hashWithSalt` isRecursive+ `Prelude.hashWithSalt` workspaceId+ `Prelude.hashWithSalt` entityId++instance Prelude.NFData DeleteEntity where+ rnf DeleteEntity' {..} =+ Prelude.rnf isRecursive+ `Prelude.seq` Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf entityId++instance Data.ToHeaders DeleteEntity where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteEntity where+ toPath DeleteEntity' {..} =+ Prelude.mconcat+ [ "/workspaces/",+ Data.toBS workspaceId,+ "/entities/",+ Data.toBS entityId+ ]++instance Data.ToQuery DeleteEntity where+ toQuery DeleteEntity' {..} =+ Prelude.mconcat ["isRecursive" Data.=: isRecursive]++-- | /See:/ 'newDeleteEntityResponse' smart constructor.+data DeleteEntityResponse = DeleteEntityResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The current state of the deleted entity.+ state :: State+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteEntityResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'deleteEntityResponse_httpStatus' - The response's http status code.+--+-- 'state', 'deleteEntityResponse_state' - The current state of the deleted entity.+newDeleteEntityResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'state'+ State ->+ DeleteEntityResponse+newDeleteEntityResponse pHttpStatus_ pState_ =+ DeleteEntityResponse'+ { httpStatus = pHttpStatus_,+ state = pState_+ }++-- | The response's http status code.+deleteEntityResponse_httpStatus :: Lens.Lens' DeleteEntityResponse Prelude.Int+deleteEntityResponse_httpStatus = Lens.lens (\DeleteEntityResponse' {httpStatus} -> httpStatus) (\s@DeleteEntityResponse' {} a -> s {httpStatus = a} :: DeleteEntityResponse)++-- | The current state of the deleted entity.+deleteEntityResponse_state :: Lens.Lens' DeleteEntityResponse State+deleteEntityResponse_state = Lens.lens (\DeleteEntityResponse' {state} -> state) (\s@DeleteEntityResponse' {} a -> s {state = a} :: DeleteEntityResponse)++instance Prelude.NFData DeleteEntityResponse where+ rnf DeleteEntityResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf state
+ gen/Amazonka/IotTwinMaker/DeleteScene.hs view
@@ -0,0 +1,163 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.DeleteScene+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a scene.+module Amazonka.IotTwinMaker.DeleteScene+ ( -- * Creating a Request+ DeleteScene (..),+ newDeleteScene,++ -- * Request Lenses+ deleteScene_workspaceId,+ deleteScene_sceneId,++ -- * Destructuring the Response+ DeleteSceneResponse (..),+ newDeleteSceneResponse,++ -- * Response Lenses+ deleteSceneResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteScene' smart constructor.+data DeleteScene = DeleteScene'+ { -- | The ID of the workspace.+ workspaceId :: Prelude.Text,+ -- | The ID of the scene to delete.+ sceneId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteScene' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'workspaceId', 'deleteScene_workspaceId' - The ID of the workspace.+--+-- 'sceneId', 'deleteScene_sceneId' - The ID of the scene to delete.+newDeleteScene ::+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'sceneId'+ Prelude.Text ->+ DeleteScene+newDeleteScene pWorkspaceId_ pSceneId_ =+ DeleteScene'+ { workspaceId = pWorkspaceId_,+ sceneId = pSceneId_+ }++-- | The ID of the workspace.+deleteScene_workspaceId :: Lens.Lens' DeleteScene Prelude.Text+deleteScene_workspaceId = Lens.lens (\DeleteScene' {workspaceId} -> workspaceId) (\s@DeleteScene' {} a -> s {workspaceId = a} :: DeleteScene)++-- | The ID of the scene to delete.+deleteScene_sceneId :: Lens.Lens' DeleteScene Prelude.Text+deleteScene_sceneId = Lens.lens (\DeleteScene' {sceneId} -> sceneId) (\s@DeleteScene' {} a -> s {sceneId = a} :: DeleteScene)++instance Core.AWSRequest DeleteScene where+ type AWSResponse DeleteScene = DeleteSceneResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DeleteSceneResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteScene where+ hashWithSalt _salt DeleteScene' {..} =+ _salt+ `Prelude.hashWithSalt` workspaceId+ `Prelude.hashWithSalt` sceneId++instance Prelude.NFData DeleteScene where+ rnf DeleteScene' {..} =+ Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf sceneId++instance Data.ToHeaders DeleteScene where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteScene where+ toPath DeleteScene' {..} =+ Prelude.mconcat+ [ "/workspaces/",+ Data.toBS workspaceId,+ "/scenes/",+ Data.toBS sceneId+ ]++instance Data.ToQuery DeleteScene where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteSceneResponse' smart constructor.+data DeleteSceneResponse = DeleteSceneResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteSceneResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'deleteSceneResponse_httpStatus' - The response's http status code.+newDeleteSceneResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteSceneResponse+newDeleteSceneResponse pHttpStatus_ =+ DeleteSceneResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+deleteSceneResponse_httpStatus :: Lens.Lens' DeleteSceneResponse Prelude.Int+deleteSceneResponse_httpStatus = Lens.lens (\DeleteSceneResponse' {httpStatus} -> httpStatus) (\s@DeleteSceneResponse' {} a -> s {httpStatus = a} :: DeleteSceneResponse)++instance Prelude.NFData DeleteSceneResponse where+ rnf DeleteSceneResponse' {..} = Prelude.rnf httpStatus
+ gen/Amazonka/IotTwinMaker/DeleteSyncJob.hs view
@@ -0,0 +1,188 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.DeleteSyncJob+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Delete the SyncJob.+module Amazonka.IotTwinMaker.DeleteSyncJob+ ( -- * Creating a Request+ DeleteSyncJob (..),+ newDeleteSyncJob,++ -- * Request Lenses+ deleteSyncJob_workspaceId,+ deleteSyncJob_syncSource,++ -- * Destructuring the Response+ DeleteSyncJobResponse (..),+ newDeleteSyncJobResponse,++ -- * Response Lenses+ deleteSyncJobResponse_httpStatus,+ deleteSyncJobResponse_state,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteSyncJob' smart constructor.+data DeleteSyncJob = DeleteSyncJob'+ { -- | The workspace Id.+ workspaceId :: Prelude.Text,+ -- | The sync source.+ --+ -- Currently the only supported syncSoucre is @SITEWISE @.+ syncSource :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteSyncJob' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'workspaceId', 'deleteSyncJob_workspaceId' - The workspace Id.+--+-- 'syncSource', 'deleteSyncJob_syncSource' - The sync source.+--+-- Currently the only supported syncSoucre is @SITEWISE @.+newDeleteSyncJob ::+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'syncSource'+ Prelude.Text ->+ DeleteSyncJob+newDeleteSyncJob pWorkspaceId_ pSyncSource_ =+ DeleteSyncJob'+ { workspaceId = pWorkspaceId_,+ syncSource = pSyncSource_+ }++-- | The workspace Id.+deleteSyncJob_workspaceId :: Lens.Lens' DeleteSyncJob Prelude.Text+deleteSyncJob_workspaceId = Lens.lens (\DeleteSyncJob' {workspaceId} -> workspaceId) (\s@DeleteSyncJob' {} a -> s {workspaceId = a} :: DeleteSyncJob)++-- | The sync source.+--+-- Currently the only supported syncSoucre is @SITEWISE @.+deleteSyncJob_syncSource :: Lens.Lens' DeleteSyncJob Prelude.Text+deleteSyncJob_syncSource = Lens.lens (\DeleteSyncJob' {syncSource} -> syncSource) (\s@DeleteSyncJob' {} a -> s {syncSource = a} :: DeleteSyncJob)++instance Core.AWSRequest DeleteSyncJob where+ type+ AWSResponse DeleteSyncJob =+ DeleteSyncJobResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteSyncJobResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "state")+ )++instance Prelude.Hashable DeleteSyncJob where+ hashWithSalt _salt DeleteSyncJob' {..} =+ _salt+ `Prelude.hashWithSalt` workspaceId+ `Prelude.hashWithSalt` syncSource++instance Prelude.NFData DeleteSyncJob where+ rnf DeleteSyncJob' {..} =+ Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf syncSource++instance Data.ToHeaders DeleteSyncJob where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteSyncJob where+ toPath DeleteSyncJob' {..} =+ Prelude.mconcat+ [ "/workspaces/",+ Data.toBS workspaceId,+ "/sync-jobs/",+ Data.toBS syncSource+ ]++instance Data.ToQuery DeleteSyncJob where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteSyncJobResponse' smart constructor.+data DeleteSyncJobResponse = DeleteSyncJobResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The SyncJob response state.+ state :: SyncJobState+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteSyncJobResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'deleteSyncJobResponse_httpStatus' - The response's http status code.+--+-- 'state', 'deleteSyncJobResponse_state' - The SyncJob response state.+newDeleteSyncJobResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'state'+ SyncJobState ->+ DeleteSyncJobResponse+newDeleteSyncJobResponse pHttpStatus_ pState_ =+ DeleteSyncJobResponse'+ { httpStatus = pHttpStatus_,+ state = pState_+ }++-- | The response's http status code.+deleteSyncJobResponse_httpStatus :: Lens.Lens' DeleteSyncJobResponse Prelude.Int+deleteSyncJobResponse_httpStatus = Lens.lens (\DeleteSyncJobResponse' {httpStatus} -> httpStatus) (\s@DeleteSyncJobResponse' {} a -> s {httpStatus = a} :: DeleteSyncJobResponse)++-- | The SyncJob response state.+deleteSyncJobResponse_state :: Lens.Lens' DeleteSyncJobResponse SyncJobState+deleteSyncJobResponse_state = Lens.lens (\DeleteSyncJobResponse' {state} -> state) (\s@DeleteSyncJobResponse' {} a -> s {state = a} :: DeleteSyncJobResponse)++instance Prelude.NFData DeleteSyncJobResponse where+ rnf DeleteSyncJobResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf state
+ gen/Amazonka/IotTwinMaker/DeleteWorkspace.hs view
@@ -0,0 +1,144 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.DeleteWorkspace+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a workspace.+module Amazonka.IotTwinMaker.DeleteWorkspace+ ( -- * Creating a Request+ DeleteWorkspace (..),+ newDeleteWorkspace,++ -- * Request Lenses+ deleteWorkspace_workspaceId,++ -- * Destructuring the Response+ DeleteWorkspaceResponse (..),+ newDeleteWorkspaceResponse,++ -- * Response Lenses+ deleteWorkspaceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteWorkspace' smart constructor.+data DeleteWorkspace = DeleteWorkspace'+ { -- | The ID of the workspace to delete.+ workspaceId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteWorkspace' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'workspaceId', 'deleteWorkspace_workspaceId' - The ID of the workspace to delete.+newDeleteWorkspace ::+ -- | 'workspaceId'+ Prelude.Text ->+ DeleteWorkspace+newDeleteWorkspace pWorkspaceId_ =+ DeleteWorkspace' {workspaceId = pWorkspaceId_}++-- | The ID of the workspace to delete.+deleteWorkspace_workspaceId :: Lens.Lens' DeleteWorkspace Prelude.Text+deleteWorkspace_workspaceId = Lens.lens (\DeleteWorkspace' {workspaceId} -> workspaceId) (\s@DeleteWorkspace' {} a -> s {workspaceId = a} :: DeleteWorkspace)++instance Core.AWSRequest DeleteWorkspace where+ type+ AWSResponse DeleteWorkspace =+ DeleteWorkspaceResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DeleteWorkspaceResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteWorkspace where+ hashWithSalt _salt DeleteWorkspace' {..} =+ _salt `Prelude.hashWithSalt` workspaceId++instance Prelude.NFData DeleteWorkspace where+ rnf DeleteWorkspace' {..} = Prelude.rnf workspaceId++instance Data.ToHeaders DeleteWorkspace where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DeleteWorkspace where+ toPath DeleteWorkspace' {..} =+ Prelude.mconcat+ ["/workspaces/", Data.toBS workspaceId]++instance Data.ToQuery DeleteWorkspace where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteWorkspaceResponse' smart constructor.+data DeleteWorkspaceResponse = DeleteWorkspaceResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteWorkspaceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'deleteWorkspaceResponse_httpStatus' - The response's http status code.+newDeleteWorkspaceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteWorkspaceResponse+newDeleteWorkspaceResponse pHttpStatus_ =+ DeleteWorkspaceResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+deleteWorkspaceResponse_httpStatus :: Lens.Lens' DeleteWorkspaceResponse Prelude.Int+deleteWorkspaceResponse_httpStatus = Lens.lens (\DeleteWorkspaceResponse' {httpStatus} -> httpStatus) (\s@DeleteWorkspaceResponse' {} a -> s {httpStatus = a} :: DeleteWorkspaceResponse)++instance Prelude.NFData DeleteWorkspaceResponse where+ rnf DeleteWorkspaceResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/IotTwinMaker/ExecuteQuery.hs view
@@ -0,0 +1,243 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.ExecuteQuery+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Run queries to access information from your knowledge graph of entities+-- within individual workspaces.+module Amazonka.IotTwinMaker.ExecuteQuery+ ( -- * Creating a Request+ ExecuteQuery (..),+ newExecuteQuery,++ -- * Request Lenses+ executeQuery_maxResults,+ executeQuery_nextToken,+ executeQuery_workspaceId,+ executeQuery_queryStatement,++ -- * Destructuring the Response+ ExecuteQueryResponse (..),+ newExecuteQueryResponse,++ -- * Response Lenses+ executeQueryResponse_columnDescriptions,+ executeQueryResponse_nextToken,+ executeQueryResponse_rows,+ executeQueryResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newExecuteQuery' smart constructor.+data ExecuteQuery = ExecuteQuery'+ { -- | The maximum number of results to return at one time. The default is 25.+ --+ -- Valid Range: Minimum value of 1. Maximum value of 250.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The string that specifies the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The ID of the workspace.+ workspaceId :: Prelude.Text,+ -- | The query statement.+ queryStatement :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExecuteQuery' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'executeQuery_maxResults' - The maximum number of results to return at one time. The default is 25.+--+-- Valid Range: Minimum value of 1. Maximum value of 250.+--+-- 'nextToken', 'executeQuery_nextToken' - The string that specifies the next page of results.+--+-- 'workspaceId', 'executeQuery_workspaceId' - The ID of the workspace.+--+-- 'queryStatement', 'executeQuery_queryStatement' - The query statement.+newExecuteQuery ::+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'queryStatement'+ Prelude.Text ->+ ExecuteQuery+newExecuteQuery pWorkspaceId_ pQueryStatement_ =+ ExecuteQuery'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ workspaceId = pWorkspaceId_,+ queryStatement = pQueryStatement_+ }++-- | The maximum number of results to return at one time. The default is 25.+--+-- Valid Range: Minimum value of 1. Maximum value of 250.+executeQuery_maxResults :: Lens.Lens' ExecuteQuery (Prelude.Maybe Prelude.Natural)+executeQuery_maxResults = Lens.lens (\ExecuteQuery' {maxResults} -> maxResults) (\s@ExecuteQuery' {} a -> s {maxResults = a} :: ExecuteQuery)++-- | The string that specifies the next page of results.+executeQuery_nextToken :: Lens.Lens' ExecuteQuery (Prelude.Maybe Prelude.Text)+executeQuery_nextToken = Lens.lens (\ExecuteQuery' {nextToken} -> nextToken) (\s@ExecuteQuery' {} a -> s {nextToken = a} :: ExecuteQuery)++-- | The ID of the workspace.+executeQuery_workspaceId :: Lens.Lens' ExecuteQuery Prelude.Text+executeQuery_workspaceId = Lens.lens (\ExecuteQuery' {workspaceId} -> workspaceId) (\s@ExecuteQuery' {} a -> s {workspaceId = a} :: ExecuteQuery)++-- | The query statement.+executeQuery_queryStatement :: Lens.Lens' ExecuteQuery Prelude.Text+executeQuery_queryStatement = Lens.lens (\ExecuteQuery' {queryStatement} -> queryStatement) (\s@ExecuteQuery' {} a -> s {queryStatement = a} :: ExecuteQuery)++instance Core.AWSRequest ExecuteQuery where+ type AWSResponse ExecuteQuery = ExecuteQueryResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ExecuteQueryResponse'+ Prelude.<$> ( x+ Data..?> "columnDescriptions"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (x Data..?> "rows" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ExecuteQuery where+ hashWithSalt _salt ExecuteQuery' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` workspaceId+ `Prelude.hashWithSalt` queryStatement++instance Prelude.NFData ExecuteQuery where+ rnf ExecuteQuery' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf queryStatement++instance Data.ToHeaders ExecuteQuery where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ExecuteQuery where+ toJSON ExecuteQuery' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken,+ Prelude.Just ("workspaceId" Data..= workspaceId),+ Prelude.Just+ ("queryStatement" Data..= queryStatement)+ ]+ )++instance Data.ToPath ExecuteQuery where+ toPath = Prelude.const "/queries/execution"++instance Data.ToQuery ExecuteQuery where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newExecuteQueryResponse' smart constructor.+data ExecuteQueryResponse = ExecuteQueryResponse'+ { -- | A list of ColumnDescription objects.+ columnDescriptions :: Prelude.Maybe [ColumnDescription],+ -- | The string that specifies the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Represents a single row in the query results.+ rows :: Prelude.Maybe [Row],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ExecuteQueryResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'columnDescriptions', 'executeQueryResponse_columnDescriptions' - A list of ColumnDescription objects.+--+-- 'nextToken', 'executeQueryResponse_nextToken' - The string that specifies the next page of results.+--+-- 'rows', 'executeQueryResponse_rows' - Represents a single row in the query results.+--+-- 'httpStatus', 'executeQueryResponse_httpStatus' - The response's http status code.+newExecuteQueryResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ExecuteQueryResponse+newExecuteQueryResponse pHttpStatus_ =+ ExecuteQueryResponse'+ { columnDescriptions =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ rows = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A list of ColumnDescription objects.+executeQueryResponse_columnDescriptions :: Lens.Lens' ExecuteQueryResponse (Prelude.Maybe [ColumnDescription])+executeQueryResponse_columnDescriptions = Lens.lens (\ExecuteQueryResponse' {columnDescriptions} -> columnDescriptions) (\s@ExecuteQueryResponse' {} a -> s {columnDescriptions = a} :: ExecuteQueryResponse) Prelude.. Lens.mapping Lens.coerced++-- | The string that specifies the next page of results.+executeQueryResponse_nextToken :: Lens.Lens' ExecuteQueryResponse (Prelude.Maybe Prelude.Text)+executeQueryResponse_nextToken = Lens.lens (\ExecuteQueryResponse' {nextToken} -> nextToken) (\s@ExecuteQueryResponse' {} a -> s {nextToken = a} :: ExecuteQueryResponse)++-- | Represents a single row in the query results.+executeQueryResponse_rows :: Lens.Lens' ExecuteQueryResponse (Prelude.Maybe [Row])+executeQueryResponse_rows = Lens.lens (\ExecuteQueryResponse' {rows} -> rows) (\s@ExecuteQueryResponse' {} a -> s {rows = a} :: ExecuteQueryResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+executeQueryResponse_httpStatus :: Lens.Lens' ExecuteQueryResponse Prelude.Int+executeQueryResponse_httpStatus = Lens.lens (\ExecuteQueryResponse' {httpStatus} -> httpStatus) (\s@ExecuteQueryResponse' {} a -> s {httpStatus = a} :: ExecuteQueryResponse)++instance Prelude.NFData ExecuteQueryResponse where+ rnf ExecuteQueryResponse' {..} =+ Prelude.rnf columnDescriptions+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf rows+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IotTwinMaker/GetComponentType.hs view
@@ -0,0 +1,403 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.GetComponentType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves information about a component type.+module Amazonka.IotTwinMaker.GetComponentType+ ( -- * Creating a Request+ GetComponentType (..),+ newGetComponentType,++ -- * Request Lenses+ getComponentType_workspaceId,+ getComponentType_componentTypeId,++ -- * Destructuring the Response+ GetComponentTypeResponse (..),+ newGetComponentTypeResponse,++ -- * Response Lenses+ getComponentTypeResponse_componentTypeName,+ getComponentTypeResponse_description,+ getComponentTypeResponse_extendsFrom,+ getComponentTypeResponse_functions,+ getComponentTypeResponse_isAbstract,+ getComponentTypeResponse_isSchemaInitialized,+ getComponentTypeResponse_isSingleton,+ getComponentTypeResponse_propertyDefinitions,+ getComponentTypeResponse_propertyGroups,+ getComponentTypeResponse_status,+ getComponentTypeResponse_syncSource,+ getComponentTypeResponse_httpStatus,+ getComponentTypeResponse_workspaceId,+ getComponentTypeResponse_componentTypeId,+ getComponentTypeResponse_creationDateTime,+ getComponentTypeResponse_updateDateTime,+ getComponentTypeResponse_arn,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetComponentType' smart constructor.+data GetComponentType = GetComponentType'+ { -- | The ID of the workspace that contains the component type.+ workspaceId :: Prelude.Text,+ -- | The ID of the component type.+ componentTypeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetComponentType' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'workspaceId', 'getComponentType_workspaceId' - The ID of the workspace that contains the component type.+--+-- 'componentTypeId', 'getComponentType_componentTypeId' - The ID of the component type.+newGetComponentType ::+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'componentTypeId'+ Prelude.Text ->+ GetComponentType+newGetComponentType pWorkspaceId_ pComponentTypeId_ =+ GetComponentType'+ { workspaceId = pWorkspaceId_,+ componentTypeId = pComponentTypeId_+ }++-- | The ID of the workspace that contains the component type.+getComponentType_workspaceId :: Lens.Lens' GetComponentType Prelude.Text+getComponentType_workspaceId = Lens.lens (\GetComponentType' {workspaceId} -> workspaceId) (\s@GetComponentType' {} a -> s {workspaceId = a} :: GetComponentType)++-- | The ID of the component type.+getComponentType_componentTypeId :: Lens.Lens' GetComponentType Prelude.Text+getComponentType_componentTypeId = Lens.lens (\GetComponentType' {componentTypeId} -> componentTypeId) (\s@GetComponentType' {} a -> s {componentTypeId = a} :: GetComponentType)++instance Core.AWSRequest GetComponentType where+ type+ AWSResponse GetComponentType =+ GetComponentTypeResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetComponentTypeResponse'+ Prelude.<$> (x Data..?> "componentTypeName")+ Prelude.<*> (x Data..?> "description")+ Prelude.<*> (x Data..?> "extendsFrom" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "functions" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "isAbstract")+ Prelude.<*> (x Data..?> "isSchemaInitialized")+ Prelude.<*> (x Data..?> "isSingleton")+ Prelude.<*> ( x+ Data..?> "propertyDefinitions"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "propertyGroups" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "status")+ Prelude.<*> (x Data..?> "syncSource")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "workspaceId")+ Prelude.<*> (x Data..:> "componentTypeId")+ Prelude.<*> (x Data..:> "creationDateTime")+ Prelude.<*> (x Data..:> "updateDateTime")+ Prelude.<*> (x Data..:> "arn")+ )++instance Prelude.Hashable GetComponentType where+ hashWithSalt _salt GetComponentType' {..} =+ _salt+ `Prelude.hashWithSalt` workspaceId+ `Prelude.hashWithSalt` componentTypeId++instance Prelude.NFData GetComponentType where+ rnf GetComponentType' {..} =+ Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf componentTypeId++instance Data.ToHeaders GetComponentType where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetComponentType where+ toPath GetComponentType' {..} =+ Prelude.mconcat+ [ "/workspaces/",+ Data.toBS workspaceId,+ "/component-types/",+ Data.toBS componentTypeId+ ]++instance Data.ToQuery GetComponentType where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetComponentTypeResponse' smart constructor.+data GetComponentTypeResponse = GetComponentTypeResponse'+ { -- | The component type name.+ componentTypeName :: Prelude.Maybe Prelude.Text,+ -- | The description of the component type.+ description :: Prelude.Maybe Prelude.Text,+ -- | The name of the parent component type that this component type extends.+ extendsFrom :: Prelude.Maybe [Prelude.Text],+ -- | An object that maps strings to the functions in the component type. Each+ -- string in the mapping must be unique to this object.+ functions :: Prelude.Maybe (Prelude.HashMap Prelude.Text FunctionResponse),+ -- | A Boolean value that specifies whether the component type is abstract.+ isAbstract :: Prelude.Maybe Prelude.Bool,+ -- | A Boolean value that specifies whether the component type has a schema+ -- initializer and that the schema initializer has run.+ isSchemaInitialized :: Prelude.Maybe Prelude.Bool,+ -- | A Boolean value that specifies whether an entity can have more than one+ -- component of this type.+ isSingleton :: Prelude.Maybe Prelude.Bool,+ -- | An object that maps strings to the property definitions in the component+ -- type. Each string in the mapping must be unique to this object.+ propertyDefinitions :: Prelude.Maybe (Prelude.HashMap Prelude.Text PropertyDefinitionResponse),+ -- | The maximum number of results to return at one time. The default is 25.+ --+ -- Valid Range: Minimum value of 1. Maximum value of 250.+ propertyGroups :: Prelude.Maybe (Prelude.HashMap Prelude.Text PropertyGroupResponse),+ -- | The current status of the component type.+ status :: Prelude.Maybe Status,+ -- | The syncSource of the sync job, if this entity was created by a sync+ -- job.+ syncSource :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The ID of the workspace that contains the component type.+ workspaceId :: Prelude.Text,+ -- | The ID of the component type.+ componentTypeId :: Prelude.Text,+ -- | The date and time when the component type was created.+ creationDateTime :: Data.POSIX,+ -- | The date and time when the component was last updated.+ updateDateTime :: Data.POSIX,+ -- | The ARN of the component type.+ arn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetComponentTypeResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'componentTypeName', 'getComponentTypeResponse_componentTypeName' - The component type name.+--+-- 'description', 'getComponentTypeResponse_description' - The description of the component type.+--+-- 'extendsFrom', 'getComponentTypeResponse_extendsFrom' - The name of the parent component type that this component type extends.+--+-- 'functions', 'getComponentTypeResponse_functions' - An object that maps strings to the functions in the component type. Each+-- string in the mapping must be unique to this object.+--+-- 'isAbstract', 'getComponentTypeResponse_isAbstract' - A Boolean value that specifies whether the component type is abstract.+--+-- 'isSchemaInitialized', 'getComponentTypeResponse_isSchemaInitialized' - A Boolean value that specifies whether the component type has a schema+-- initializer and that the schema initializer has run.+--+-- 'isSingleton', 'getComponentTypeResponse_isSingleton' - A Boolean value that specifies whether an entity can have more than one+-- component of this type.+--+-- 'propertyDefinitions', 'getComponentTypeResponse_propertyDefinitions' - An object that maps strings to the property definitions in the component+-- type. Each string in the mapping must be unique to this object.+--+-- 'propertyGroups', 'getComponentTypeResponse_propertyGroups' - The maximum number of results to return at one time. The default is 25.+--+-- Valid Range: Minimum value of 1. Maximum value of 250.+--+-- 'status', 'getComponentTypeResponse_status' - The current status of the component type.+--+-- 'syncSource', 'getComponentTypeResponse_syncSource' - The syncSource of the sync job, if this entity was created by a sync+-- job.+--+-- 'httpStatus', 'getComponentTypeResponse_httpStatus' - The response's http status code.+--+-- 'workspaceId', 'getComponentTypeResponse_workspaceId' - The ID of the workspace that contains the component type.+--+-- 'componentTypeId', 'getComponentTypeResponse_componentTypeId' - The ID of the component type.+--+-- 'creationDateTime', 'getComponentTypeResponse_creationDateTime' - The date and time when the component type was created.+--+-- 'updateDateTime', 'getComponentTypeResponse_updateDateTime' - The date and time when the component was last updated.+--+-- 'arn', 'getComponentTypeResponse_arn' - The ARN of the component type.+newGetComponentTypeResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'componentTypeId'+ Prelude.Text ->+ -- | 'creationDateTime'+ Prelude.UTCTime ->+ -- | 'updateDateTime'+ Prelude.UTCTime ->+ -- | 'arn'+ Prelude.Text ->+ GetComponentTypeResponse+newGetComponentTypeResponse+ pHttpStatus_+ pWorkspaceId_+ pComponentTypeId_+ pCreationDateTime_+ pUpdateDateTime_+ pArn_ =+ GetComponentTypeResponse'+ { componentTypeName =+ Prelude.Nothing,+ description = Prelude.Nothing,+ extendsFrom = Prelude.Nothing,+ functions = Prelude.Nothing,+ isAbstract = Prelude.Nothing,+ isSchemaInitialized = Prelude.Nothing,+ isSingleton = Prelude.Nothing,+ propertyDefinitions = Prelude.Nothing,+ propertyGroups = Prelude.Nothing,+ status = Prelude.Nothing,+ syncSource = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ workspaceId = pWorkspaceId_,+ componentTypeId = pComponentTypeId_,+ creationDateTime =+ Data._Time Lens.# pCreationDateTime_,+ updateDateTime =+ Data._Time Lens.# pUpdateDateTime_,+ arn = pArn_+ }++-- | The component type name.+getComponentTypeResponse_componentTypeName :: Lens.Lens' GetComponentTypeResponse (Prelude.Maybe Prelude.Text)+getComponentTypeResponse_componentTypeName = Lens.lens (\GetComponentTypeResponse' {componentTypeName} -> componentTypeName) (\s@GetComponentTypeResponse' {} a -> s {componentTypeName = a} :: GetComponentTypeResponse)++-- | The description of the component type.+getComponentTypeResponse_description :: Lens.Lens' GetComponentTypeResponse (Prelude.Maybe Prelude.Text)+getComponentTypeResponse_description = Lens.lens (\GetComponentTypeResponse' {description} -> description) (\s@GetComponentTypeResponse' {} a -> s {description = a} :: GetComponentTypeResponse)++-- | The name of the parent component type that this component type extends.+getComponentTypeResponse_extendsFrom :: Lens.Lens' GetComponentTypeResponse (Prelude.Maybe [Prelude.Text])+getComponentTypeResponse_extendsFrom = Lens.lens (\GetComponentTypeResponse' {extendsFrom} -> extendsFrom) (\s@GetComponentTypeResponse' {} a -> s {extendsFrom = a} :: GetComponentTypeResponse) Prelude.. Lens.mapping Lens.coerced++-- | An object that maps strings to the functions in the component type. Each+-- string in the mapping must be unique to this object.+getComponentTypeResponse_functions :: Lens.Lens' GetComponentTypeResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text FunctionResponse))+getComponentTypeResponse_functions = Lens.lens (\GetComponentTypeResponse' {functions} -> functions) (\s@GetComponentTypeResponse' {} a -> s {functions = a} :: GetComponentTypeResponse) Prelude.. Lens.mapping Lens.coerced++-- | A Boolean value that specifies whether the component type is abstract.+getComponentTypeResponse_isAbstract :: Lens.Lens' GetComponentTypeResponse (Prelude.Maybe Prelude.Bool)+getComponentTypeResponse_isAbstract = Lens.lens (\GetComponentTypeResponse' {isAbstract} -> isAbstract) (\s@GetComponentTypeResponse' {} a -> s {isAbstract = a} :: GetComponentTypeResponse)++-- | A Boolean value that specifies whether the component type has a schema+-- initializer and that the schema initializer has run.+getComponentTypeResponse_isSchemaInitialized :: Lens.Lens' GetComponentTypeResponse (Prelude.Maybe Prelude.Bool)+getComponentTypeResponse_isSchemaInitialized = Lens.lens (\GetComponentTypeResponse' {isSchemaInitialized} -> isSchemaInitialized) (\s@GetComponentTypeResponse' {} a -> s {isSchemaInitialized = a} :: GetComponentTypeResponse)++-- | A Boolean value that specifies whether an entity can have more than one+-- component of this type.+getComponentTypeResponse_isSingleton :: Lens.Lens' GetComponentTypeResponse (Prelude.Maybe Prelude.Bool)+getComponentTypeResponse_isSingleton = Lens.lens (\GetComponentTypeResponse' {isSingleton} -> isSingleton) (\s@GetComponentTypeResponse' {} a -> s {isSingleton = a} :: GetComponentTypeResponse)++-- | An object that maps strings to the property definitions in the component+-- type. Each string in the mapping must be unique to this object.+getComponentTypeResponse_propertyDefinitions :: Lens.Lens' GetComponentTypeResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text PropertyDefinitionResponse))+getComponentTypeResponse_propertyDefinitions = Lens.lens (\GetComponentTypeResponse' {propertyDefinitions} -> propertyDefinitions) (\s@GetComponentTypeResponse' {} a -> s {propertyDefinitions = a} :: GetComponentTypeResponse) Prelude.. Lens.mapping Lens.coerced++-- | The maximum number of results to return at one time. The default is 25.+--+-- Valid Range: Minimum value of 1. Maximum value of 250.+getComponentTypeResponse_propertyGroups :: Lens.Lens' GetComponentTypeResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text PropertyGroupResponse))+getComponentTypeResponse_propertyGroups = Lens.lens (\GetComponentTypeResponse' {propertyGroups} -> propertyGroups) (\s@GetComponentTypeResponse' {} a -> s {propertyGroups = a} :: GetComponentTypeResponse) Prelude.. Lens.mapping Lens.coerced++-- | The current status of the component type.+getComponentTypeResponse_status :: Lens.Lens' GetComponentTypeResponse (Prelude.Maybe Status)+getComponentTypeResponse_status = Lens.lens (\GetComponentTypeResponse' {status} -> status) (\s@GetComponentTypeResponse' {} a -> s {status = a} :: GetComponentTypeResponse)++-- | The syncSource of the sync job, if this entity was created by a sync+-- job.+getComponentTypeResponse_syncSource :: Lens.Lens' GetComponentTypeResponse (Prelude.Maybe Prelude.Text)+getComponentTypeResponse_syncSource = Lens.lens (\GetComponentTypeResponse' {syncSource} -> syncSource) (\s@GetComponentTypeResponse' {} a -> s {syncSource = a} :: GetComponentTypeResponse)++-- | The response's http status code.+getComponentTypeResponse_httpStatus :: Lens.Lens' GetComponentTypeResponse Prelude.Int+getComponentTypeResponse_httpStatus = Lens.lens (\GetComponentTypeResponse' {httpStatus} -> httpStatus) (\s@GetComponentTypeResponse' {} a -> s {httpStatus = a} :: GetComponentTypeResponse)++-- | The ID of the workspace that contains the component type.+getComponentTypeResponse_workspaceId :: Lens.Lens' GetComponentTypeResponse Prelude.Text+getComponentTypeResponse_workspaceId = Lens.lens (\GetComponentTypeResponse' {workspaceId} -> workspaceId) (\s@GetComponentTypeResponse' {} a -> s {workspaceId = a} :: GetComponentTypeResponse)++-- | The ID of the component type.+getComponentTypeResponse_componentTypeId :: Lens.Lens' GetComponentTypeResponse Prelude.Text+getComponentTypeResponse_componentTypeId = Lens.lens (\GetComponentTypeResponse' {componentTypeId} -> componentTypeId) (\s@GetComponentTypeResponse' {} a -> s {componentTypeId = a} :: GetComponentTypeResponse)++-- | The date and time when the component type was created.+getComponentTypeResponse_creationDateTime :: Lens.Lens' GetComponentTypeResponse Prelude.UTCTime+getComponentTypeResponse_creationDateTime = Lens.lens (\GetComponentTypeResponse' {creationDateTime} -> creationDateTime) (\s@GetComponentTypeResponse' {} a -> s {creationDateTime = a} :: GetComponentTypeResponse) Prelude.. Data._Time++-- | The date and time when the component was last updated.+getComponentTypeResponse_updateDateTime :: Lens.Lens' GetComponentTypeResponse Prelude.UTCTime+getComponentTypeResponse_updateDateTime = Lens.lens (\GetComponentTypeResponse' {updateDateTime} -> updateDateTime) (\s@GetComponentTypeResponse' {} a -> s {updateDateTime = a} :: GetComponentTypeResponse) Prelude.. Data._Time++-- | The ARN of the component type.+getComponentTypeResponse_arn :: Lens.Lens' GetComponentTypeResponse Prelude.Text+getComponentTypeResponse_arn = Lens.lens (\GetComponentTypeResponse' {arn} -> arn) (\s@GetComponentTypeResponse' {} a -> s {arn = a} :: GetComponentTypeResponse)++instance Prelude.NFData GetComponentTypeResponse where+ rnf GetComponentTypeResponse' {..} =+ Prelude.rnf componentTypeName+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf extendsFrom+ `Prelude.seq` Prelude.rnf functions+ `Prelude.seq` Prelude.rnf isAbstract+ `Prelude.seq` Prelude.rnf isSchemaInitialized+ `Prelude.seq` Prelude.rnf isSingleton+ `Prelude.seq` Prelude.rnf propertyDefinitions+ `Prelude.seq` Prelude.rnf propertyGroups+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf syncSource+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf componentTypeId+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf updateDateTime+ `Prelude.seq` Prelude.rnf arn
+ gen/Amazonka/IotTwinMaker/GetEntity.hs view
@@ -0,0 +1,348 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.GetEntity+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves information about an entity.+module Amazonka.IotTwinMaker.GetEntity+ ( -- * Creating a Request+ GetEntity (..),+ newGetEntity,++ -- * Request Lenses+ getEntity_workspaceId,+ getEntity_entityId,++ -- * Destructuring the Response+ GetEntityResponse (..),+ newGetEntityResponse,++ -- * Response Lenses+ getEntityResponse_components,+ getEntityResponse_description,+ getEntityResponse_syncSource,+ getEntityResponse_httpStatus,+ getEntityResponse_entityId,+ getEntityResponse_entityName,+ getEntityResponse_arn,+ getEntityResponse_status,+ getEntityResponse_workspaceId,+ getEntityResponse_parentEntityId,+ getEntityResponse_hasChildEntities,+ getEntityResponse_creationDateTime,+ getEntityResponse_updateDateTime,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetEntity' smart constructor.+data GetEntity = GetEntity'+ { -- | The ID of the workspace.+ workspaceId :: Prelude.Text,+ -- | The ID of the entity.+ entityId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetEntity' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'workspaceId', 'getEntity_workspaceId' - The ID of the workspace.+--+-- 'entityId', 'getEntity_entityId' - The ID of the entity.+newGetEntity ::+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'entityId'+ Prelude.Text ->+ GetEntity+newGetEntity pWorkspaceId_ pEntityId_ =+ GetEntity'+ { workspaceId = pWorkspaceId_,+ entityId = pEntityId_+ }++-- | The ID of the workspace.+getEntity_workspaceId :: Lens.Lens' GetEntity Prelude.Text+getEntity_workspaceId = Lens.lens (\GetEntity' {workspaceId} -> workspaceId) (\s@GetEntity' {} a -> s {workspaceId = a} :: GetEntity)++-- | The ID of the entity.+getEntity_entityId :: Lens.Lens' GetEntity Prelude.Text+getEntity_entityId = Lens.lens (\GetEntity' {entityId} -> entityId) (\s@GetEntity' {} a -> s {entityId = a} :: GetEntity)++instance Core.AWSRequest GetEntity where+ type AWSResponse GetEntity = GetEntityResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetEntityResponse'+ Prelude.<$> (x Data..?> "components" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "description")+ Prelude.<*> (x Data..?> "syncSource")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "entityId")+ Prelude.<*> (x Data..:> "entityName")+ Prelude.<*> (x Data..:> "arn")+ Prelude.<*> (x Data..:> "status")+ Prelude.<*> (x Data..:> "workspaceId")+ Prelude.<*> (x Data..:> "parentEntityId")+ Prelude.<*> (x Data..:> "hasChildEntities")+ Prelude.<*> (x Data..:> "creationDateTime")+ Prelude.<*> (x Data..:> "updateDateTime")+ )++instance Prelude.Hashable GetEntity where+ hashWithSalt _salt GetEntity' {..} =+ _salt+ `Prelude.hashWithSalt` workspaceId+ `Prelude.hashWithSalt` entityId++instance Prelude.NFData GetEntity where+ rnf GetEntity' {..} =+ Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf entityId++instance Data.ToHeaders GetEntity where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetEntity where+ toPath GetEntity' {..} =+ Prelude.mconcat+ [ "/workspaces/",+ Data.toBS workspaceId,+ "/entities/",+ Data.toBS entityId+ ]++instance Data.ToQuery GetEntity where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetEntityResponse' smart constructor.+data GetEntityResponse = GetEntityResponse'+ { -- | An object that maps strings to the components in the entity. Each string+ -- in the mapping must be unique to this object.+ components :: Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentResponse),+ -- | The description of the entity.+ description :: Prelude.Maybe Prelude.Text,+ -- | The syncSource of the sync job, if this entity was created by a sync+ -- job.+ syncSource :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The ID of the entity.+ entityId :: Prelude.Text,+ -- | The name of the entity.+ entityName :: Prelude.Text,+ -- | The ARN of the entity.+ arn :: Prelude.Text,+ -- | The current status of the entity.+ status :: Status,+ -- | The ID of the workspace.+ workspaceId :: Prelude.Text,+ -- | The ID of the parent entity for this entity.+ parentEntityId :: Prelude.Text,+ -- | A Boolean value that specifies whether the entity has associated child+ -- entities.+ hasChildEntities :: Prelude.Bool,+ -- | The date and time when the entity was created.+ creationDateTime :: Data.POSIX,+ -- | The date and time when the entity was last updated.+ updateDateTime :: Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetEntityResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'components', 'getEntityResponse_components' - An object that maps strings to the components in the entity. Each string+-- in the mapping must be unique to this object.+--+-- 'description', 'getEntityResponse_description' - The description of the entity.+--+-- 'syncSource', 'getEntityResponse_syncSource' - The syncSource of the sync job, if this entity was created by a sync+-- job.+--+-- 'httpStatus', 'getEntityResponse_httpStatus' - The response's http status code.+--+-- 'entityId', 'getEntityResponse_entityId' - The ID of the entity.+--+-- 'entityName', 'getEntityResponse_entityName' - The name of the entity.+--+-- 'arn', 'getEntityResponse_arn' - The ARN of the entity.+--+-- 'status', 'getEntityResponse_status' - The current status of the entity.+--+-- 'workspaceId', 'getEntityResponse_workspaceId' - The ID of the workspace.+--+-- 'parentEntityId', 'getEntityResponse_parentEntityId' - The ID of the parent entity for this entity.+--+-- 'hasChildEntities', 'getEntityResponse_hasChildEntities' - A Boolean value that specifies whether the entity has associated child+-- entities.+--+-- 'creationDateTime', 'getEntityResponse_creationDateTime' - The date and time when the entity was created.+--+-- 'updateDateTime', 'getEntityResponse_updateDateTime' - The date and time when the entity was last updated.+newGetEntityResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'entityId'+ Prelude.Text ->+ -- | 'entityName'+ Prelude.Text ->+ -- | 'arn'+ Prelude.Text ->+ -- | 'status'+ Status ->+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'parentEntityId'+ Prelude.Text ->+ -- | 'hasChildEntities'+ Prelude.Bool ->+ -- | 'creationDateTime'+ Prelude.UTCTime ->+ -- | 'updateDateTime'+ Prelude.UTCTime ->+ GetEntityResponse+newGetEntityResponse+ pHttpStatus_+ pEntityId_+ pEntityName_+ pArn_+ pStatus_+ pWorkspaceId_+ pParentEntityId_+ pHasChildEntities_+ pCreationDateTime_+ pUpdateDateTime_ =+ GetEntityResponse'+ { components = Prelude.Nothing,+ description = Prelude.Nothing,+ syncSource = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ entityId = pEntityId_,+ entityName = pEntityName_,+ arn = pArn_,+ status = pStatus_,+ workspaceId = pWorkspaceId_,+ parentEntityId = pParentEntityId_,+ hasChildEntities = pHasChildEntities_,+ creationDateTime =+ Data._Time Lens.# pCreationDateTime_,+ updateDateTime = Data._Time Lens.# pUpdateDateTime_+ }++-- | An object that maps strings to the components in the entity. Each string+-- in the mapping must be unique to this object.+getEntityResponse_components :: Lens.Lens' GetEntityResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentResponse))+getEntityResponse_components = Lens.lens (\GetEntityResponse' {components} -> components) (\s@GetEntityResponse' {} a -> s {components = a} :: GetEntityResponse) Prelude.. Lens.mapping Lens.coerced++-- | The description of the entity.+getEntityResponse_description :: Lens.Lens' GetEntityResponse (Prelude.Maybe Prelude.Text)+getEntityResponse_description = Lens.lens (\GetEntityResponse' {description} -> description) (\s@GetEntityResponse' {} a -> s {description = a} :: GetEntityResponse)++-- | The syncSource of the sync job, if this entity was created by a sync+-- job.+getEntityResponse_syncSource :: Lens.Lens' GetEntityResponse (Prelude.Maybe Prelude.Text)+getEntityResponse_syncSource = Lens.lens (\GetEntityResponse' {syncSource} -> syncSource) (\s@GetEntityResponse' {} a -> s {syncSource = a} :: GetEntityResponse)++-- | The response's http status code.+getEntityResponse_httpStatus :: Lens.Lens' GetEntityResponse Prelude.Int+getEntityResponse_httpStatus = Lens.lens (\GetEntityResponse' {httpStatus} -> httpStatus) (\s@GetEntityResponse' {} a -> s {httpStatus = a} :: GetEntityResponse)++-- | The ID of the entity.+getEntityResponse_entityId :: Lens.Lens' GetEntityResponse Prelude.Text+getEntityResponse_entityId = Lens.lens (\GetEntityResponse' {entityId} -> entityId) (\s@GetEntityResponse' {} a -> s {entityId = a} :: GetEntityResponse)++-- | The name of the entity.+getEntityResponse_entityName :: Lens.Lens' GetEntityResponse Prelude.Text+getEntityResponse_entityName = Lens.lens (\GetEntityResponse' {entityName} -> entityName) (\s@GetEntityResponse' {} a -> s {entityName = a} :: GetEntityResponse)++-- | The ARN of the entity.+getEntityResponse_arn :: Lens.Lens' GetEntityResponse Prelude.Text+getEntityResponse_arn = Lens.lens (\GetEntityResponse' {arn} -> arn) (\s@GetEntityResponse' {} a -> s {arn = a} :: GetEntityResponse)++-- | The current status of the entity.+getEntityResponse_status :: Lens.Lens' GetEntityResponse Status+getEntityResponse_status = Lens.lens (\GetEntityResponse' {status} -> status) (\s@GetEntityResponse' {} a -> s {status = a} :: GetEntityResponse)++-- | The ID of the workspace.+getEntityResponse_workspaceId :: Lens.Lens' GetEntityResponse Prelude.Text+getEntityResponse_workspaceId = Lens.lens (\GetEntityResponse' {workspaceId} -> workspaceId) (\s@GetEntityResponse' {} a -> s {workspaceId = a} :: GetEntityResponse)++-- | The ID of the parent entity for this entity.+getEntityResponse_parentEntityId :: Lens.Lens' GetEntityResponse Prelude.Text+getEntityResponse_parentEntityId = Lens.lens (\GetEntityResponse' {parentEntityId} -> parentEntityId) (\s@GetEntityResponse' {} a -> s {parentEntityId = a} :: GetEntityResponse)++-- | A Boolean value that specifies whether the entity has associated child+-- entities.+getEntityResponse_hasChildEntities :: Lens.Lens' GetEntityResponse Prelude.Bool+getEntityResponse_hasChildEntities = Lens.lens (\GetEntityResponse' {hasChildEntities} -> hasChildEntities) (\s@GetEntityResponse' {} a -> s {hasChildEntities = a} :: GetEntityResponse)++-- | The date and time when the entity was created.+getEntityResponse_creationDateTime :: Lens.Lens' GetEntityResponse Prelude.UTCTime+getEntityResponse_creationDateTime = Lens.lens (\GetEntityResponse' {creationDateTime} -> creationDateTime) (\s@GetEntityResponse' {} a -> s {creationDateTime = a} :: GetEntityResponse) Prelude.. Data._Time++-- | The date and time when the entity was last updated.+getEntityResponse_updateDateTime :: Lens.Lens' GetEntityResponse Prelude.UTCTime+getEntityResponse_updateDateTime = Lens.lens (\GetEntityResponse' {updateDateTime} -> updateDateTime) (\s@GetEntityResponse' {} a -> s {updateDateTime = a} :: GetEntityResponse) Prelude.. Data._Time++instance Prelude.NFData GetEntityResponse where+ rnf GetEntityResponse' {..} =+ Prelude.rnf components+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf syncSource+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf entityId+ `Prelude.seq` Prelude.rnf entityName+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf parentEntityId+ `Prelude.seq` Prelude.rnf hasChildEntities+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf updateDateTime
+ gen/Amazonka/IotTwinMaker/GetPricingPlan.hs view
@@ -0,0 +1,157 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.GetPricingPlan+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets the pricing plan.+module Amazonka.IotTwinMaker.GetPricingPlan+ ( -- * Creating a Request+ GetPricingPlan (..),+ newGetPricingPlan,++ -- * Destructuring the Response+ GetPricingPlanResponse (..),+ newGetPricingPlanResponse,++ -- * Response Lenses+ getPricingPlanResponse_pendingPricingPlan,+ getPricingPlanResponse_httpStatus,+ getPricingPlanResponse_currentPricingPlan,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetPricingPlan' smart constructor.+data GetPricingPlan = GetPricingPlan'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetPricingPlan' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newGetPricingPlan ::+ GetPricingPlan+newGetPricingPlan = GetPricingPlan'++instance Core.AWSRequest GetPricingPlan where+ type+ AWSResponse GetPricingPlan =+ GetPricingPlanResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetPricingPlanResponse'+ Prelude.<$> (x Data..?> "pendingPricingPlan")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "currentPricingPlan")+ )++instance Prelude.Hashable GetPricingPlan where+ hashWithSalt _salt _ =+ _salt `Prelude.hashWithSalt` ()++instance Prelude.NFData GetPricingPlan where+ rnf _ = ()++instance Data.ToHeaders GetPricingPlan where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetPricingPlan where+ toPath = Prelude.const "/pricingplan"++instance Data.ToQuery GetPricingPlan where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetPricingPlanResponse' smart constructor.+data GetPricingPlanResponse = GetPricingPlanResponse'+ { -- | The pending pricing plan.+ pendingPricingPlan :: Prelude.Maybe PricingPlan,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The chosen pricing plan for the current billing cycle.+ currentPricingPlan :: PricingPlan+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetPricingPlanResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'pendingPricingPlan', 'getPricingPlanResponse_pendingPricingPlan' - The pending pricing plan.+--+-- 'httpStatus', 'getPricingPlanResponse_httpStatus' - The response's http status code.+--+-- 'currentPricingPlan', 'getPricingPlanResponse_currentPricingPlan' - The chosen pricing plan for the current billing cycle.+newGetPricingPlanResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'currentPricingPlan'+ PricingPlan ->+ GetPricingPlanResponse+newGetPricingPlanResponse+ pHttpStatus_+ pCurrentPricingPlan_ =+ GetPricingPlanResponse'+ { pendingPricingPlan =+ Prelude.Nothing,+ httpStatus = pHttpStatus_,+ currentPricingPlan = pCurrentPricingPlan_+ }++-- | The pending pricing plan.+getPricingPlanResponse_pendingPricingPlan :: Lens.Lens' GetPricingPlanResponse (Prelude.Maybe PricingPlan)+getPricingPlanResponse_pendingPricingPlan = Lens.lens (\GetPricingPlanResponse' {pendingPricingPlan} -> pendingPricingPlan) (\s@GetPricingPlanResponse' {} a -> s {pendingPricingPlan = a} :: GetPricingPlanResponse)++-- | The response's http status code.+getPricingPlanResponse_httpStatus :: Lens.Lens' GetPricingPlanResponse Prelude.Int+getPricingPlanResponse_httpStatus = Lens.lens (\GetPricingPlanResponse' {httpStatus} -> httpStatus) (\s@GetPricingPlanResponse' {} a -> s {httpStatus = a} :: GetPricingPlanResponse)++-- | The chosen pricing plan for the current billing cycle.+getPricingPlanResponse_currentPricingPlan :: Lens.Lens' GetPricingPlanResponse PricingPlan+getPricingPlanResponse_currentPricingPlan = Lens.lens (\GetPricingPlanResponse' {currentPricingPlan} -> currentPricingPlan) (\s@GetPricingPlanResponse' {} a -> s {currentPricingPlan = a} :: GetPricingPlanResponse)++instance Prelude.NFData GetPricingPlanResponse where+ rnf GetPricingPlanResponse' {..} =+ Prelude.rnf pendingPricingPlan+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf currentPricingPlan
+ gen/Amazonka/IotTwinMaker/GetPropertyValue.hs view
@@ -0,0 +1,332 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.GetPropertyValue+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets the property values for a component, component type, entity, or+-- workspace.+--+-- You must specify a value for either @componentName@, @componentTypeId@,+-- @entityId@, or @workspaceId@.+module Amazonka.IotTwinMaker.GetPropertyValue+ ( -- * Creating a Request+ GetPropertyValue (..),+ newGetPropertyValue,++ -- * Request Lenses+ getPropertyValue_componentName,+ getPropertyValue_componentTypeId,+ getPropertyValue_entityId,+ getPropertyValue_maxResults,+ getPropertyValue_nextToken,+ getPropertyValue_propertyGroupName,+ getPropertyValue_tabularConditions,+ getPropertyValue_selectedProperties,+ getPropertyValue_workspaceId,++ -- * Destructuring the Response+ GetPropertyValueResponse (..),+ newGetPropertyValueResponse,++ -- * Response Lenses+ getPropertyValueResponse_nextToken,+ getPropertyValueResponse_propertyValues,+ getPropertyValueResponse_tabularPropertyValues,+ getPropertyValueResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetPropertyValue' smart constructor.+data GetPropertyValue = GetPropertyValue'+ { -- | The name of the component whose property values the operation returns.+ componentName :: Prelude.Maybe Prelude.Text,+ -- | The ID of the component type whose property values the operation+ -- returns.+ componentTypeId :: Prelude.Maybe Prelude.Text,+ -- | The ID of the entity whose property values the operation returns.+ entityId :: Prelude.Maybe Prelude.Text,+ -- | The maximum number of results to return at one time. The default is 25.+ --+ -- Valid Range: Minimum value of 1. Maximum value of 250.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The string that specifies the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The property group name.+ propertyGroupName :: Prelude.Maybe Prelude.Text,+ -- | The tabular conditions.+ tabularConditions :: Prelude.Maybe TabularConditions,+ -- | The properties whose values the operation returns.+ selectedProperties :: Prelude.NonEmpty Prelude.Text,+ -- | The ID of the workspace whose values the operation returns.+ workspaceId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetPropertyValue' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'componentName', 'getPropertyValue_componentName' - The name of the component whose property values the operation returns.+--+-- 'componentTypeId', 'getPropertyValue_componentTypeId' - The ID of the component type whose property values the operation+-- returns.+--+-- 'entityId', 'getPropertyValue_entityId' - The ID of the entity whose property values the operation returns.+--+-- 'maxResults', 'getPropertyValue_maxResults' - The maximum number of results to return at one time. The default is 25.+--+-- Valid Range: Minimum value of 1. Maximum value of 250.+--+-- 'nextToken', 'getPropertyValue_nextToken' - The string that specifies the next page of results.+--+-- 'propertyGroupName', 'getPropertyValue_propertyGroupName' - The property group name.+--+-- 'tabularConditions', 'getPropertyValue_tabularConditions' - The tabular conditions.+--+-- 'selectedProperties', 'getPropertyValue_selectedProperties' - The properties whose values the operation returns.+--+-- 'workspaceId', 'getPropertyValue_workspaceId' - The ID of the workspace whose values the operation returns.+newGetPropertyValue ::+ -- | 'selectedProperties'+ Prelude.NonEmpty Prelude.Text ->+ -- | 'workspaceId'+ Prelude.Text ->+ GetPropertyValue+newGetPropertyValue+ pSelectedProperties_+ pWorkspaceId_ =+ GetPropertyValue'+ { componentName = Prelude.Nothing,+ componentTypeId = Prelude.Nothing,+ entityId = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ propertyGroupName = Prelude.Nothing,+ tabularConditions = Prelude.Nothing,+ selectedProperties =+ Lens.coerced Lens.# pSelectedProperties_,+ workspaceId = pWorkspaceId_+ }++-- | The name of the component whose property values the operation returns.+getPropertyValue_componentName :: Lens.Lens' GetPropertyValue (Prelude.Maybe Prelude.Text)+getPropertyValue_componentName = Lens.lens (\GetPropertyValue' {componentName} -> componentName) (\s@GetPropertyValue' {} a -> s {componentName = a} :: GetPropertyValue)++-- | The ID of the component type whose property values the operation+-- returns.+getPropertyValue_componentTypeId :: Lens.Lens' GetPropertyValue (Prelude.Maybe Prelude.Text)+getPropertyValue_componentTypeId = Lens.lens (\GetPropertyValue' {componentTypeId} -> componentTypeId) (\s@GetPropertyValue' {} a -> s {componentTypeId = a} :: GetPropertyValue)++-- | The ID of the entity whose property values the operation returns.+getPropertyValue_entityId :: Lens.Lens' GetPropertyValue (Prelude.Maybe Prelude.Text)+getPropertyValue_entityId = Lens.lens (\GetPropertyValue' {entityId} -> entityId) (\s@GetPropertyValue' {} a -> s {entityId = a} :: GetPropertyValue)++-- | The maximum number of results to return at one time. The default is 25.+--+-- Valid Range: Minimum value of 1. Maximum value of 250.+getPropertyValue_maxResults :: Lens.Lens' GetPropertyValue (Prelude.Maybe Prelude.Natural)+getPropertyValue_maxResults = Lens.lens (\GetPropertyValue' {maxResults} -> maxResults) (\s@GetPropertyValue' {} a -> s {maxResults = a} :: GetPropertyValue)++-- | The string that specifies the next page of results.+getPropertyValue_nextToken :: Lens.Lens' GetPropertyValue (Prelude.Maybe Prelude.Text)+getPropertyValue_nextToken = Lens.lens (\GetPropertyValue' {nextToken} -> nextToken) (\s@GetPropertyValue' {} a -> s {nextToken = a} :: GetPropertyValue)++-- | The property group name.+getPropertyValue_propertyGroupName :: Lens.Lens' GetPropertyValue (Prelude.Maybe Prelude.Text)+getPropertyValue_propertyGroupName = Lens.lens (\GetPropertyValue' {propertyGroupName} -> propertyGroupName) (\s@GetPropertyValue' {} a -> s {propertyGroupName = a} :: GetPropertyValue)++-- | The tabular conditions.+getPropertyValue_tabularConditions :: Lens.Lens' GetPropertyValue (Prelude.Maybe TabularConditions)+getPropertyValue_tabularConditions = Lens.lens (\GetPropertyValue' {tabularConditions} -> tabularConditions) (\s@GetPropertyValue' {} a -> s {tabularConditions = a} :: GetPropertyValue)++-- | The properties whose values the operation returns.+getPropertyValue_selectedProperties :: Lens.Lens' GetPropertyValue (Prelude.NonEmpty Prelude.Text)+getPropertyValue_selectedProperties = Lens.lens (\GetPropertyValue' {selectedProperties} -> selectedProperties) (\s@GetPropertyValue' {} a -> s {selectedProperties = a} :: GetPropertyValue) Prelude.. Lens.coerced++-- | The ID of the workspace whose values the operation returns.+getPropertyValue_workspaceId :: Lens.Lens' GetPropertyValue Prelude.Text+getPropertyValue_workspaceId = Lens.lens (\GetPropertyValue' {workspaceId} -> workspaceId) (\s@GetPropertyValue' {} a -> s {workspaceId = a} :: GetPropertyValue)++instance Core.AWSRequest GetPropertyValue where+ type+ AWSResponse GetPropertyValue =+ GetPropertyValueResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetPropertyValueResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> (x Data..?> "propertyValues" Core..!@ Prelude.mempty)+ Prelude.<*> ( x+ Data..?> "tabularPropertyValues"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetPropertyValue where+ hashWithSalt _salt GetPropertyValue' {..} =+ _salt+ `Prelude.hashWithSalt` componentName+ `Prelude.hashWithSalt` componentTypeId+ `Prelude.hashWithSalt` entityId+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` propertyGroupName+ `Prelude.hashWithSalt` tabularConditions+ `Prelude.hashWithSalt` selectedProperties+ `Prelude.hashWithSalt` workspaceId++instance Prelude.NFData GetPropertyValue where+ rnf GetPropertyValue' {..} =+ Prelude.rnf componentName+ `Prelude.seq` Prelude.rnf componentTypeId+ `Prelude.seq` Prelude.rnf entityId+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf propertyGroupName+ `Prelude.seq` Prelude.rnf tabularConditions+ `Prelude.seq` Prelude.rnf selectedProperties+ `Prelude.seq` Prelude.rnf workspaceId++instance Data.ToHeaders GetPropertyValue where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON GetPropertyValue where+ toJSON GetPropertyValue' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("componentName" Data..=) Prelude.<$> componentName,+ ("componentTypeId" Data..=)+ Prelude.<$> componentTypeId,+ ("entityId" Data..=) Prelude.<$> entityId,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken,+ ("propertyGroupName" Data..=)+ Prelude.<$> propertyGroupName,+ ("tabularConditions" Data..=)+ Prelude.<$> tabularConditions,+ Prelude.Just+ ("selectedProperties" Data..= selectedProperties)+ ]+ )++instance Data.ToPath GetPropertyValue where+ toPath GetPropertyValue' {..} =+ Prelude.mconcat+ [ "/workspaces/",+ Data.toBS workspaceId,+ "/entity-properties/value"+ ]++instance Data.ToQuery GetPropertyValue where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetPropertyValueResponse' smart constructor.+data GetPropertyValueResponse = GetPropertyValueResponse'+ { -- | The string that specifies the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | An object that maps strings to the properties and latest property values+ -- in the response. Each string in the mapping must be unique to this+ -- object.+ propertyValues :: Prelude.Maybe (Prelude.HashMap Prelude.Text PropertyLatestValue),+ -- | A table of property values.+ tabularPropertyValues :: Prelude.Maybe [[Prelude.HashMap Prelude.Text DataValue]],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetPropertyValueResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'getPropertyValueResponse_nextToken' - The string that specifies the next page of results.+--+-- 'propertyValues', 'getPropertyValueResponse_propertyValues' - An object that maps strings to the properties and latest property values+-- in the response. Each string in the mapping must be unique to this+-- object.+--+-- 'tabularPropertyValues', 'getPropertyValueResponse_tabularPropertyValues' - A table of property values.+--+-- 'httpStatus', 'getPropertyValueResponse_httpStatus' - The response's http status code.+newGetPropertyValueResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetPropertyValueResponse+newGetPropertyValueResponse pHttpStatus_ =+ GetPropertyValueResponse'+ { nextToken =+ Prelude.Nothing,+ propertyValues = Prelude.Nothing,+ tabularPropertyValues = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The string that specifies the next page of results.+getPropertyValueResponse_nextToken :: Lens.Lens' GetPropertyValueResponse (Prelude.Maybe Prelude.Text)+getPropertyValueResponse_nextToken = Lens.lens (\GetPropertyValueResponse' {nextToken} -> nextToken) (\s@GetPropertyValueResponse' {} a -> s {nextToken = a} :: GetPropertyValueResponse)++-- | An object that maps strings to the properties and latest property values+-- in the response. Each string in the mapping must be unique to this+-- object.+getPropertyValueResponse_propertyValues :: Lens.Lens' GetPropertyValueResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text PropertyLatestValue))+getPropertyValueResponse_propertyValues = Lens.lens (\GetPropertyValueResponse' {propertyValues} -> propertyValues) (\s@GetPropertyValueResponse' {} a -> s {propertyValues = a} :: GetPropertyValueResponse) Prelude.. Lens.mapping Lens.coerced++-- | A table of property values.+getPropertyValueResponse_tabularPropertyValues :: Lens.Lens' GetPropertyValueResponse (Prelude.Maybe [[Prelude.HashMap Prelude.Text DataValue]])+getPropertyValueResponse_tabularPropertyValues = Lens.lens (\GetPropertyValueResponse' {tabularPropertyValues} -> tabularPropertyValues) (\s@GetPropertyValueResponse' {} a -> s {tabularPropertyValues = a} :: GetPropertyValueResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+getPropertyValueResponse_httpStatus :: Lens.Lens' GetPropertyValueResponse Prelude.Int+getPropertyValueResponse_httpStatus = Lens.lens (\GetPropertyValueResponse' {httpStatus} -> httpStatus) (\s@GetPropertyValueResponse' {} a -> s {httpStatus = a} :: GetPropertyValueResponse)++instance Prelude.NFData GetPropertyValueResponse where+ rnf GetPropertyValueResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf propertyValues+ `Prelude.seq` Prelude.rnf tabularPropertyValues+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IotTwinMaker/GetPropertyValueHistory.hs view
@@ -0,0 +1,410 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.GetPropertyValueHistory+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves information about the history of a time series property value+-- for a component, component type, entity, or workspace.+--+-- You must specify a value for @workspaceId@. For entity-specific queries,+-- specify values for @componentName@ and @entityId@. For cross-entity+-- quries, specify a value for @componentTypeId@.+module Amazonka.IotTwinMaker.GetPropertyValueHistory+ ( -- * Creating a Request+ GetPropertyValueHistory (..),+ newGetPropertyValueHistory,++ -- * Request Lenses+ getPropertyValueHistory_componentName,+ getPropertyValueHistory_componentTypeId,+ getPropertyValueHistory_endDateTime,+ getPropertyValueHistory_endTime,+ getPropertyValueHistory_entityId,+ getPropertyValueHistory_interpolation,+ getPropertyValueHistory_maxResults,+ getPropertyValueHistory_nextToken,+ getPropertyValueHistory_orderByTime,+ getPropertyValueHistory_propertyFilters,+ getPropertyValueHistory_startDateTime,+ getPropertyValueHistory_startTime,+ getPropertyValueHistory_workspaceId,+ getPropertyValueHistory_selectedProperties,++ -- * Destructuring the Response+ GetPropertyValueHistoryResponse (..),+ newGetPropertyValueHistoryResponse,++ -- * Response Lenses+ getPropertyValueHistoryResponse_nextToken,+ getPropertyValueHistoryResponse_httpStatus,+ getPropertyValueHistoryResponse_propertyValues,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetPropertyValueHistory' smart constructor.+data GetPropertyValueHistory = GetPropertyValueHistory'+ { -- | The name of the component.+ componentName :: Prelude.Maybe Prelude.Text,+ -- | The ID of the component type.+ componentTypeId :: Prelude.Maybe Prelude.Text,+ -- | The date and time of the latest property value to return.+ endDateTime :: Prelude.Maybe Data.POSIX,+ -- | The ISO8601 DateTime of the latest property value to return.+ --+ -- For more information about the ISO8601 DateTime format, see the data+ -- type+ -- <https://docs.aws.amazon.com/iot-twinmaker/latest/apireference/API_PropertyValue.html PropertyValue>.+ endTime :: Prelude.Maybe Prelude.Text,+ -- | The ID of the entity.+ entityId :: Prelude.Maybe Prelude.Text,+ -- | An object that specifies the interpolation type and the interval over+ -- which to interpolate data.+ interpolation :: Prelude.Maybe InterpolationParameters,+ -- | The maximum number of results to return at one time. The default is 25.+ --+ -- Valid Range: Minimum value of 1. Maximum value of 250.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The string that specifies the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The time direction to use in the result order.+ orderByTime :: Prelude.Maybe OrderByTime,+ -- | A list of objects that filter the property value history request.+ propertyFilters :: Prelude.Maybe (Prelude.NonEmpty PropertyFilter),+ -- | The date and time of the earliest property value to return.+ startDateTime :: Prelude.Maybe Data.POSIX,+ -- | The ISO8601 DateTime of the earliest property value to return.+ --+ -- For more information about the ISO8601 DateTime format, see the data+ -- type+ -- <https://docs.aws.amazon.com/iot-twinmaker/latest/apireference/API_PropertyValue.html PropertyValue>.+ startTime :: Prelude.Maybe Prelude.Text,+ -- | The ID of the workspace.+ workspaceId :: Prelude.Text,+ -- | A list of properties whose value histories the request retrieves.+ selectedProperties :: Prelude.NonEmpty Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetPropertyValueHistory' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'componentName', 'getPropertyValueHistory_componentName' - The name of the component.+--+-- 'componentTypeId', 'getPropertyValueHistory_componentTypeId' - The ID of the component type.+--+-- 'endDateTime', 'getPropertyValueHistory_endDateTime' - The date and time of the latest property value to return.+--+-- 'endTime', 'getPropertyValueHistory_endTime' - The ISO8601 DateTime of the latest property value to return.+--+-- For more information about the ISO8601 DateTime format, see the data+-- type+-- <https://docs.aws.amazon.com/iot-twinmaker/latest/apireference/API_PropertyValue.html PropertyValue>.+--+-- 'entityId', 'getPropertyValueHistory_entityId' - The ID of the entity.+--+-- 'interpolation', 'getPropertyValueHistory_interpolation' - An object that specifies the interpolation type and the interval over+-- which to interpolate data.+--+-- 'maxResults', 'getPropertyValueHistory_maxResults' - The maximum number of results to return at one time. The default is 25.+--+-- Valid Range: Minimum value of 1. Maximum value of 250.+--+-- 'nextToken', 'getPropertyValueHistory_nextToken' - The string that specifies the next page of results.+--+-- 'orderByTime', 'getPropertyValueHistory_orderByTime' - The time direction to use in the result order.+--+-- 'propertyFilters', 'getPropertyValueHistory_propertyFilters' - A list of objects that filter the property value history request.+--+-- 'startDateTime', 'getPropertyValueHistory_startDateTime' - The date and time of the earliest property value to return.+--+-- 'startTime', 'getPropertyValueHistory_startTime' - The ISO8601 DateTime of the earliest property value to return.+--+-- For more information about the ISO8601 DateTime format, see the data+-- type+-- <https://docs.aws.amazon.com/iot-twinmaker/latest/apireference/API_PropertyValue.html PropertyValue>.+--+-- 'workspaceId', 'getPropertyValueHistory_workspaceId' - The ID of the workspace.+--+-- 'selectedProperties', 'getPropertyValueHistory_selectedProperties' - A list of properties whose value histories the request retrieves.+newGetPropertyValueHistory ::+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'selectedProperties'+ Prelude.NonEmpty Prelude.Text ->+ GetPropertyValueHistory+newGetPropertyValueHistory+ pWorkspaceId_+ pSelectedProperties_ =+ GetPropertyValueHistory'+ { componentName =+ Prelude.Nothing,+ componentTypeId = Prelude.Nothing,+ endDateTime = Prelude.Nothing,+ endTime = Prelude.Nothing,+ entityId = Prelude.Nothing,+ interpolation = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ orderByTime = Prelude.Nothing,+ propertyFilters = Prelude.Nothing,+ startDateTime = Prelude.Nothing,+ startTime = Prelude.Nothing,+ workspaceId = pWorkspaceId_,+ selectedProperties =+ Lens.coerced Lens.# pSelectedProperties_+ }++-- | The name of the component.+getPropertyValueHistory_componentName :: Lens.Lens' GetPropertyValueHistory (Prelude.Maybe Prelude.Text)+getPropertyValueHistory_componentName = Lens.lens (\GetPropertyValueHistory' {componentName} -> componentName) (\s@GetPropertyValueHistory' {} a -> s {componentName = a} :: GetPropertyValueHistory)++-- | The ID of the component type.+getPropertyValueHistory_componentTypeId :: Lens.Lens' GetPropertyValueHistory (Prelude.Maybe Prelude.Text)+getPropertyValueHistory_componentTypeId = Lens.lens (\GetPropertyValueHistory' {componentTypeId} -> componentTypeId) (\s@GetPropertyValueHistory' {} a -> s {componentTypeId = a} :: GetPropertyValueHistory)++-- | The date and time of the latest property value to return.+getPropertyValueHistory_endDateTime :: Lens.Lens' GetPropertyValueHistory (Prelude.Maybe Prelude.UTCTime)+getPropertyValueHistory_endDateTime = Lens.lens (\GetPropertyValueHistory' {endDateTime} -> endDateTime) (\s@GetPropertyValueHistory' {} a -> s {endDateTime = a} :: GetPropertyValueHistory) Prelude.. Lens.mapping Data._Time++-- | The ISO8601 DateTime of the latest property value to return.+--+-- For more information about the ISO8601 DateTime format, see the data+-- type+-- <https://docs.aws.amazon.com/iot-twinmaker/latest/apireference/API_PropertyValue.html PropertyValue>.+getPropertyValueHistory_endTime :: Lens.Lens' GetPropertyValueHistory (Prelude.Maybe Prelude.Text)+getPropertyValueHistory_endTime = Lens.lens (\GetPropertyValueHistory' {endTime} -> endTime) (\s@GetPropertyValueHistory' {} a -> s {endTime = a} :: GetPropertyValueHistory)++-- | The ID of the entity.+getPropertyValueHistory_entityId :: Lens.Lens' GetPropertyValueHistory (Prelude.Maybe Prelude.Text)+getPropertyValueHistory_entityId = Lens.lens (\GetPropertyValueHistory' {entityId} -> entityId) (\s@GetPropertyValueHistory' {} a -> s {entityId = a} :: GetPropertyValueHistory)++-- | An object that specifies the interpolation type and the interval over+-- which to interpolate data.+getPropertyValueHistory_interpolation :: Lens.Lens' GetPropertyValueHistory (Prelude.Maybe InterpolationParameters)+getPropertyValueHistory_interpolation = Lens.lens (\GetPropertyValueHistory' {interpolation} -> interpolation) (\s@GetPropertyValueHistory' {} a -> s {interpolation = a} :: GetPropertyValueHistory)++-- | The maximum number of results to return at one time. The default is 25.+--+-- Valid Range: Minimum value of 1. Maximum value of 250.+getPropertyValueHistory_maxResults :: Lens.Lens' GetPropertyValueHistory (Prelude.Maybe Prelude.Natural)+getPropertyValueHistory_maxResults = Lens.lens (\GetPropertyValueHistory' {maxResults} -> maxResults) (\s@GetPropertyValueHistory' {} a -> s {maxResults = a} :: GetPropertyValueHistory)++-- | The string that specifies the next page of results.+getPropertyValueHistory_nextToken :: Lens.Lens' GetPropertyValueHistory (Prelude.Maybe Prelude.Text)+getPropertyValueHistory_nextToken = Lens.lens (\GetPropertyValueHistory' {nextToken} -> nextToken) (\s@GetPropertyValueHistory' {} a -> s {nextToken = a} :: GetPropertyValueHistory)++-- | The time direction to use in the result order.+getPropertyValueHistory_orderByTime :: Lens.Lens' GetPropertyValueHistory (Prelude.Maybe OrderByTime)+getPropertyValueHistory_orderByTime = Lens.lens (\GetPropertyValueHistory' {orderByTime} -> orderByTime) (\s@GetPropertyValueHistory' {} a -> s {orderByTime = a} :: GetPropertyValueHistory)++-- | A list of objects that filter the property value history request.+getPropertyValueHistory_propertyFilters :: Lens.Lens' GetPropertyValueHistory (Prelude.Maybe (Prelude.NonEmpty PropertyFilter))+getPropertyValueHistory_propertyFilters = Lens.lens (\GetPropertyValueHistory' {propertyFilters} -> propertyFilters) (\s@GetPropertyValueHistory' {} a -> s {propertyFilters = a} :: GetPropertyValueHistory) Prelude.. Lens.mapping Lens.coerced++-- | The date and time of the earliest property value to return.+getPropertyValueHistory_startDateTime :: Lens.Lens' GetPropertyValueHistory (Prelude.Maybe Prelude.UTCTime)+getPropertyValueHistory_startDateTime = Lens.lens (\GetPropertyValueHistory' {startDateTime} -> startDateTime) (\s@GetPropertyValueHistory' {} a -> s {startDateTime = a} :: GetPropertyValueHistory) Prelude.. Lens.mapping Data._Time++-- | The ISO8601 DateTime of the earliest property value to return.+--+-- For more information about the ISO8601 DateTime format, see the data+-- type+-- <https://docs.aws.amazon.com/iot-twinmaker/latest/apireference/API_PropertyValue.html PropertyValue>.+getPropertyValueHistory_startTime :: Lens.Lens' GetPropertyValueHistory (Prelude.Maybe Prelude.Text)+getPropertyValueHistory_startTime = Lens.lens (\GetPropertyValueHistory' {startTime} -> startTime) (\s@GetPropertyValueHistory' {} a -> s {startTime = a} :: GetPropertyValueHistory)++-- | The ID of the workspace.+getPropertyValueHistory_workspaceId :: Lens.Lens' GetPropertyValueHistory Prelude.Text+getPropertyValueHistory_workspaceId = Lens.lens (\GetPropertyValueHistory' {workspaceId} -> workspaceId) (\s@GetPropertyValueHistory' {} a -> s {workspaceId = a} :: GetPropertyValueHistory)++-- | A list of properties whose value histories the request retrieves.+getPropertyValueHistory_selectedProperties :: Lens.Lens' GetPropertyValueHistory (Prelude.NonEmpty Prelude.Text)+getPropertyValueHistory_selectedProperties = Lens.lens (\GetPropertyValueHistory' {selectedProperties} -> selectedProperties) (\s@GetPropertyValueHistory' {} a -> s {selectedProperties = a} :: GetPropertyValueHistory) Prelude.. Lens.coerced++instance Core.AWSRequest GetPropertyValueHistory where+ type+ AWSResponse GetPropertyValueHistory =+ GetPropertyValueHistoryResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetPropertyValueHistoryResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..?> "propertyValues"+ Core..!@ Prelude.mempty+ )+ )++instance Prelude.Hashable GetPropertyValueHistory where+ hashWithSalt _salt GetPropertyValueHistory' {..} =+ _salt+ `Prelude.hashWithSalt` componentName+ `Prelude.hashWithSalt` componentTypeId+ `Prelude.hashWithSalt` endDateTime+ `Prelude.hashWithSalt` endTime+ `Prelude.hashWithSalt` entityId+ `Prelude.hashWithSalt` interpolation+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` orderByTime+ `Prelude.hashWithSalt` propertyFilters+ `Prelude.hashWithSalt` startDateTime+ `Prelude.hashWithSalt` startTime+ `Prelude.hashWithSalt` workspaceId+ `Prelude.hashWithSalt` selectedProperties++instance Prelude.NFData GetPropertyValueHistory where+ rnf GetPropertyValueHistory' {..} =+ Prelude.rnf componentName+ `Prelude.seq` Prelude.rnf componentTypeId+ `Prelude.seq` Prelude.rnf endDateTime+ `Prelude.seq` Prelude.rnf endTime+ `Prelude.seq` Prelude.rnf entityId+ `Prelude.seq` Prelude.rnf interpolation+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf orderByTime+ `Prelude.seq` Prelude.rnf propertyFilters+ `Prelude.seq` Prelude.rnf startDateTime+ `Prelude.seq` Prelude.rnf startTime+ `Prelude.seq` Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf selectedProperties++instance Data.ToHeaders GetPropertyValueHistory where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON GetPropertyValueHistory where+ toJSON GetPropertyValueHistory' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("componentName" Data..=) Prelude.<$> componentName,+ ("componentTypeId" Data..=)+ Prelude.<$> componentTypeId,+ ("endDateTime" Data..=) Prelude.<$> endDateTime,+ ("endTime" Data..=) Prelude.<$> endTime,+ ("entityId" Data..=) Prelude.<$> entityId,+ ("interpolation" Data..=) Prelude.<$> interpolation,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken,+ ("orderByTime" Data..=) Prelude.<$> orderByTime,+ ("propertyFilters" Data..=)+ Prelude.<$> propertyFilters,+ ("startDateTime" Data..=) Prelude.<$> startDateTime,+ ("startTime" Data..=) Prelude.<$> startTime,+ Prelude.Just+ ("selectedProperties" Data..= selectedProperties)+ ]+ )++instance Data.ToPath GetPropertyValueHistory where+ toPath GetPropertyValueHistory' {..} =+ Prelude.mconcat+ [ "/workspaces/",+ Data.toBS workspaceId,+ "/entity-properties/history"+ ]++instance Data.ToQuery GetPropertyValueHistory where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetPropertyValueHistoryResponse' smart constructor.+data GetPropertyValueHistoryResponse = GetPropertyValueHistoryResponse'+ { -- | The string that specifies the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | An object that maps strings to the property definitions in the component+ -- type. Each string in the mapping must be unique to this object.+ propertyValues :: [PropertyValueHistory]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetPropertyValueHistoryResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'getPropertyValueHistoryResponse_nextToken' - The string that specifies the next page of results.+--+-- 'httpStatus', 'getPropertyValueHistoryResponse_httpStatus' - The response's http status code.+--+-- 'propertyValues', 'getPropertyValueHistoryResponse_propertyValues' - An object that maps strings to the property definitions in the component+-- type. Each string in the mapping must be unique to this object.+newGetPropertyValueHistoryResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetPropertyValueHistoryResponse+newGetPropertyValueHistoryResponse pHttpStatus_ =+ GetPropertyValueHistoryResponse'+ { nextToken =+ Prelude.Nothing,+ httpStatus = pHttpStatus_,+ propertyValues = Prelude.mempty+ }++-- | The string that specifies the next page of results.+getPropertyValueHistoryResponse_nextToken :: Lens.Lens' GetPropertyValueHistoryResponse (Prelude.Maybe Prelude.Text)+getPropertyValueHistoryResponse_nextToken = Lens.lens (\GetPropertyValueHistoryResponse' {nextToken} -> nextToken) (\s@GetPropertyValueHistoryResponse' {} a -> s {nextToken = a} :: GetPropertyValueHistoryResponse)++-- | The response's http status code.+getPropertyValueHistoryResponse_httpStatus :: Lens.Lens' GetPropertyValueHistoryResponse Prelude.Int+getPropertyValueHistoryResponse_httpStatus = Lens.lens (\GetPropertyValueHistoryResponse' {httpStatus} -> httpStatus) (\s@GetPropertyValueHistoryResponse' {} a -> s {httpStatus = a} :: GetPropertyValueHistoryResponse)++-- | An object that maps strings to the property definitions in the component+-- type. Each string in the mapping must be unique to this object.+getPropertyValueHistoryResponse_propertyValues :: Lens.Lens' GetPropertyValueHistoryResponse [PropertyValueHistory]+getPropertyValueHistoryResponse_propertyValues = Lens.lens (\GetPropertyValueHistoryResponse' {propertyValues} -> propertyValues) (\s@GetPropertyValueHistoryResponse' {} a -> s {propertyValues = a} :: GetPropertyValueHistoryResponse) Prelude.. Lens.coerced++instance+ Prelude.NFData+ GetPropertyValueHistoryResponse+ where+ rnf GetPropertyValueHistoryResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf propertyValues
+ gen/Amazonka/IotTwinMaker/GetScene.hs view
@@ -0,0 +1,285 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.GetScene+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves information about a scene.+module Amazonka.IotTwinMaker.GetScene+ ( -- * Creating a Request+ GetScene (..),+ newGetScene,++ -- * Request Lenses+ getScene_workspaceId,+ getScene_sceneId,++ -- * Destructuring the Response+ GetSceneResponse (..),+ newGetSceneResponse,++ -- * Response Lenses+ getSceneResponse_capabilities,+ getSceneResponse_description,+ getSceneResponse_httpStatus,+ getSceneResponse_workspaceId,+ getSceneResponse_sceneId,+ getSceneResponse_contentLocation,+ getSceneResponse_arn,+ getSceneResponse_creationDateTime,+ getSceneResponse_updateDateTime,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetScene' smart constructor.+data GetScene = GetScene'+ { -- | The ID of the workspace that contains the scene.+ workspaceId :: Prelude.Text,+ -- | The ID of the scene.+ sceneId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetScene' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'workspaceId', 'getScene_workspaceId' - The ID of the workspace that contains the scene.+--+-- 'sceneId', 'getScene_sceneId' - The ID of the scene.+newGetScene ::+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'sceneId'+ Prelude.Text ->+ GetScene+newGetScene pWorkspaceId_ pSceneId_ =+ GetScene'+ { workspaceId = pWorkspaceId_,+ sceneId = pSceneId_+ }++-- | The ID of the workspace that contains the scene.+getScene_workspaceId :: Lens.Lens' GetScene Prelude.Text+getScene_workspaceId = Lens.lens (\GetScene' {workspaceId} -> workspaceId) (\s@GetScene' {} a -> s {workspaceId = a} :: GetScene)++-- | The ID of the scene.+getScene_sceneId :: Lens.Lens' GetScene Prelude.Text+getScene_sceneId = Lens.lens (\GetScene' {sceneId} -> sceneId) (\s@GetScene' {} a -> s {sceneId = a} :: GetScene)++instance Core.AWSRequest GetScene where+ type AWSResponse GetScene = GetSceneResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetSceneResponse'+ Prelude.<$> (x Data..?> "capabilities" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "description")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "workspaceId")+ Prelude.<*> (x Data..:> "sceneId")+ Prelude.<*> (x Data..:> "contentLocation")+ Prelude.<*> (x Data..:> "arn")+ Prelude.<*> (x Data..:> "creationDateTime")+ Prelude.<*> (x Data..:> "updateDateTime")+ )++instance Prelude.Hashable GetScene where+ hashWithSalt _salt GetScene' {..} =+ _salt+ `Prelude.hashWithSalt` workspaceId+ `Prelude.hashWithSalt` sceneId++instance Prelude.NFData GetScene where+ rnf GetScene' {..} =+ Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf sceneId++instance Data.ToHeaders GetScene where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetScene where+ toPath GetScene' {..} =+ Prelude.mconcat+ [ "/workspaces/",+ Data.toBS workspaceId,+ "/scenes/",+ Data.toBS sceneId+ ]++instance Data.ToQuery GetScene where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetSceneResponse' smart constructor.+data GetSceneResponse = GetSceneResponse'+ { -- | A list of capabilities that the scene uses to render.+ capabilities :: Prelude.Maybe [Prelude.Text],+ -- | The description of the scene.+ description :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The ID of the workspace that contains the scene.+ workspaceId :: Prelude.Text,+ -- | The ID of the scene.+ sceneId :: Prelude.Text,+ -- | The relative path that specifies the location of the content definition+ -- file.+ contentLocation :: Prelude.Text,+ -- | The ARN of the scene.+ arn :: Prelude.Text,+ -- | The date and time when the scene was created.+ creationDateTime :: Data.POSIX,+ -- | The date and time when the scene was last updated.+ updateDateTime :: Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetSceneResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'capabilities', 'getSceneResponse_capabilities' - A list of capabilities that the scene uses to render.+--+-- 'description', 'getSceneResponse_description' - The description of the scene.+--+-- 'httpStatus', 'getSceneResponse_httpStatus' - The response's http status code.+--+-- 'workspaceId', 'getSceneResponse_workspaceId' - The ID of the workspace that contains the scene.+--+-- 'sceneId', 'getSceneResponse_sceneId' - The ID of the scene.+--+-- 'contentLocation', 'getSceneResponse_contentLocation' - The relative path that specifies the location of the content definition+-- file.+--+-- 'arn', 'getSceneResponse_arn' - The ARN of the scene.+--+-- 'creationDateTime', 'getSceneResponse_creationDateTime' - The date and time when the scene was created.+--+-- 'updateDateTime', 'getSceneResponse_updateDateTime' - The date and time when the scene was last updated.+newGetSceneResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'sceneId'+ Prelude.Text ->+ -- | 'contentLocation'+ Prelude.Text ->+ -- | 'arn'+ Prelude.Text ->+ -- | 'creationDateTime'+ Prelude.UTCTime ->+ -- | 'updateDateTime'+ Prelude.UTCTime ->+ GetSceneResponse+newGetSceneResponse+ pHttpStatus_+ pWorkspaceId_+ pSceneId_+ pContentLocation_+ pArn_+ pCreationDateTime_+ pUpdateDateTime_ =+ GetSceneResponse'+ { capabilities = Prelude.Nothing,+ description = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ workspaceId = pWorkspaceId_,+ sceneId = pSceneId_,+ contentLocation = pContentLocation_,+ arn = pArn_,+ creationDateTime =+ Data._Time Lens.# pCreationDateTime_,+ updateDateTime = Data._Time Lens.# pUpdateDateTime_+ }++-- | A list of capabilities that the scene uses to render.+getSceneResponse_capabilities :: Lens.Lens' GetSceneResponse (Prelude.Maybe [Prelude.Text])+getSceneResponse_capabilities = Lens.lens (\GetSceneResponse' {capabilities} -> capabilities) (\s@GetSceneResponse' {} a -> s {capabilities = a} :: GetSceneResponse) Prelude.. Lens.mapping Lens.coerced++-- | The description of the scene.+getSceneResponse_description :: Lens.Lens' GetSceneResponse (Prelude.Maybe Prelude.Text)+getSceneResponse_description = Lens.lens (\GetSceneResponse' {description} -> description) (\s@GetSceneResponse' {} a -> s {description = a} :: GetSceneResponse)++-- | The response's http status code.+getSceneResponse_httpStatus :: Lens.Lens' GetSceneResponse Prelude.Int+getSceneResponse_httpStatus = Lens.lens (\GetSceneResponse' {httpStatus} -> httpStatus) (\s@GetSceneResponse' {} a -> s {httpStatus = a} :: GetSceneResponse)++-- | The ID of the workspace that contains the scene.+getSceneResponse_workspaceId :: Lens.Lens' GetSceneResponse Prelude.Text+getSceneResponse_workspaceId = Lens.lens (\GetSceneResponse' {workspaceId} -> workspaceId) (\s@GetSceneResponse' {} a -> s {workspaceId = a} :: GetSceneResponse)++-- | The ID of the scene.+getSceneResponse_sceneId :: Lens.Lens' GetSceneResponse Prelude.Text+getSceneResponse_sceneId = Lens.lens (\GetSceneResponse' {sceneId} -> sceneId) (\s@GetSceneResponse' {} a -> s {sceneId = a} :: GetSceneResponse)++-- | The relative path that specifies the location of the content definition+-- file.+getSceneResponse_contentLocation :: Lens.Lens' GetSceneResponse Prelude.Text+getSceneResponse_contentLocation = Lens.lens (\GetSceneResponse' {contentLocation} -> contentLocation) (\s@GetSceneResponse' {} a -> s {contentLocation = a} :: GetSceneResponse)++-- | The ARN of the scene.+getSceneResponse_arn :: Lens.Lens' GetSceneResponse Prelude.Text+getSceneResponse_arn = Lens.lens (\GetSceneResponse' {arn} -> arn) (\s@GetSceneResponse' {} a -> s {arn = a} :: GetSceneResponse)++-- | The date and time when the scene was created.+getSceneResponse_creationDateTime :: Lens.Lens' GetSceneResponse Prelude.UTCTime+getSceneResponse_creationDateTime = Lens.lens (\GetSceneResponse' {creationDateTime} -> creationDateTime) (\s@GetSceneResponse' {} a -> s {creationDateTime = a} :: GetSceneResponse) Prelude.. Data._Time++-- | The date and time when the scene was last updated.+getSceneResponse_updateDateTime :: Lens.Lens' GetSceneResponse Prelude.UTCTime+getSceneResponse_updateDateTime = Lens.lens (\GetSceneResponse' {updateDateTime} -> updateDateTime) (\s@GetSceneResponse' {} a -> s {updateDateTime = a} :: GetSceneResponse) Prelude.. Data._Time++instance Prelude.NFData GetSceneResponse where+ rnf GetSceneResponse' {..} =+ Prelude.rnf capabilities+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf sceneId+ `Prelude.seq` Prelude.rnf contentLocation+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf updateDateTime
+ gen/Amazonka/IotTwinMaker/GetSyncJob.hs view
@@ -0,0 +1,280 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.GetSyncJob+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets the SyncJob.+module Amazonka.IotTwinMaker.GetSyncJob+ ( -- * Creating a Request+ GetSyncJob (..),+ newGetSyncJob,++ -- * Request Lenses+ getSyncJob_workspaceId,+ getSyncJob_syncSource,++ -- * Destructuring the Response+ GetSyncJobResponse (..),+ newGetSyncJobResponse,++ -- * Response Lenses+ getSyncJobResponse_httpStatus,+ getSyncJobResponse_arn,+ getSyncJobResponse_workspaceId,+ getSyncJobResponse_syncSource,+ getSyncJobResponse_syncRole,+ getSyncJobResponse_status,+ getSyncJobResponse_creationDateTime,+ getSyncJobResponse_updateDateTime,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetSyncJob' smart constructor.+data GetSyncJob = GetSyncJob'+ { -- | The workspace Id.+ workspaceId :: Prelude.Maybe Prelude.Text,+ -- | The sync soucre.+ --+ -- Currently the only supported syncSoucre is @SITEWISE @.+ syncSource :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetSyncJob' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'workspaceId', 'getSyncJob_workspaceId' - The workspace Id.+--+-- 'syncSource', 'getSyncJob_syncSource' - The sync soucre.+--+-- Currently the only supported syncSoucre is @SITEWISE @.+newGetSyncJob ::+ -- | 'syncSource'+ Prelude.Text ->+ GetSyncJob+newGetSyncJob pSyncSource_ =+ GetSyncJob'+ { workspaceId = Prelude.Nothing,+ syncSource = pSyncSource_+ }++-- | The workspace Id.+getSyncJob_workspaceId :: Lens.Lens' GetSyncJob (Prelude.Maybe Prelude.Text)+getSyncJob_workspaceId = Lens.lens (\GetSyncJob' {workspaceId} -> workspaceId) (\s@GetSyncJob' {} a -> s {workspaceId = a} :: GetSyncJob)++-- | The sync soucre.+--+-- Currently the only supported syncSoucre is @SITEWISE @.+getSyncJob_syncSource :: Lens.Lens' GetSyncJob Prelude.Text+getSyncJob_syncSource = Lens.lens (\GetSyncJob' {syncSource} -> syncSource) (\s@GetSyncJob' {} a -> s {syncSource = a} :: GetSyncJob)++instance Core.AWSRequest GetSyncJob where+ type AWSResponse GetSyncJob = GetSyncJobResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetSyncJobResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "arn")+ Prelude.<*> (x Data..:> "workspaceId")+ Prelude.<*> (x Data..:> "syncSource")+ Prelude.<*> (x Data..:> "syncRole")+ Prelude.<*> (x Data..:> "status")+ Prelude.<*> (x Data..:> "creationDateTime")+ Prelude.<*> (x Data..:> "updateDateTime")+ )++instance Prelude.Hashable GetSyncJob where+ hashWithSalt _salt GetSyncJob' {..} =+ _salt+ `Prelude.hashWithSalt` workspaceId+ `Prelude.hashWithSalt` syncSource++instance Prelude.NFData GetSyncJob where+ rnf GetSyncJob' {..} =+ Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf syncSource++instance Data.ToHeaders GetSyncJob where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetSyncJob where+ toPath GetSyncJob' {..} =+ Prelude.mconcat+ ["/sync-jobs/", Data.toBS syncSource]++instance Data.ToQuery GetSyncJob where+ toQuery GetSyncJob' {..} =+ Prelude.mconcat ["workspace" Data.=: workspaceId]++-- | /See:/ 'newGetSyncJobResponse' smart constructor.+data GetSyncJobResponse = GetSyncJobResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The sync job ARN.+ arn :: Prelude.Text,+ -- | The ID of the workspace that contains the sync job.+ workspaceId :: Prelude.Text,+ -- | The sync soucre.+ --+ -- Currently the only supported syncSoucre is @SITEWISE @.+ syncSource :: Prelude.Text,+ -- | The sync IAM role.+ syncRole :: Prelude.Text,+ -- | The SyncJob response status.+ status :: SyncJobStatus,+ -- | The creation date and time.+ creationDateTime :: Data.POSIX,+ -- | The update date and time.+ updateDateTime :: Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetSyncJobResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'getSyncJobResponse_httpStatus' - The response's http status code.+--+-- 'arn', 'getSyncJobResponse_arn' - The sync job ARN.+--+-- 'workspaceId', 'getSyncJobResponse_workspaceId' - The ID of the workspace that contains the sync job.+--+-- 'syncSource', 'getSyncJobResponse_syncSource' - The sync soucre.+--+-- Currently the only supported syncSoucre is @SITEWISE @.+--+-- 'syncRole', 'getSyncJobResponse_syncRole' - The sync IAM role.+--+-- 'status', 'getSyncJobResponse_status' - The SyncJob response status.+--+-- 'creationDateTime', 'getSyncJobResponse_creationDateTime' - The creation date and time.+--+-- 'updateDateTime', 'getSyncJobResponse_updateDateTime' - The update date and time.+newGetSyncJobResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'arn'+ Prelude.Text ->+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'syncSource'+ Prelude.Text ->+ -- | 'syncRole'+ Prelude.Text ->+ -- | 'status'+ SyncJobStatus ->+ -- | 'creationDateTime'+ Prelude.UTCTime ->+ -- | 'updateDateTime'+ Prelude.UTCTime ->+ GetSyncJobResponse+newGetSyncJobResponse+ pHttpStatus_+ pArn_+ pWorkspaceId_+ pSyncSource_+ pSyncRole_+ pStatus_+ pCreationDateTime_+ pUpdateDateTime_ =+ GetSyncJobResponse'+ { httpStatus = pHttpStatus_,+ arn = pArn_,+ workspaceId = pWorkspaceId_,+ syncSource = pSyncSource_,+ syncRole = pSyncRole_,+ status = pStatus_,+ creationDateTime =+ Data._Time Lens.# pCreationDateTime_,+ updateDateTime = Data._Time Lens.# pUpdateDateTime_+ }++-- | The response's http status code.+getSyncJobResponse_httpStatus :: Lens.Lens' GetSyncJobResponse Prelude.Int+getSyncJobResponse_httpStatus = Lens.lens (\GetSyncJobResponse' {httpStatus} -> httpStatus) (\s@GetSyncJobResponse' {} a -> s {httpStatus = a} :: GetSyncJobResponse)++-- | The sync job ARN.+getSyncJobResponse_arn :: Lens.Lens' GetSyncJobResponse Prelude.Text+getSyncJobResponse_arn = Lens.lens (\GetSyncJobResponse' {arn} -> arn) (\s@GetSyncJobResponse' {} a -> s {arn = a} :: GetSyncJobResponse)++-- | The ID of the workspace that contains the sync job.+getSyncJobResponse_workspaceId :: Lens.Lens' GetSyncJobResponse Prelude.Text+getSyncJobResponse_workspaceId = Lens.lens (\GetSyncJobResponse' {workspaceId} -> workspaceId) (\s@GetSyncJobResponse' {} a -> s {workspaceId = a} :: GetSyncJobResponse)++-- | The sync soucre.+--+-- Currently the only supported syncSoucre is @SITEWISE @.+getSyncJobResponse_syncSource :: Lens.Lens' GetSyncJobResponse Prelude.Text+getSyncJobResponse_syncSource = Lens.lens (\GetSyncJobResponse' {syncSource} -> syncSource) (\s@GetSyncJobResponse' {} a -> s {syncSource = a} :: GetSyncJobResponse)++-- | The sync IAM role.+getSyncJobResponse_syncRole :: Lens.Lens' GetSyncJobResponse Prelude.Text+getSyncJobResponse_syncRole = Lens.lens (\GetSyncJobResponse' {syncRole} -> syncRole) (\s@GetSyncJobResponse' {} a -> s {syncRole = a} :: GetSyncJobResponse)++-- | The SyncJob response status.+getSyncJobResponse_status :: Lens.Lens' GetSyncJobResponse SyncJobStatus+getSyncJobResponse_status = Lens.lens (\GetSyncJobResponse' {status} -> status) (\s@GetSyncJobResponse' {} a -> s {status = a} :: GetSyncJobResponse)++-- | The creation date and time.+getSyncJobResponse_creationDateTime :: Lens.Lens' GetSyncJobResponse Prelude.UTCTime+getSyncJobResponse_creationDateTime = Lens.lens (\GetSyncJobResponse' {creationDateTime} -> creationDateTime) (\s@GetSyncJobResponse' {} a -> s {creationDateTime = a} :: GetSyncJobResponse) Prelude.. Data._Time++-- | The update date and time.+getSyncJobResponse_updateDateTime :: Lens.Lens' GetSyncJobResponse Prelude.UTCTime+getSyncJobResponse_updateDateTime = Lens.lens (\GetSyncJobResponse' {updateDateTime} -> updateDateTime) (\s@GetSyncJobResponse' {} a -> s {updateDateTime = a} :: GetSyncJobResponse) Prelude.. Data._Time++instance Prelude.NFData GetSyncJobResponse where+ rnf GetSyncJobResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf syncSource+ `Prelude.seq` Prelude.rnf syncRole+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf updateDateTime
+ gen/Amazonka/IotTwinMaker/GetWorkspace.hs view
@@ -0,0 +1,252 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.GetWorkspace+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves information about a workspace.+module Amazonka.IotTwinMaker.GetWorkspace+ ( -- * Creating a Request+ GetWorkspace (..),+ newGetWorkspace,++ -- * Request Lenses+ getWorkspace_workspaceId,++ -- * Destructuring the Response+ GetWorkspaceResponse (..),+ newGetWorkspaceResponse,++ -- * Response Lenses+ getWorkspaceResponse_description,+ getWorkspaceResponse_httpStatus,+ getWorkspaceResponse_workspaceId,+ getWorkspaceResponse_arn,+ getWorkspaceResponse_s3Location,+ getWorkspaceResponse_role,+ getWorkspaceResponse_creationDateTime,+ getWorkspaceResponse_updateDateTime,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetWorkspace' smart constructor.+data GetWorkspace = GetWorkspace'+ { -- | The ID of the workspace.+ workspaceId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetWorkspace' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'workspaceId', 'getWorkspace_workspaceId' - The ID of the workspace.+newGetWorkspace ::+ -- | 'workspaceId'+ Prelude.Text ->+ GetWorkspace+newGetWorkspace pWorkspaceId_ =+ GetWorkspace' {workspaceId = pWorkspaceId_}++-- | The ID of the workspace.+getWorkspace_workspaceId :: Lens.Lens' GetWorkspace Prelude.Text+getWorkspace_workspaceId = Lens.lens (\GetWorkspace' {workspaceId} -> workspaceId) (\s@GetWorkspace' {} a -> s {workspaceId = a} :: GetWorkspace)++instance Core.AWSRequest GetWorkspace where+ type AWSResponse GetWorkspace = GetWorkspaceResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetWorkspaceResponse'+ Prelude.<$> (x Data..?> "description")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "workspaceId")+ Prelude.<*> (x Data..:> "arn")+ Prelude.<*> (x Data..:> "s3Location")+ Prelude.<*> (x Data..:> "role")+ Prelude.<*> (x Data..:> "creationDateTime")+ Prelude.<*> (x Data..:> "updateDateTime")+ )++instance Prelude.Hashable GetWorkspace where+ hashWithSalt _salt GetWorkspace' {..} =+ _salt `Prelude.hashWithSalt` workspaceId++instance Prelude.NFData GetWorkspace where+ rnf GetWorkspace' {..} = Prelude.rnf workspaceId++instance Data.ToHeaders GetWorkspace where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath GetWorkspace where+ toPath GetWorkspace' {..} =+ Prelude.mconcat+ ["/workspaces/", Data.toBS workspaceId]++instance Data.ToQuery GetWorkspace where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetWorkspaceResponse' smart constructor.+data GetWorkspaceResponse = GetWorkspaceResponse'+ { -- | The description of the workspace.+ description :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The ID of the workspace.+ workspaceId :: Prelude.Text,+ -- | The ARN of the workspace.+ arn :: Prelude.Text,+ -- | The ARN of the S3 bucket where resources associated with the workspace+ -- are stored.+ s3Location :: Prelude.Text,+ -- | The ARN of the execution role associated with the workspace.+ role' :: Prelude.Text,+ -- | The date and time when the workspace was created.+ creationDateTime :: Data.POSIX,+ -- | The date and time when the workspace was last updated.+ updateDateTime :: Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetWorkspaceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'getWorkspaceResponse_description' - The description of the workspace.+--+-- 'httpStatus', 'getWorkspaceResponse_httpStatus' - The response's http status code.+--+-- 'workspaceId', 'getWorkspaceResponse_workspaceId' - The ID of the workspace.+--+-- 'arn', 'getWorkspaceResponse_arn' - The ARN of the workspace.+--+-- 's3Location', 'getWorkspaceResponse_s3Location' - The ARN of the S3 bucket where resources associated with the workspace+-- are stored.+--+-- 'role'', 'getWorkspaceResponse_role' - The ARN of the execution role associated with the workspace.+--+-- 'creationDateTime', 'getWorkspaceResponse_creationDateTime' - The date and time when the workspace was created.+--+-- 'updateDateTime', 'getWorkspaceResponse_updateDateTime' - The date and time when the workspace was last updated.+newGetWorkspaceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'arn'+ Prelude.Text ->+ -- | 's3Location'+ Prelude.Text ->+ -- | 'role''+ Prelude.Text ->+ -- | 'creationDateTime'+ Prelude.UTCTime ->+ -- | 'updateDateTime'+ Prelude.UTCTime ->+ GetWorkspaceResponse+newGetWorkspaceResponse+ pHttpStatus_+ pWorkspaceId_+ pArn_+ pS3Location_+ pRole_+ pCreationDateTime_+ pUpdateDateTime_ =+ GetWorkspaceResponse'+ { description =+ Prelude.Nothing,+ httpStatus = pHttpStatus_,+ workspaceId = pWorkspaceId_,+ arn = pArn_,+ s3Location = pS3Location_,+ role' = pRole_,+ creationDateTime =+ Data._Time Lens.# pCreationDateTime_,+ updateDateTime = Data._Time Lens.# pUpdateDateTime_+ }++-- | The description of the workspace.+getWorkspaceResponse_description :: Lens.Lens' GetWorkspaceResponse (Prelude.Maybe Prelude.Text)+getWorkspaceResponse_description = Lens.lens (\GetWorkspaceResponse' {description} -> description) (\s@GetWorkspaceResponse' {} a -> s {description = a} :: GetWorkspaceResponse)++-- | The response's http status code.+getWorkspaceResponse_httpStatus :: Lens.Lens' GetWorkspaceResponse Prelude.Int+getWorkspaceResponse_httpStatus = Lens.lens (\GetWorkspaceResponse' {httpStatus} -> httpStatus) (\s@GetWorkspaceResponse' {} a -> s {httpStatus = a} :: GetWorkspaceResponse)++-- | The ID of the workspace.+getWorkspaceResponse_workspaceId :: Lens.Lens' GetWorkspaceResponse Prelude.Text+getWorkspaceResponse_workspaceId = Lens.lens (\GetWorkspaceResponse' {workspaceId} -> workspaceId) (\s@GetWorkspaceResponse' {} a -> s {workspaceId = a} :: GetWorkspaceResponse)++-- | The ARN of the workspace.+getWorkspaceResponse_arn :: Lens.Lens' GetWorkspaceResponse Prelude.Text+getWorkspaceResponse_arn = Lens.lens (\GetWorkspaceResponse' {arn} -> arn) (\s@GetWorkspaceResponse' {} a -> s {arn = a} :: GetWorkspaceResponse)++-- | The ARN of the S3 bucket where resources associated with the workspace+-- are stored.+getWorkspaceResponse_s3Location :: Lens.Lens' GetWorkspaceResponse Prelude.Text+getWorkspaceResponse_s3Location = Lens.lens (\GetWorkspaceResponse' {s3Location} -> s3Location) (\s@GetWorkspaceResponse' {} a -> s {s3Location = a} :: GetWorkspaceResponse)++-- | The ARN of the execution role associated with the workspace.+getWorkspaceResponse_role :: Lens.Lens' GetWorkspaceResponse Prelude.Text+getWorkspaceResponse_role = Lens.lens (\GetWorkspaceResponse' {role'} -> role') (\s@GetWorkspaceResponse' {} a -> s {role' = a} :: GetWorkspaceResponse)++-- | The date and time when the workspace was created.+getWorkspaceResponse_creationDateTime :: Lens.Lens' GetWorkspaceResponse Prelude.UTCTime+getWorkspaceResponse_creationDateTime = Lens.lens (\GetWorkspaceResponse' {creationDateTime} -> creationDateTime) (\s@GetWorkspaceResponse' {} a -> s {creationDateTime = a} :: GetWorkspaceResponse) Prelude.. Data._Time++-- | The date and time when the workspace was last updated.+getWorkspaceResponse_updateDateTime :: Lens.Lens' GetWorkspaceResponse Prelude.UTCTime+getWorkspaceResponse_updateDateTime = Lens.lens (\GetWorkspaceResponse' {updateDateTime} -> updateDateTime) (\s@GetWorkspaceResponse' {} a -> s {updateDateTime = a} :: GetWorkspaceResponse) Prelude.. Data._Time++instance Prelude.NFData GetWorkspaceResponse where+ rnf GetWorkspaceResponse' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf s3Location+ `Prelude.seq` Prelude.rnf role'+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf updateDateTime
+ gen/Amazonka/IotTwinMaker/Lens.hs view
@@ -0,0 +1,715 @@+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Lens+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Lens+ ( -- * Operations++ -- ** BatchPutPropertyValues+ batchPutPropertyValues_workspaceId,+ batchPutPropertyValues_entries,+ batchPutPropertyValuesResponse_httpStatus,+ batchPutPropertyValuesResponse_errorEntries,++ -- ** CreateComponentType+ createComponentType_componentTypeName,+ createComponentType_description,+ createComponentType_extendsFrom,+ createComponentType_functions,+ createComponentType_isSingleton,+ createComponentType_propertyDefinitions,+ createComponentType_propertyGroups,+ createComponentType_tags,+ createComponentType_workspaceId,+ createComponentType_componentTypeId,+ createComponentTypeResponse_httpStatus,+ createComponentTypeResponse_arn,+ createComponentTypeResponse_creationDateTime,+ createComponentTypeResponse_state,++ -- ** CreateEntity+ createEntity_components,+ createEntity_description,+ createEntity_entityId,+ createEntity_parentEntityId,+ createEntity_tags,+ createEntity_workspaceId,+ createEntity_entityName,+ createEntityResponse_httpStatus,+ createEntityResponse_entityId,+ createEntityResponse_arn,+ createEntityResponse_creationDateTime,+ createEntityResponse_state,++ -- ** CreateScene+ createScene_capabilities,+ createScene_description,+ createScene_tags,+ createScene_workspaceId,+ createScene_sceneId,+ createScene_contentLocation,+ createSceneResponse_httpStatus,+ createSceneResponse_arn,+ createSceneResponse_creationDateTime,++ -- ** CreateSyncJob+ createSyncJob_tags,+ createSyncJob_workspaceId,+ createSyncJob_syncSource,+ createSyncJob_syncRole,+ createSyncJobResponse_httpStatus,+ createSyncJobResponse_arn,+ createSyncJobResponse_creationDateTime,+ createSyncJobResponse_state,++ -- ** CreateWorkspace+ createWorkspace_description,+ createWorkspace_tags,+ createWorkspace_workspaceId,+ createWorkspace_s3Location,+ createWorkspace_role,+ createWorkspaceResponse_httpStatus,+ createWorkspaceResponse_arn,+ createWorkspaceResponse_creationDateTime,++ -- ** DeleteComponentType+ deleteComponentType_workspaceId,+ deleteComponentType_componentTypeId,+ deleteComponentTypeResponse_httpStatus,+ deleteComponentTypeResponse_state,++ -- ** DeleteEntity+ deleteEntity_isRecursive,+ deleteEntity_workspaceId,+ deleteEntity_entityId,+ deleteEntityResponse_httpStatus,+ deleteEntityResponse_state,++ -- ** DeleteScene+ deleteScene_workspaceId,+ deleteScene_sceneId,+ deleteSceneResponse_httpStatus,++ -- ** DeleteSyncJob+ deleteSyncJob_workspaceId,+ deleteSyncJob_syncSource,+ deleteSyncJobResponse_httpStatus,+ deleteSyncJobResponse_state,++ -- ** DeleteWorkspace+ deleteWorkspace_workspaceId,+ deleteWorkspaceResponse_httpStatus,++ -- ** ExecuteQuery+ executeQuery_maxResults,+ executeQuery_nextToken,+ executeQuery_workspaceId,+ executeQuery_queryStatement,+ executeQueryResponse_columnDescriptions,+ executeQueryResponse_nextToken,+ executeQueryResponse_rows,+ executeQueryResponse_httpStatus,++ -- ** GetComponentType+ getComponentType_workspaceId,+ getComponentType_componentTypeId,+ getComponentTypeResponse_componentTypeName,+ getComponentTypeResponse_description,+ getComponentTypeResponse_extendsFrom,+ getComponentTypeResponse_functions,+ getComponentTypeResponse_isAbstract,+ getComponentTypeResponse_isSchemaInitialized,+ getComponentTypeResponse_isSingleton,+ getComponentTypeResponse_propertyDefinitions,+ getComponentTypeResponse_propertyGroups,+ getComponentTypeResponse_status,+ getComponentTypeResponse_syncSource,+ getComponentTypeResponse_httpStatus,+ getComponentTypeResponse_workspaceId,+ getComponentTypeResponse_componentTypeId,+ getComponentTypeResponse_creationDateTime,+ getComponentTypeResponse_updateDateTime,+ getComponentTypeResponse_arn,++ -- ** GetEntity+ getEntity_workspaceId,+ getEntity_entityId,+ getEntityResponse_components,+ getEntityResponse_description,+ getEntityResponse_syncSource,+ getEntityResponse_httpStatus,+ getEntityResponse_entityId,+ getEntityResponse_entityName,+ getEntityResponse_arn,+ getEntityResponse_status,+ getEntityResponse_workspaceId,+ getEntityResponse_parentEntityId,+ getEntityResponse_hasChildEntities,+ getEntityResponse_creationDateTime,+ getEntityResponse_updateDateTime,++ -- ** GetPricingPlan+ getPricingPlanResponse_pendingPricingPlan,+ getPricingPlanResponse_httpStatus,+ getPricingPlanResponse_currentPricingPlan,++ -- ** GetPropertyValue+ getPropertyValue_componentName,+ getPropertyValue_componentTypeId,+ getPropertyValue_entityId,+ getPropertyValue_maxResults,+ getPropertyValue_nextToken,+ getPropertyValue_propertyGroupName,+ getPropertyValue_tabularConditions,+ getPropertyValue_selectedProperties,+ getPropertyValue_workspaceId,+ getPropertyValueResponse_nextToken,+ getPropertyValueResponse_propertyValues,+ getPropertyValueResponse_tabularPropertyValues,+ getPropertyValueResponse_httpStatus,++ -- ** GetPropertyValueHistory+ getPropertyValueHistory_componentName,+ getPropertyValueHistory_componentTypeId,+ getPropertyValueHistory_endDateTime,+ getPropertyValueHistory_endTime,+ getPropertyValueHistory_entityId,+ getPropertyValueHistory_interpolation,+ getPropertyValueHistory_maxResults,+ getPropertyValueHistory_nextToken,+ getPropertyValueHistory_orderByTime,+ getPropertyValueHistory_propertyFilters,+ getPropertyValueHistory_startDateTime,+ getPropertyValueHistory_startTime,+ getPropertyValueHistory_workspaceId,+ getPropertyValueHistory_selectedProperties,+ getPropertyValueHistoryResponse_nextToken,+ getPropertyValueHistoryResponse_httpStatus,+ getPropertyValueHistoryResponse_propertyValues,++ -- ** GetScene+ getScene_workspaceId,+ getScene_sceneId,+ getSceneResponse_capabilities,+ getSceneResponse_description,+ getSceneResponse_httpStatus,+ getSceneResponse_workspaceId,+ getSceneResponse_sceneId,+ getSceneResponse_contentLocation,+ getSceneResponse_arn,+ getSceneResponse_creationDateTime,+ getSceneResponse_updateDateTime,++ -- ** GetSyncJob+ getSyncJob_workspaceId,+ getSyncJob_syncSource,+ getSyncJobResponse_httpStatus,+ getSyncJobResponse_arn,+ getSyncJobResponse_workspaceId,+ getSyncJobResponse_syncSource,+ getSyncJobResponse_syncRole,+ getSyncJobResponse_status,+ getSyncJobResponse_creationDateTime,+ getSyncJobResponse_updateDateTime,++ -- ** GetWorkspace+ getWorkspace_workspaceId,+ getWorkspaceResponse_description,+ getWorkspaceResponse_httpStatus,+ getWorkspaceResponse_workspaceId,+ getWorkspaceResponse_arn,+ getWorkspaceResponse_s3Location,+ getWorkspaceResponse_role,+ getWorkspaceResponse_creationDateTime,+ getWorkspaceResponse_updateDateTime,++ -- ** ListComponentTypes+ listComponentTypes_filters,+ listComponentTypes_maxResults,+ listComponentTypes_nextToken,+ listComponentTypes_workspaceId,+ listComponentTypesResponse_maxResults,+ listComponentTypesResponse_nextToken,+ listComponentTypesResponse_httpStatus,+ listComponentTypesResponse_workspaceId,+ listComponentTypesResponse_componentTypeSummaries,++ -- ** ListEntities+ listEntities_filters,+ listEntities_maxResults,+ listEntities_nextToken,+ listEntities_workspaceId,+ listEntitiesResponse_entitySummaries,+ listEntitiesResponse_nextToken,+ listEntitiesResponse_httpStatus,++ -- ** ListScenes+ listScenes_maxResults,+ listScenes_nextToken,+ listScenes_workspaceId,+ listScenesResponse_nextToken,+ listScenesResponse_sceneSummaries,+ listScenesResponse_httpStatus,++ -- ** ListSyncJobs+ listSyncJobs_maxResults,+ listSyncJobs_nextToken,+ listSyncJobs_workspaceId,+ listSyncJobsResponse_nextToken,+ listSyncJobsResponse_syncJobSummaries,+ listSyncJobsResponse_httpStatus,++ -- ** ListSyncResources+ listSyncResources_filters,+ listSyncResources_maxResults,+ listSyncResources_nextToken,+ listSyncResources_workspaceId,+ listSyncResources_syncSource,+ listSyncResourcesResponse_nextToken,+ listSyncResourcesResponse_syncResources,+ listSyncResourcesResponse_httpStatus,++ -- ** ListTagsForResource+ listTagsForResource_maxResults,+ listTagsForResource_nextToken,+ listTagsForResource_resourceARN,+ listTagsForResourceResponse_nextToken,+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,++ -- ** ListWorkspaces+ listWorkspaces_maxResults,+ listWorkspaces_nextToken,+ listWorkspacesResponse_nextToken,+ listWorkspacesResponse_workspaceSummaries,+ listWorkspacesResponse_httpStatus,++ -- ** TagResource+ tagResource_resourceARN,+ tagResource_tags,+ tagResourceResponse_httpStatus,++ -- ** UntagResource+ untagResource_resourceARN,+ untagResource_tagKeys,+ untagResourceResponse_httpStatus,++ -- ** UpdateComponentType+ updateComponentType_componentTypeName,+ updateComponentType_description,+ updateComponentType_extendsFrom,+ updateComponentType_functions,+ updateComponentType_isSingleton,+ updateComponentType_propertyDefinitions,+ updateComponentType_propertyGroups,+ updateComponentType_workspaceId,+ updateComponentType_componentTypeId,+ updateComponentTypeResponse_httpStatus,+ updateComponentTypeResponse_workspaceId,+ updateComponentTypeResponse_arn,+ updateComponentTypeResponse_componentTypeId,+ updateComponentTypeResponse_state,++ -- ** UpdateEntity+ updateEntity_componentUpdates,+ updateEntity_description,+ updateEntity_entityName,+ updateEntity_parentEntityUpdate,+ updateEntity_workspaceId,+ updateEntity_entityId,+ updateEntityResponse_httpStatus,+ updateEntityResponse_updateDateTime,+ updateEntityResponse_state,++ -- ** UpdatePricingPlan+ updatePricingPlan_bundleNames,+ updatePricingPlan_pricingMode,+ updatePricingPlanResponse_pendingPricingPlan,+ updatePricingPlanResponse_httpStatus,+ updatePricingPlanResponse_currentPricingPlan,++ -- ** UpdateScene+ updateScene_capabilities,+ updateScene_contentLocation,+ updateScene_description,+ updateScene_workspaceId,+ updateScene_sceneId,+ updateSceneResponse_httpStatus,+ updateSceneResponse_updateDateTime,++ -- ** UpdateWorkspace+ updateWorkspace_description,+ updateWorkspace_role,+ updateWorkspace_workspaceId,+ updateWorkspaceResponse_httpStatus,+ updateWorkspaceResponse_updateDateTime,++ -- * Types++ -- ** BatchPutPropertyError+ batchPutPropertyError_errorCode,+ batchPutPropertyError_errorMessage,+ batchPutPropertyError_entry,++ -- ** BatchPutPropertyErrorEntry+ batchPutPropertyErrorEntry_errors,++ -- ** BundleInformation+ bundleInformation_pricingTier,+ bundleInformation_bundleNames,++ -- ** ColumnDescription+ columnDescription_name,+ columnDescription_type,++ -- ** ComponentPropertyGroupRequest+ componentPropertyGroupRequest_groupType,+ componentPropertyGroupRequest_propertyNames,+ componentPropertyGroupRequest_updateType,++ -- ** ComponentPropertyGroupResponse+ componentPropertyGroupResponse_groupType,+ componentPropertyGroupResponse_propertyNames,+ componentPropertyGroupResponse_isInherited,++ -- ** ComponentRequest+ componentRequest_componentTypeId,+ componentRequest_description,+ componentRequest_properties,+ componentRequest_propertyGroups,++ -- ** ComponentResponse+ componentResponse_componentName,+ componentResponse_componentTypeId,+ componentResponse_definedIn,+ componentResponse_description,+ componentResponse_properties,+ componentResponse_propertyGroups,+ componentResponse_status,+ componentResponse_syncSource,++ -- ** ComponentTypeSummary+ componentTypeSummary_componentTypeName,+ componentTypeSummary_description,+ componentTypeSummary_status,+ componentTypeSummary_arn,+ componentTypeSummary_componentTypeId,+ componentTypeSummary_creationDateTime,+ componentTypeSummary_updateDateTime,++ -- ** ComponentUpdateRequest+ componentUpdateRequest_componentTypeId,+ componentUpdateRequest_description,+ componentUpdateRequest_propertyGroupUpdates,+ componentUpdateRequest_propertyUpdates,+ componentUpdateRequest_updateType,++ -- ** DataConnector+ dataConnector_isNative,+ dataConnector_lambda,++ -- ** DataType+ dataType_allowedValues,+ dataType_nestedType,+ dataType_relationship,+ dataType_unitOfMeasure,+ dataType_type,++ -- ** DataValue+ dataValue_booleanValue,+ dataValue_doubleValue,+ dataValue_expression,+ dataValue_integerValue,+ dataValue_listValue,+ dataValue_longValue,+ dataValue_mapValue,+ dataValue_relationshipValue,+ dataValue_stringValue,++ -- ** EntityPropertyReference+ entityPropertyReference_componentName,+ entityPropertyReference_entityId,+ entityPropertyReference_externalIdProperty,+ entityPropertyReference_propertyName,++ -- ** EntitySummary+ entitySummary_description,+ entitySummary_hasChildEntities,+ entitySummary_parentEntityId,+ entitySummary_entityId,+ entitySummary_entityName,+ entitySummary_arn,+ entitySummary_status,+ entitySummary_creationDateTime,+ entitySummary_updateDateTime,++ -- ** ErrorDetails+ errorDetails_code,+ errorDetails_message,++ -- ** FunctionRequest+ functionRequest_implementedBy,+ functionRequest_requiredProperties,+ functionRequest_scope,++ -- ** FunctionResponse+ functionResponse_implementedBy,+ functionResponse_isInherited,+ functionResponse_requiredProperties,+ functionResponse_scope,++ -- ** InterpolationParameters+ interpolationParameters_interpolationType,+ interpolationParameters_intervalInSeconds,++ -- ** LambdaFunction+ lambdaFunction_arn,++ -- ** ListComponentTypesFilter+ listComponentTypesFilter_extendsFrom,+ listComponentTypesFilter_isAbstract,+ listComponentTypesFilter_namespace,++ -- ** ListEntitiesFilter+ listEntitiesFilter_componentTypeId,+ listEntitiesFilter_externalId,+ listEntitiesFilter_parentEntityId,++ -- ** OrderBy+ orderBy_order,+ orderBy_propertyName,++ -- ** ParentEntityUpdateRequest+ parentEntityUpdateRequest_parentEntityId,+ parentEntityUpdateRequest_updateType,++ -- ** PricingPlan+ pricingPlan_billableEntityCount,+ pricingPlan_bundleInformation,+ pricingPlan_effectiveDateTime,+ pricingPlan_pricingMode,+ pricingPlan_updateDateTime,+ pricingPlan_updateReason,++ -- ** PropertyDefinitionRequest+ propertyDefinitionRequest_configuration,+ propertyDefinitionRequest_dataType,+ propertyDefinitionRequest_defaultValue,+ propertyDefinitionRequest_displayName,+ propertyDefinitionRequest_isExternalId,+ propertyDefinitionRequest_isRequiredInEntity,+ propertyDefinitionRequest_isStoredExternally,+ propertyDefinitionRequest_isTimeSeries,++ -- ** PropertyDefinitionResponse+ propertyDefinitionResponse_configuration,+ propertyDefinitionResponse_defaultValue,+ propertyDefinitionResponse_displayName,+ propertyDefinitionResponse_dataType,+ propertyDefinitionResponse_isTimeSeries,+ propertyDefinitionResponse_isRequiredInEntity,+ propertyDefinitionResponse_isExternalId,+ propertyDefinitionResponse_isStoredExternally,+ propertyDefinitionResponse_isImported,+ propertyDefinitionResponse_isFinal,+ propertyDefinitionResponse_isInherited,++ -- ** PropertyFilter+ propertyFilter_operator,+ propertyFilter_propertyName,+ propertyFilter_value,++ -- ** PropertyGroupRequest+ propertyGroupRequest_groupType,+ propertyGroupRequest_propertyNames,++ -- ** PropertyGroupResponse+ propertyGroupResponse_groupType,+ propertyGroupResponse_propertyNames,+ propertyGroupResponse_isInherited,++ -- ** PropertyLatestValue+ propertyLatestValue_propertyValue,+ propertyLatestValue_propertyReference,++ -- ** PropertyRequest+ propertyRequest_definition,+ propertyRequest_updateType,+ propertyRequest_value,++ -- ** PropertyResponse+ propertyResponse_definition,+ propertyResponse_value,++ -- ** PropertyValue+ propertyValue_time,+ propertyValue_timestamp,+ propertyValue_value,++ -- ** PropertyValueEntry+ propertyValueEntry_propertyValues,+ propertyValueEntry_entityPropertyReference,++ -- ** PropertyValueHistory+ propertyValueHistory_values,+ propertyValueHistory_entityPropertyReference,++ -- ** QueryResultValue++ -- ** Relationship+ relationship_relationshipType,+ relationship_targetComponentTypeId,++ -- ** RelationshipValue+ relationshipValue_targetComponentName,+ relationshipValue_targetEntityId,++ -- ** Row+ row_rowData,++ -- ** SceneSummary+ sceneSummary_description,+ sceneSummary_sceneId,+ sceneSummary_contentLocation,+ sceneSummary_arn,+ sceneSummary_creationDateTime,+ sceneSummary_updateDateTime,++ -- ** Status+ status_error,+ status_state,++ -- ** SyncJobStatus+ syncJobStatus_error,+ syncJobStatus_state,++ -- ** SyncJobSummary+ syncJobSummary_arn,+ syncJobSummary_creationDateTime,+ syncJobSummary_status,+ syncJobSummary_syncSource,+ syncJobSummary_updateDateTime,+ syncJobSummary_workspaceId,++ -- ** SyncResourceFilter+ syncResourceFilter_externalId,+ syncResourceFilter_resourceId,+ syncResourceFilter_resourceType,+ syncResourceFilter_state,++ -- ** SyncResourceStatus+ syncResourceStatus_error,+ syncResourceStatus_state,++ -- ** SyncResourceSummary+ syncResourceSummary_externalId,+ syncResourceSummary_resourceId,+ syncResourceSummary_resourceType,+ syncResourceSummary_status,+ syncResourceSummary_updateDateTime,++ -- ** TabularConditions+ tabularConditions_orderBy,+ tabularConditions_propertyFilters,++ -- ** WorkspaceSummary+ workspaceSummary_description,+ workspaceSummary_workspaceId,+ workspaceSummary_arn,+ workspaceSummary_creationDateTime,+ workspaceSummary_updateDateTime,+ )+where++import Amazonka.IotTwinMaker.BatchPutPropertyValues+import Amazonka.IotTwinMaker.CreateComponentType+import Amazonka.IotTwinMaker.CreateEntity+import Amazonka.IotTwinMaker.CreateScene+import Amazonka.IotTwinMaker.CreateSyncJob+import Amazonka.IotTwinMaker.CreateWorkspace+import Amazonka.IotTwinMaker.DeleteComponentType+import Amazonka.IotTwinMaker.DeleteEntity+import Amazonka.IotTwinMaker.DeleteScene+import Amazonka.IotTwinMaker.DeleteSyncJob+import Amazonka.IotTwinMaker.DeleteWorkspace+import Amazonka.IotTwinMaker.ExecuteQuery+import Amazonka.IotTwinMaker.GetComponentType+import Amazonka.IotTwinMaker.GetEntity+import Amazonka.IotTwinMaker.GetPricingPlan+import Amazonka.IotTwinMaker.GetPropertyValue+import Amazonka.IotTwinMaker.GetPropertyValueHistory+import Amazonka.IotTwinMaker.GetScene+import Amazonka.IotTwinMaker.GetSyncJob+import Amazonka.IotTwinMaker.GetWorkspace+import Amazonka.IotTwinMaker.ListComponentTypes+import Amazonka.IotTwinMaker.ListEntities+import Amazonka.IotTwinMaker.ListScenes+import Amazonka.IotTwinMaker.ListSyncJobs+import Amazonka.IotTwinMaker.ListSyncResources+import Amazonka.IotTwinMaker.ListTagsForResource+import Amazonka.IotTwinMaker.ListWorkspaces+import Amazonka.IotTwinMaker.TagResource+import Amazonka.IotTwinMaker.Types.BatchPutPropertyError+import Amazonka.IotTwinMaker.Types.BatchPutPropertyErrorEntry+import Amazonka.IotTwinMaker.Types.BundleInformation+import Amazonka.IotTwinMaker.Types.ColumnDescription+import Amazonka.IotTwinMaker.Types.ComponentPropertyGroupRequest+import Amazonka.IotTwinMaker.Types.ComponentPropertyGroupResponse+import Amazonka.IotTwinMaker.Types.ComponentRequest+import Amazonka.IotTwinMaker.Types.ComponentResponse+import Amazonka.IotTwinMaker.Types.ComponentTypeSummary+import Amazonka.IotTwinMaker.Types.ComponentUpdateRequest+import Amazonka.IotTwinMaker.Types.DataConnector+import Amazonka.IotTwinMaker.Types.DataType+import Amazonka.IotTwinMaker.Types.DataValue+import Amazonka.IotTwinMaker.Types.EntityPropertyReference+import Amazonka.IotTwinMaker.Types.EntitySummary+import Amazonka.IotTwinMaker.Types.ErrorDetails+import Amazonka.IotTwinMaker.Types.FunctionRequest+import Amazonka.IotTwinMaker.Types.FunctionResponse+import Amazonka.IotTwinMaker.Types.InterpolationParameters+import Amazonka.IotTwinMaker.Types.LambdaFunction+import Amazonka.IotTwinMaker.Types.ListComponentTypesFilter+import Amazonka.IotTwinMaker.Types.ListEntitiesFilter+import Amazonka.IotTwinMaker.Types.OrderBy+import Amazonka.IotTwinMaker.Types.ParentEntityUpdateRequest+import Amazonka.IotTwinMaker.Types.PricingPlan+import Amazonka.IotTwinMaker.Types.PropertyDefinitionRequest+import Amazonka.IotTwinMaker.Types.PropertyDefinitionResponse+import Amazonka.IotTwinMaker.Types.PropertyFilter+import Amazonka.IotTwinMaker.Types.PropertyGroupRequest+import Amazonka.IotTwinMaker.Types.PropertyGroupResponse+import Amazonka.IotTwinMaker.Types.PropertyLatestValue+import Amazonka.IotTwinMaker.Types.PropertyRequest+import Amazonka.IotTwinMaker.Types.PropertyResponse+import Amazonka.IotTwinMaker.Types.PropertyValue+import Amazonka.IotTwinMaker.Types.PropertyValueEntry+import Amazonka.IotTwinMaker.Types.PropertyValueHistory+import Amazonka.IotTwinMaker.Types.QueryResultValue+import Amazonka.IotTwinMaker.Types.Relationship+import Amazonka.IotTwinMaker.Types.RelationshipValue+import Amazonka.IotTwinMaker.Types.Row+import Amazonka.IotTwinMaker.Types.SceneSummary+import Amazonka.IotTwinMaker.Types.Status+import Amazonka.IotTwinMaker.Types.SyncJobStatus+import Amazonka.IotTwinMaker.Types.SyncJobSummary+import Amazonka.IotTwinMaker.Types.SyncResourceFilter+import Amazonka.IotTwinMaker.Types.SyncResourceStatus+import Amazonka.IotTwinMaker.Types.SyncResourceSummary+import Amazonka.IotTwinMaker.Types.TabularConditions+import Amazonka.IotTwinMaker.Types.WorkspaceSummary+import Amazonka.IotTwinMaker.UntagResource+import Amazonka.IotTwinMaker.UpdateComponentType+import Amazonka.IotTwinMaker.UpdateEntity+import Amazonka.IotTwinMaker.UpdatePricingPlan+import Amazonka.IotTwinMaker.UpdateScene+import Amazonka.IotTwinMaker.UpdateWorkspace
+ gen/Amazonka/IotTwinMaker/ListComponentTypes.hs view
@@ -0,0 +1,261 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.ListComponentTypes+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists all component types in a workspace.+module Amazonka.IotTwinMaker.ListComponentTypes+ ( -- * Creating a Request+ ListComponentTypes (..),+ newListComponentTypes,++ -- * Request Lenses+ listComponentTypes_filters,+ listComponentTypes_maxResults,+ listComponentTypes_nextToken,+ listComponentTypes_workspaceId,++ -- * Destructuring the Response+ ListComponentTypesResponse (..),+ newListComponentTypesResponse,++ -- * Response Lenses+ listComponentTypesResponse_maxResults,+ listComponentTypesResponse_nextToken,+ listComponentTypesResponse_httpStatus,+ listComponentTypesResponse_workspaceId,+ listComponentTypesResponse_componentTypeSummaries,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListComponentTypes' smart constructor.+data ListComponentTypes = ListComponentTypes'+ { -- | A list of objects that filter the request.+ filters :: Prelude.Maybe [ListComponentTypesFilter],+ -- | The maximum number of results to return at one time. The default is 25.+ --+ -- Valid Range: Minimum value of 1. Maximum value of 250.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The string that specifies the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The ID of the workspace.+ workspaceId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListComponentTypes' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filters', 'listComponentTypes_filters' - A list of objects that filter the request.+--+-- 'maxResults', 'listComponentTypes_maxResults' - The maximum number of results to return at one time. The default is 25.+--+-- Valid Range: Minimum value of 1. Maximum value of 250.+--+-- 'nextToken', 'listComponentTypes_nextToken' - The string that specifies the next page of results.+--+-- 'workspaceId', 'listComponentTypes_workspaceId' - The ID of the workspace.+newListComponentTypes ::+ -- | 'workspaceId'+ Prelude.Text ->+ ListComponentTypes+newListComponentTypes pWorkspaceId_ =+ ListComponentTypes'+ { filters = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ workspaceId = pWorkspaceId_+ }++-- | A list of objects that filter the request.+listComponentTypes_filters :: Lens.Lens' ListComponentTypes (Prelude.Maybe [ListComponentTypesFilter])+listComponentTypes_filters = Lens.lens (\ListComponentTypes' {filters} -> filters) (\s@ListComponentTypes' {} a -> s {filters = a} :: ListComponentTypes) Prelude.. Lens.mapping Lens.coerced++-- | The maximum number of results to return at one time. The default is 25.+--+-- Valid Range: Minimum value of 1. Maximum value of 250.+listComponentTypes_maxResults :: Lens.Lens' ListComponentTypes (Prelude.Maybe Prelude.Natural)+listComponentTypes_maxResults = Lens.lens (\ListComponentTypes' {maxResults} -> maxResults) (\s@ListComponentTypes' {} a -> s {maxResults = a} :: ListComponentTypes)++-- | The string that specifies the next page of results.+listComponentTypes_nextToken :: Lens.Lens' ListComponentTypes (Prelude.Maybe Prelude.Text)+listComponentTypes_nextToken = Lens.lens (\ListComponentTypes' {nextToken} -> nextToken) (\s@ListComponentTypes' {} a -> s {nextToken = a} :: ListComponentTypes)++-- | The ID of the workspace.+listComponentTypes_workspaceId :: Lens.Lens' ListComponentTypes Prelude.Text+listComponentTypes_workspaceId = Lens.lens (\ListComponentTypes' {workspaceId} -> workspaceId) (\s@ListComponentTypes' {} a -> s {workspaceId = a} :: ListComponentTypes)++instance Core.AWSRequest ListComponentTypes where+ type+ AWSResponse ListComponentTypes =+ ListComponentTypesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListComponentTypesResponse'+ Prelude.<$> (x Data..?> "maxResults")+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "workspaceId")+ Prelude.<*> ( x+ Data..?> "componentTypeSummaries"+ Core..!@ Prelude.mempty+ )+ )++instance Prelude.Hashable ListComponentTypes where+ hashWithSalt _salt ListComponentTypes' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` workspaceId++instance Prelude.NFData ListComponentTypes where+ rnf ListComponentTypes' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf workspaceId++instance Data.ToHeaders ListComponentTypes where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListComponentTypes where+ toJSON ListComponentTypes' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("filters" Data..=) Prelude.<$> filters,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListComponentTypes where+ toPath ListComponentTypes' {..} =+ Prelude.mconcat+ [ "/workspaces/",+ Data.toBS workspaceId,+ "/component-types-list"+ ]++instance Data.ToQuery ListComponentTypes where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListComponentTypesResponse' smart constructor.+data ListComponentTypesResponse = ListComponentTypesResponse'+ { -- | Specifies the maximum number of results to display.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The string that specifies the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The ID of the workspace.+ workspaceId :: Prelude.Text,+ -- | A list of objects that contain information about the component types.+ componentTypeSummaries :: [ComponentTypeSummary]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListComponentTypesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listComponentTypesResponse_maxResults' - Specifies the maximum number of results to display.+--+-- 'nextToken', 'listComponentTypesResponse_nextToken' - The string that specifies the next page of results.+--+-- 'httpStatus', 'listComponentTypesResponse_httpStatus' - The response's http status code.+--+-- 'workspaceId', 'listComponentTypesResponse_workspaceId' - The ID of the workspace.+--+-- 'componentTypeSummaries', 'listComponentTypesResponse_componentTypeSummaries' - A list of objects that contain information about the component types.+newListComponentTypesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'workspaceId'+ Prelude.Text ->+ ListComponentTypesResponse+newListComponentTypesResponse+ pHttpStatus_+ pWorkspaceId_ =+ ListComponentTypesResponse'+ { maxResults =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ workspaceId = pWorkspaceId_,+ componentTypeSummaries = Prelude.mempty+ }++-- | Specifies the maximum number of results to display.+listComponentTypesResponse_maxResults :: Lens.Lens' ListComponentTypesResponse (Prelude.Maybe Prelude.Natural)+listComponentTypesResponse_maxResults = Lens.lens (\ListComponentTypesResponse' {maxResults} -> maxResults) (\s@ListComponentTypesResponse' {} a -> s {maxResults = a} :: ListComponentTypesResponse)++-- | The string that specifies the next page of results.+listComponentTypesResponse_nextToken :: Lens.Lens' ListComponentTypesResponse (Prelude.Maybe Prelude.Text)+listComponentTypesResponse_nextToken = Lens.lens (\ListComponentTypesResponse' {nextToken} -> nextToken) (\s@ListComponentTypesResponse' {} a -> s {nextToken = a} :: ListComponentTypesResponse)++-- | The response's http status code.+listComponentTypesResponse_httpStatus :: Lens.Lens' ListComponentTypesResponse Prelude.Int+listComponentTypesResponse_httpStatus = Lens.lens (\ListComponentTypesResponse' {httpStatus} -> httpStatus) (\s@ListComponentTypesResponse' {} a -> s {httpStatus = a} :: ListComponentTypesResponse)++-- | The ID of the workspace.+listComponentTypesResponse_workspaceId :: Lens.Lens' ListComponentTypesResponse Prelude.Text+listComponentTypesResponse_workspaceId = Lens.lens (\ListComponentTypesResponse' {workspaceId} -> workspaceId) (\s@ListComponentTypesResponse' {} a -> s {workspaceId = a} :: ListComponentTypesResponse)++-- | A list of objects that contain information about the component types.+listComponentTypesResponse_componentTypeSummaries :: Lens.Lens' ListComponentTypesResponse [ComponentTypeSummary]+listComponentTypesResponse_componentTypeSummaries = Lens.lens (\ListComponentTypesResponse' {componentTypeSummaries} -> componentTypeSummaries) (\s@ListComponentTypesResponse' {} a -> s {componentTypeSummaries = a} :: ListComponentTypesResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListComponentTypesResponse where+ rnf ListComponentTypesResponse' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf componentTypeSummaries
+ gen/Amazonka/IotTwinMaker/ListEntities.hs view
@@ -0,0 +1,237 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.ListEntities+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists all entities in a workspace.+module Amazonka.IotTwinMaker.ListEntities+ ( -- * Creating a Request+ ListEntities (..),+ newListEntities,++ -- * Request Lenses+ listEntities_filters,+ listEntities_maxResults,+ listEntities_nextToken,+ listEntities_workspaceId,++ -- * Destructuring the Response+ ListEntitiesResponse (..),+ newListEntitiesResponse,++ -- * Response Lenses+ listEntitiesResponse_entitySummaries,+ listEntitiesResponse_nextToken,+ listEntitiesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListEntities' smart constructor.+data ListEntities = ListEntities'+ { -- | A list of objects that filter the request.+ --+ -- Only one object is accepted as a valid input.+ filters :: Prelude.Maybe [ListEntitiesFilter],+ -- | The maximum number of results to return at one time. The default is 25.+ --+ -- Valid Range: Minimum value of 1. Maximum value of 250.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The string that specifies the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The ID of the workspace.+ workspaceId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListEntities' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filters', 'listEntities_filters' - A list of objects that filter the request.+--+-- Only one object is accepted as a valid input.+--+-- 'maxResults', 'listEntities_maxResults' - The maximum number of results to return at one time. The default is 25.+--+-- Valid Range: Minimum value of 1. Maximum value of 250.+--+-- 'nextToken', 'listEntities_nextToken' - The string that specifies the next page of results.+--+-- 'workspaceId', 'listEntities_workspaceId' - The ID of the workspace.+newListEntities ::+ -- | 'workspaceId'+ Prelude.Text ->+ ListEntities+newListEntities pWorkspaceId_ =+ ListEntities'+ { filters = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ workspaceId = pWorkspaceId_+ }++-- | A list of objects that filter the request.+--+-- Only one object is accepted as a valid input.+listEntities_filters :: Lens.Lens' ListEntities (Prelude.Maybe [ListEntitiesFilter])+listEntities_filters = Lens.lens (\ListEntities' {filters} -> filters) (\s@ListEntities' {} a -> s {filters = a} :: ListEntities) Prelude.. Lens.mapping Lens.coerced++-- | The maximum number of results to return at one time. The default is 25.+--+-- Valid Range: Minimum value of 1. Maximum value of 250.+listEntities_maxResults :: Lens.Lens' ListEntities (Prelude.Maybe Prelude.Natural)+listEntities_maxResults = Lens.lens (\ListEntities' {maxResults} -> maxResults) (\s@ListEntities' {} a -> s {maxResults = a} :: ListEntities)++-- | The string that specifies the next page of results.+listEntities_nextToken :: Lens.Lens' ListEntities (Prelude.Maybe Prelude.Text)+listEntities_nextToken = Lens.lens (\ListEntities' {nextToken} -> nextToken) (\s@ListEntities' {} a -> s {nextToken = a} :: ListEntities)++-- | The ID of the workspace.+listEntities_workspaceId :: Lens.Lens' ListEntities Prelude.Text+listEntities_workspaceId = Lens.lens (\ListEntities' {workspaceId} -> workspaceId) (\s@ListEntities' {} a -> s {workspaceId = a} :: ListEntities)++instance Core.AWSRequest ListEntities where+ type AWSResponse ListEntities = ListEntitiesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListEntitiesResponse'+ Prelude.<$> ( x+ Data..?> "entitySummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListEntities where+ hashWithSalt _salt ListEntities' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` workspaceId++instance Prelude.NFData ListEntities where+ rnf ListEntities' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf workspaceId++instance Data.ToHeaders ListEntities where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListEntities where+ toJSON ListEntities' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("filters" Data..=) Prelude.<$> filters,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListEntities where+ toPath ListEntities' {..} =+ Prelude.mconcat+ [ "/workspaces/",+ Data.toBS workspaceId,+ "/entities-list"+ ]++instance Data.ToQuery ListEntities where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListEntitiesResponse' smart constructor.+data ListEntitiesResponse = ListEntitiesResponse'+ { -- | A list of objects that contain information about the entities.+ entitySummaries :: Prelude.Maybe [EntitySummary],+ -- | The string that specifies the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListEntitiesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'entitySummaries', 'listEntitiesResponse_entitySummaries' - A list of objects that contain information about the entities.+--+-- 'nextToken', 'listEntitiesResponse_nextToken' - The string that specifies the next page of results.+--+-- 'httpStatus', 'listEntitiesResponse_httpStatus' - The response's http status code.+newListEntitiesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListEntitiesResponse+newListEntitiesResponse pHttpStatus_ =+ ListEntitiesResponse'+ { entitySummaries =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A list of objects that contain information about the entities.+listEntitiesResponse_entitySummaries :: Lens.Lens' ListEntitiesResponse (Prelude.Maybe [EntitySummary])+listEntitiesResponse_entitySummaries = Lens.lens (\ListEntitiesResponse' {entitySummaries} -> entitySummaries) (\s@ListEntitiesResponse' {} a -> s {entitySummaries = a} :: ListEntitiesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The string that specifies the next page of results.+listEntitiesResponse_nextToken :: Lens.Lens' ListEntitiesResponse (Prelude.Maybe Prelude.Text)+listEntitiesResponse_nextToken = Lens.lens (\ListEntitiesResponse' {nextToken} -> nextToken) (\s@ListEntitiesResponse' {} a -> s {nextToken = a} :: ListEntitiesResponse)++-- | The response's http status code.+listEntitiesResponse_httpStatus :: Lens.Lens' ListEntitiesResponse Prelude.Int+listEntitiesResponse_httpStatus = Lens.lens (\ListEntitiesResponse' {httpStatus} -> httpStatus) (\s@ListEntitiesResponse' {} a -> s {httpStatus = a} :: ListEntitiesResponse)++instance Prelude.NFData ListEntitiesResponse where+ rnf ListEntitiesResponse' {..} =+ Prelude.rnf entitySummaries+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IotTwinMaker/ListScenes.hs view
@@ -0,0 +1,208 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.ListScenes+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists all scenes in a workspace.+module Amazonka.IotTwinMaker.ListScenes+ ( -- * Creating a Request+ ListScenes (..),+ newListScenes,++ -- * Request Lenses+ listScenes_maxResults,+ listScenes_nextToken,+ listScenes_workspaceId,++ -- * Destructuring the Response+ ListScenesResponse (..),+ newListScenesResponse,++ -- * Response Lenses+ listScenesResponse_nextToken,+ listScenesResponse_sceneSummaries,+ listScenesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListScenes' smart constructor.+data ListScenes = ListScenes'+ { -- | Specifies the maximum number of results to display.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The string that specifies the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The ID of the workspace that contains the scenes.+ workspaceId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListScenes' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listScenes_maxResults' - Specifies the maximum number of results to display.+--+-- 'nextToken', 'listScenes_nextToken' - The string that specifies the next page of results.+--+-- 'workspaceId', 'listScenes_workspaceId' - The ID of the workspace that contains the scenes.+newListScenes ::+ -- | 'workspaceId'+ Prelude.Text ->+ ListScenes+newListScenes pWorkspaceId_ =+ ListScenes'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ workspaceId = pWorkspaceId_+ }++-- | Specifies the maximum number of results to display.+listScenes_maxResults :: Lens.Lens' ListScenes (Prelude.Maybe Prelude.Natural)+listScenes_maxResults = Lens.lens (\ListScenes' {maxResults} -> maxResults) (\s@ListScenes' {} a -> s {maxResults = a} :: ListScenes)++-- | The string that specifies the next page of results.+listScenes_nextToken :: Lens.Lens' ListScenes (Prelude.Maybe Prelude.Text)+listScenes_nextToken = Lens.lens (\ListScenes' {nextToken} -> nextToken) (\s@ListScenes' {} a -> s {nextToken = a} :: ListScenes)++-- | The ID of the workspace that contains the scenes.+listScenes_workspaceId :: Lens.Lens' ListScenes Prelude.Text+listScenes_workspaceId = Lens.lens (\ListScenes' {workspaceId} -> workspaceId) (\s@ListScenes' {} a -> s {workspaceId = a} :: ListScenes)++instance Core.AWSRequest ListScenes where+ type AWSResponse ListScenes = ListScenesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListScenesResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> (x Data..?> "sceneSummaries" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListScenes where+ hashWithSalt _salt ListScenes' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` workspaceId++instance Prelude.NFData ListScenes where+ rnf ListScenes' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf workspaceId++instance Data.ToHeaders ListScenes where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListScenes where+ toJSON ListScenes' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListScenes where+ toPath ListScenes' {..} =+ Prelude.mconcat+ [ "/workspaces/",+ Data.toBS workspaceId,+ "/scenes-list"+ ]++instance Data.ToQuery ListScenes where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListScenesResponse' smart constructor.+data ListScenesResponse = ListScenesResponse'+ { -- | The string that specifies the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | A list of objects that contain information about the scenes.+ sceneSummaries :: Prelude.Maybe [SceneSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListScenesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listScenesResponse_nextToken' - The string that specifies the next page of results.+--+-- 'sceneSummaries', 'listScenesResponse_sceneSummaries' - A list of objects that contain information about the scenes.+--+-- 'httpStatus', 'listScenesResponse_httpStatus' - The response's http status code.+newListScenesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListScenesResponse+newListScenesResponse pHttpStatus_ =+ ListScenesResponse'+ { nextToken = Prelude.Nothing,+ sceneSummaries = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The string that specifies the next page of results.+listScenesResponse_nextToken :: Lens.Lens' ListScenesResponse (Prelude.Maybe Prelude.Text)+listScenesResponse_nextToken = Lens.lens (\ListScenesResponse' {nextToken} -> nextToken) (\s@ListScenesResponse' {} a -> s {nextToken = a} :: ListScenesResponse)++-- | A list of objects that contain information about the scenes.+listScenesResponse_sceneSummaries :: Lens.Lens' ListScenesResponse (Prelude.Maybe [SceneSummary])+listScenesResponse_sceneSummaries = Lens.lens (\ListScenesResponse' {sceneSummaries} -> sceneSummaries) (\s@ListScenesResponse' {} a -> s {sceneSummaries = a} :: ListScenesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listScenesResponse_httpStatus :: Lens.Lens' ListScenesResponse Prelude.Int+listScenesResponse_httpStatus = Lens.lens (\ListScenesResponse' {httpStatus} -> httpStatus) (\s@ListScenesResponse' {} a -> s {httpStatus = a} :: ListScenesResponse)++instance Prelude.NFData ListScenesResponse where+ rnf ListScenesResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf sceneSummaries+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IotTwinMaker/ListSyncJobs.hs view
@@ -0,0 +1,217 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.ListSyncJobs+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List all SyncJobs.+module Amazonka.IotTwinMaker.ListSyncJobs+ ( -- * Creating a Request+ ListSyncJobs (..),+ newListSyncJobs,++ -- * Request Lenses+ listSyncJobs_maxResults,+ listSyncJobs_nextToken,+ listSyncJobs_workspaceId,++ -- * Destructuring the Response+ ListSyncJobsResponse (..),+ newListSyncJobsResponse,++ -- * Response Lenses+ listSyncJobsResponse_nextToken,+ listSyncJobsResponse_syncJobSummaries,+ listSyncJobsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListSyncJobs' smart constructor.+data ListSyncJobs = ListSyncJobs'+ { -- | The maximum number of results to return at one time. The default is 50.+ --+ -- Valid Range: Minimum value of 0. Maximum value of 200.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The string that specifies the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The ID of the workspace that contains the sync job.+ workspaceId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSyncJobs' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listSyncJobs_maxResults' - The maximum number of results to return at one time. The default is 50.+--+-- Valid Range: Minimum value of 0. Maximum value of 200.+--+-- 'nextToken', 'listSyncJobs_nextToken' - The string that specifies the next page of results.+--+-- 'workspaceId', 'listSyncJobs_workspaceId' - The ID of the workspace that contains the sync job.+newListSyncJobs ::+ -- | 'workspaceId'+ Prelude.Text ->+ ListSyncJobs+newListSyncJobs pWorkspaceId_ =+ ListSyncJobs'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ workspaceId = pWorkspaceId_+ }++-- | The maximum number of results to return at one time. The default is 50.+--+-- Valid Range: Minimum value of 0. Maximum value of 200.+listSyncJobs_maxResults :: Lens.Lens' ListSyncJobs (Prelude.Maybe Prelude.Natural)+listSyncJobs_maxResults = Lens.lens (\ListSyncJobs' {maxResults} -> maxResults) (\s@ListSyncJobs' {} a -> s {maxResults = a} :: ListSyncJobs)++-- | The string that specifies the next page of results.+listSyncJobs_nextToken :: Lens.Lens' ListSyncJobs (Prelude.Maybe Prelude.Text)+listSyncJobs_nextToken = Lens.lens (\ListSyncJobs' {nextToken} -> nextToken) (\s@ListSyncJobs' {} a -> s {nextToken = a} :: ListSyncJobs)++-- | The ID of the workspace that contains the sync job.+listSyncJobs_workspaceId :: Lens.Lens' ListSyncJobs Prelude.Text+listSyncJobs_workspaceId = Lens.lens (\ListSyncJobs' {workspaceId} -> workspaceId) (\s@ListSyncJobs' {} a -> s {workspaceId = a} :: ListSyncJobs)++instance Core.AWSRequest ListSyncJobs where+ type AWSResponse ListSyncJobs = ListSyncJobsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListSyncJobsResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> ( x+ Data..?> "syncJobSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListSyncJobs where+ hashWithSalt _salt ListSyncJobs' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` workspaceId++instance Prelude.NFData ListSyncJobs where+ rnf ListSyncJobs' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf workspaceId++instance Data.ToHeaders ListSyncJobs where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListSyncJobs where+ toJSON ListSyncJobs' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListSyncJobs where+ toPath ListSyncJobs' {..} =+ Prelude.mconcat+ [ "/workspaces/",+ Data.toBS workspaceId,+ "/sync-jobs-list"+ ]++instance Data.ToQuery ListSyncJobs where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListSyncJobsResponse' smart constructor.+data ListSyncJobsResponse = ListSyncJobsResponse'+ { -- | The string that specifies the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The listed SyncJob summaries.+ syncJobSummaries :: Prelude.Maybe [SyncJobSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSyncJobsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listSyncJobsResponse_nextToken' - The string that specifies the next page of results.+--+-- 'syncJobSummaries', 'listSyncJobsResponse_syncJobSummaries' - The listed SyncJob summaries.+--+-- 'httpStatus', 'listSyncJobsResponse_httpStatus' - The response's http status code.+newListSyncJobsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListSyncJobsResponse+newListSyncJobsResponse pHttpStatus_ =+ ListSyncJobsResponse'+ { nextToken = Prelude.Nothing,+ syncJobSummaries = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The string that specifies the next page of results.+listSyncJobsResponse_nextToken :: Lens.Lens' ListSyncJobsResponse (Prelude.Maybe Prelude.Text)+listSyncJobsResponse_nextToken = Lens.lens (\ListSyncJobsResponse' {nextToken} -> nextToken) (\s@ListSyncJobsResponse' {} a -> s {nextToken = a} :: ListSyncJobsResponse)++-- | The listed SyncJob summaries.+listSyncJobsResponse_syncJobSummaries :: Lens.Lens' ListSyncJobsResponse (Prelude.Maybe [SyncJobSummary])+listSyncJobsResponse_syncJobSummaries = Lens.lens (\ListSyncJobsResponse' {syncJobSummaries} -> syncJobSummaries) (\s@ListSyncJobsResponse' {} a -> s {syncJobSummaries = a} :: ListSyncJobsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listSyncJobsResponse_httpStatus :: Lens.Lens' ListSyncJobsResponse Prelude.Int+listSyncJobsResponse_httpStatus = Lens.lens (\ListSyncJobsResponse' {httpStatus} -> httpStatus) (\s@ListSyncJobsResponse' {} a -> s {httpStatus = a} :: ListSyncJobsResponse)++instance Prelude.NFData ListSyncJobsResponse where+ rnf ListSyncJobsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf syncJobSummaries+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IotTwinMaker/ListSyncResources.hs view
@@ -0,0 +1,252 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.ListSyncResources+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the sync resources.+module Amazonka.IotTwinMaker.ListSyncResources+ ( -- * Creating a Request+ ListSyncResources (..),+ newListSyncResources,++ -- * Request Lenses+ listSyncResources_filters,+ listSyncResources_maxResults,+ listSyncResources_nextToken,+ listSyncResources_workspaceId,+ listSyncResources_syncSource,++ -- * Destructuring the Response+ ListSyncResourcesResponse (..),+ newListSyncResourcesResponse,++ -- * Response Lenses+ listSyncResourcesResponse_nextToken,+ listSyncResourcesResponse_syncResources,+ listSyncResourcesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListSyncResources' smart constructor.+data ListSyncResources = ListSyncResources'+ { -- | A list of objects that filter the request.+ filters :: Prelude.Maybe [SyncResourceFilter],+ -- | The maximum number of results to return at one time. The default is 50.+ --+ -- Valid Range: Minimum value of 0. Maximum value of 200.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The string that specifies the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The ID of the workspace that contains the sync job.+ workspaceId :: Prelude.Text,+ -- | The sync soucre.+ --+ -- Currently the only supported syncSoucre is @SITEWISE @.+ syncSource :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSyncResources' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filters', 'listSyncResources_filters' - A list of objects that filter the request.+--+-- 'maxResults', 'listSyncResources_maxResults' - The maximum number of results to return at one time. The default is 50.+--+-- Valid Range: Minimum value of 0. Maximum value of 200.+--+-- 'nextToken', 'listSyncResources_nextToken' - The string that specifies the next page of results.+--+-- 'workspaceId', 'listSyncResources_workspaceId' - The ID of the workspace that contains the sync job.+--+-- 'syncSource', 'listSyncResources_syncSource' - The sync soucre.+--+-- Currently the only supported syncSoucre is @SITEWISE @.+newListSyncResources ::+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'syncSource'+ Prelude.Text ->+ ListSyncResources+newListSyncResources pWorkspaceId_ pSyncSource_ =+ ListSyncResources'+ { filters = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ workspaceId = pWorkspaceId_,+ syncSource = pSyncSource_+ }++-- | A list of objects that filter the request.+listSyncResources_filters :: Lens.Lens' ListSyncResources (Prelude.Maybe [SyncResourceFilter])+listSyncResources_filters = Lens.lens (\ListSyncResources' {filters} -> filters) (\s@ListSyncResources' {} a -> s {filters = a} :: ListSyncResources) Prelude.. Lens.mapping Lens.coerced++-- | The maximum number of results to return at one time. The default is 50.+--+-- Valid Range: Minimum value of 0. Maximum value of 200.+listSyncResources_maxResults :: Lens.Lens' ListSyncResources (Prelude.Maybe Prelude.Natural)+listSyncResources_maxResults = Lens.lens (\ListSyncResources' {maxResults} -> maxResults) (\s@ListSyncResources' {} a -> s {maxResults = a} :: ListSyncResources)++-- | The string that specifies the next page of results.+listSyncResources_nextToken :: Lens.Lens' ListSyncResources (Prelude.Maybe Prelude.Text)+listSyncResources_nextToken = Lens.lens (\ListSyncResources' {nextToken} -> nextToken) (\s@ListSyncResources' {} a -> s {nextToken = a} :: ListSyncResources)++-- | The ID of the workspace that contains the sync job.+listSyncResources_workspaceId :: Lens.Lens' ListSyncResources Prelude.Text+listSyncResources_workspaceId = Lens.lens (\ListSyncResources' {workspaceId} -> workspaceId) (\s@ListSyncResources' {} a -> s {workspaceId = a} :: ListSyncResources)++-- | The sync soucre.+--+-- Currently the only supported syncSoucre is @SITEWISE @.+listSyncResources_syncSource :: Lens.Lens' ListSyncResources Prelude.Text+listSyncResources_syncSource = Lens.lens (\ListSyncResources' {syncSource} -> syncSource) (\s@ListSyncResources' {} a -> s {syncSource = a} :: ListSyncResources)++instance Core.AWSRequest ListSyncResources where+ type+ AWSResponse ListSyncResources =+ ListSyncResourcesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListSyncResourcesResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> (x Data..?> "syncResources" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListSyncResources where+ hashWithSalt _salt ListSyncResources' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` workspaceId+ `Prelude.hashWithSalt` syncSource++instance Prelude.NFData ListSyncResources where+ rnf ListSyncResources' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf syncSource++instance Data.ToHeaders ListSyncResources where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListSyncResources where+ toJSON ListSyncResources' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("filters" Data..=) Prelude.<$> filters,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListSyncResources where+ toPath ListSyncResources' {..} =+ Prelude.mconcat+ [ "/workspaces/",+ Data.toBS workspaceId,+ "/sync-jobs/",+ Data.toBS syncSource,+ "/resources-list"+ ]++instance Data.ToQuery ListSyncResources where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListSyncResourcesResponse' smart constructor.+data ListSyncResourcesResponse = ListSyncResourcesResponse'+ { -- | The string that specifies the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The sync resources.+ syncResources :: Prelude.Maybe [SyncResourceSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSyncResourcesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listSyncResourcesResponse_nextToken' - The string that specifies the next page of results.+--+-- 'syncResources', 'listSyncResourcesResponse_syncResources' - The sync resources.+--+-- 'httpStatus', 'listSyncResourcesResponse_httpStatus' - The response's http status code.+newListSyncResourcesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListSyncResourcesResponse+newListSyncResourcesResponse pHttpStatus_ =+ ListSyncResourcesResponse'+ { nextToken =+ Prelude.Nothing,+ syncResources = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The string that specifies the next page of results.+listSyncResourcesResponse_nextToken :: Lens.Lens' ListSyncResourcesResponse (Prelude.Maybe Prelude.Text)+listSyncResourcesResponse_nextToken = Lens.lens (\ListSyncResourcesResponse' {nextToken} -> nextToken) (\s@ListSyncResourcesResponse' {} a -> s {nextToken = a} :: ListSyncResourcesResponse)++-- | The sync resources.+listSyncResourcesResponse_syncResources :: Lens.Lens' ListSyncResourcesResponse (Prelude.Maybe [SyncResourceSummary])+listSyncResourcesResponse_syncResources = Lens.lens (\ListSyncResourcesResponse' {syncResources} -> syncResources) (\s@ListSyncResourcesResponse' {} a -> s {syncResources = a} :: ListSyncResourcesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listSyncResourcesResponse_httpStatus :: Lens.Lens' ListSyncResourcesResponse Prelude.Int+listSyncResourcesResponse_httpStatus = Lens.lens (\ListSyncResourcesResponse' {httpStatus} -> httpStatus) (\s@ListSyncResourcesResponse' {} a -> s {httpStatus = a} :: ListSyncResourcesResponse)++instance Prelude.NFData ListSyncResourcesResponse where+ rnf ListSyncResourcesResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf syncResources+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IotTwinMaker/ListTagsForResource.hs view
@@ -0,0 +1,213 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.ListTagsForResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists all tags associated with a resource.+module Amazonka.IotTwinMaker.ListTagsForResource+ ( -- * Creating a Request+ ListTagsForResource (..),+ newListTagsForResource,++ -- * Request Lenses+ listTagsForResource_maxResults,+ listTagsForResource_nextToken,+ listTagsForResource_resourceARN,++ -- * Destructuring the Response+ ListTagsForResourceResponse (..),+ newListTagsForResourceResponse,++ -- * Response Lenses+ listTagsForResourceResponse_nextToken,+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListTagsForResource' smart constructor.+data ListTagsForResource = ListTagsForResource'+ { -- | The maximum number of results to return at one time. The default is 25.+ --+ -- Valid Range: Minimum value of 1. Maximum value of 250.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The string that specifies the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the resource.+ resourceARN :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTagsForResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listTagsForResource_maxResults' - The maximum number of results to return at one time. The default is 25.+--+-- Valid Range: Minimum value of 1. Maximum value of 250.+--+-- 'nextToken', 'listTagsForResource_nextToken' - The string that specifies the next page of results.+--+-- 'resourceARN', 'listTagsForResource_resourceARN' - The ARN of the resource.+newListTagsForResource ::+ -- | 'resourceARN'+ Prelude.Text ->+ ListTagsForResource+newListTagsForResource pResourceARN_ =+ ListTagsForResource'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ resourceARN = pResourceARN_+ }++-- | The maximum number of results to return at one time. The default is 25.+--+-- Valid Range: Minimum value of 1. Maximum value of 250.+listTagsForResource_maxResults :: Lens.Lens' ListTagsForResource (Prelude.Maybe Prelude.Natural)+listTagsForResource_maxResults = Lens.lens (\ListTagsForResource' {maxResults} -> maxResults) (\s@ListTagsForResource' {} a -> s {maxResults = a} :: ListTagsForResource)++-- | The string that specifies the next page of results.+listTagsForResource_nextToken :: Lens.Lens' ListTagsForResource (Prelude.Maybe Prelude.Text)+listTagsForResource_nextToken = Lens.lens (\ListTagsForResource' {nextToken} -> nextToken) (\s@ListTagsForResource' {} a -> s {nextToken = a} :: ListTagsForResource)++-- | The ARN of the resource.+listTagsForResource_resourceARN :: Lens.Lens' ListTagsForResource Prelude.Text+listTagsForResource_resourceARN = Lens.lens (\ListTagsForResource' {resourceARN} -> resourceARN) (\s@ListTagsForResource' {} a -> s {resourceARN = a} :: ListTagsForResource)++instance Core.AWSRequest ListTagsForResource where+ type+ AWSResponse ListTagsForResource =+ ListTagsForResourceResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListTagsForResourceResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListTagsForResource where+ hashWithSalt _salt ListTagsForResource' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` resourceARN++instance Prelude.NFData ListTagsForResource where+ rnf ListTagsForResource' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf resourceARN++instance Data.ToHeaders ListTagsForResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListTagsForResource where+ toJSON ListTagsForResource' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken,+ Prelude.Just ("resourceARN" Data..= resourceARN)+ ]+ )++instance Data.ToPath ListTagsForResource where+ toPath = Prelude.const "/tags-list"++instance Data.ToQuery ListTagsForResource where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListTagsForResourceResponse' smart constructor.+data ListTagsForResourceResponse = ListTagsForResourceResponse'+ { -- | The string that specifies the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Metadata that you can use to manage a resource.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTagsForResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listTagsForResourceResponse_nextToken' - The string that specifies the next page of results.+--+-- 'tags', 'listTagsForResourceResponse_tags' - Metadata that you can use to manage a resource.+--+-- 'httpStatus', 'listTagsForResourceResponse_httpStatus' - The response's http status code.+newListTagsForResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListTagsForResourceResponse+newListTagsForResourceResponse pHttpStatus_ =+ ListTagsForResourceResponse'+ { nextToken =+ Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The string that specifies the next page of results.+listTagsForResourceResponse_nextToken :: Lens.Lens' ListTagsForResourceResponse (Prelude.Maybe Prelude.Text)+listTagsForResourceResponse_nextToken = Lens.lens (\ListTagsForResourceResponse' {nextToken} -> nextToken) (\s@ListTagsForResourceResponse' {} a -> s {nextToken = a} :: ListTagsForResourceResponse)++-- | Metadata that you can use to manage a resource.+listTagsForResourceResponse_tags :: Lens.Lens' ListTagsForResourceResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+listTagsForResourceResponse_tags = Lens.lens (\ListTagsForResourceResponse' {tags} -> tags) (\s@ListTagsForResourceResponse' {} a -> s {tags = a} :: ListTagsForResourceResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listTagsForResourceResponse_httpStatus :: Lens.Lens' ListTagsForResourceResponse Prelude.Int+listTagsForResourceResponse_httpStatus = Lens.lens (\ListTagsForResourceResponse' {httpStatus} -> httpStatus) (\s@ListTagsForResourceResponse' {} a -> s {httpStatus = a} :: ListTagsForResourceResponse)++instance Prelude.NFData ListTagsForResourceResponse where+ rnf ListTagsForResourceResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IotTwinMaker/ListWorkspaces.hs view
@@ -0,0 +1,201 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.ListWorkspaces+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves information about workspaces in the current account.+module Amazonka.IotTwinMaker.ListWorkspaces+ ( -- * Creating a Request+ ListWorkspaces (..),+ newListWorkspaces,++ -- * Request Lenses+ listWorkspaces_maxResults,+ listWorkspaces_nextToken,++ -- * Destructuring the Response+ ListWorkspacesResponse (..),+ newListWorkspacesResponse,++ -- * Response Lenses+ listWorkspacesResponse_nextToken,+ listWorkspacesResponse_workspaceSummaries,+ listWorkspacesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListWorkspaces' smart constructor.+data ListWorkspaces = ListWorkspaces'+ { -- | The maximum number of results to return at one time. The default is 25.+ --+ -- Valid Range: Minimum value of 1. Maximum value of 250.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The string that specifies the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListWorkspaces' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listWorkspaces_maxResults' - The maximum number of results to return at one time. The default is 25.+--+-- Valid Range: Minimum value of 1. Maximum value of 250.+--+-- 'nextToken', 'listWorkspaces_nextToken' - The string that specifies the next page of results.+newListWorkspaces ::+ ListWorkspaces+newListWorkspaces =+ ListWorkspaces'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | The maximum number of results to return at one time. The default is 25.+--+-- Valid Range: Minimum value of 1. Maximum value of 250.+listWorkspaces_maxResults :: Lens.Lens' ListWorkspaces (Prelude.Maybe Prelude.Natural)+listWorkspaces_maxResults = Lens.lens (\ListWorkspaces' {maxResults} -> maxResults) (\s@ListWorkspaces' {} a -> s {maxResults = a} :: ListWorkspaces)++-- | The string that specifies the next page of results.+listWorkspaces_nextToken :: Lens.Lens' ListWorkspaces (Prelude.Maybe Prelude.Text)+listWorkspaces_nextToken = Lens.lens (\ListWorkspaces' {nextToken} -> nextToken) (\s@ListWorkspaces' {} a -> s {nextToken = a} :: ListWorkspaces)++instance Core.AWSRequest ListWorkspaces where+ type+ AWSResponse ListWorkspaces =+ ListWorkspacesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListWorkspacesResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> ( x+ Data..?> "workspaceSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListWorkspaces where+ hashWithSalt _salt ListWorkspaces' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListWorkspaces where+ rnf ListWorkspaces' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListWorkspaces where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListWorkspaces where+ toJSON ListWorkspaces' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListWorkspaces where+ toPath = Prelude.const "/workspaces-list"++instance Data.ToQuery ListWorkspaces where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListWorkspacesResponse' smart constructor.+data ListWorkspacesResponse = ListWorkspacesResponse'+ { -- | The string that specifies the next page of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | A list of objects that contain information about the workspaces.+ workspaceSummaries :: Prelude.Maybe [WorkspaceSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListWorkspacesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listWorkspacesResponse_nextToken' - The string that specifies the next page of results.+--+-- 'workspaceSummaries', 'listWorkspacesResponse_workspaceSummaries' - A list of objects that contain information about the workspaces.+--+-- 'httpStatus', 'listWorkspacesResponse_httpStatus' - The response's http status code.+newListWorkspacesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListWorkspacesResponse+newListWorkspacesResponse pHttpStatus_ =+ ListWorkspacesResponse'+ { nextToken =+ Prelude.Nothing,+ workspaceSummaries = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The string that specifies the next page of results.+listWorkspacesResponse_nextToken :: Lens.Lens' ListWorkspacesResponse (Prelude.Maybe Prelude.Text)+listWorkspacesResponse_nextToken = Lens.lens (\ListWorkspacesResponse' {nextToken} -> nextToken) (\s@ListWorkspacesResponse' {} a -> s {nextToken = a} :: ListWorkspacesResponse)++-- | A list of objects that contain information about the workspaces.+listWorkspacesResponse_workspaceSummaries :: Lens.Lens' ListWorkspacesResponse (Prelude.Maybe [WorkspaceSummary])+listWorkspacesResponse_workspaceSummaries = Lens.lens (\ListWorkspacesResponse' {workspaceSummaries} -> workspaceSummaries) (\s@ListWorkspacesResponse' {} a -> s {workspaceSummaries = a} :: ListWorkspacesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listWorkspacesResponse_httpStatus :: Lens.Lens' ListWorkspacesResponse Prelude.Int+listWorkspacesResponse_httpStatus = Lens.lens (\ListWorkspacesResponse' {httpStatus} -> httpStatus) (\s@ListWorkspacesResponse' {} a -> s {httpStatus = a} :: ListWorkspacesResponse)++instance Prelude.NFData ListWorkspacesResponse where+ rnf ListWorkspacesResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf workspaceSummaries+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IotTwinMaker/TagResource.hs view
@@ -0,0 +1,164 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.TagResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds tags to a resource.+module Amazonka.IotTwinMaker.TagResource+ ( -- * Creating a Request+ TagResource (..),+ newTagResource,++ -- * Request Lenses+ tagResource_resourceARN,+ tagResource_tags,++ -- * Destructuring the Response+ TagResourceResponse (..),+ newTagResourceResponse,++ -- * Response Lenses+ tagResourceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newTagResource' smart constructor.+data TagResource = TagResource'+ { -- | The ARN of the resource.+ resourceARN :: Prelude.Text,+ -- | Metadata to add to this resource.+ tags :: Prelude.HashMap Prelude.Text Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceARN', 'tagResource_resourceARN' - The ARN of the resource.+--+-- 'tags', 'tagResource_tags' - Metadata to add to this resource.+newTagResource ::+ -- | 'resourceARN'+ Prelude.Text ->+ TagResource+newTagResource pResourceARN_ =+ TagResource'+ { resourceARN = pResourceARN_,+ tags = Prelude.mempty+ }++-- | The ARN of the resource.+tagResource_resourceARN :: Lens.Lens' TagResource Prelude.Text+tagResource_resourceARN = Lens.lens (\TagResource' {resourceARN} -> resourceARN) (\s@TagResource' {} a -> s {resourceARN = a} :: TagResource)++-- | Metadata to add to this resource.+tagResource_tags :: Lens.Lens' TagResource (Prelude.HashMap Prelude.Text Prelude.Text)+tagResource_tags = Lens.lens (\TagResource' {tags} -> tags) (\s@TagResource' {} a -> s {tags = a} :: TagResource) Prelude.. Lens.coerced++instance Core.AWSRequest TagResource where+ type AWSResponse TagResource = TagResourceResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ TagResourceResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable TagResource where+ hashWithSalt _salt TagResource' {..} =+ _salt+ `Prelude.hashWithSalt` resourceARN+ `Prelude.hashWithSalt` tags++instance Prelude.NFData TagResource where+ rnf TagResource' {..} =+ Prelude.rnf resourceARN+ `Prelude.seq` Prelude.rnf tags++instance Data.ToHeaders TagResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON TagResource where+ toJSON TagResource' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("resourceARN" Data..= resourceARN),+ Prelude.Just ("tags" Data..= tags)+ ]+ )++instance Data.ToPath TagResource where+ toPath = Prelude.const "/tags"++instance Data.ToQuery TagResource where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newTagResourceResponse' smart constructor.+data TagResourceResponse = TagResourceResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'tagResourceResponse_httpStatus' - The response's http status code.+newTagResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ TagResourceResponse+newTagResourceResponse pHttpStatus_ =+ TagResourceResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+tagResourceResponse_httpStatus :: Lens.Lens' TagResourceResponse Prelude.Int+tagResourceResponse_httpStatus = Lens.lens (\TagResourceResponse' {httpStatus} -> httpStatus) (\s@TagResourceResponse' {} a -> s {httpStatus = a} :: TagResourceResponse)++instance Prelude.NFData TagResourceResponse where+ rnf TagResourceResponse' {..} = Prelude.rnf httpStatus
+ gen/Amazonka/IotTwinMaker/Types.hs view
@@ -0,0 +1,692 @@+{-# LANGUAGE DisambiguateRecordFields #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ _AccessDeniedException,+ _ConflictException,+ _ConnectorFailureException,+ _ConnectorTimeoutException,+ _InternalServerException,+ _QueryTimeoutException,+ _ResourceNotFoundException,+ _ServiceQuotaExceededException,+ _ThrottlingException,+ _TooManyTagsException,+ _ValidationException,++ -- * ColumnType+ ColumnType (..),++ -- * ComponentUpdateType+ ComponentUpdateType (..),++ -- * ErrorCode+ ErrorCode (..),++ -- * GroupType+ GroupType (..),++ -- * InterpolationType+ InterpolationType (..),++ -- * Order+ Order (..),++ -- * OrderByTime+ OrderByTime (..),++ -- * ParentEntityUpdateType+ ParentEntityUpdateType (..),++ -- * PricingMode+ PricingMode (..),++ -- * PricingTier+ PricingTier (..),++ -- * PropertyGroupUpdateType+ PropertyGroupUpdateType (..),++ -- * PropertyUpdateType+ PropertyUpdateType (..),++ -- * Scope+ Scope (..),++ -- * State+ State (..),++ -- * SyncJobState+ SyncJobState (..),++ -- * SyncResourceState+ SyncResourceState (..),++ -- * SyncResourceType+ SyncResourceType (..),++ -- * Type+ Type (..),++ -- * UpdateReason+ UpdateReason (..),++ -- * BatchPutPropertyError+ BatchPutPropertyError (..),+ newBatchPutPropertyError,+ batchPutPropertyError_errorCode,+ batchPutPropertyError_errorMessage,+ batchPutPropertyError_entry,++ -- * BatchPutPropertyErrorEntry+ BatchPutPropertyErrorEntry (..),+ newBatchPutPropertyErrorEntry,+ batchPutPropertyErrorEntry_errors,++ -- * BundleInformation+ BundleInformation (..),+ newBundleInformation,+ bundleInformation_pricingTier,+ bundleInformation_bundleNames,++ -- * ColumnDescription+ ColumnDescription (..),+ newColumnDescription,+ columnDescription_name,+ columnDescription_type,++ -- * ComponentPropertyGroupRequest+ ComponentPropertyGroupRequest (..),+ newComponentPropertyGroupRequest,+ componentPropertyGroupRequest_groupType,+ componentPropertyGroupRequest_propertyNames,+ componentPropertyGroupRequest_updateType,++ -- * ComponentPropertyGroupResponse+ ComponentPropertyGroupResponse (..),+ newComponentPropertyGroupResponse,+ componentPropertyGroupResponse_groupType,+ componentPropertyGroupResponse_propertyNames,+ componentPropertyGroupResponse_isInherited,++ -- * ComponentRequest+ ComponentRequest (..),+ newComponentRequest,+ componentRequest_componentTypeId,+ componentRequest_description,+ componentRequest_properties,+ componentRequest_propertyGroups,++ -- * ComponentResponse+ ComponentResponse (..),+ newComponentResponse,+ componentResponse_componentName,+ componentResponse_componentTypeId,+ componentResponse_definedIn,+ componentResponse_description,+ componentResponse_properties,+ componentResponse_propertyGroups,+ componentResponse_status,+ componentResponse_syncSource,++ -- * ComponentTypeSummary+ ComponentTypeSummary (..),+ newComponentTypeSummary,+ componentTypeSummary_componentTypeName,+ componentTypeSummary_description,+ componentTypeSummary_status,+ componentTypeSummary_arn,+ componentTypeSummary_componentTypeId,+ componentTypeSummary_creationDateTime,+ componentTypeSummary_updateDateTime,++ -- * ComponentUpdateRequest+ ComponentUpdateRequest (..),+ newComponentUpdateRequest,+ componentUpdateRequest_componentTypeId,+ componentUpdateRequest_description,+ componentUpdateRequest_propertyGroupUpdates,+ componentUpdateRequest_propertyUpdates,+ componentUpdateRequest_updateType,++ -- * DataConnector+ DataConnector (..),+ newDataConnector,+ dataConnector_isNative,+ dataConnector_lambda,++ -- * DataType+ DataType (..),+ newDataType,+ dataType_allowedValues,+ dataType_nestedType,+ dataType_relationship,+ dataType_unitOfMeasure,+ dataType_type,++ -- * DataValue+ DataValue (..),+ newDataValue,+ dataValue_booleanValue,+ dataValue_doubleValue,+ dataValue_expression,+ dataValue_integerValue,+ dataValue_listValue,+ dataValue_longValue,+ dataValue_mapValue,+ dataValue_relationshipValue,+ dataValue_stringValue,++ -- * EntityPropertyReference+ EntityPropertyReference (..),+ newEntityPropertyReference,+ entityPropertyReference_componentName,+ entityPropertyReference_entityId,+ entityPropertyReference_externalIdProperty,+ entityPropertyReference_propertyName,++ -- * EntitySummary+ EntitySummary (..),+ newEntitySummary,+ entitySummary_description,+ entitySummary_hasChildEntities,+ entitySummary_parentEntityId,+ entitySummary_entityId,+ entitySummary_entityName,+ entitySummary_arn,+ entitySummary_status,+ entitySummary_creationDateTime,+ entitySummary_updateDateTime,++ -- * ErrorDetails+ ErrorDetails (..),+ newErrorDetails,+ errorDetails_code,+ errorDetails_message,++ -- * FunctionRequest+ FunctionRequest (..),+ newFunctionRequest,+ functionRequest_implementedBy,+ functionRequest_requiredProperties,+ functionRequest_scope,++ -- * FunctionResponse+ FunctionResponse (..),+ newFunctionResponse,+ functionResponse_implementedBy,+ functionResponse_isInherited,+ functionResponse_requiredProperties,+ functionResponse_scope,++ -- * InterpolationParameters+ InterpolationParameters (..),+ newInterpolationParameters,+ interpolationParameters_interpolationType,+ interpolationParameters_intervalInSeconds,++ -- * LambdaFunction+ LambdaFunction (..),+ newLambdaFunction,+ lambdaFunction_arn,++ -- * ListComponentTypesFilter+ ListComponentTypesFilter (..),+ newListComponentTypesFilter,+ listComponentTypesFilter_extendsFrom,+ listComponentTypesFilter_isAbstract,+ listComponentTypesFilter_namespace,++ -- * ListEntitiesFilter+ ListEntitiesFilter (..),+ newListEntitiesFilter,+ listEntitiesFilter_componentTypeId,+ listEntitiesFilter_externalId,+ listEntitiesFilter_parentEntityId,++ -- * OrderBy+ OrderBy (..),+ newOrderBy,+ orderBy_order,+ orderBy_propertyName,++ -- * ParentEntityUpdateRequest+ ParentEntityUpdateRequest (..),+ newParentEntityUpdateRequest,+ parentEntityUpdateRequest_parentEntityId,+ parentEntityUpdateRequest_updateType,++ -- * PricingPlan+ PricingPlan (..),+ newPricingPlan,+ pricingPlan_billableEntityCount,+ pricingPlan_bundleInformation,+ pricingPlan_effectiveDateTime,+ pricingPlan_pricingMode,+ pricingPlan_updateDateTime,+ pricingPlan_updateReason,++ -- * PropertyDefinitionRequest+ PropertyDefinitionRequest (..),+ newPropertyDefinitionRequest,+ propertyDefinitionRequest_configuration,+ propertyDefinitionRequest_dataType,+ propertyDefinitionRequest_defaultValue,+ propertyDefinitionRequest_displayName,+ propertyDefinitionRequest_isExternalId,+ propertyDefinitionRequest_isRequiredInEntity,+ propertyDefinitionRequest_isStoredExternally,+ propertyDefinitionRequest_isTimeSeries,++ -- * PropertyDefinitionResponse+ PropertyDefinitionResponse (..),+ newPropertyDefinitionResponse,+ propertyDefinitionResponse_configuration,+ propertyDefinitionResponse_defaultValue,+ propertyDefinitionResponse_displayName,+ propertyDefinitionResponse_dataType,+ propertyDefinitionResponse_isTimeSeries,+ propertyDefinitionResponse_isRequiredInEntity,+ propertyDefinitionResponse_isExternalId,+ propertyDefinitionResponse_isStoredExternally,+ propertyDefinitionResponse_isImported,+ propertyDefinitionResponse_isFinal,+ propertyDefinitionResponse_isInherited,++ -- * PropertyFilter+ PropertyFilter (..),+ newPropertyFilter,+ propertyFilter_operator,+ propertyFilter_propertyName,+ propertyFilter_value,++ -- * PropertyGroupRequest+ PropertyGroupRequest (..),+ newPropertyGroupRequest,+ propertyGroupRequest_groupType,+ propertyGroupRequest_propertyNames,++ -- * PropertyGroupResponse+ PropertyGroupResponse (..),+ newPropertyGroupResponse,+ propertyGroupResponse_groupType,+ propertyGroupResponse_propertyNames,+ propertyGroupResponse_isInherited,++ -- * PropertyLatestValue+ PropertyLatestValue (..),+ newPropertyLatestValue,+ propertyLatestValue_propertyValue,+ propertyLatestValue_propertyReference,++ -- * PropertyRequest+ PropertyRequest (..),+ newPropertyRequest,+ propertyRequest_definition,+ propertyRequest_updateType,+ propertyRequest_value,++ -- * PropertyResponse+ PropertyResponse (..),+ newPropertyResponse,+ propertyResponse_definition,+ propertyResponse_value,++ -- * PropertyValue+ PropertyValue (..),+ newPropertyValue,+ propertyValue_time,+ propertyValue_timestamp,+ propertyValue_value,++ -- * PropertyValueEntry+ PropertyValueEntry (..),+ newPropertyValueEntry,+ propertyValueEntry_propertyValues,+ propertyValueEntry_entityPropertyReference,++ -- * PropertyValueHistory+ PropertyValueHistory (..),+ newPropertyValueHistory,+ propertyValueHistory_values,+ propertyValueHistory_entityPropertyReference,++ -- * QueryResultValue+ QueryResultValue (..),+ newQueryResultValue,++ -- * Relationship+ Relationship (..),+ newRelationship,+ relationship_relationshipType,+ relationship_targetComponentTypeId,++ -- * RelationshipValue+ RelationshipValue (..),+ newRelationshipValue,+ relationshipValue_targetComponentName,+ relationshipValue_targetEntityId,++ -- * Row+ Row (..),+ newRow,+ row_rowData,++ -- * SceneSummary+ SceneSummary (..),+ newSceneSummary,+ sceneSummary_description,+ sceneSummary_sceneId,+ sceneSummary_contentLocation,+ sceneSummary_arn,+ sceneSummary_creationDateTime,+ sceneSummary_updateDateTime,++ -- * Status+ Status (..),+ newStatus,+ status_error,+ status_state,++ -- * SyncJobStatus+ SyncJobStatus (..),+ newSyncJobStatus,+ syncJobStatus_error,+ syncJobStatus_state,++ -- * SyncJobSummary+ SyncJobSummary (..),+ newSyncJobSummary,+ syncJobSummary_arn,+ syncJobSummary_creationDateTime,+ syncJobSummary_status,+ syncJobSummary_syncSource,+ syncJobSummary_updateDateTime,+ syncJobSummary_workspaceId,++ -- * SyncResourceFilter+ SyncResourceFilter (..),+ newSyncResourceFilter,+ syncResourceFilter_externalId,+ syncResourceFilter_resourceId,+ syncResourceFilter_resourceType,+ syncResourceFilter_state,++ -- * SyncResourceStatus+ SyncResourceStatus (..),+ newSyncResourceStatus,+ syncResourceStatus_error,+ syncResourceStatus_state,++ -- * SyncResourceSummary+ SyncResourceSummary (..),+ newSyncResourceSummary,+ syncResourceSummary_externalId,+ syncResourceSummary_resourceId,+ syncResourceSummary_resourceType,+ syncResourceSummary_status,+ syncResourceSummary_updateDateTime,++ -- * TabularConditions+ TabularConditions (..),+ newTabularConditions,+ tabularConditions_orderBy,+ tabularConditions_propertyFilters,++ -- * WorkspaceSummary+ WorkspaceSummary (..),+ newWorkspaceSummary,+ workspaceSummary_description,+ workspaceSummary_workspaceId,+ workspaceSummary_arn,+ workspaceSummary_creationDateTime,+ workspaceSummary_updateDateTime,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import Amazonka.IotTwinMaker.Types.BatchPutPropertyError+import Amazonka.IotTwinMaker.Types.BatchPutPropertyErrorEntry+import Amazonka.IotTwinMaker.Types.BundleInformation+import Amazonka.IotTwinMaker.Types.ColumnDescription+import Amazonka.IotTwinMaker.Types.ColumnType+import Amazonka.IotTwinMaker.Types.ComponentPropertyGroupRequest+import Amazonka.IotTwinMaker.Types.ComponentPropertyGroupResponse+import Amazonka.IotTwinMaker.Types.ComponentRequest+import Amazonka.IotTwinMaker.Types.ComponentResponse+import Amazonka.IotTwinMaker.Types.ComponentTypeSummary+import Amazonka.IotTwinMaker.Types.ComponentUpdateRequest+import Amazonka.IotTwinMaker.Types.ComponentUpdateType+import Amazonka.IotTwinMaker.Types.DataConnector+import Amazonka.IotTwinMaker.Types.DataType+import Amazonka.IotTwinMaker.Types.DataValue+import Amazonka.IotTwinMaker.Types.EntityPropertyReference+import Amazonka.IotTwinMaker.Types.EntitySummary+import Amazonka.IotTwinMaker.Types.ErrorCode+import Amazonka.IotTwinMaker.Types.ErrorDetails+import Amazonka.IotTwinMaker.Types.FunctionRequest+import Amazonka.IotTwinMaker.Types.FunctionResponse+import Amazonka.IotTwinMaker.Types.GroupType+import Amazonka.IotTwinMaker.Types.InterpolationParameters+import Amazonka.IotTwinMaker.Types.InterpolationType+import Amazonka.IotTwinMaker.Types.LambdaFunction+import Amazonka.IotTwinMaker.Types.ListComponentTypesFilter+import Amazonka.IotTwinMaker.Types.ListEntitiesFilter+import Amazonka.IotTwinMaker.Types.Order+import Amazonka.IotTwinMaker.Types.OrderBy+import Amazonka.IotTwinMaker.Types.OrderByTime+import Amazonka.IotTwinMaker.Types.ParentEntityUpdateRequest+import Amazonka.IotTwinMaker.Types.ParentEntityUpdateType+import Amazonka.IotTwinMaker.Types.PricingMode+import Amazonka.IotTwinMaker.Types.PricingPlan+import Amazonka.IotTwinMaker.Types.PricingTier+import Amazonka.IotTwinMaker.Types.PropertyDefinitionRequest+import Amazonka.IotTwinMaker.Types.PropertyDefinitionResponse+import Amazonka.IotTwinMaker.Types.PropertyFilter+import Amazonka.IotTwinMaker.Types.PropertyGroupRequest+import Amazonka.IotTwinMaker.Types.PropertyGroupResponse+import Amazonka.IotTwinMaker.Types.PropertyGroupUpdateType+import Amazonka.IotTwinMaker.Types.PropertyLatestValue+import Amazonka.IotTwinMaker.Types.PropertyRequest+import Amazonka.IotTwinMaker.Types.PropertyResponse+import Amazonka.IotTwinMaker.Types.PropertyUpdateType+import Amazonka.IotTwinMaker.Types.PropertyValue+import Amazonka.IotTwinMaker.Types.PropertyValueEntry+import Amazonka.IotTwinMaker.Types.PropertyValueHistory+import Amazonka.IotTwinMaker.Types.QueryResultValue+import Amazonka.IotTwinMaker.Types.Relationship+import Amazonka.IotTwinMaker.Types.RelationshipValue+import Amazonka.IotTwinMaker.Types.Row+import Amazonka.IotTwinMaker.Types.SceneSummary+import Amazonka.IotTwinMaker.Types.Scope+import Amazonka.IotTwinMaker.Types.State+import Amazonka.IotTwinMaker.Types.Status+import Amazonka.IotTwinMaker.Types.SyncJobState+import Amazonka.IotTwinMaker.Types.SyncJobStatus+import Amazonka.IotTwinMaker.Types.SyncJobSummary+import Amazonka.IotTwinMaker.Types.SyncResourceFilter+import Amazonka.IotTwinMaker.Types.SyncResourceState+import Amazonka.IotTwinMaker.Types.SyncResourceStatus+import Amazonka.IotTwinMaker.Types.SyncResourceSummary+import Amazonka.IotTwinMaker.Types.SyncResourceType+import Amazonka.IotTwinMaker.Types.TabularConditions+import Amazonka.IotTwinMaker.Types.Type+import Amazonka.IotTwinMaker.Types.UpdateReason+import Amazonka.IotTwinMaker.Types.WorkspaceSummary+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Sign.V4 as Sign++-- | API version @2021-11-29@ of the Amazon IoT TwinMaker SDK configuration.+defaultService :: Core.Service+defaultService =+ Core.Service+ { Core.abbrev = "IotTwinMaker",+ Core.signer = Sign.v4,+ Core.endpointPrefix = "iottwinmaker",+ Core.signingName = "iottwinmaker",+ Core.version = "2021-11-29",+ Core.s3AddressingStyle = Core.S3AddressingStyleAuto,+ Core.endpoint = Core.defaultEndpoint defaultService,+ Core.timeout = Prelude.Just 70,+ Core.check = Core.statusSuccess,+ Core.error = Core.parseJSONError "IotTwinMaker",+ Core.retry = retry+ }+ where+ retry =+ Core.Exponential+ { Core.base = 5.0e-2,+ Core.growth = 2,+ Core.attempts = 5,+ Core.check = check+ }+ check e+ | Lens.has (Core.hasStatus 502) e =+ Prelude.Just "bad_gateway"+ | Lens.has (Core.hasStatus 504) e =+ Prelude.Just "gateway_timeout"+ | Lens.has (Core.hasStatus 500) e =+ Prelude.Just "general_server_error"+ | Lens.has (Core.hasStatus 509) e =+ Prelude.Just "limit_exceeded"+ | Lens.has+ ( Core.hasCode "RequestThrottledException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "request_throttled_exception"+ | Lens.has (Core.hasStatus 503) e =+ Prelude.Just "service_unavailable"+ | Lens.has+ ( Core.hasCode "ThrottledException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttled_exception"+ | Lens.has+ ( Core.hasCode "Throttling"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttling"+ | Lens.has+ ( Core.hasCode "ThrottlingException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttling_exception"+ | Lens.has+ ( Core.hasCode+ "ProvisionedThroughputExceededException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throughput_exceeded"+ | Lens.has (Core.hasStatus 429) e =+ Prelude.Just "too_many_requests"+ | Prelude.otherwise = Prelude.Nothing++-- | Access is denied.+_AccessDeniedException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_AccessDeniedException =+ Core._MatchServiceError+ defaultService+ "AccessDeniedException"+ Prelude.. Core.hasStatus 403++-- | A conflict occurred.+_ConflictException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ConflictException =+ Core._MatchServiceError+ defaultService+ "ConflictException"+ Prelude.. Core.hasStatus 409++-- | The connector failed.+_ConnectorFailureException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ConnectorFailureException =+ Core._MatchServiceError+ defaultService+ "ConnectorFailureException"+ Prelude.. Core.hasStatus 424++-- | The connector timed out.+_ConnectorTimeoutException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ConnectorTimeoutException =+ Core._MatchServiceError+ defaultService+ "ConnectorTimeoutException"+ Prelude.. Core.hasStatus 424++-- | An unexpected error has occurred.+_InternalServerException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InternalServerException =+ Core._MatchServiceError+ defaultService+ "InternalServerException"+ Prelude.. Core.hasStatus 500++-- | The query timeout exception.+_QueryTimeoutException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_QueryTimeoutException =+ Core._MatchServiceError+ defaultService+ "QueryTimeoutException"+ Prelude.. Core.hasStatus 400++-- | The resource wasn\'t found.+_ResourceNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceNotFoundException =+ Core._MatchServiceError+ defaultService+ "ResourceNotFoundException"+ Prelude.. Core.hasStatus 404++-- | The service quota was exceeded.+_ServiceQuotaExceededException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ServiceQuotaExceededException =+ Core._MatchServiceError+ defaultService+ "ServiceQuotaExceededException"+ Prelude.. Core.hasStatus 402++-- | The rate exceeds the limit.+_ThrottlingException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ThrottlingException =+ Core._MatchServiceError+ defaultService+ "ThrottlingException"+ Prelude.. Core.hasStatus 429++-- | The number of tags exceeds the limit.+_TooManyTagsException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_TooManyTagsException =+ Core._MatchServiceError+ defaultService+ "TooManyTagsException"+ Prelude.. Core.hasStatus 400++-- | Failed+_ValidationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ValidationException =+ Core._MatchServiceError+ defaultService+ "ValidationException"+ Prelude.. Core.hasStatus 400
+ gen/Amazonka/IotTwinMaker/Types/BatchPutPropertyError.hs view
@@ -0,0 +1,109 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.BatchPutPropertyError+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.BatchPutPropertyError where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.PropertyValueEntry+import qualified Amazonka.Prelude as Prelude++-- | An error returned by the @BatchPutProperty@ action.+--+-- /See:/ 'newBatchPutPropertyError' smart constructor.+data BatchPutPropertyError = BatchPutPropertyError'+ { -- | The error code.+ errorCode :: Prelude.Text,+ -- | The error message.+ errorMessage :: Prelude.Text,+ -- | An object that contains information about errors returned by the+ -- @BatchPutProperty@ action.+ entry :: PropertyValueEntry+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BatchPutPropertyError' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'errorCode', 'batchPutPropertyError_errorCode' - The error code.+--+-- 'errorMessage', 'batchPutPropertyError_errorMessage' - The error message.+--+-- 'entry', 'batchPutPropertyError_entry' - An object that contains information about errors returned by the+-- @BatchPutProperty@ action.+newBatchPutPropertyError ::+ -- | 'errorCode'+ Prelude.Text ->+ -- | 'errorMessage'+ Prelude.Text ->+ -- | 'entry'+ PropertyValueEntry ->+ BatchPutPropertyError+newBatchPutPropertyError+ pErrorCode_+ pErrorMessage_+ pEntry_ =+ BatchPutPropertyError'+ { errorCode = pErrorCode_,+ errorMessage = pErrorMessage_,+ entry = pEntry_+ }++-- | The error code.+batchPutPropertyError_errorCode :: Lens.Lens' BatchPutPropertyError Prelude.Text+batchPutPropertyError_errorCode = Lens.lens (\BatchPutPropertyError' {errorCode} -> errorCode) (\s@BatchPutPropertyError' {} a -> s {errorCode = a} :: BatchPutPropertyError)++-- | The error message.+batchPutPropertyError_errorMessage :: Lens.Lens' BatchPutPropertyError Prelude.Text+batchPutPropertyError_errorMessage = Lens.lens (\BatchPutPropertyError' {errorMessage} -> errorMessage) (\s@BatchPutPropertyError' {} a -> s {errorMessage = a} :: BatchPutPropertyError)++-- | An object that contains information about errors returned by the+-- @BatchPutProperty@ action.+batchPutPropertyError_entry :: Lens.Lens' BatchPutPropertyError PropertyValueEntry+batchPutPropertyError_entry = Lens.lens (\BatchPutPropertyError' {entry} -> entry) (\s@BatchPutPropertyError' {} a -> s {entry = a} :: BatchPutPropertyError)++instance Data.FromJSON BatchPutPropertyError where+ parseJSON =+ Data.withObject+ "BatchPutPropertyError"+ ( \x ->+ BatchPutPropertyError'+ Prelude.<$> (x Data..: "errorCode")+ Prelude.<*> (x Data..: "errorMessage")+ Prelude.<*> (x Data..: "entry")+ )++instance Prelude.Hashable BatchPutPropertyError where+ hashWithSalt _salt BatchPutPropertyError' {..} =+ _salt+ `Prelude.hashWithSalt` errorCode+ `Prelude.hashWithSalt` errorMessage+ `Prelude.hashWithSalt` entry++instance Prelude.NFData BatchPutPropertyError where+ rnf BatchPutPropertyError' {..} =+ Prelude.rnf errorCode+ `Prelude.seq` Prelude.rnf errorMessage+ `Prelude.seq` Prelude.rnf entry
+ gen/Amazonka/IotTwinMaker/Types/BatchPutPropertyErrorEntry.hs view
@@ -0,0 +1,79 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.BatchPutPropertyErrorEntry+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.BatchPutPropertyErrorEntry where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.BatchPutPropertyError+import qualified Amazonka.Prelude as Prelude++-- | An object that contains information about errors returned by the+-- @BatchPutProperty@ action.+--+-- /See:/ 'newBatchPutPropertyErrorEntry' smart constructor.+data BatchPutPropertyErrorEntry = BatchPutPropertyErrorEntry'+ { -- | A list of objects that contain information about errors returned by the+ -- @BatchPutProperty@ action.+ errors :: Prelude.NonEmpty BatchPutPropertyError+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BatchPutPropertyErrorEntry' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'errors', 'batchPutPropertyErrorEntry_errors' - A list of objects that contain information about errors returned by the+-- @BatchPutProperty@ action.+newBatchPutPropertyErrorEntry ::+ -- | 'errors'+ Prelude.NonEmpty BatchPutPropertyError ->+ BatchPutPropertyErrorEntry+newBatchPutPropertyErrorEntry pErrors_ =+ BatchPutPropertyErrorEntry'+ { errors =+ Lens.coerced Lens.# pErrors_+ }++-- | A list of objects that contain information about errors returned by the+-- @BatchPutProperty@ action.+batchPutPropertyErrorEntry_errors :: Lens.Lens' BatchPutPropertyErrorEntry (Prelude.NonEmpty BatchPutPropertyError)+batchPutPropertyErrorEntry_errors = Lens.lens (\BatchPutPropertyErrorEntry' {errors} -> errors) (\s@BatchPutPropertyErrorEntry' {} a -> s {errors = a} :: BatchPutPropertyErrorEntry) Prelude.. Lens.coerced++instance Data.FromJSON BatchPutPropertyErrorEntry where+ parseJSON =+ Data.withObject+ "BatchPutPropertyErrorEntry"+ ( \x ->+ BatchPutPropertyErrorEntry'+ Prelude.<$> (x Data..: "errors")+ )++instance Prelude.Hashable BatchPutPropertyErrorEntry where+ hashWithSalt _salt BatchPutPropertyErrorEntry' {..} =+ _salt `Prelude.hashWithSalt` errors++instance Prelude.NFData BatchPutPropertyErrorEntry where+ rnf BatchPutPropertyErrorEntry' {..} =+ Prelude.rnf errors
+ gen/Amazonka/IotTwinMaker/Types/BundleInformation.hs view
@@ -0,0 +1,87 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.BundleInformation+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.BundleInformation where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.PricingTier+import qualified Amazonka.Prelude as Prelude++-- | Information about pricing bundle.+--+-- /See:/ 'newBundleInformation' smart constructor.+data BundleInformation = BundleInformation'+ { -- | The pricing tier.+ pricingTier :: Prelude.Maybe PricingTier,+ -- | The bundle names.+ bundleNames :: Prelude.NonEmpty Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BundleInformation' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'pricingTier', 'bundleInformation_pricingTier' - The pricing tier.+--+-- 'bundleNames', 'bundleInformation_bundleNames' - The bundle names.+newBundleInformation ::+ -- | 'bundleNames'+ Prelude.NonEmpty Prelude.Text ->+ BundleInformation+newBundleInformation pBundleNames_ =+ BundleInformation'+ { pricingTier = Prelude.Nothing,+ bundleNames = Lens.coerced Lens.# pBundleNames_+ }++-- | The pricing tier.+bundleInformation_pricingTier :: Lens.Lens' BundleInformation (Prelude.Maybe PricingTier)+bundleInformation_pricingTier = Lens.lens (\BundleInformation' {pricingTier} -> pricingTier) (\s@BundleInformation' {} a -> s {pricingTier = a} :: BundleInformation)++-- | The bundle names.+bundleInformation_bundleNames :: Lens.Lens' BundleInformation (Prelude.NonEmpty Prelude.Text)+bundleInformation_bundleNames = Lens.lens (\BundleInformation' {bundleNames} -> bundleNames) (\s@BundleInformation' {} a -> s {bundleNames = a} :: BundleInformation) Prelude.. Lens.coerced++instance Data.FromJSON BundleInformation where+ parseJSON =+ Data.withObject+ "BundleInformation"+ ( \x ->+ BundleInformation'+ Prelude.<$> (x Data..:? "pricingTier")+ Prelude.<*> (x Data..: "bundleNames")+ )++instance Prelude.Hashable BundleInformation where+ hashWithSalt _salt BundleInformation' {..} =+ _salt+ `Prelude.hashWithSalt` pricingTier+ `Prelude.hashWithSalt` bundleNames++instance Prelude.NFData BundleInformation where+ rnf BundleInformation' {..} =+ Prelude.rnf pricingTier+ `Prelude.seq` Prelude.rnf bundleNames
+ gen/Amazonka/IotTwinMaker/Types/ColumnDescription.hs view
@@ -0,0 +1,84 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.ColumnDescription+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.ColumnDescription where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.ColumnType+import qualified Amazonka.Prelude as Prelude++-- | A description of the column in the query results.+--+-- /See:/ 'newColumnDescription' smart constructor.+data ColumnDescription = ColumnDescription'+ { -- | The name of the column description.+ name :: Prelude.Maybe Prelude.Text,+ -- | The type of the column description.+ type' :: Prelude.Maybe ColumnType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ColumnDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'columnDescription_name' - The name of the column description.+--+-- 'type'', 'columnDescription_type' - The type of the column description.+newColumnDescription ::+ ColumnDescription+newColumnDescription =+ ColumnDescription'+ { name = Prelude.Nothing,+ type' = Prelude.Nothing+ }++-- | The name of the column description.+columnDescription_name :: Lens.Lens' ColumnDescription (Prelude.Maybe Prelude.Text)+columnDescription_name = Lens.lens (\ColumnDescription' {name} -> name) (\s@ColumnDescription' {} a -> s {name = a} :: ColumnDescription)++-- | The type of the column description.+columnDescription_type :: Lens.Lens' ColumnDescription (Prelude.Maybe ColumnType)+columnDescription_type = Lens.lens (\ColumnDescription' {type'} -> type') (\s@ColumnDescription' {} a -> s {type' = a} :: ColumnDescription)++instance Data.FromJSON ColumnDescription where+ parseJSON =+ Data.withObject+ "ColumnDescription"+ ( \x ->+ ColumnDescription'+ Prelude.<$> (x Data..:? "name")+ Prelude.<*> (x Data..:? "type")+ )++instance Prelude.Hashable ColumnDescription where+ hashWithSalt _salt ColumnDescription' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` type'++instance Prelude.NFData ColumnDescription where+ rnf ColumnDescription' {..} =+ Prelude.rnf name `Prelude.seq` Prelude.rnf type'
+ gen/Amazonka/IotTwinMaker/Types/ColumnType.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.ColumnType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.ColumnType+ ( ColumnType+ ( ..,+ ColumnType_EDGE,+ ColumnType_NODE,+ ColumnType_VALUE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ColumnType = ColumnType'+ { fromColumnType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ColumnType_EDGE :: ColumnType+pattern ColumnType_EDGE = ColumnType' "EDGE"++pattern ColumnType_NODE :: ColumnType+pattern ColumnType_NODE = ColumnType' "NODE"++pattern ColumnType_VALUE :: ColumnType+pattern ColumnType_VALUE = ColumnType' "VALUE"++{-# COMPLETE+ ColumnType_EDGE,+ ColumnType_NODE,+ ColumnType_VALUE,+ ColumnType'+ #-}
+ gen/Amazonka/IotTwinMaker/Types/ComponentPropertyGroupRequest.hs view
@@ -0,0 +1,101 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.ComponentPropertyGroupRequest+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.ComponentPropertyGroupRequest where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.GroupType+import Amazonka.IotTwinMaker.Types.PropertyGroupUpdateType+import qualified Amazonka.Prelude as Prelude++-- |+--+-- /See:/ 'newComponentPropertyGroupRequest' smart constructor.+data ComponentPropertyGroupRequest = ComponentPropertyGroupRequest'+ { -- | The group type.+ groupType :: Prelude.Maybe GroupType,+ -- | The property names.+ propertyNames :: Prelude.Maybe [Prelude.Text],+ -- | The update type.+ updateType :: Prelude.Maybe PropertyGroupUpdateType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ComponentPropertyGroupRequest' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'groupType', 'componentPropertyGroupRequest_groupType' - The group type.+--+-- 'propertyNames', 'componentPropertyGroupRequest_propertyNames' - The property names.+--+-- 'updateType', 'componentPropertyGroupRequest_updateType' - The update type.+newComponentPropertyGroupRequest ::+ ComponentPropertyGroupRequest+newComponentPropertyGroupRequest =+ ComponentPropertyGroupRequest'+ { groupType =+ Prelude.Nothing,+ propertyNames = Prelude.Nothing,+ updateType = Prelude.Nothing+ }++-- | The group type.+componentPropertyGroupRequest_groupType :: Lens.Lens' ComponentPropertyGroupRequest (Prelude.Maybe GroupType)+componentPropertyGroupRequest_groupType = Lens.lens (\ComponentPropertyGroupRequest' {groupType} -> groupType) (\s@ComponentPropertyGroupRequest' {} a -> s {groupType = a} :: ComponentPropertyGroupRequest)++-- | The property names.+componentPropertyGroupRequest_propertyNames :: Lens.Lens' ComponentPropertyGroupRequest (Prelude.Maybe [Prelude.Text])+componentPropertyGroupRequest_propertyNames = Lens.lens (\ComponentPropertyGroupRequest' {propertyNames} -> propertyNames) (\s@ComponentPropertyGroupRequest' {} a -> s {propertyNames = a} :: ComponentPropertyGroupRequest) Prelude.. Lens.mapping Lens.coerced++-- | The update type.+componentPropertyGroupRequest_updateType :: Lens.Lens' ComponentPropertyGroupRequest (Prelude.Maybe PropertyGroupUpdateType)+componentPropertyGroupRequest_updateType = Lens.lens (\ComponentPropertyGroupRequest' {updateType} -> updateType) (\s@ComponentPropertyGroupRequest' {} a -> s {updateType = a} :: ComponentPropertyGroupRequest)++instance+ Prelude.Hashable+ ComponentPropertyGroupRequest+ where+ hashWithSalt _salt ComponentPropertyGroupRequest' {..} =+ _salt+ `Prelude.hashWithSalt` groupType+ `Prelude.hashWithSalt` propertyNames+ `Prelude.hashWithSalt` updateType++instance Prelude.NFData ComponentPropertyGroupRequest where+ rnf ComponentPropertyGroupRequest' {..} =+ Prelude.rnf groupType+ `Prelude.seq` Prelude.rnf propertyNames+ `Prelude.seq` Prelude.rnf updateType++instance Data.ToJSON ComponentPropertyGroupRequest where+ toJSON ComponentPropertyGroupRequest' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("groupType" Data..=) Prelude.<$> groupType,+ ("propertyNames" Data..=) Prelude.<$> propertyNames,+ ("updateType" Data..=) Prelude.<$> updateType+ ]+ )
+ gen/Amazonka/IotTwinMaker/Types/ComponentPropertyGroupResponse.hs view
@@ -0,0 +1,115 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.ComponentPropertyGroupResponse+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.ComponentPropertyGroupResponse where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.GroupType+import qualified Amazonka.Prelude as Prelude++-- | The component property group response.+--+-- /See:/ 'newComponentPropertyGroupResponse' smart constructor.+data ComponentPropertyGroupResponse = ComponentPropertyGroupResponse'+ { -- | The group type.+ groupType :: GroupType,+ -- | The names of properties+ propertyNames :: [Prelude.Text],+ -- | A Boolean value that specifies whether the property group is inherited+ -- from a parent entity+ isInherited :: Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ComponentPropertyGroupResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'groupType', 'componentPropertyGroupResponse_groupType' - The group type.+--+-- 'propertyNames', 'componentPropertyGroupResponse_propertyNames' - The names of properties+--+-- 'isInherited', 'componentPropertyGroupResponse_isInherited' - A Boolean value that specifies whether the property group is inherited+-- from a parent entity+newComponentPropertyGroupResponse ::+ -- | 'groupType'+ GroupType ->+ -- | 'isInherited'+ Prelude.Bool ->+ ComponentPropertyGroupResponse+newComponentPropertyGroupResponse+ pGroupType_+ pIsInherited_ =+ ComponentPropertyGroupResponse'+ { groupType =+ pGroupType_,+ propertyNames = Prelude.mempty,+ isInherited = pIsInherited_+ }++-- | The group type.+componentPropertyGroupResponse_groupType :: Lens.Lens' ComponentPropertyGroupResponse GroupType+componentPropertyGroupResponse_groupType = Lens.lens (\ComponentPropertyGroupResponse' {groupType} -> groupType) (\s@ComponentPropertyGroupResponse' {} a -> s {groupType = a} :: ComponentPropertyGroupResponse)++-- | The names of properties+componentPropertyGroupResponse_propertyNames :: Lens.Lens' ComponentPropertyGroupResponse [Prelude.Text]+componentPropertyGroupResponse_propertyNames = Lens.lens (\ComponentPropertyGroupResponse' {propertyNames} -> propertyNames) (\s@ComponentPropertyGroupResponse' {} a -> s {propertyNames = a} :: ComponentPropertyGroupResponse) Prelude.. Lens.coerced++-- | A Boolean value that specifies whether the property group is inherited+-- from a parent entity+componentPropertyGroupResponse_isInherited :: Lens.Lens' ComponentPropertyGroupResponse Prelude.Bool+componentPropertyGroupResponse_isInherited = Lens.lens (\ComponentPropertyGroupResponse' {isInherited} -> isInherited) (\s@ComponentPropertyGroupResponse' {} a -> s {isInherited = a} :: ComponentPropertyGroupResponse)++instance Data.FromJSON ComponentPropertyGroupResponse where+ parseJSON =+ Data.withObject+ "ComponentPropertyGroupResponse"+ ( \x ->+ ComponentPropertyGroupResponse'+ Prelude.<$> (x Data..: "groupType")+ Prelude.<*> (x Data..:? "propertyNames" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..: "isInherited")+ )++instance+ Prelude.Hashable+ ComponentPropertyGroupResponse+ where+ hashWithSalt+ _salt+ ComponentPropertyGroupResponse' {..} =+ _salt+ `Prelude.hashWithSalt` groupType+ `Prelude.hashWithSalt` propertyNames+ `Prelude.hashWithSalt` isInherited++instance+ Prelude.NFData+ ComponentPropertyGroupResponse+ where+ rnf ComponentPropertyGroupResponse' {..} =+ Prelude.rnf groupType+ `Prelude.seq` Prelude.rnf propertyNames+ `Prelude.seq` Prelude.rnf isInherited
+ gen/Amazonka/IotTwinMaker/Types/ComponentRequest.hs view
@@ -0,0 +1,116 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.ComponentRequest+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.ComponentRequest where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.ComponentPropertyGroupRequest+import Amazonka.IotTwinMaker.Types.PropertyRequest+import qualified Amazonka.Prelude as Prelude++-- | An object that sets information about a component type create or update+-- request.+--+-- /See:/ 'newComponentRequest' smart constructor.+data ComponentRequest = ComponentRequest'+ { -- | The ID of the component type.+ componentTypeId :: Prelude.Maybe Prelude.Text,+ -- | The description of the component request.+ description :: Prelude.Maybe Prelude.Text,+ -- | An object that maps strings to the properties to set in the component+ -- type. Each string in the mapping must be unique to this object.+ properties :: Prelude.Maybe (Prelude.HashMap Prelude.Text PropertyRequest),+ -- | The property groups.+ propertyGroups :: Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentPropertyGroupRequest)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ComponentRequest' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'componentTypeId', 'componentRequest_componentTypeId' - The ID of the component type.+--+-- 'description', 'componentRequest_description' - The description of the component request.+--+-- 'properties', 'componentRequest_properties' - An object that maps strings to the properties to set in the component+-- type. Each string in the mapping must be unique to this object.+--+-- 'propertyGroups', 'componentRequest_propertyGroups' - The property groups.+newComponentRequest ::+ ComponentRequest+newComponentRequest =+ ComponentRequest'+ { componentTypeId =+ Prelude.Nothing,+ description = Prelude.Nothing,+ properties = Prelude.Nothing,+ propertyGroups = Prelude.Nothing+ }++-- | The ID of the component type.+componentRequest_componentTypeId :: Lens.Lens' ComponentRequest (Prelude.Maybe Prelude.Text)+componentRequest_componentTypeId = Lens.lens (\ComponentRequest' {componentTypeId} -> componentTypeId) (\s@ComponentRequest' {} a -> s {componentTypeId = a} :: ComponentRequest)++-- | The description of the component request.+componentRequest_description :: Lens.Lens' ComponentRequest (Prelude.Maybe Prelude.Text)+componentRequest_description = Lens.lens (\ComponentRequest' {description} -> description) (\s@ComponentRequest' {} a -> s {description = a} :: ComponentRequest)++-- | An object that maps strings to the properties to set in the component+-- type. Each string in the mapping must be unique to this object.+componentRequest_properties :: Lens.Lens' ComponentRequest (Prelude.Maybe (Prelude.HashMap Prelude.Text PropertyRequest))+componentRequest_properties = Lens.lens (\ComponentRequest' {properties} -> properties) (\s@ComponentRequest' {} a -> s {properties = a} :: ComponentRequest) Prelude.. Lens.mapping Lens.coerced++-- | The property groups.+componentRequest_propertyGroups :: Lens.Lens' ComponentRequest (Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentPropertyGroupRequest))+componentRequest_propertyGroups = Lens.lens (\ComponentRequest' {propertyGroups} -> propertyGroups) (\s@ComponentRequest' {} a -> s {propertyGroups = a} :: ComponentRequest) Prelude.. Lens.mapping Lens.coerced++instance Prelude.Hashable ComponentRequest where+ hashWithSalt _salt ComponentRequest' {..} =+ _salt+ `Prelude.hashWithSalt` componentTypeId+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` properties+ `Prelude.hashWithSalt` propertyGroups++instance Prelude.NFData ComponentRequest where+ rnf ComponentRequest' {..} =+ Prelude.rnf componentTypeId+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf properties+ `Prelude.seq` Prelude.rnf propertyGroups++instance Data.ToJSON ComponentRequest where+ toJSON ComponentRequest' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("componentTypeId" Data..=)+ Prelude.<$> componentTypeId,+ ("description" Data..=) Prelude.<$> description,+ ("properties" Data..=) Prelude.<$> properties,+ ("propertyGroups" Data..=)+ Prelude.<$> propertyGroups+ ]+ )
+ gen/Amazonka/IotTwinMaker/Types/ComponentResponse.hs view
@@ -0,0 +1,166 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.ComponentResponse+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.ComponentResponse where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.ComponentPropertyGroupResponse+import Amazonka.IotTwinMaker.Types.PropertyResponse+import Amazonka.IotTwinMaker.Types.Status+import qualified Amazonka.Prelude as Prelude++-- | An object that returns information about a component type create or+-- update request.+--+-- /See:/ 'newComponentResponse' smart constructor.+data ComponentResponse = ComponentResponse'+ { -- | The name of the component.+ componentName :: Prelude.Maybe Prelude.Text,+ -- | The ID of the component type.+ componentTypeId :: Prelude.Maybe Prelude.Text,+ -- | The name of the property definition set in the request.+ definedIn :: Prelude.Maybe Prelude.Text,+ -- | The description of the component type.+ description :: Prelude.Maybe Prelude.Text,+ -- | An object that maps strings to the properties to set in the component+ -- type. Each string in the mapping must be unique to this object.+ properties :: Prelude.Maybe (Prelude.HashMap Prelude.Text PropertyResponse),+ -- | The property groups.+ propertyGroups :: Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentPropertyGroupResponse),+ -- | The status of the component type.+ status :: Prelude.Maybe Status,+ -- | The syncSource of the sync job, if this entity was created by a sync+ -- job.+ syncSource :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ComponentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'componentName', 'componentResponse_componentName' - The name of the component.+--+-- 'componentTypeId', 'componentResponse_componentTypeId' - The ID of the component type.+--+-- 'definedIn', 'componentResponse_definedIn' - The name of the property definition set in the request.+--+-- 'description', 'componentResponse_description' - The description of the component type.+--+-- 'properties', 'componentResponse_properties' - An object that maps strings to the properties to set in the component+-- type. Each string in the mapping must be unique to this object.+--+-- 'propertyGroups', 'componentResponse_propertyGroups' - The property groups.+--+-- 'status', 'componentResponse_status' - The status of the component type.+--+-- 'syncSource', 'componentResponse_syncSource' - The syncSource of the sync job, if this entity was created by a sync+-- job.+newComponentResponse ::+ ComponentResponse+newComponentResponse =+ ComponentResponse'+ { componentName = Prelude.Nothing,+ componentTypeId = Prelude.Nothing,+ definedIn = Prelude.Nothing,+ description = Prelude.Nothing,+ properties = Prelude.Nothing,+ propertyGroups = Prelude.Nothing,+ status = Prelude.Nothing,+ syncSource = Prelude.Nothing+ }++-- | The name of the component.+componentResponse_componentName :: Lens.Lens' ComponentResponse (Prelude.Maybe Prelude.Text)+componentResponse_componentName = Lens.lens (\ComponentResponse' {componentName} -> componentName) (\s@ComponentResponse' {} a -> s {componentName = a} :: ComponentResponse)++-- | The ID of the component type.+componentResponse_componentTypeId :: Lens.Lens' ComponentResponse (Prelude.Maybe Prelude.Text)+componentResponse_componentTypeId = Lens.lens (\ComponentResponse' {componentTypeId} -> componentTypeId) (\s@ComponentResponse' {} a -> s {componentTypeId = a} :: ComponentResponse)++-- | The name of the property definition set in the request.+componentResponse_definedIn :: Lens.Lens' ComponentResponse (Prelude.Maybe Prelude.Text)+componentResponse_definedIn = Lens.lens (\ComponentResponse' {definedIn} -> definedIn) (\s@ComponentResponse' {} a -> s {definedIn = a} :: ComponentResponse)++-- | The description of the component type.+componentResponse_description :: Lens.Lens' ComponentResponse (Prelude.Maybe Prelude.Text)+componentResponse_description = Lens.lens (\ComponentResponse' {description} -> description) (\s@ComponentResponse' {} a -> s {description = a} :: ComponentResponse)++-- | An object that maps strings to the properties to set in the component+-- type. Each string in the mapping must be unique to this object.+componentResponse_properties :: Lens.Lens' ComponentResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text PropertyResponse))+componentResponse_properties = Lens.lens (\ComponentResponse' {properties} -> properties) (\s@ComponentResponse' {} a -> s {properties = a} :: ComponentResponse) Prelude.. Lens.mapping Lens.coerced++-- | The property groups.+componentResponse_propertyGroups :: Lens.Lens' ComponentResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentPropertyGroupResponse))+componentResponse_propertyGroups = Lens.lens (\ComponentResponse' {propertyGroups} -> propertyGroups) (\s@ComponentResponse' {} a -> s {propertyGroups = a} :: ComponentResponse) Prelude.. Lens.mapping Lens.coerced++-- | The status of the component type.+componentResponse_status :: Lens.Lens' ComponentResponse (Prelude.Maybe Status)+componentResponse_status = Lens.lens (\ComponentResponse' {status} -> status) (\s@ComponentResponse' {} a -> s {status = a} :: ComponentResponse)++-- | The syncSource of the sync job, if this entity was created by a sync+-- job.+componentResponse_syncSource :: Lens.Lens' ComponentResponse (Prelude.Maybe Prelude.Text)+componentResponse_syncSource = Lens.lens (\ComponentResponse' {syncSource} -> syncSource) (\s@ComponentResponse' {} a -> s {syncSource = a} :: ComponentResponse)++instance Data.FromJSON ComponentResponse where+ parseJSON =+ Data.withObject+ "ComponentResponse"+ ( \x ->+ ComponentResponse'+ Prelude.<$> (x Data..:? "componentName")+ Prelude.<*> (x Data..:? "componentTypeId")+ Prelude.<*> (x Data..:? "definedIn")+ Prelude.<*> (x Data..:? "description")+ Prelude.<*> (x Data..:? "properties" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "propertyGroups" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "status")+ Prelude.<*> (x Data..:? "syncSource")+ )++instance Prelude.Hashable ComponentResponse where+ hashWithSalt _salt ComponentResponse' {..} =+ _salt+ `Prelude.hashWithSalt` componentName+ `Prelude.hashWithSalt` componentTypeId+ `Prelude.hashWithSalt` definedIn+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` properties+ `Prelude.hashWithSalt` propertyGroups+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` syncSource++instance Prelude.NFData ComponentResponse where+ rnf ComponentResponse' {..} =+ Prelude.rnf componentName+ `Prelude.seq` Prelude.rnf componentTypeId+ `Prelude.seq` Prelude.rnf definedIn+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf properties+ `Prelude.seq` Prelude.rnf propertyGroups+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf syncSource
+ gen/Amazonka/IotTwinMaker/Types/ComponentTypeSummary.hs view
@@ -0,0 +1,159 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.ComponentTypeSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.ComponentTypeSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.Status+import qualified Amazonka.Prelude as Prelude++-- | An object that contains information about a component type.+--+-- /See:/ 'newComponentTypeSummary' smart constructor.+data ComponentTypeSummary = ComponentTypeSummary'+ { -- | The component type name.+ componentTypeName :: Prelude.Maybe Prelude.Text,+ -- | The description of the component type.+ description :: Prelude.Maybe Prelude.Text,+ -- | The current status of the component type.+ status :: Prelude.Maybe Status,+ -- | The ARN of the component type.+ arn :: Prelude.Text,+ -- | The ID of the component type.+ componentTypeId :: Prelude.Text,+ -- | The date and time when the component type was created.+ creationDateTime :: Data.POSIX,+ -- | The date and time when the component type was last updated.+ updateDateTime :: Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ComponentTypeSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'componentTypeName', 'componentTypeSummary_componentTypeName' - The component type name.+--+-- 'description', 'componentTypeSummary_description' - The description of the component type.+--+-- 'status', 'componentTypeSummary_status' - The current status of the component type.+--+-- 'arn', 'componentTypeSummary_arn' - The ARN of the component type.+--+-- 'componentTypeId', 'componentTypeSummary_componentTypeId' - The ID of the component type.+--+-- 'creationDateTime', 'componentTypeSummary_creationDateTime' - The date and time when the component type was created.+--+-- 'updateDateTime', 'componentTypeSummary_updateDateTime' - The date and time when the component type was last updated.+newComponentTypeSummary ::+ -- | 'arn'+ Prelude.Text ->+ -- | 'componentTypeId'+ Prelude.Text ->+ -- | 'creationDateTime'+ Prelude.UTCTime ->+ -- | 'updateDateTime'+ Prelude.UTCTime ->+ ComponentTypeSummary+newComponentTypeSummary+ pArn_+ pComponentTypeId_+ pCreationDateTime_+ pUpdateDateTime_ =+ ComponentTypeSummary'+ { componentTypeName =+ Prelude.Nothing,+ description = Prelude.Nothing,+ status = Prelude.Nothing,+ arn = pArn_,+ componentTypeId = pComponentTypeId_,+ creationDateTime =+ Data._Time Lens.# pCreationDateTime_,+ updateDateTime = Data._Time Lens.# pUpdateDateTime_+ }++-- | The component type name.+componentTypeSummary_componentTypeName :: Lens.Lens' ComponentTypeSummary (Prelude.Maybe Prelude.Text)+componentTypeSummary_componentTypeName = Lens.lens (\ComponentTypeSummary' {componentTypeName} -> componentTypeName) (\s@ComponentTypeSummary' {} a -> s {componentTypeName = a} :: ComponentTypeSummary)++-- | The description of the component type.+componentTypeSummary_description :: Lens.Lens' ComponentTypeSummary (Prelude.Maybe Prelude.Text)+componentTypeSummary_description = Lens.lens (\ComponentTypeSummary' {description} -> description) (\s@ComponentTypeSummary' {} a -> s {description = a} :: ComponentTypeSummary)++-- | The current status of the component type.+componentTypeSummary_status :: Lens.Lens' ComponentTypeSummary (Prelude.Maybe Status)+componentTypeSummary_status = Lens.lens (\ComponentTypeSummary' {status} -> status) (\s@ComponentTypeSummary' {} a -> s {status = a} :: ComponentTypeSummary)++-- | The ARN of the component type.+componentTypeSummary_arn :: Lens.Lens' ComponentTypeSummary Prelude.Text+componentTypeSummary_arn = Lens.lens (\ComponentTypeSummary' {arn} -> arn) (\s@ComponentTypeSummary' {} a -> s {arn = a} :: ComponentTypeSummary)++-- | The ID of the component type.+componentTypeSummary_componentTypeId :: Lens.Lens' ComponentTypeSummary Prelude.Text+componentTypeSummary_componentTypeId = Lens.lens (\ComponentTypeSummary' {componentTypeId} -> componentTypeId) (\s@ComponentTypeSummary' {} a -> s {componentTypeId = a} :: ComponentTypeSummary)++-- | The date and time when the component type was created.+componentTypeSummary_creationDateTime :: Lens.Lens' ComponentTypeSummary Prelude.UTCTime+componentTypeSummary_creationDateTime = Lens.lens (\ComponentTypeSummary' {creationDateTime} -> creationDateTime) (\s@ComponentTypeSummary' {} a -> s {creationDateTime = a} :: ComponentTypeSummary) Prelude.. Data._Time++-- | The date and time when the component type was last updated.+componentTypeSummary_updateDateTime :: Lens.Lens' ComponentTypeSummary Prelude.UTCTime+componentTypeSummary_updateDateTime = Lens.lens (\ComponentTypeSummary' {updateDateTime} -> updateDateTime) (\s@ComponentTypeSummary' {} a -> s {updateDateTime = a} :: ComponentTypeSummary) Prelude.. Data._Time++instance Data.FromJSON ComponentTypeSummary where+ parseJSON =+ Data.withObject+ "ComponentTypeSummary"+ ( \x ->+ ComponentTypeSummary'+ Prelude.<$> (x Data..:? "componentTypeName")+ Prelude.<*> (x Data..:? "description")+ Prelude.<*> (x Data..:? "status")+ Prelude.<*> (x Data..: "arn")+ Prelude.<*> (x Data..: "componentTypeId")+ Prelude.<*> (x Data..: "creationDateTime")+ Prelude.<*> (x Data..: "updateDateTime")+ )++instance Prelude.Hashable ComponentTypeSummary where+ hashWithSalt _salt ComponentTypeSummary' {..} =+ _salt+ `Prelude.hashWithSalt` componentTypeName+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` componentTypeId+ `Prelude.hashWithSalt` creationDateTime+ `Prelude.hashWithSalt` updateDateTime++instance Prelude.NFData ComponentTypeSummary where+ rnf ComponentTypeSummary' {..} =+ Prelude.rnf componentTypeName+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf componentTypeId+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf updateDateTime
+ gen/Amazonka/IotTwinMaker/Types/ComponentUpdateRequest.hs view
@@ -0,0 +1,129 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.ComponentUpdateRequest+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.ComponentUpdateRequest where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.ComponentPropertyGroupRequest+import Amazonka.IotTwinMaker.Types.ComponentUpdateType+import Amazonka.IotTwinMaker.Types.PropertyRequest+import qualified Amazonka.Prelude as Prelude++-- | The component update request.+--+-- /See:/ 'newComponentUpdateRequest' smart constructor.+data ComponentUpdateRequest = ComponentUpdateRequest'+ { -- | The ID of the component type.+ componentTypeId :: Prelude.Maybe Prelude.Text,+ -- | The description of the component type.+ description :: Prelude.Maybe Prelude.Text,+ -- | The property group updates.+ propertyGroupUpdates :: Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentPropertyGroupRequest),+ -- | An object that maps strings to the properties to set in the component+ -- type update. Each string in the mapping must be unique to this object.+ propertyUpdates :: Prelude.Maybe (Prelude.HashMap Prelude.Text PropertyRequest),+ -- | The update type of the component update request.+ updateType :: Prelude.Maybe ComponentUpdateType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ComponentUpdateRequest' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'componentTypeId', 'componentUpdateRequest_componentTypeId' - The ID of the component type.+--+-- 'description', 'componentUpdateRequest_description' - The description of the component type.+--+-- 'propertyGroupUpdates', 'componentUpdateRequest_propertyGroupUpdates' - The property group updates.+--+-- 'propertyUpdates', 'componentUpdateRequest_propertyUpdates' - An object that maps strings to the properties to set in the component+-- type update. Each string in the mapping must be unique to this object.+--+-- 'updateType', 'componentUpdateRequest_updateType' - The update type of the component update request.+newComponentUpdateRequest ::+ ComponentUpdateRequest+newComponentUpdateRequest =+ ComponentUpdateRequest'+ { componentTypeId =+ Prelude.Nothing,+ description = Prelude.Nothing,+ propertyGroupUpdates = Prelude.Nothing,+ propertyUpdates = Prelude.Nothing,+ updateType = Prelude.Nothing+ }++-- | The ID of the component type.+componentUpdateRequest_componentTypeId :: Lens.Lens' ComponentUpdateRequest (Prelude.Maybe Prelude.Text)+componentUpdateRequest_componentTypeId = Lens.lens (\ComponentUpdateRequest' {componentTypeId} -> componentTypeId) (\s@ComponentUpdateRequest' {} a -> s {componentTypeId = a} :: ComponentUpdateRequest)++-- | The description of the component type.+componentUpdateRequest_description :: Lens.Lens' ComponentUpdateRequest (Prelude.Maybe Prelude.Text)+componentUpdateRequest_description = Lens.lens (\ComponentUpdateRequest' {description} -> description) (\s@ComponentUpdateRequest' {} a -> s {description = a} :: ComponentUpdateRequest)++-- | The property group updates.+componentUpdateRequest_propertyGroupUpdates :: Lens.Lens' ComponentUpdateRequest (Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentPropertyGroupRequest))+componentUpdateRequest_propertyGroupUpdates = Lens.lens (\ComponentUpdateRequest' {propertyGroupUpdates} -> propertyGroupUpdates) (\s@ComponentUpdateRequest' {} a -> s {propertyGroupUpdates = a} :: ComponentUpdateRequest) Prelude.. Lens.mapping Lens.coerced++-- | An object that maps strings to the properties to set in the component+-- type update. Each string in the mapping must be unique to this object.+componentUpdateRequest_propertyUpdates :: Lens.Lens' ComponentUpdateRequest (Prelude.Maybe (Prelude.HashMap Prelude.Text PropertyRequest))+componentUpdateRequest_propertyUpdates = Lens.lens (\ComponentUpdateRequest' {propertyUpdates} -> propertyUpdates) (\s@ComponentUpdateRequest' {} a -> s {propertyUpdates = a} :: ComponentUpdateRequest) Prelude.. Lens.mapping Lens.coerced++-- | The update type of the component update request.+componentUpdateRequest_updateType :: Lens.Lens' ComponentUpdateRequest (Prelude.Maybe ComponentUpdateType)+componentUpdateRequest_updateType = Lens.lens (\ComponentUpdateRequest' {updateType} -> updateType) (\s@ComponentUpdateRequest' {} a -> s {updateType = a} :: ComponentUpdateRequest)++instance Prelude.Hashable ComponentUpdateRequest where+ hashWithSalt _salt ComponentUpdateRequest' {..} =+ _salt+ `Prelude.hashWithSalt` componentTypeId+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` propertyGroupUpdates+ `Prelude.hashWithSalt` propertyUpdates+ `Prelude.hashWithSalt` updateType++instance Prelude.NFData ComponentUpdateRequest where+ rnf ComponentUpdateRequest' {..} =+ Prelude.rnf componentTypeId+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf propertyGroupUpdates+ `Prelude.seq` Prelude.rnf propertyUpdates+ `Prelude.seq` Prelude.rnf updateType++instance Data.ToJSON ComponentUpdateRequest where+ toJSON ComponentUpdateRequest' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("componentTypeId" Data..=)+ Prelude.<$> componentTypeId,+ ("description" Data..=) Prelude.<$> description,+ ("propertyGroupUpdates" Data..=)+ Prelude.<$> propertyGroupUpdates,+ ("propertyUpdates" Data..=)+ Prelude.<$> propertyUpdates,+ ("updateType" Data..=) Prelude.<$> updateType+ ]+ )
+ gen/Amazonka/IotTwinMaker/Types/ComponentUpdateType.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.ComponentUpdateType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.ComponentUpdateType+ ( ComponentUpdateType+ ( ..,+ ComponentUpdateType_CREATE,+ ComponentUpdateType_DELETE,+ ComponentUpdateType_UPDATE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ComponentUpdateType = ComponentUpdateType'+ { fromComponentUpdateType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ComponentUpdateType_CREATE :: ComponentUpdateType+pattern ComponentUpdateType_CREATE = ComponentUpdateType' "CREATE"++pattern ComponentUpdateType_DELETE :: ComponentUpdateType+pattern ComponentUpdateType_DELETE = ComponentUpdateType' "DELETE"++pattern ComponentUpdateType_UPDATE :: ComponentUpdateType+pattern ComponentUpdateType_UPDATE = ComponentUpdateType' "UPDATE"++{-# COMPLETE+ ComponentUpdateType_CREATE,+ ComponentUpdateType_DELETE,+ ComponentUpdateType_UPDATE,+ ComponentUpdateType'+ #-}
+ gen/Amazonka/IotTwinMaker/Types/DataConnector.hs view
@@ -0,0 +1,97 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.DataConnector+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.DataConnector where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.LambdaFunction+import qualified Amazonka.Prelude as Prelude++-- | The data connector.+--+-- /See:/ 'newDataConnector' smart constructor.+data DataConnector = DataConnector'+ { -- | A Boolean value that specifies whether the data connector is native to+ -- IoT TwinMaker.+ isNative :: Prelude.Maybe Prelude.Bool,+ -- | The Lambda function associated with this data connector.+ lambda :: Prelude.Maybe LambdaFunction+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DataConnector' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isNative', 'dataConnector_isNative' - A Boolean value that specifies whether the data connector is native to+-- IoT TwinMaker.+--+-- 'lambda', 'dataConnector_lambda' - The Lambda function associated with this data connector.+newDataConnector ::+ DataConnector+newDataConnector =+ DataConnector'+ { isNative = Prelude.Nothing,+ lambda = Prelude.Nothing+ }++-- | A Boolean value that specifies whether the data connector is native to+-- IoT TwinMaker.+dataConnector_isNative :: Lens.Lens' DataConnector (Prelude.Maybe Prelude.Bool)+dataConnector_isNative = Lens.lens (\DataConnector' {isNative} -> isNative) (\s@DataConnector' {} a -> s {isNative = a} :: DataConnector)++-- | The Lambda function associated with this data connector.+dataConnector_lambda :: Lens.Lens' DataConnector (Prelude.Maybe LambdaFunction)+dataConnector_lambda = Lens.lens (\DataConnector' {lambda} -> lambda) (\s@DataConnector' {} a -> s {lambda = a} :: DataConnector)++instance Data.FromJSON DataConnector where+ parseJSON =+ Data.withObject+ "DataConnector"+ ( \x ->+ DataConnector'+ Prelude.<$> (x Data..:? "isNative")+ Prelude.<*> (x Data..:? "lambda")+ )++instance Prelude.Hashable DataConnector where+ hashWithSalt _salt DataConnector' {..} =+ _salt+ `Prelude.hashWithSalt` isNative+ `Prelude.hashWithSalt` lambda++instance Prelude.NFData DataConnector where+ rnf DataConnector' {..} =+ Prelude.rnf isNative+ `Prelude.seq` Prelude.rnf lambda++instance Data.ToJSON DataConnector where+ toJSON DataConnector' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("isNative" Data..=) Prelude.<$> isNative,+ ("lambda" Data..=) Prelude.<$> lambda+ ]+ )
+ gen/Amazonka/IotTwinMaker/Types/DataType.hs view
@@ -0,0 +1,137 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.DataType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.DataType where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.DataValue+import Amazonka.IotTwinMaker.Types.Relationship+import Amazonka.IotTwinMaker.Types.Type+import qualified Amazonka.Prelude as Prelude++-- | An object that specifies the data type of a property.+--+-- /See:/ 'newDataType' smart constructor.+data DataType = DataType'+ { -- | The allowed values for this data type.+ allowedValues :: Prelude.Maybe [DataValue],+ -- | The nested type in the data type.+ nestedType :: Prelude.Maybe DataType,+ -- | A relationship that associates a component with another component.+ relationship :: Prelude.Maybe Relationship,+ -- | The unit of measure used in this data type.+ unitOfMeasure :: Prelude.Maybe Prelude.Text,+ -- | The underlying type of the data type.+ type' :: Type+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DataType' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'allowedValues', 'dataType_allowedValues' - The allowed values for this data type.+--+-- 'nestedType', 'dataType_nestedType' - The nested type in the data type.+--+-- 'relationship', 'dataType_relationship' - A relationship that associates a component with another component.+--+-- 'unitOfMeasure', 'dataType_unitOfMeasure' - The unit of measure used in this data type.+--+-- 'type'', 'dataType_type' - The underlying type of the data type.+newDataType ::+ -- | 'type''+ Type ->+ DataType+newDataType pType_ =+ DataType'+ { allowedValues = Prelude.Nothing,+ nestedType = Prelude.Nothing,+ relationship = Prelude.Nothing,+ unitOfMeasure = Prelude.Nothing,+ type' = pType_+ }++-- | The allowed values for this data type.+dataType_allowedValues :: Lens.Lens' DataType (Prelude.Maybe [DataValue])+dataType_allowedValues = Lens.lens (\DataType' {allowedValues} -> allowedValues) (\s@DataType' {} a -> s {allowedValues = a} :: DataType) Prelude.. Lens.mapping Lens.coerced++-- | The nested type in the data type.+dataType_nestedType :: Lens.Lens' DataType (Prelude.Maybe DataType)+dataType_nestedType = Lens.lens (\DataType' {nestedType} -> nestedType) (\s@DataType' {} a -> s {nestedType = a} :: DataType)++-- | A relationship that associates a component with another component.+dataType_relationship :: Lens.Lens' DataType (Prelude.Maybe Relationship)+dataType_relationship = Lens.lens (\DataType' {relationship} -> relationship) (\s@DataType' {} a -> s {relationship = a} :: DataType)++-- | The unit of measure used in this data type.+dataType_unitOfMeasure :: Lens.Lens' DataType (Prelude.Maybe Prelude.Text)+dataType_unitOfMeasure = Lens.lens (\DataType' {unitOfMeasure} -> unitOfMeasure) (\s@DataType' {} a -> s {unitOfMeasure = a} :: DataType)++-- | The underlying type of the data type.+dataType_type :: Lens.Lens' DataType Type+dataType_type = Lens.lens (\DataType' {type'} -> type') (\s@DataType' {} a -> s {type' = a} :: DataType)++instance Data.FromJSON DataType where+ parseJSON =+ Data.withObject+ "DataType"+ ( \x ->+ DataType'+ Prelude.<$> (x Data..:? "allowedValues" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "nestedType")+ Prelude.<*> (x Data..:? "relationship")+ Prelude.<*> (x Data..:? "unitOfMeasure")+ Prelude.<*> (x Data..: "type")+ )++instance Prelude.Hashable DataType where+ hashWithSalt _salt DataType' {..} =+ _salt+ `Prelude.hashWithSalt` allowedValues+ `Prelude.hashWithSalt` nestedType+ `Prelude.hashWithSalt` relationship+ `Prelude.hashWithSalt` unitOfMeasure+ `Prelude.hashWithSalt` type'++instance Prelude.NFData DataType where+ rnf DataType' {..} =+ Prelude.rnf allowedValues+ `Prelude.seq` Prelude.rnf nestedType+ `Prelude.seq` Prelude.rnf relationship+ `Prelude.seq` Prelude.rnf unitOfMeasure+ `Prelude.seq` Prelude.rnf type'++instance Data.ToJSON DataType where+ toJSON DataType' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("allowedValues" Data..=) Prelude.<$> allowedValues,+ ("nestedType" Data..=) Prelude.<$> nestedType,+ ("relationship" Data..=) Prelude.<$> relationship,+ ("unitOfMeasure" Data..=) Prelude.<$> unitOfMeasure,+ Prelude.Just ("type" Data..= type')+ ]+ )
+ gen/Amazonka/IotTwinMaker/Types/DataValue.hs view
@@ -0,0 +1,186 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.DataValue+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.DataValue where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.RelationshipValue+import qualified Amazonka.Prelude as Prelude++-- | An object that specifies a value for a property.+--+-- /See:/ 'newDataValue' smart constructor.+data DataValue = DataValue'+ { -- | A Boolean value.+ booleanValue :: Prelude.Maybe Prelude.Bool,+ -- | A double value.+ doubleValue :: Prelude.Maybe Prelude.Double,+ -- | An expression that produces the value.+ expression :: Prelude.Maybe Prelude.Text,+ -- | An integer value.+ integerValue :: Prelude.Maybe Prelude.Int,+ -- | A list of multiple values.+ listValue :: Prelude.Maybe [DataValue],+ -- | A long value.+ longValue :: Prelude.Maybe Prelude.Integer,+ -- | An object that maps strings to multiple @DataValue@ objects.+ mapValue :: Prelude.Maybe (Prelude.HashMap Prelude.Text DataValue),+ -- | A value that relates a component to another component.+ relationshipValue :: Prelude.Maybe RelationshipValue,+ -- | A string value.+ stringValue :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DataValue' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'booleanValue', 'dataValue_booleanValue' - A Boolean value.+--+-- 'doubleValue', 'dataValue_doubleValue' - A double value.+--+-- 'expression', 'dataValue_expression' - An expression that produces the value.+--+-- 'integerValue', 'dataValue_integerValue' - An integer value.+--+-- 'listValue', 'dataValue_listValue' - A list of multiple values.+--+-- 'longValue', 'dataValue_longValue' - A long value.+--+-- 'mapValue', 'dataValue_mapValue' - An object that maps strings to multiple @DataValue@ objects.+--+-- 'relationshipValue', 'dataValue_relationshipValue' - A value that relates a component to another component.+--+-- 'stringValue', 'dataValue_stringValue' - A string value.+newDataValue ::+ DataValue+newDataValue =+ DataValue'+ { booleanValue = Prelude.Nothing,+ doubleValue = Prelude.Nothing,+ expression = Prelude.Nothing,+ integerValue = Prelude.Nothing,+ listValue = Prelude.Nothing,+ longValue = Prelude.Nothing,+ mapValue = Prelude.Nothing,+ relationshipValue = Prelude.Nothing,+ stringValue = Prelude.Nothing+ }++-- | A Boolean value.+dataValue_booleanValue :: Lens.Lens' DataValue (Prelude.Maybe Prelude.Bool)+dataValue_booleanValue = Lens.lens (\DataValue' {booleanValue} -> booleanValue) (\s@DataValue' {} a -> s {booleanValue = a} :: DataValue)++-- | A double value.+dataValue_doubleValue :: Lens.Lens' DataValue (Prelude.Maybe Prelude.Double)+dataValue_doubleValue = Lens.lens (\DataValue' {doubleValue} -> doubleValue) (\s@DataValue' {} a -> s {doubleValue = a} :: DataValue)++-- | An expression that produces the value.+dataValue_expression :: Lens.Lens' DataValue (Prelude.Maybe Prelude.Text)+dataValue_expression = Lens.lens (\DataValue' {expression} -> expression) (\s@DataValue' {} a -> s {expression = a} :: DataValue)++-- | An integer value.+dataValue_integerValue :: Lens.Lens' DataValue (Prelude.Maybe Prelude.Int)+dataValue_integerValue = Lens.lens (\DataValue' {integerValue} -> integerValue) (\s@DataValue' {} a -> s {integerValue = a} :: DataValue)++-- | A list of multiple values.+dataValue_listValue :: Lens.Lens' DataValue (Prelude.Maybe [DataValue])+dataValue_listValue = Lens.lens (\DataValue' {listValue} -> listValue) (\s@DataValue' {} a -> s {listValue = a} :: DataValue) Prelude.. Lens.mapping Lens.coerced++-- | A long value.+dataValue_longValue :: Lens.Lens' DataValue (Prelude.Maybe Prelude.Integer)+dataValue_longValue = Lens.lens (\DataValue' {longValue} -> longValue) (\s@DataValue' {} a -> s {longValue = a} :: DataValue)++-- | An object that maps strings to multiple @DataValue@ objects.+dataValue_mapValue :: Lens.Lens' DataValue (Prelude.Maybe (Prelude.HashMap Prelude.Text DataValue))+dataValue_mapValue = Lens.lens (\DataValue' {mapValue} -> mapValue) (\s@DataValue' {} a -> s {mapValue = a} :: DataValue) Prelude.. Lens.mapping Lens.coerced++-- | A value that relates a component to another component.+dataValue_relationshipValue :: Lens.Lens' DataValue (Prelude.Maybe RelationshipValue)+dataValue_relationshipValue = Lens.lens (\DataValue' {relationshipValue} -> relationshipValue) (\s@DataValue' {} a -> s {relationshipValue = a} :: DataValue)++-- | A string value.+dataValue_stringValue :: Lens.Lens' DataValue (Prelude.Maybe Prelude.Text)+dataValue_stringValue = Lens.lens (\DataValue' {stringValue} -> stringValue) (\s@DataValue' {} a -> s {stringValue = a} :: DataValue)++instance Data.FromJSON DataValue where+ parseJSON =+ Data.withObject+ "DataValue"+ ( \x ->+ DataValue'+ Prelude.<$> (x Data..:? "booleanValue")+ Prelude.<*> (x Data..:? "doubleValue")+ Prelude.<*> (x Data..:? "expression")+ Prelude.<*> (x Data..:? "integerValue")+ Prelude.<*> (x Data..:? "listValue" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "longValue")+ Prelude.<*> (x Data..:? "mapValue" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "relationshipValue")+ Prelude.<*> (x Data..:? "stringValue")+ )++instance Prelude.Hashable DataValue where+ hashWithSalt _salt DataValue' {..} =+ _salt+ `Prelude.hashWithSalt` booleanValue+ `Prelude.hashWithSalt` doubleValue+ `Prelude.hashWithSalt` expression+ `Prelude.hashWithSalt` integerValue+ `Prelude.hashWithSalt` listValue+ `Prelude.hashWithSalt` longValue+ `Prelude.hashWithSalt` mapValue+ `Prelude.hashWithSalt` relationshipValue+ `Prelude.hashWithSalt` stringValue++instance Prelude.NFData DataValue where+ rnf DataValue' {..} =+ Prelude.rnf booleanValue+ `Prelude.seq` Prelude.rnf doubleValue+ `Prelude.seq` Prelude.rnf expression+ `Prelude.seq` Prelude.rnf integerValue+ `Prelude.seq` Prelude.rnf listValue+ `Prelude.seq` Prelude.rnf longValue+ `Prelude.seq` Prelude.rnf mapValue+ `Prelude.seq` Prelude.rnf relationshipValue+ `Prelude.seq` Prelude.rnf stringValue++instance Data.ToJSON DataValue where+ toJSON DataValue' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("booleanValue" Data..=) Prelude.<$> booleanValue,+ ("doubleValue" Data..=) Prelude.<$> doubleValue,+ ("expression" Data..=) Prelude.<$> expression,+ ("integerValue" Data..=) Prelude.<$> integerValue,+ ("listValue" Data..=) Prelude.<$> listValue,+ ("longValue" Data..=) Prelude.<$> longValue,+ ("mapValue" Data..=) Prelude.<$> mapValue,+ ("relationshipValue" Data..=)+ Prelude.<$> relationshipValue,+ ("stringValue" Data..=) Prelude.<$> stringValue+ ]+ )
+ gen/Amazonka/IotTwinMaker/Types/EntityPropertyReference.hs view
@@ -0,0 +1,129 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.EntityPropertyReference+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.EntityPropertyReference where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | An object that uniquely identifies an entity property.+--+-- /See:/ 'newEntityPropertyReference' smart constructor.+data EntityPropertyReference = EntityPropertyReference'+ { -- | The name of the component.+ componentName :: Prelude.Maybe Prelude.Text,+ -- | The ID of the entity.+ entityId :: Prelude.Maybe Prelude.Text,+ -- | A mapping of external IDs to property names. External IDs uniquely+ -- identify properties from external data stores.+ externalIdProperty :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The name of the property.+ propertyName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EntityPropertyReference' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'componentName', 'entityPropertyReference_componentName' - The name of the component.+--+-- 'entityId', 'entityPropertyReference_entityId' - The ID of the entity.+--+-- 'externalIdProperty', 'entityPropertyReference_externalIdProperty' - A mapping of external IDs to property names. External IDs uniquely+-- identify properties from external data stores.+--+-- 'propertyName', 'entityPropertyReference_propertyName' - The name of the property.+newEntityPropertyReference ::+ -- | 'propertyName'+ Prelude.Text ->+ EntityPropertyReference+newEntityPropertyReference pPropertyName_ =+ EntityPropertyReference'+ { componentName =+ Prelude.Nothing,+ entityId = Prelude.Nothing,+ externalIdProperty = Prelude.Nothing,+ propertyName = pPropertyName_+ }++-- | The name of the component.+entityPropertyReference_componentName :: Lens.Lens' EntityPropertyReference (Prelude.Maybe Prelude.Text)+entityPropertyReference_componentName = Lens.lens (\EntityPropertyReference' {componentName} -> componentName) (\s@EntityPropertyReference' {} a -> s {componentName = a} :: EntityPropertyReference)++-- | The ID of the entity.+entityPropertyReference_entityId :: Lens.Lens' EntityPropertyReference (Prelude.Maybe Prelude.Text)+entityPropertyReference_entityId = Lens.lens (\EntityPropertyReference' {entityId} -> entityId) (\s@EntityPropertyReference' {} a -> s {entityId = a} :: EntityPropertyReference)++-- | A mapping of external IDs to property names. External IDs uniquely+-- identify properties from external data stores.+entityPropertyReference_externalIdProperty :: Lens.Lens' EntityPropertyReference (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+entityPropertyReference_externalIdProperty = Lens.lens (\EntityPropertyReference' {externalIdProperty} -> externalIdProperty) (\s@EntityPropertyReference' {} a -> s {externalIdProperty = a} :: EntityPropertyReference) Prelude.. Lens.mapping Lens.coerced++-- | The name of the property.+entityPropertyReference_propertyName :: Lens.Lens' EntityPropertyReference Prelude.Text+entityPropertyReference_propertyName = Lens.lens (\EntityPropertyReference' {propertyName} -> propertyName) (\s@EntityPropertyReference' {} a -> s {propertyName = a} :: EntityPropertyReference)++instance Data.FromJSON EntityPropertyReference where+ parseJSON =+ Data.withObject+ "EntityPropertyReference"+ ( \x ->+ EntityPropertyReference'+ Prelude.<$> (x Data..:? "componentName")+ Prelude.<*> (x Data..:? "entityId")+ Prelude.<*> ( x+ Data..:? "externalIdProperty"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..: "propertyName")+ )++instance Prelude.Hashable EntityPropertyReference where+ hashWithSalt _salt EntityPropertyReference' {..} =+ _salt+ `Prelude.hashWithSalt` componentName+ `Prelude.hashWithSalt` entityId+ `Prelude.hashWithSalt` externalIdProperty+ `Prelude.hashWithSalt` propertyName++instance Prelude.NFData EntityPropertyReference where+ rnf EntityPropertyReference' {..} =+ Prelude.rnf componentName+ `Prelude.seq` Prelude.rnf entityId+ `Prelude.seq` Prelude.rnf externalIdProperty+ `Prelude.seq` Prelude.rnf propertyName++instance Data.ToJSON EntityPropertyReference where+ toJSON EntityPropertyReference' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("componentName" Data..=) Prelude.<$> componentName,+ ("entityId" Data..=) Prelude.<$> entityId,+ ("externalIdProperty" Data..=)+ Prelude.<$> externalIdProperty,+ Prelude.Just ("propertyName" Data..= propertyName)+ ]+ )
+ gen/Amazonka/IotTwinMaker/Types/EntitySummary.hs view
@@ -0,0 +1,191 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.EntitySummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.EntitySummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.Status+import qualified Amazonka.Prelude as Prelude++-- | An object that contains information about an entity.+--+-- /See:/ 'newEntitySummary' smart constructor.+data EntitySummary = EntitySummary'+ { -- | The description of the entity.+ description :: Prelude.Maybe Prelude.Text,+ -- | A Boolean value that specifies whether the entity has child entities or+ -- not.+ hasChildEntities :: Prelude.Maybe Prelude.Bool,+ -- | The ID of the parent entity.+ parentEntityId :: Prelude.Maybe Prelude.Text,+ -- | The ID of the entity.+ entityId :: Prelude.Text,+ -- | The name of the entity.+ entityName :: Prelude.Text,+ -- | The ARN of the entity.+ arn :: Prelude.Text,+ -- | The current status of the entity.+ status :: Status,+ -- | The date and time when the entity was created.+ creationDateTime :: Data.POSIX,+ -- | The last date and time when the entity was updated.+ updateDateTime :: Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EntitySummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'entitySummary_description' - The description of the entity.+--+-- 'hasChildEntities', 'entitySummary_hasChildEntities' - A Boolean value that specifies whether the entity has child entities or+-- not.+--+-- 'parentEntityId', 'entitySummary_parentEntityId' - The ID of the parent entity.+--+-- 'entityId', 'entitySummary_entityId' - The ID of the entity.+--+-- 'entityName', 'entitySummary_entityName' - The name of the entity.+--+-- 'arn', 'entitySummary_arn' - The ARN of the entity.+--+-- 'status', 'entitySummary_status' - The current status of the entity.+--+-- 'creationDateTime', 'entitySummary_creationDateTime' - The date and time when the entity was created.+--+-- 'updateDateTime', 'entitySummary_updateDateTime' - The last date and time when the entity was updated.+newEntitySummary ::+ -- | 'entityId'+ Prelude.Text ->+ -- | 'entityName'+ Prelude.Text ->+ -- | 'arn'+ Prelude.Text ->+ -- | 'status'+ Status ->+ -- | 'creationDateTime'+ Prelude.UTCTime ->+ -- | 'updateDateTime'+ Prelude.UTCTime ->+ EntitySummary+newEntitySummary+ pEntityId_+ pEntityName_+ pArn_+ pStatus_+ pCreationDateTime_+ pUpdateDateTime_ =+ EntitySummary'+ { description = Prelude.Nothing,+ hasChildEntities = Prelude.Nothing,+ parentEntityId = Prelude.Nothing,+ entityId = pEntityId_,+ entityName = pEntityName_,+ arn = pArn_,+ status = pStatus_,+ creationDateTime =+ Data._Time Lens.# pCreationDateTime_,+ updateDateTime = Data._Time Lens.# pUpdateDateTime_+ }++-- | The description of the entity.+entitySummary_description :: Lens.Lens' EntitySummary (Prelude.Maybe Prelude.Text)+entitySummary_description = Lens.lens (\EntitySummary' {description} -> description) (\s@EntitySummary' {} a -> s {description = a} :: EntitySummary)++-- | A Boolean value that specifies whether the entity has child entities or+-- not.+entitySummary_hasChildEntities :: Lens.Lens' EntitySummary (Prelude.Maybe Prelude.Bool)+entitySummary_hasChildEntities = Lens.lens (\EntitySummary' {hasChildEntities} -> hasChildEntities) (\s@EntitySummary' {} a -> s {hasChildEntities = a} :: EntitySummary)++-- | The ID of the parent entity.+entitySummary_parentEntityId :: Lens.Lens' EntitySummary (Prelude.Maybe Prelude.Text)+entitySummary_parentEntityId = Lens.lens (\EntitySummary' {parentEntityId} -> parentEntityId) (\s@EntitySummary' {} a -> s {parentEntityId = a} :: EntitySummary)++-- | The ID of the entity.+entitySummary_entityId :: Lens.Lens' EntitySummary Prelude.Text+entitySummary_entityId = Lens.lens (\EntitySummary' {entityId} -> entityId) (\s@EntitySummary' {} a -> s {entityId = a} :: EntitySummary)++-- | The name of the entity.+entitySummary_entityName :: Lens.Lens' EntitySummary Prelude.Text+entitySummary_entityName = Lens.lens (\EntitySummary' {entityName} -> entityName) (\s@EntitySummary' {} a -> s {entityName = a} :: EntitySummary)++-- | The ARN of the entity.+entitySummary_arn :: Lens.Lens' EntitySummary Prelude.Text+entitySummary_arn = Lens.lens (\EntitySummary' {arn} -> arn) (\s@EntitySummary' {} a -> s {arn = a} :: EntitySummary)++-- | The current status of the entity.+entitySummary_status :: Lens.Lens' EntitySummary Status+entitySummary_status = Lens.lens (\EntitySummary' {status} -> status) (\s@EntitySummary' {} a -> s {status = a} :: EntitySummary)++-- | The date and time when the entity was created.+entitySummary_creationDateTime :: Lens.Lens' EntitySummary Prelude.UTCTime+entitySummary_creationDateTime = Lens.lens (\EntitySummary' {creationDateTime} -> creationDateTime) (\s@EntitySummary' {} a -> s {creationDateTime = a} :: EntitySummary) Prelude.. Data._Time++-- | The last date and time when the entity was updated.+entitySummary_updateDateTime :: Lens.Lens' EntitySummary Prelude.UTCTime+entitySummary_updateDateTime = Lens.lens (\EntitySummary' {updateDateTime} -> updateDateTime) (\s@EntitySummary' {} a -> s {updateDateTime = a} :: EntitySummary) Prelude.. Data._Time++instance Data.FromJSON EntitySummary where+ parseJSON =+ Data.withObject+ "EntitySummary"+ ( \x ->+ EntitySummary'+ Prelude.<$> (x Data..:? "description")+ Prelude.<*> (x Data..:? "hasChildEntities")+ Prelude.<*> (x Data..:? "parentEntityId")+ Prelude.<*> (x Data..: "entityId")+ Prelude.<*> (x Data..: "entityName")+ Prelude.<*> (x Data..: "arn")+ Prelude.<*> (x Data..: "status")+ Prelude.<*> (x Data..: "creationDateTime")+ Prelude.<*> (x Data..: "updateDateTime")+ )++instance Prelude.Hashable EntitySummary where+ hashWithSalt _salt EntitySummary' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` hasChildEntities+ `Prelude.hashWithSalt` parentEntityId+ `Prelude.hashWithSalt` entityId+ `Prelude.hashWithSalt` entityName+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` creationDateTime+ `Prelude.hashWithSalt` updateDateTime++instance Prelude.NFData EntitySummary where+ rnf EntitySummary' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf hasChildEntities+ `Prelude.seq` Prelude.rnf parentEntityId+ `Prelude.seq` Prelude.rnf entityId+ `Prelude.seq` Prelude.rnf entityName+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf updateDateTime
+ gen/Amazonka/IotTwinMaker/Types/ErrorCode.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.ErrorCode+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.ErrorCode+ ( ErrorCode+ ( ..,+ ErrorCode_INTERNAL_FAILURE,+ ErrorCode_SYNC_CREATING_ERROR,+ ErrorCode_SYNC_INITIALIZING_ERROR,+ ErrorCode_SYNC_PROCESSING_ERROR,+ ErrorCode_VALIDATION_ERROR+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ErrorCode = ErrorCode'+ { fromErrorCode ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ErrorCode_INTERNAL_FAILURE :: ErrorCode+pattern ErrorCode_INTERNAL_FAILURE = ErrorCode' "INTERNAL_FAILURE"++pattern ErrorCode_SYNC_CREATING_ERROR :: ErrorCode+pattern ErrorCode_SYNC_CREATING_ERROR = ErrorCode' "SYNC_CREATING_ERROR"++pattern ErrorCode_SYNC_INITIALIZING_ERROR :: ErrorCode+pattern ErrorCode_SYNC_INITIALIZING_ERROR = ErrorCode' "SYNC_INITIALIZING_ERROR"++pattern ErrorCode_SYNC_PROCESSING_ERROR :: ErrorCode+pattern ErrorCode_SYNC_PROCESSING_ERROR = ErrorCode' "SYNC_PROCESSING_ERROR"++pattern ErrorCode_VALIDATION_ERROR :: ErrorCode+pattern ErrorCode_VALIDATION_ERROR = ErrorCode' "VALIDATION_ERROR"++{-# COMPLETE+ ErrorCode_INTERNAL_FAILURE,+ ErrorCode_SYNC_CREATING_ERROR,+ ErrorCode_SYNC_INITIALIZING_ERROR,+ ErrorCode_SYNC_PROCESSING_ERROR,+ ErrorCode_VALIDATION_ERROR,+ ErrorCode'+ #-}
+ gen/Amazonka/IotTwinMaker/Types/ErrorDetails.hs view
@@ -0,0 +1,84 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.ErrorDetails+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.ErrorDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.ErrorCode+import qualified Amazonka.Prelude as Prelude++-- | The error details.+--+-- /See:/ 'newErrorDetails' smart constructor.+data ErrorDetails = ErrorDetails'+ { -- | The error code.+ code :: Prelude.Maybe ErrorCode,+ -- | The error message.+ message :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ErrorDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'code', 'errorDetails_code' - The error code.+--+-- 'message', 'errorDetails_message' - The error message.+newErrorDetails ::+ ErrorDetails+newErrorDetails =+ ErrorDetails'+ { code = Prelude.Nothing,+ message = Prelude.Nothing+ }++-- | The error code.+errorDetails_code :: Lens.Lens' ErrorDetails (Prelude.Maybe ErrorCode)+errorDetails_code = Lens.lens (\ErrorDetails' {code} -> code) (\s@ErrorDetails' {} a -> s {code = a} :: ErrorDetails)++-- | The error message.+errorDetails_message :: Lens.Lens' ErrorDetails (Prelude.Maybe Prelude.Text)+errorDetails_message = Lens.lens (\ErrorDetails' {message} -> message) (\s@ErrorDetails' {} a -> s {message = a} :: ErrorDetails)++instance Data.FromJSON ErrorDetails where+ parseJSON =+ Data.withObject+ "ErrorDetails"+ ( \x ->+ ErrorDetails'+ Prelude.<$> (x Data..:? "code")+ Prelude.<*> (x Data..:? "message")+ )++instance Prelude.Hashable ErrorDetails where+ hashWithSalt _salt ErrorDetails' {..} =+ _salt+ `Prelude.hashWithSalt` code+ `Prelude.hashWithSalt` message++instance Prelude.NFData ErrorDetails where+ rnf ErrorDetails' {..} =+ Prelude.rnf code `Prelude.seq` Prelude.rnf message
+ gen/Amazonka/IotTwinMaker/Types/FunctionRequest.hs view
@@ -0,0 +1,98 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.FunctionRequest+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.FunctionRequest where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.DataConnector+import Amazonka.IotTwinMaker.Types.Scope+import qualified Amazonka.Prelude as Prelude++-- | The function request body.+--+-- /See:/ 'newFunctionRequest' smart constructor.+data FunctionRequest = FunctionRequest'+ { -- | The data connector.+ implementedBy :: Prelude.Maybe DataConnector,+ -- | The required properties of the function.+ requiredProperties :: Prelude.Maybe [Prelude.Text],+ -- | The scope of the function.+ scope :: Prelude.Maybe Scope+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FunctionRequest' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'implementedBy', 'functionRequest_implementedBy' - The data connector.+--+-- 'requiredProperties', 'functionRequest_requiredProperties' - The required properties of the function.+--+-- 'scope', 'functionRequest_scope' - The scope of the function.+newFunctionRequest ::+ FunctionRequest+newFunctionRequest =+ FunctionRequest'+ { implementedBy = Prelude.Nothing,+ requiredProperties = Prelude.Nothing,+ scope = Prelude.Nothing+ }++-- | The data connector.+functionRequest_implementedBy :: Lens.Lens' FunctionRequest (Prelude.Maybe DataConnector)+functionRequest_implementedBy = Lens.lens (\FunctionRequest' {implementedBy} -> implementedBy) (\s@FunctionRequest' {} a -> s {implementedBy = a} :: FunctionRequest)++-- | The required properties of the function.+functionRequest_requiredProperties :: Lens.Lens' FunctionRequest (Prelude.Maybe [Prelude.Text])+functionRequest_requiredProperties = Lens.lens (\FunctionRequest' {requiredProperties} -> requiredProperties) (\s@FunctionRequest' {} a -> s {requiredProperties = a} :: FunctionRequest) Prelude.. Lens.mapping Lens.coerced++-- | The scope of the function.+functionRequest_scope :: Lens.Lens' FunctionRequest (Prelude.Maybe Scope)+functionRequest_scope = Lens.lens (\FunctionRequest' {scope} -> scope) (\s@FunctionRequest' {} a -> s {scope = a} :: FunctionRequest)++instance Prelude.Hashable FunctionRequest where+ hashWithSalt _salt FunctionRequest' {..} =+ _salt+ `Prelude.hashWithSalt` implementedBy+ `Prelude.hashWithSalt` requiredProperties+ `Prelude.hashWithSalt` scope++instance Prelude.NFData FunctionRequest where+ rnf FunctionRequest' {..} =+ Prelude.rnf implementedBy+ `Prelude.seq` Prelude.rnf requiredProperties+ `Prelude.seq` Prelude.rnf scope++instance Data.ToJSON FunctionRequest where+ toJSON FunctionRequest' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("implementedBy" Data..=) Prelude.<$> implementedBy,+ ("requiredProperties" Data..=)+ Prelude.<$> requiredProperties,+ ("scope" Data..=) Prelude.<$> scope+ ]+ )
+ gen/Amazonka/IotTwinMaker/Types/FunctionResponse.hs view
@@ -0,0 +1,113 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.FunctionResponse+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.FunctionResponse where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.DataConnector+import Amazonka.IotTwinMaker.Types.Scope+import qualified Amazonka.Prelude as Prelude++-- | The function response.+--+-- /See:/ 'newFunctionResponse' smart constructor.+data FunctionResponse = FunctionResponse'+ { -- | The data connector.+ implementedBy :: Prelude.Maybe DataConnector,+ -- | Indicates whether this function is inherited.+ isInherited :: Prelude.Maybe Prelude.Bool,+ -- | The required properties of the function.+ requiredProperties :: Prelude.Maybe [Prelude.Text],+ -- | The scope of the function.+ scope :: Prelude.Maybe Scope+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FunctionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'implementedBy', 'functionResponse_implementedBy' - The data connector.+--+-- 'isInherited', 'functionResponse_isInherited' - Indicates whether this function is inherited.+--+-- 'requiredProperties', 'functionResponse_requiredProperties' - The required properties of the function.+--+-- 'scope', 'functionResponse_scope' - The scope of the function.+newFunctionResponse ::+ FunctionResponse+newFunctionResponse =+ FunctionResponse'+ { implementedBy = Prelude.Nothing,+ isInherited = Prelude.Nothing,+ requiredProperties = Prelude.Nothing,+ scope = Prelude.Nothing+ }++-- | The data connector.+functionResponse_implementedBy :: Lens.Lens' FunctionResponse (Prelude.Maybe DataConnector)+functionResponse_implementedBy = Lens.lens (\FunctionResponse' {implementedBy} -> implementedBy) (\s@FunctionResponse' {} a -> s {implementedBy = a} :: FunctionResponse)++-- | Indicates whether this function is inherited.+functionResponse_isInherited :: Lens.Lens' FunctionResponse (Prelude.Maybe Prelude.Bool)+functionResponse_isInherited = Lens.lens (\FunctionResponse' {isInherited} -> isInherited) (\s@FunctionResponse' {} a -> s {isInherited = a} :: FunctionResponse)++-- | The required properties of the function.+functionResponse_requiredProperties :: Lens.Lens' FunctionResponse (Prelude.Maybe [Prelude.Text])+functionResponse_requiredProperties = Lens.lens (\FunctionResponse' {requiredProperties} -> requiredProperties) (\s@FunctionResponse' {} a -> s {requiredProperties = a} :: FunctionResponse) Prelude.. Lens.mapping Lens.coerced++-- | The scope of the function.+functionResponse_scope :: Lens.Lens' FunctionResponse (Prelude.Maybe Scope)+functionResponse_scope = Lens.lens (\FunctionResponse' {scope} -> scope) (\s@FunctionResponse' {} a -> s {scope = a} :: FunctionResponse)++instance Data.FromJSON FunctionResponse where+ parseJSON =+ Data.withObject+ "FunctionResponse"+ ( \x ->+ FunctionResponse'+ Prelude.<$> (x Data..:? "implementedBy")+ Prelude.<*> (x Data..:? "isInherited")+ Prelude.<*> ( x+ Data..:? "requiredProperties"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "scope")+ )++instance Prelude.Hashable FunctionResponse where+ hashWithSalt _salt FunctionResponse' {..} =+ _salt+ `Prelude.hashWithSalt` implementedBy+ `Prelude.hashWithSalt` isInherited+ `Prelude.hashWithSalt` requiredProperties+ `Prelude.hashWithSalt` scope++instance Prelude.NFData FunctionResponse where+ rnf FunctionResponse' {..} =+ Prelude.rnf implementedBy+ `Prelude.seq` Prelude.rnf isInherited+ `Prelude.seq` Prelude.rnf requiredProperties+ `Prelude.seq` Prelude.rnf scope
+ gen/Amazonka/IotTwinMaker/Types/GroupType.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.GroupType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.GroupType+ ( GroupType+ ( ..,+ GroupType_TABULAR+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype GroupType = GroupType'+ { fromGroupType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern GroupType_TABULAR :: GroupType+pattern GroupType_TABULAR = GroupType' "TABULAR"++{-# COMPLETE+ GroupType_TABULAR,+ GroupType'+ #-}
+ gen/Amazonka/IotTwinMaker/Types/InterpolationParameters.hs view
@@ -0,0 +1,87 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.InterpolationParameters+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.InterpolationParameters where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.InterpolationType+import qualified Amazonka.Prelude as Prelude++-- | An object that specifies how to interpolate data in a list.+--+-- /See:/ 'newInterpolationParameters' smart constructor.+data InterpolationParameters = InterpolationParameters'+ { -- | The interpolation type.+ interpolationType :: Prelude.Maybe InterpolationType,+ -- | The interpolation time interval in seconds.+ intervalInSeconds :: Prelude.Maybe Prelude.Integer+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InterpolationParameters' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'interpolationType', 'interpolationParameters_interpolationType' - The interpolation type.+--+-- 'intervalInSeconds', 'interpolationParameters_intervalInSeconds' - The interpolation time interval in seconds.+newInterpolationParameters ::+ InterpolationParameters+newInterpolationParameters =+ InterpolationParameters'+ { interpolationType =+ Prelude.Nothing,+ intervalInSeconds = Prelude.Nothing+ }++-- | The interpolation type.+interpolationParameters_interpolationType :: Lens.Lens' InterpolationParameters (Prelude.Maybe InterpolationType)+interpolationParameters_interpolationType = Lens.lens (\InterpolationParameters' {interpolationType} -> interpolationType) (\s@InterpolationParameters' {} a -> s {interpolationType = a} :: InterpolationParameters)++-- | The interpolation time interval in seconds.+interpolationParameters_intervalInSeconds :: Lens.Lens' InterpolationParameters (Prelude.Maybe Prelude.Integer)+interpolationParameters_intervalInSeconds = Lens.lens (\InterpolationParameters' {intervalInSeconds} -> intervalInSeconds) (\s@InterpolationParameters' {} a -> s {intervalInSeconds = a} :: InterpolationParameters)++instance Prelude.Hashable InterpolationParameters where+ hashWithSalt _salt InterpolationParameters' {..} =+ _salt+ `Prelude.hashWithSalt` interpolationType+ `Prelude.hashWithSalt` intervalInSeconds++instance Prelude.NFData InterpolationParameters where+ rnf InterpolationParameters' {..} =+ Prelude.rnf interpolationType+ `Prelude.seq` Prelude.rnf intervalInSeconds++instance Data.ToJSON InterpolationParameters where+ toJSON InterpolationParameters' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("interpolationType" Data..=)+ Prelude.<$> interpolationType,+ ("intervalInSeconds" Data..=)+ Prelude.<$> intervalInSeconds+ ]+ )
+ gen/Amazonka/IotTwinMaker/Types/InterpolationType.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.InterpolationType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.InterpolationType+ ( InterpolationType+ ( ..,+ InterpolationType_LINEAR+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype InterpolationType = InterpolationType'+ { fromInterpolationType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern InterpolationType_LINEAR :: InterpolationType+pattern InterpolationType_LINEAR = InterpolationType' "LINEAR"++{-# COMPLETE+ InterpolationType_LINEAR,+ InterpolationType'+ #-}
+ gen/Amazonka/IotTwinMaker/Types/LambdaFunction.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.LambdaFunction+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.LambdaFunction where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The Lambda function.+--+-- /See:/ 'newLambdaFunction' smart constructor.+data LambdaFunction = LambdaFunction'+ { -- | The ARN of the Lambda function.+ arn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LambdaFunction' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'arn', 'lambdaFunction_arn' - The ARN of the Lambda function.+newLambdaFunction ::+ -- | 'arn'+ Prelude.Text ->+ LambdaFunction+newLambdaFunction pArn_ =+ LambdaFunction' {arn = pArn_}++-- | The ARN of the Lambda function.+lambdaFunction_arn :: Lens.Lens' LambdaFunction Prelude.Text+lambdaFunction_arn = Lens.lens (\LambdaFunction' {arn} -> arn) (\s@LambdaFunction' {} a -> s {arn = a} :: LambdaFunction)++instance Data.FromJSON LambdaFunction where+ parseJSON =+ Data.withObject+ "LambdaFunction"+ ( \x ->+ LambdaFunction' Prelude.<$> (x Data..: "arn")+ )++instance Prelude.Hashable LambdaFunction where+ hashWithSalt _salt LambdaFunction' {..} =+ _salt `Prelude.hashWithSalt` arn++instance Prelude.NFData LambdaFunction where+ rnf LambdaFunction' {..} = Prelude.rnf arn++instance Data.ToJSON LambdaFunction where+ toJSON LambdaFunction' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("arn" Data..= arn)]+ )
+ gen/Amazonka/IotTwinMaker/Types/ListComponentTypesFilter.hs view
@@ -0,0 +1,101 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.ListComponentTypesFilter+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.ListComponentTypesFilter where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | An object that filters items in a list of component types.+--+-- Only one object is accepted as a valid input.+--+-- /See:/ 'newListComponentTypesFilter' smart constructor.+data ListComponentTypesFilter = ListComponentTypesFilter'+ { -- | The component type that the component types in the list extend.+ extendsFrom :: Prelude.Maybe Prelude.Text,+ -- | A Boolean value that specifies whether the component types in the list+ -- are abstract.+ isAbstract :: Prelude.Maybe Prelude.Bool,+ -- | The namespace to which the component types in the list belong.+ namespace :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListComponentTypesFilter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'extendsFrom', 'listComponentTypesFilter_extendsFrom' - The component type that the component types in the list extend.+--+-- 'isAbstract', 'listComponentTypesFilter_isAbstract' - A Boolean value that specifies whether the component types in the list+-- are abstract.+--+-- 'namespace', 'listComponentTypesFilter_namespace' - The namespace to which the component types in the list belong.+newListComponentTypesFilter ::+ ListComponentTypesFilter+newListComponentTypesFilter =+ ListComponentTypesFilter'+ { extendsFrom =+ Prelude.Nothing,+ isAbstract = Prelude.Nothing,+ namespace = Prelude.Nothing+ }++-- | The component type that the component types in the list extend.+listComponentTypesFilter_extendsFrom :: Lens.Lens' ListComponentTypesFilter (Prelude.Maybe Prelude.Text)+listComponentTypesFilter_extendsFrom = Lens.lens (\ListComponentTypesFilter' {extendsFrom} -> extendsFrom) (\s@ListComponentTypesFilter' {} a -> s {extendsFrom = a} :: ListComponentTypesFilter)++-- | A Boolean value that specifies whether the component types in the list+-- are abstract.+listComponentTypesFilter_isAbstract :: Lens.Lens' ListComponentTypesFilter (Prelude.Maybe Prelude.Bool)+listComponentTypesFilter_isAbstract = Lens.lens (\ListComponentTypesFilter' {isAbstract} -> isAbstract) (\s@ListComponentTypesFilter' {} a -> s {isAbstract = a} :: ListComponentTypesFilter)++-- | The namespace to which the component types in the list belong.+listComponentTypesFilter_namespace :: Lens.Lens' ListComponentTypesFilter (Prelude.Maybe Prelude.Text)+listComponentTypesFilter_namespace = Lens.lens (\ListComponentTypesFilter' {namespace} -> namespace) (\s@ListComponentTypesFilter' {} a -> s {namespace = a} :: ListComponentTypesFilter)++instance Prelude.Hashable ListComponentTypesFilter where+ hashWithSalt _salt ListComponentTypesFilter' {..} =+ _salt+ `Prelude.hashWithSalt` extendsFrom+ `Prelude.hashWithSalt` isAbstract+ `Prelude.hashWithSalt` namespace++instance Prelude.NFData ListComponentTypesFilter where+ rnf ListComponentTypesFilter' {..} =+ Prelude.rnf extendsFrom+ `Prelude.seq` Prelude.rnf isAbstract+ `Prelude.seq` Prelude.rnf namespace++instance Data.ToJSON ListComponentTypesFilter where+ toJSON ListComponentTypesFilter' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("extendsFrom" Data..=) Prelude.<$> extendsFrom,+ ("isAbstract" Data..=) Prelude.<$> isAbstract,+ ("namespace" Data..=) Prelude.<$> namespace+ ]+ )
+ gen/Amazonka/IotTwinMaker/Types/ListEntitiesFilter.hs view
@@ -0,0 +1,101 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.ListEntitiesFilter+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.ListEntitiesFilter where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | An object that filters items in a list of entities.+--+-- /See:/ 'newListEntitiesFilter' smart constructor.+data ListEntitiesFilter = ListEntitiesFilter'+ { -- | The ID of the component type in the entities in the list.+ componentTypeId :: Prelude.Maybe Prelude.Text,+ -- | The external-Id property of a component. The external-Id property is the+ -- primary key of an external storage system.+ externalId :: Prelude.Maybe Prelude.Text,+ -- | The parent of the entities in the list.+ parentEntityId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListEntitiesFilter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'componentTypeId', 'listEntitiesFilter_componentTypeId' - The ID of the component type in the entities in the list.+--+-- 'externalId', 'listEntitiesFilter_externalId' - The external-Id property of a component. The external-Id property is the+-- primary key of an external storage system.+--+-- 'parentEntityId', 'listEntitiesFilter_parentEntityId' - The parent of the entities in the list.+newListEntitiesFilter ::+ ListEntitiesFilter+newListEntitiesFilter =+ ListEntitiesFilter'+ { componentTypeId =+ Prelude.Nothing,+ externalId = Prelude.Nothing,+ parentEntityId = Prelude.Nothing+ }++-- | The ID of the component type in the entities in the list.+listEntitiesFilter_componentTypeId :: Lens.Lens' ListEntitiesFilter (Prelude.Maybe Prelude.Text)+listEntitiesFilter_componentTypeId = Lens.lens (\ListEntitiesFilter' {componentTypeId} -> componentTypeId) (\s@ListEntitiesFilter' {} a -> s {componentTypeId = a} :: ListEntitiesFilter)++-- | The external-Id property of a component. The external-Id property is the+-- primary key of an external storage system.+listEntitiesFilter_externalId :: Lens.Lens' ListEntitiesFilter (Prelude.Maybe Prelude.Text)+listEntitiesFilter_externalId = Lens.lens (\ListEntitiesFilter' {externalId} -> externalId) (\s@ListEntitiesFilter' {} a -> s {externalId = a} :: ListEntitiesFilter)++-- | The parent of the entities in the list.+listEntitiesFilter_parentEntityId :: Lens.Lens' ListEntitiesFilter (Prelude.Maybe Prelude.Text)+listEntitiesFilter_parentEntityId = Lens.lens (\ListEntitiesFilter' {parentEntityId} -> parentEntityId) (\s@ListEntitiesFilter' {} a -> s {parentEntityId = a} :: ListEntitiesFilter)++instance Prelude.Hashable ListEntitiesFilter where+ hashWithSalt _salt ListEntitiesFilter' {..} =+ _salt+ `Prelude.hashWithSalt` componentTypeId+ `Prelude.hashWithSalt` externalId+ `Prelude.hashWithSalt` parentEntityId++instance Prelude.NFData ListEntitiesFilter where+ rnf ListEntitiesFilter' {..} =+ Prelude.rnf componentTypeId+ `Prelude.seq` Prelude.rnf externalId+ `Prelude.seq` Prelude.rnf parentEntityId++instance Data.ToJSON ListEntitiesFilter where+ toJSON ListEntitiesFilter' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("componentTypeId" Data..=)+ Prelude.<$> componentTypeId,+ ("externalId" Data..=) Prelude.<$> externalId,+ ("parentEntityId" Data..=)+ Prelude.<$> parentEntityId+ ]+ )
+ gen/Amazonka/IotTwinMaker/Types/Order.hs view
@@ -0,0 +1,68 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.Order+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.Order+ ( Order+ ( ..,+ Order_ASCENDING,+ Order_DESCENDING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype Order = Order' {fromOrder :: Data.Text}+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern Order_ASCENDING :: Order+pattern Order_ASCENDING = Order' "ASCENDING"++pattern Order_DESCENDING :: Order+pattern Order_DESCENDING = Order' "DESCENDING"++{-# COMPLETE+ Order_ASCENDING,+ Order_DESCENDING,+ Order'+ #-}
+ gen/Amazonka/IotTwinMaker/Types/OrderBy.hs view
@@ -0,0 +1,87 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.OrderBy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.OrderBy where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.Order+import qualified Amazonka.Prelude as Prelude++-- | Filter criteria that orders the return output. It can be sorted in+-- ascending or descending order.+--+-- /See:/ 'newOrderBy' smart constructor.+data OrderBy = OrderBy'+ { -- | The set order that filters results.+ order :: Prelude.Maybe Order,+ -- | The property name.+ propertyName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'OrderBy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'order', 'orderBy_order' - The set order that filters results.+--+-- 'propertyName', 'orderBy_propertyName' - The property name.+newOrderBy ::+ -- | 'propertyName'+ Prelude.Text ->+ OrderBy+newOrderBy pPropertyName_ =+ OrderBy'+ { order = Prelude.Nothing,+ propertyName = pPropertyName_+ }++-- | The set order that filters results.+orderBy_order :: Lens.Lens' OrderBy (Prelude.Maybe Order)+orderBy_order = Lens.lens (\OrderBy' {order} -> order) (\s@OrderBy' {} a -> s {order = a} :: OrderBy)++-- | The property name.+orderBy_propertyName :: Lens.Lens' OrderBy Prelude.Text+orderBy_propertyName = Lens.lens (\OrderBy' {propertyName} -> propertyName) (\s@OrderBy' {} a -> s {propertyName = a} :: OrderBy)++instance Prelude.Hashable OrderBy where+ hashWithSalt _salt OrderBy' {..} =+ _salt+ `Prelude.hashWithSalt` order+ `Prelude.hashWithSalt` propertyName++instance Prelude.NFData OrderBy where+ rnf OrderBy' {..} =+ Prelude.rnf order+ `Prelude.seq` Prelude.rnf propertyName++instance Data.ToJSON OrderBy where+ toJSON OrderBy' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("order" Data..=) Prelude.<$> order,+ Prelude.Just ("propertyName" Data..= propertyName)+ ]+ )
+ gen/Amazonka/IotTwinMaker/Types/OrderByTime.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.OrderByTime+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.OrderByTime+ ( OrderByTime+ ( ..,+ OrderByTime_ASCENDING,+ OrderByTime_DESCENDING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype OrderByTime = OrderByTime'+ { fromOrderByTime ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern OrderByTime_ASCENDING :: OrderByTime+pattern OrderByTime_ASCENDING = OrderByTime' "ASCENDING"++pattern OrderByTime_DESCENDING :: OrderByTime+pattern OrderByTime_DESCENDING = OrderByTime' "DESCENDING"++{-# COMPLETE+ OrderByTime_ASCENDING,+ OrderByTime_DESCENDING,+ OrderByTime'+ #-}
+ gen/Amazonka/IotTwinMaker/Types/ParentEntityUpdateRequest.hs view
@@ -0,0 +1,88 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.ParentEntityUpdateRequest+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.ParentEntityUpdateRequest where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.ParentEntityUpdateType+import qualified Amazonka.Prelude as Prelude++-- | The parent entity update request.+--+-- /See:/ 'newParentEntityUpdateRequest' smart constructor.+data ParentEntityUpdateRequest = ParentEntityUpdateRequest'+ { -- | The ID of the parent entity.+ parentEntityId :: Prelude.Maybe Prelude.Text,+ -- | The type of the update.+ updateType :: ParentEntityUpdateType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ParentEntityUpdateRequest' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'parentEntityId', 'parentEntityUpdateRequest_parentEntityId' - The ID of the parent entity.+--+-- 'updateType', 'parentEntityUpdateRequest_updateType' - The type of the update.+newParentEntityUpdateRequest ::+ -- | 'updateType'+ ParentEntityUpdateType ->+ ParentEntityUpdateRequest+newParentEntityUpdateRequest pUpdateType_ =+ ParentEntityUpdateRequest'+ { parentEntityId =+ Prelude.Nothing,+ updateType = pUpdateType_+ }++-- | The ID of the parent entity.+parentEntityUpdateRequest_parentEntityId :: Lens.Lens' ParentEntityUpdateRequest (Prelude.Maybe Prelude.Text)+parentEntityUpdateRequest_parentEntityId = Lens.lens (\ParentEntityUpdateRequest' {parentEntityId} -> parentEntityId) (\s@ParentEntityUpdateRequest' {} a -> s {parentEntityId = a} :: ParentEntityUpdateRequest)++-- | The type of the update.+parentEntityUpdateRequest_updateType :: Lens.Lens' ParentEntityUpdateRequest ParentEntityUpdateType+parentEntityUpdateRequest_updateType = Lens.lens (\ParentEntityUpdateRequest' {updateType} -> updateType) (\s@ParentEntityUpdateRequest' {} a -> s {updateType = a} :: ParentEntityUpdateRequest)++instance Prelude.Hashable ParentEntityUpdateRequest where+ hashWithSalt _salt ParentEntityUpdateRequest' {..} =+ _salt+ `Prelude.hashWithSalt` parentEntityId+ `Prelude.hashWithSalt` updateType++instance Prelude.NFData ParentEntityUpdateRequest where+ rnf ParentEntityUpdateRequest' {..} =+ Prelude.rnf parentEntityId+ `Prelude.seq` Prelude.rnf updateType++instance Data.ToJSON ParentEntityUpdateRequest where+ toJSON ParentEntityUpdateRequest' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("parentEntityId" Data..=)+ Prelude.<$> parentEntityId,+ Prelude.Just ("updateType" Data..= updateType)+ ]+ )
+ gen/Amazonka/IotTwinMaker/Types/ParentEntityUpdateType.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.ParentEntityUpdateType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.ParentEntityUpdateType+ ( ParentEntityUpdateType+ ( ..,+ ParentEntityUpdateType_DELETE,+ ParentEntityUpdateType_UPDATE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ParentEntityUpdateType = ParentEntityUpdateType'+ { fromParentEntityUpdateType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ParentEntityUpdateType_DELETE :: ParentEntityUpdateType+pattern ParentEntityUpdateType_DELETE = ParentEntityUpdateType' "DELETE"++pattern ParentEntityUpdateType_UPDATE :: ParentEntityUpdateType+pattern ParentEntityUpdateType_UPDATE = ParentEntityUpdateType' "UPDATE"++{-# COMPLETE+ ParentEntityUpdateType_DELETE,+ ParentEntityUpdateType_UPDATE,+ ParentEntityUpdateType'+ #-}
+ gen/Amazonka/IotTwinMaker/Types/PricingMode.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.PricingMode+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.PricingMode+ ( PricingMode+ ( ..,+ PricingMode_BASIC,+ PricingMode_STANDARD,+ PricingMode_TIERED_BUNDLE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PricingMode = PricingMode'+ { fromPricingMode ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern PricingMode_BASIC :: PricingMode+pattern PricingMode_BASIC = PricingMode' "BASIC"++pattern PricingMode_STANDARD :: PricingMode+pattern PricingMode_STANDARD = PricingMode' "STANDARD"++pattern PricingMode_TIERED_BUNDLE :: PricingMode+pattern PricingMode_TIERED_BUNDLE = PricingMode' "TIERED_BUNDLE"++{-# COMPLETE+ PricingMode_BASIC,+ PricingMode_STANDARD,+ PricingMode_TIERED_BUNDLE,+ PricingMode'+ #-}
+ gen/Amazonka/IotTwinMaker/Types/PricingPlan.hs view
@@ -0,0 +1,148 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.PricingPlan+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.PricingPlan where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.BundleInformation+import Amazonka.IotTwinMaker.Types.PricingMode+import Amazonka.IotTwinMaker.Types.UpdateReason+import qualified Amazonka.Prelude as Prelude++-- | The pricing plan.+--+-- /See:/ 'newPricingPlan' smart constructor.+data PricingPlan = PricingPlan'+ { -- | The billable entity count.+ billableEntityCount :: Prelude.Maybe Prelude.Integer,+ -- | The pricing plan\'s bundle information.+ bundleInformation :: Prelude.Maybe BundleInformation,+ -- | The effective date and time of the pricing plan.+ effectiveDateTime :: Data.POSIX,+ -- | The pricing mode.+ pricingMode :: PricingMode,+ -- | The set date and time for updating a pricing plan.+ updateDateTime :: Data.POSIX,+ -- | The update reason, for changing a pricing plan.+ updateReason :: UpdateReason+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PricingPlan' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'billableEntityCount', 'pricingPlan_billableEntityCount' - The billable entity count.+--+-- 'bundleInformation', 'pricingPlan_bundleInformation' - The pricing plan\'s bundle information.+--+-- 'effectiveDateTime', 'pricingPlan_effectiveDateTime' - The effective date and time of the pricing plan.+--+-- 'pricingMode', 'pricingPlan_pricingMode' - The pricing mode.+--+-- 'updateDateTime', 'pricingPlan_updateDateTime' - The set date and time for updating a pricing plan.+--+-- 'updateReason', 'pricingPlan_updateReason' - The update reason, for changing a pricing plan.+newPricingPlan ::+ -- | 'effectiveDateTime'+ Prelude.UTCTime ->+ -- | 'pricingMode'+ PricingMode ->+ -- | 'updateDateTime'+ Prelude.UTCTime ->+ -- | 'updateReason'+ UpdateReason ->+ PricingPlan+newPricingPlan+ pEffectiveDateTime_+ pPricingMode_+ pUpdateDateTime_+ pUpdateReason_ =+ PricingPlan'+ { billableEntityCount = Prelude.Nothing,+ bundleInformation = Prelude.Nothing,+ effectiveDateTime =+ Data._Time Lens.# pEffectiveDateTime_,+ pricingMode = pPricingMode_,+ updateDateTime = Data._Time Lens.# pUpdateDateTime_,+ updateReason = pUpdateReason_+ }++-- | The billable entity count.+pricingPlan_billableEntityCount :: Lens.Lens' PricingPlan (Prelude.Maybe Prelude.Integer)+pricingPlan_billableEntityCount = Lens.lens (\PricingPlan' {billableEntityCount} -> billableEntityCount) (\s@PricingPlan' {} a -> s {billableEntityCount = a} :: PricingPlan)++-- | The pricing plan\'s bundle information.+pricingPlan_bundleInformation :: Lens.Lens' PricingPlan (Prelude.Maybe BundleInformation)+pricingPlan_bundleInformation = Lens.lens (\PricingPlan' {bundleInformation} -> bundleInformation) (\s@PricingPlan' {} a -> s {bundleInformation = a} :: PricingPlan)++-- | The effective date and time of the pricing plan.+pricingPlan_effectiveDateTime :: Lens.Lens' PricingPlan Prelude.UTCTime+pricingPlan_effectiveDateTime = Lens.lens (\PricingPlan' {effectiveDateTime} -> effectiveDateTime) (\s@PricingPlan' {} a -> s {effectiveDateTime = a} :: PricingPlan) Prelude.. Data._Time++-- | The pricing mode.+pricingPlan_pricingMode :: Lens.Lens' PricingPlan PricingMode+pricingPlan_pricingMode = Lens.lens (\PricingPlan' {pricingMode} -> pricingMode) (\s@PricingPlan' {} a -> s {pricingMode = a} :: PricingPlan)++-- | The set date and time for updating a pricing plan.+pricingPlan_updateDateTime :: Lens.Lens' PricingPlan Prelude.UTCTime+pricingPlan_updateDateTime = Lens.lens (\PricingPlan' {updateDateTime} -> updateDateTime) (\s@PricingPlan' {} a -> s {updateDateTime = a} :: PricingPlan) Prelude.. Data._Time++-- | The update reason, for changing a pricing plan.+pricingPlan_updateReason :: Lens.Lens' PricingPlan UpdateReason+pricingPlan_updateReason = Lens.lens (\PricingPlan' {updateReason} -> updateReason) (\s@PricingPlan' {} a -> s {updateReason = a} :: PricingPlan)++instance Data.FromJSON PricingPlan where+ parseJSON =+ Data.withObject+ "PricingPlan"+ ( \x ->+ PricingPlan'+ Prelude.<$> (x Data..:? "billableEntityCount")+ Prelude.<*> (x Data..:? "bundleInformation")+ Prelude.<*> (x Data..: "effectiveDateTime")+ Prelude.<*> (x Data..: "pricingMode")+ Prelude.<*> (x Data..: "updateDateTime")+ Prelude.<*> (x Data..: "updateReason")+ )++instance Prelude.Hashable PricingPlan where+ hashWithSalt _salt PricingPlan' {..} =+ _salt+ `Prelude.hashWithSalt` billableEntityCount+ `Prelude.hashWithSalt` bundleInformation+ `Prelude.hashWithSalt` effectiveDateTime+ `Prelude.hashWithSalt` pricingMode+ `Prelude.hashWithSalt` updateDateTime+ `Prelude.hashWithSalt` updateReason++instance Prelude.NFData PricingPlan where+ rnf PricingPlan' {..} =+ Prelude.rnf billableEntityCount+ `Prelude.seq` Prelude.rnf bundleInformation+ `Prelude.seq` Prelude.rnf effectiveDateTime+ `Prelude.seq` Prelude.rnf pricingMode+ `Prelude.seq` Prelude.rnf updateDateTime+ `Prelude.seq` Prelude.rnf updateReason
+ gen/Amazonka/IotTwinMaker/Types/PricingTier.hs view
@@ -0,0 +1,81 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.PricingTier+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.PricingTier+ ( PricingTier+ ( ..,+ PricingTier_TIER_1,+ PricingTier_TIER_2,+ PricingTier_TIER_3,+ PricingTier_TIER_4+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PricingTier = PricingTier'+ { fromPricingTier ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern PricingTier_TIER_1 :: PricingTier+pattern PricingTier_TIER_1 = PricingTier' "TIER_1"++pattern PricingTier_TIER_2 :: PricingTier+pattern PricingTier_TIER_2 = PricingTier' "TIER_2"++pattern PricingTier_TIER_3 :: PricingTier+pattern PricingTier_TIER_3 = PricingTier' "TIER_3"++pattern PricingTier_TIER_4 :: PricingTier+pattern PricingTier_TIER_4 = PricingTier' "TIER_4"++{-# COMPLETE+ PricingTier_TIER_1,+ PricingTier_TIER_2,+ PricingTier_TIER_3,+ PricingTier_TIER_4,+ PricingTier'+ #-}
+ gen/Amazonka/IotTwinMaker/Types/PropertyDefinitionRequest.hs view
@@ -0,0 +1,175 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.PropertyDefinitionRequest+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.PropertyDefinitionRequest where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.DataType+import Amazonka.IotTwinMaker.Types.DataValue+import qualified Amazonka.Prelude as Prelude++-- | An object that sets information about a property.+--+-- /See:/ 'newPropertyDefinitionRequest' smart constructor.+data PropertyDefinitionRequest = PropertyDefinitionRequest'+ { -- | A mapping that specifies configuration information about the property.+ -- Use this field to specify information that you read from and write to an+ -- external source.+ configuration :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | An object that contains information about the data type.+ dataType :: Prelude.Maybe DataType,+ -- | An object that contains the default value.+ defaultValue :: Prelude.Maybe DataValue,+ -- | A friendly name for the property.+ displayName :: Prelude.Maybe Prelude.Text,+ -- | A Boolean value that specifies whether the property ID comes from an+ -- external data store.+ isExternalId :: Prelude.Maybe Prelude.Bool,+ -- | A Boolean value that specifies whether the property is required.+ isRequiredInEntity :: Prelude.Maybe Prelude.Bool,+ -- | A Boolean value that specifies whether the property is stored+ -- externally.+ isStoredExternally :: Prelude.Maybe Prelude.Bool,+ -- | A Boolean value that specifies whether the property consists of time+ -- series data.+ isTimeSeries :: Prelude.Maybe Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PropertyDefinitionRequest' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'configuration', 'propertyDefinitionRequest_configuration' - A mapping that specifies configuration information about the property.+-- Use this field to specify information that you read from and write to an+-- external source.+--+-- 'dataType', 'propertyDefinitionRequest_dataType' - An object that contains information about the data type.+--+-- 'defaultValue', 'propertyDefinitionRequest_defaultValue' - An object that contains the default value.+--+-- 'displayName', 'propertyDefinitionRequest_displayName' - A friendly name for the property.+--+-- 'isExternalId', 'propertyDefinitionRequest_isExternalId' - A Boolean value that specifies whether the property ID comes from an+-- external data store.+--+-- 'isRequiredInEntity', 'propertyDefinitionRequest_isRequiredInEntity' - A Boolean value that specifies whether the property is required.+--+-- 'isStoredExternally', 'propertyDefinitionRequest_isStoredExternally' - A Boolean value that specifies whether the property is stored+-- externally.+--+-- 'isTimeSeries', 'propertyDefinitionRequest_isTimeSeries' - A Boolean value that specifies whether the property consists of time+-- series data.+newPropertyDefinitionRequest ::+ PropertyDefinitionRequest+newPropertyDefinitionRequest =+ PropertyDefinitionRequest'+ { configuration =+ Prelude.Nothing,+ dataType = Prelude.Nothing,+ defaultValue = Prelude.Nothing,+ displayName = Prelude.Nothing,+ isExternalId = Prelude.Nothing,+ isRequiredInEntity = Prelude.Nothing,+ isStoredExternally = Prelude.Nothing,+ isTimeSeries = Prelude.Nothing+ }++-- | A mapping that specifies configuration information about the property.+-- Use this field to specify information that you read from and write to an+-- external source.+propertyDefinitionRequest_configuration :: Lens.Lens' PropertyDefinitionRequest (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+propertyDefinitionRequest_configuration = Lens.lens (\PropertyDefinitionRequest' {configuration} -> configuration) (\s@PropertyDefinitionRequest' {} a -> s {configuration = a} :: PropertyDefinitionRequest) Prelude.. Lens.mapping Lens.coerced++-- | An object that contains information about the data type.+propertyDefinitionRequest_dataType :: Lens.Lens' PropertyDefinitionRequest (Prelude.Maybe DataType)+propertyDefinitionRequest_dataType = Lens.lens (\PropertyDefinitionRequest' {dataType} -> dataType) (\s@PropertyDefinitionRequest' {} a -> s {dataType = a} :: PropertyDefinitionRequest)++-- | An object that contains the default value.+propertyDefinitionRequest_defaultValue :: Lens.Lens' PropertyDefinitionRequest (Prelude.Maybe DataValue)+propertyDefinitionRequest_defaultValue = Lens.lens (\PropertyDefinitionRequest' {defaultValue} -> defaultValue) (\s@PropertyDefinitionRequest' {} a -> s {defaultValue = a} :: PropertyDefinitionRequest)++-- | A friendly name for the property.+propertyDefinitionRequest_displayName :: Lens.Lens' PropertyDefinitionRequest (Prelude.Maybe Prelude.Text)+propertyDefinitionRequest_displayName = Lens.lens (\PropertyDefinitionRequest' {displayName} -> displayName) (\s@PropertyDefinitionRequest' {} a -> s {displayName = a} :: PropertyDefinitionRequest)++-- | A Boolean value that specifies whether the property ID comes from an+-- external data store.+propertyDefinitionRequest_isExternalId :: Lens.Lens' PropertyDefinitionRequest (Prelude.Maybe Prelude.Bool)+propertyDefinitionRequest_isExternalId = Lens.lens (\PropertyDefinitionRequest' {isExternalId} -> isExternalId) (\s@PropertyDefinitionRequest' {} a -> s {isExternalId = a} :: PropertyDefinitionRequest)++-- | A Boolean value that specifies whether the property is required.+propertyDefinitionRequest_isRequiredInEntity :: Lens.Lens' PropertyDefinitionRequest (Prelude.Maybe Prelude.Bool)+propertyDefinitionRequest_isRequiredInEntity = Lens.lens (\PropertyDefinitionRequest' {isRequiredInEntity} -> isRequiredInEntity) (\s@PropertyDefinitionRequest' {} a -> s {isRequiredInEntity = a} :: PropertyDefinitionRequest)++-- | A Boolean value that specifies whether the property is stored+-- externally.+propertyDefinitionRequest_isStoredExternally :: Lens.Lens' PropertyDefinitionRequest (Prelude.Maybe Prelude.Bool)+propertyDefinitionRequest_isStoredExternally = Lens.lens (\PropertyDefinitionRequest' {isStoredExternally} -> isStoredExternally) (\s@PropertyDefinitionRequest' {} a -> s {isStoredExternally = a} :: PropertyDefinitionRequest)++-- | A Boolean value that specifies whether the property consists of time+-- series data.+propertyDefinitionRequest_isTimeSeries :: Lens.Lens' PropertyDefinitionRequest (Prelude.Maybe Prelude.Bool)+propertyDefinitionRequest_isTimeSeries = Lens.lens (\PropertyDefinitionRequest' {isTimeSeries} -> isTimeSeries) (\s@PropertyDefinitionRequest' {} a -> s {isTimeSeries = a} :: PropertyDefinitionRequest)++instance Prelude.Hashable PropertyDefinitionRequest where+ hashWithSalt _salt PropertyDefinitionRequest' {..} =+ _salt+ `Prelude.hashWithSalt` configuration+ `Prelude.hashWithSalt` dataType+ `Prelude.hashWithSalt` defaultValue+ `Prelude.hashWithSalt` displayName+ `Prelude.hashWithSalt` isExternalId+ `Prelude.hashWithSalt` isRequiredInEntity+ `Prelude.hashWithSalt` isStoredExternally+ `Prelude.hashWithSalt` isTimeSeries++instance Prelude.NFData PropertyDefinitionRequest where+ rnf PropertyDefinitionRequest' {..} =+ Prelude.rnf configuration+ `Prelude.seq` Prelude.rnf dataType+ `Prelude.seq` Prelude.rnf defaultValue+ `Prelude.seq` Prelude.rnf displayName+ `Prelude.seq` Prelude.rnf isExternalId+ `Prelude.seq` Prelude.rnf isRequiredInEntity+ `Prelude.seq` Prelude.rnf isStoredExternally+ `Prelude.seq` Prelude.rnf isTimeSeries++instance Data.ToJSON PropertyDefinitionRequest where+ toJSON PropertyDefinitionRequest' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("configuration" Data..=) Prelude.<$> configuration,+ ("dataType" Data..=) Prelude.<$> dataType,+ ("defaultValue" Data..=) Prelude.<$> defaultValue,+ ("displayName" Data..=) Prelude.<$> displayName,+ ("isExternalId" Data..=) Prelude.<$> isExternalId,+ ("isRequiredInEntity" Data..=)+ Prelude.<$> isRequiredInEntity,+ ("isStoredExternally" Data..=)+ Prelude.<$> isStoredExternally,+ ("isTimeSeries" Data..=) Prelude.<$> isTimeSeries+ ]+ )
+ gen/Amazonka/IotTwinMaker/Types/PropertyDefinitionResponse.hs view
@@ -0,0 +1,241 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.PropertyDefinitionResponse+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.PropertyDefinitionResponse where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.DataType+import Amazonka.IotTwinMaker.Types.DataValue+import qualified Amazonka.Prelude as Prelude++-- | An object that contains response data from a property definition+-- request.+--+-- /See:/ 'newPropertyDefinitionResponse' smart constructor.+data PropertyDefinitionResponse = PropertyDefinitionResponse'+ { -- | A mapping that specifies configuration information about the property.+ configuration :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | An object that contains the default value.+ defaultValue :: Prelude.Maybe DataValue,+ -- | A friendly name for the property.+ displayName :: Prelude.Maybe Prelude.Text,+ -- | An object that contains information about the data type.+ dataType :: DataType,+ -- | A Boolean value that specifies whether the property consists of time+ -- series data.+ isTimeSeries :: Prelude.Bool,+ -- | A Boolean value that specifies whether the property is required in an+ -- entity.+ isRequiredInEntity :: Prelude.Bool,+ -- | A Boolean value that specifies whether the property ID comes from an+ -- external data store.+ isExternalId :: Prelude.Bool,+ -- | A Boolean value that specifies whether the property is stored+ -- externally.+ isStoredExternally :: Prelude.Bool,+ -- | A Boolean value that specifies whether the property definition is+ -- imported from an external data store.+ isImported :: Prelude.Bool,+ -- | A Boolean value that specifies whether the property definition can be+ -- updated.+ isFinal :: Prelude.Bool,+ -- | A Boolean value that specifies whether the property definition is+ -- inherited from a parent entity.+ isInherited :: Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PropertyDefinitionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'configuration', 'propertyDefinitionResponse_configuration' - A mapping that specifies configuration information about the property.+--+-- 'defaultValue', 'propertyDefinitionResponse_defaultValue' - An object that contains the default value.+--+-- 'displayName', 'propertyDefinitionResponse_displayName' - A friendly name for the property.+--+-- 'dataType', 'propertyDefinitionResponse_dataType' - An object that contains information about the data type.+--+-- 'isTimeSeries', 'propertyDefinitionResponse_isTimeSeries' - A Boolean value that specifies whether the property consists of time+-- series data.+--+-- 'isRequiredInEntity', 'propertyDefinitionResponse_isRequiredInEntity' - A Boolean value that specifies whether the property is required in an+-- entity.+--+-- 'isExternalId', 'propertyDefinitionResponse_isExternalId' - A Boolean value that specifies whether the property ID comes from an+-- external data store.+--+-- 'isStoredExternally', 'propertyDefinitionResponse_isStoredExternally' - A Boolean value that specifies whether the property is stored+-- externally.+--+-- 'isImported', 'propertyDefinitionResponse_isImported' - A Boolean value that specifies whether the property definition is+-- imported from an external data store.+--+-- 'isFinal', 'propertyDefinitionResponse_isFinal' - A Boolean value that specifies whether the property definition can be+-- updated.+--+-- 'isInherited', 'propertyDefinitionResponse_isInherited' - A Boolean value that specifies whether the property definition is+-- inherited from a parent entity.+newPropertyDefinitionResponse ::+ -- | 'dataType'+ DataType ->+ -- | 'isTimeSeries'+ Prelude.Bool ->+ -- | 'isRequiredInEntity'+ Prelude.Bool ->+ -- | 'isExternalId'+ Prelude.Bool ->+ -- | 'isStoredExternally'+ Prelude.Bool ->+ -- | 'isImported'+ Prelude.Bool ->+ -- | 'isFinal'+ Prelude.Bool ->+ -- | 'isInherited'+ Prelude.Bool ->+ PropertyDefinitionResponse+newPropertyDefinitionResponse+ pDataType_+ pIsTimeSeries_+ pIsRequiredInEntity_+ pIsExternalId_+ pIsStoredExternally_+ pIsImported_+ pIsFinal_+ pIsInherited_ =+ PropertyDefinitionResponse'+ { configuration =+ Prelude.Nothing,+ defaultValue = Prelude.Nothing,+ displayName = Prelude.Nothing,+ dataType = pDataType_,+ isTimeSeries = pIsTimeSeries_,+ isRequiredInEntity = pIsRequiredInEntity_,+ isExternalId = pIsExternalId_,+ isStoredExternally = pIsStoredExternally_,+ isImported = pIsImported_,+ isFinal = pIsFinal_,+ isInherited = pIsInherited_+ }++-- | A mapping that specifies configuration information about the property.+propertyDefinitionResponse_configuration :: Lens.Lens' PropertyDefinitionResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+propertyDefinitionResponse_configuration = Lens.lens (\PropertyDefinitionResponse' {configuration} -> configuration) (\s@PropertyDefinitionResponse' {} a -> s {configuration = a} :: PropertyDefinitionResponse) Prelude.. Lens.mapping Lens.coerced++-- | An object that contains the default value.+propertyDefinitionResponse_defaultValue :: Lens.Lens' PropertyDefinitionResponse (Prelude.Maybe DataValue)+propertyDefinitionResponse_defaultValue = Lens.lens (\PropertyDefinitionResponse' {defaultValue} -> defaultValue) (\s@PropertyDefinitionResponse' {} a -> s {defaultValue = a} :: PropertyDefinitionResponse)++-- | A friendly name for the property.+propertyDefinitionResponse_displayName :: Lens.Lens' PropertyDefinitionResponse (Prelude.Maybe Prelude.Text)+propertyDefinitionResponse_displayName = Lens.lens (\PropertyDefinitionResponse' {displayName} -> displayName) (\s@PropertyDefinitionResponse' {} a -> s {displayName = a} :: PropertyDefinitionResponse)++-- | An object that contains information about the data type.+propertyDefinitionResponse_dataType :: Lens.Lens' PropertyDefinitionResponse DataType+propertyDefinitionResponse_dataType = Lens.lens (\PropertyDefinitionResponse' {dataType} -> dataType) (\s@PropertyDefinitionResponse' {} a -> s {dataType = a} :: PropertyDefinitionResponse)++-- | A Boolean value that specifies whether the property consists of time+-- series data.+propertyDefinitionResponse_isTimeSeries :: Lens.Lens' PropertyDefinitionResponse Prelude.Bool+propertyDefinitionResponse_isTimeSeries = Lens.lens (\PropertyDefinitionResponse' {isTimeSeries} -> isTimeSeries) (\s@PropertyDefinitionResponse' {} a -> s {isTimeSeries = a} :: PropertyDefinitionResponse)++-- | A Boolean value that specifies whether the property is required in an+-- entity.+propertyDefinitionResponse_isRequiredInEntity :: Lens.Lens' PropertyDefinitionResponse Prelude.Bool+propertyDefinitionResponse_isRequiredInEntity = Lens.lens (\PropertyDefinitionResponse' {isRequiredInEntity} -> isRequiredInEntity) (\s@PropertyDefinitionResponse' {} a -> s {isRequiredInEntity = a} :: PropertyDefinitionResponse)++-- | A Boolean value that specifies whether the property ID comes from an+-- external data store.+propertyDefinitionResponse_isExternalId :: Lens.Lens' PropertyDefinitionResponse Prelude.Bool+propertyDefinitionResponse_isExternalId = Lens.lens (\PropertyDefinitionResponse' {isExternalId} -> isExternalId) (\s@PropertyDefinitionResponse' {} a -> s {isExternalId = a} :: PropertyDefinitionResponse)++-- | A Boolean value that specifies whether the property is stored+-- externally.+propertyDefinitionResponse_isStoredExternally :: Lens.Lens' PropertyDefinitionResponse Prelude.Bool+propertyDefinitionResponse_isStoredExternally = Lens.lens (\PropertyDefinitionResponse' {isStoredExternally} -> isStoredExternally) (\s@PropertyDefinitionResponse' {} a -> s {isStoredExternally = a} :: PropertyDefinitionResponse)++-- | A Boolean value that specifies whether the property definition is+-- imported from an external data store.+propertyDefinitionResponse_isImported :: Lens.Lens' PropertyDefinitionResponse Prelude.Bool+propertyDefinitionResponse_isImported = Lens.lens (\PropertyDefinitionResponse' {isImported} -> isImported) (\s@PropertyDefinitionResponse' {} a -> s {isImported = a} :: PropertyDefinitionResponse)++-- | A Boolean value that specifies whether the property definition can be+-- updated.+propertyDefinitionResponse_isFinal :: Lens.Lens' PropertyDefinitionResponse Prelude.Bool+propertyDefinitionResponse_isFinal = Lens.lens (\PropertyDefinitionResponse' {isFinal} -> isFinal) (\s@PropertyDefinitionResponse' {} a -> s {isFinal = a} :: PropertyDefinitionResponse)++-- | A Boolean value that specifies whether the property definition is+-- inherited from a parent entity.+propertyDefinitionResponse_isInherited :: Lens.Lens' PropertyDefinitionResponse Prelude.Bool+propertyDefinitionResponse_isInherited = Lens.lens (\PropertyDefinitionResponse' {isInherited} -> isInherited) (\s@PropertyDefinitionResponse' {} a -> s {isInherited = a} :: PropertyDefinitionResponse)++instance Data.FromJSON PropertyDefinitionResponse where+ parseJSON =+ Data.withObject+ "PropertyDefinitionResponse"+ ( \x ->+ PropertyDefinitionResponse'+ Prelude.<$> (x Data..:? "configuration" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "defaultValue")+ Prelude.<*> (x Data..:? "displayName")+ Prelude.<*> (x Data..: "dataType")+ Prelude.<*> (x Data..: "isTimeSeries")+ Prelude.<*> (x Data..: "isRequiredInEntity")+ Prelude.<*> (x Data..: "isExternalId")+ Prelude.<*> (x Data..: "isStoredExternally")+ Prelude.<*> (x Data..: "isImported")+ Prelude.<*> (x Data..: "isFinal")+ Prelude.<*> (x Data..: "isInherited")+ )++instance Prelude.Hashable PropertyDefinitionResponse where+ hashWithSalt _salt PropertyDefinitionResponse' {..} =+ _salt+ `Prelude.hashWithSalt` configuration+ `Prelude.hashWithSalt` defaultValue+ `Prelude.hashWithSalt` displayName+ `Prelude.hashWithSalt` dataType+ `Prelude.hashWithSalt` isTimeSeries+ `Prelude.hashWithSalt` isRequiredInEntity+ `Prelude.hashWithSalt` isExternalId+ `Prelude.hashWithSalt` isStoredExternally+ `Prelude.hashWithSalt` isImported+ `Prelude.hashWithSalt` isFinal+ `Prelude.hashWithSalt` isInherited++instance Prelude.NFData PropertyDefinitionResponse where+ rnf PropertyDefinitionResponse' {..} =+ Prelude.rnf configuration+ `Prelude.seq` Prelude.rnf defaultValue+ `Prelude.seq` Prelude.rnf displayName+ `Prelude.seq` Prelude.rnf dataType+ `Prelude.seq` Prelude.rnf isTimeSeries+ `Prelude.seq` Prelude.rnf isRequiredInEntity+ `Prelude.seq` Prelude.rnf isExternalId+ `Prelude.seq` Prelude.rnf isStoredExternally+ `Prelude.seq` Prelude.rnf isImported+ `Prelude.seq` Prelude.rnf isFinal+ `Prelude.seq` Prelude.rnf isInherited
+ gen/Amazonka/IotTwinMaker/Types/PropertyFilter.hs view
@@ -0,0 +1,96 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.PropertyFilter+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.PropertyFilter where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.DataValue+import qualified Amazonka.Prelude as Prelude++-- | An object that filters items returned by a property request.+--+-- /See:/ 'newPropertyFilter' smart constructor.+data PropertyFilter = PropertyFilter'+ { -- | The operator associated with this property filter.+ operator :: Prelude.Maybe Prelude.Text,+ -- | The property name associated with this property filter.+ propertyName :: Prelude.Maybe Prelude.Text,+ -- | The value associated with this property filter.+ value :: Prelude.Maybe DataValue+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PropertyFilter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'operator', 'propertyFilter_operator' - The operator associated with this property filter.+--+-- 'propertyName', 'propertyFilter_propertyName' - The property name associated with this property filter.+--+-- 'value', 'propertyFilter_value' - The value associated with this property filter.+newPropertyFilter ::+ PropertyFilter+newPropertyFilter =+ PropertyFilter'+ { operator = Prelude.Nothing,+ propertyName = Prelude.Nothing,+ value = Prelude.Nothing+ }++-- | The operator associated with this property filter.+propertyFilter_operator :: Lens.Lens' PropertyFilter (Prelude.Maybe Prelude.Text)+propertyFilter_operator = Lens.lens (\PropertyFilter' {operator} -> operator) (\s@PropertyFilter' {} a -> s {operator = a} :: PropertyFilter)++-- | The property name associated with this property filter.+propertyFilter_propertyName :: Lens.Lens' PropertyFilter (Prelude.Maybe Prelude.Text)+propertyFilter_propertyName = Lens.lens (\PropertyFilter' {propertyName} -> propertyName) (\s@PropertyFilter' {} a -> s {propertyName = a} :: PropertyFilter)++-- | The value associated with this property filter.+propertyFilter_value :: Lens.Lens' PropertyFilter (Prelude.Maybe DataValue)+propertyFilter_value = Lens.lens (\PropertyFilter' {value} -> value) (\s@PropertyFilter' {} a -> s {value = a} :: PropertyFilter)++instance Prelude.Hashable PropertyFilter where+ hashWithSalt _salt PropertyFilter' {..} =+ _salt+ `Prelude.hashWithSalt` operator+ `Prelude.hashWithSalt` propertyName+ `Prelude.hashWithSalt` value++instance Prelude.NFData PropertyFilter where+ rnf PropertyFilter' {..} =+ Prelude.rnf operator+ `Prelude.seq` Prelude.rnf propertyName+ `Prelude.seq` Prelude.rnf value++instance Data.ToJSON PropertyFilter where+ toJSON PropertyFilter' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("operator" Data..=) Prelude.<$> operator,+ ("propertyName" Data..=) Prelude.<$> propertyName,+ ("value" Data..=) Prelude.<$> value+ ]+ )
+ gen/Amazonka/IotTwinMaker/Types/PropertyGroupRequest.hs view
@@ -0,0 +1,84 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.PropertyGroupRequest+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.PropertyGroupRequest where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.GroupType+import qualified Amazonka.Prelude as Prelude++-- |+--+-- /See:/ 'newPropertyGroupRequest' smart constructor.+data PropertyGroupRequest = PropertyGroupRequest'+ { -- | The group type.+ groupType :: Prelude.Maybe GroupType,+ -- | The names of properties.+ propertyNames :: Prelude.Maybe [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PropertyGroupRequest' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'groupType', 'propertyGroupRequest_groupType' - The group type.+--+-- 'propertyNames', 'propertyGroupRequest_propertyNames' - The names of properties.+newPropertyGroupRequest ::+ PropertyGroupRequest+newPropertyGroupRequest =+ PropertyGroupRequest'+ { groupType = Prelude.Nothing,+ propertyNames = Prelude.Nothing+ }++-- | The group type.+propertyGroupRequest_groupType :: Lens.Lens' PropertyGroupRequest (Prelude.Maybe GroupType)+propertyGroupRequest_groupType = Lens.lens (\PropertyGroupRequest' {groupType} -> groupType) (\s@PropertyGroupRequest' {} a -> s {groupType = a} :: PropertyGroupRequest)++-- | The names of properties.+propertyGroupRequest_propertyNames :: Lens.Lens' PropertyGroupRequest (Prelude.Maybe [Prelude.Text])+propertyGroupRequest_propertyNames = Lens.lens (\PropertyGroupRequest' {propertyNames} -> propertyNames) (\s@PropertyGroupRequest' {} a -> s {propertyNames = a} :: PropertyGroupRequest) Prelude.. Lens.mapping Lens.coerced++instance Prelude.Hashable PropertyGroupRequest where+ hashWithSalt _salt PropertyGroupRequest' {..} =+ _salt+ `Prelude.hashWithSalt` groupType+ `Prelude.hashWithSalt` propertyNames++instance Prelude.NFData PropertyGroupRequest where+ rnf PropertyGroupRequest' {..} =+ Prelude.rnf groupType+ `Prelude.seq` Prelude.rnf propertyNames++instance Data.ToJSON PropertyGroupRequest where+ toJSON PropertyGroupRequest' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("groupType" Data..=) Prelude.<$> groupType,+ ("propertyNames" Data..=) Prelude.<$> propertyNames+ ]+ )
+ gen/Amazonka/IotTwinMaker/Types/PropertyGroupResponse.hs view
@@ -0,0 +1,104 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.PropertyGroupResponse+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.PropertyGroupResponse where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.GroupType+import qualified Amazonka.Prelude as Prelude++-- | The property group response+--+-- /See:/ 'newPropertyGroupResponse' smart constructor.+data PropertyGroupResponse = PropertyGroupResponse'+ { -- | The group types.+ groupType :: GroupType,+ -- | The names of properties.+ propertyNames :: [Prelude.Text],+ -- | A Boolean value that specifies whether the property group is inherited+ -- from a parent entity+ isInherited :: Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PropertyGroupResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'groupType', 'propertyGroupResponse_groupType' - The group types.+--+-- 'propertyNames', 'propertyGroupResponse_propertyNames' - The names of properties.+--+-- 'isInherited', 'propertyGroupResponse_isInherited' - A Boolean value that specifies whether the property group is inherited+-- from a parent entity+newPropertyGroupResponse ::+ -- | 'groupType'+ GroupType ->+ -- | 'isInherited'+ Prelude.Bool ->+ PropertyGroupResponse+newPropertyGroupResponse pGroupType_ pIsInherited_ =+ PropertyGroupResponse'+ { groupType = pGroupType_,+ propertyNames = Prelude.mempty,+ isInherited = pIsInherited_+ }++-- | The group types.+propertyGroupResponse_groupType :: Lens.Lens' PropertyGroupResponse GroupType+propertyGroupResponse_groupType = Lens.lens (\PropertyGroupResponse' {groupType} -> groupType) (\s@PropertyGroupResponse' {} a -> s {groupType = a} :: PropertyGroupResponse)++-- | The names of properties.+propertyGroupResponse_propertyNames :: Lens.Lens' PropertyGroupResponse [Prelude.Text]+propertyGroupResponse_propertyNames = Lens.lens (\PropertyGroupResponse' {propertyNames} -> propertyNames) (\s@PropertyGroupResponse' {} a -> s {propertyNames = a} :: PropertyGroupResponse) Prelude.. Lens.coerced++-- | A Boolean value that specifies whether the property group is inherited+-- from a parent entity+propertyGroupResponse_isInherited :: Lens.Lens' PropertyGroupResponse Prelude.Bool+propertyGroupResponse_isInherited = Lens.lens (\PropertyGroupResponse' {isInherited} -> isInherited) (\s@PropertyGroupResponse' {} a -> s {isInherited = a} :: PropertyGroupResponse)++instance Data.FromJSON PropertyGroupResponse where+ parseJSON =+ Data.withObject+ "PropertyGroupResponse"+ ( \x ->+ PropertyGroupResponse'+ Prelude.<$> (x Data..: "groupType")+ Prelude.<*> (x Data..:? "propertyNames" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..: "isInherited")+ )++instance Prelude.Hashable PropertyGroupResponse where+ hashWithSalt _salt PropertyGroupResponse' {..} =+ _salt+ `Prelude.hashWithSalt` groupType+ `Prelude.hashWithSalt` propertyNames+ `Prelude.hashWithSalt` isInherited++instance Prelude.NFData PropertyGroupResponse where+ rnf PropertyGroupResponse' {..} =+ Prelude.rnf groupType+ `Prelude.seq` Prelude.rnf propertyNames+ `Prelude.seq` Prelude.rnf isInherited
+ gen/Amazonka/IotTwinMaker/Types/PropertyGroupUpdateType.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.PropertyGroupUpdateType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.PropertyGroupUpdateType+ ( PropertyGroupUpdateType+ ( ..,+ PropertyGroupUpdateType_CREATE,+ PropertyGroupUpdateType_DELETE,+ PropertyGroupUpdateType_UPDATE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PropertyGroupUpdateType = PropertyGroupUpdateType'+ { fromPropertyGroupUpdateType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern PropertyGroupUpdateType_CREATE :: PropertyGroupUpdateType+pattern PropertyGroupUpdateType_CREATE = PropertyGroupUpdateType' "CREATE"++pattern PropertyGroupUpdateType_DELETE :: PropertyGroupUpdateType+pattern PropertyGroupUpdateType_DELETE = PropertyGroupUpdateType' "DELETE"++pattern PropertyGroupUpdateType_UPDATE :: PropertyGroupUpdateType+pattern PropertyGroupUpdateType_UPDATE = PropertyGroupUpdateType' "UPDATE"++{-# COMPLETE+ PropertyGroupUpdateType_CREATE,+ PropertyGroupUpdateType_DELETE,+ PropertyGroupUpdateType_UPDATE,+ PropertyGroupUpdateType'+ #-}
+ gen/Amazonka/IotTwinMaker/Types/PropertyLatestValue.hs view
@@ -0,0 +1,89 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.PropertyLatestValue+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.PropertyLatestValue where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.DataValue+import Amazonka.IotTwinMaker.Types.EntityPropertyReference+import qualified Amazonka.Prelude as Prelude++-- | The latest value of the property.+--+-- /See:/ 'newPropertyLatestValue' smart constructor.+data PropertyLatestValue = PropertyLatestValue'+ { -- | The value of the property.+ propertyValue :: Prelude.Maybe DataValue,+ -- | An object that specifies information about a property.>+ propertyReference :: EntityPropertyReference+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PropertyLatestValue' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'propertyValue', 'propertyLatestValue_propertyValue' - The value of the property.+--+-- 'propertyReference', 'propertyLatestValue_propertyReference' - An object that specifies information about a property.>+newPropertyLatestValue ::+ -- | 'propertyReference'+ EntityPropertyReference ->+ PropertyLatestValue+newPropertyLatestValue pPropertyReference_ =+ PropertyLatestValue'+ { propertyValue =+ Prelude.Nothing,+ propertyReference = pPropertyReference_+ }++-- | The value of the property.+propertyLatestValue_propertyValue :: Lens.Lens' PropertyLatestValue (Prelude.Maybe DataValue)+propertyLatestValue_propertyValue = Lens.lens (\PropertyLatestValue' {propertyValue} -> propertyValue) (\s@PropertyLatestValue' {} a -> s {propertyValue = a} :: PropertyLatestValue)++-- | An object that specifies information about a property.>+propertyLatestValue_propertyReference :: Lens.Lens' PropertyLatestValue EntityPropertyReference+propertyLatestValue_propertyReference = Lens.lens (\PropertyLatestValue' {propertyReference} -> propertyReference) (\s@PropertyLatestValue' {} a -> s {propertyReference = a} :: PropertyLatestValue)++instance Data.FromJSON PropertyLatestValue where+ parseJSON =+ Data.withObject+ "PropertyLatestValue"+ ( \x ->+ PropertyLatestValue'+ Prelude.<$> (x Data..:? "propertyValue")+ Prelude.<*> (x Data..: "propertyReference")+ )++instance Prelude.Hashable PropertyLatestValue where+ hashWithSalt _salt PropertyLatestValue' {..} =+ _salt+ `Prelude.hashWithSalt` propertyValue+ `Prelude.hashWithSalt` propertyReference++instance Prelude.NFData PropertyLatestValue where+ rnf PropertyLatestValue' {..} =+ Prelude.rnf propertyValue+ `Prelude.seq` Prelude.rnf propertyReference
+ gen/Amazonka/IotTwinMaker/Types/PropertyRequest.hs view
@@ -0,0 +1,98 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.PropertyRequest+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.PropertyRequest where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.DataValue+import Amazonka.IotTwinMaker.Types.PropertyDefinitionRequest+import Amazonka.IotTwinMaker.Types.PropertyUpdateType+import qualified Amazonka.Prelude as Prelude++-- | An object that sets information about a property.+--+-- /See:/ 'newPropertyRequest' smart constructor.+data PropertyRequest = PropertyRequest'+ { -- | An object that specifies information about a property.+ definition :: Prelude.Maybe PropertyDefinitionRequest,+ -- | The update type of the update property request.+ updateType :: Prelude.Maybe PropertyUpdateType,+ -- | The value of the property.+ value :: Prelude.Maybe DataValue+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PropertyRequest' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'definition', 'propertyRequest_definition' - An object that specifies information about a property.+--+-- 'updateType', 'propertyRequest_updateType' - The update type of the update property request.+--+-- 'value', 'propertyRequest_value' - The value of the property.+newPropertyRequest ::+ PropertyRequest+newPropertyRequest =+ PropertyRequest'+ { definition = Prelude.Nothing,+ updateType = Prelude.Nothing,+ value = Prelude.Nothing+ }++-- | An object that specifies information about a property.+propertyRequest_definition :: Lens.Lens' PropertyRequest (Prelude.Maybe PropertyDefinitionRequest)+propertyRequest_definition = Lens.lens (\PropertyRequest' {definition} -> definition) (\s@PropertyRequest' {} a -> s {definition = a} :: PropertyRequest)++-- | The update type of the update property request.+propertyRequest_updateType :: Lens.Lens' PropertyRequest (Prelude.Maybe PropertyUpdateType)+propertyRequest_updateType = Lens.lens (\PropertyRequest' {updateType} -> updateType) (\s@PropertyRequest' {} a -> s {updateType = a} :: PropertyRequest)++-- | The value of the property.+propertyRequest_value :: Lens.Lens' PropertyRequest (Prelude.Maybe DataValue)+propertyRequest_value = Lens.lens (\PropertyRequest' {value} -> value) (\s@PropertyRequest' {} a -> s {value = a} :: PropertyRequest)++instance Prelude.Hashable PropertyRequest where+ hashWithSalt _salt PropertyRequest' {..} =+ _salt+ `Prelude.hashWithSalt` definition+ `Prelude.hashWithSalt` updateType+ `Prelude.hashWithSalt` value++instance Prelude.NFData PropertyRequest where+ rnf PropertyRequest' {..} =+ Prelude.rnf definition+ `Prelude.seq` Prelude.rnf updateType+ `Prelude.seq` Prelude.rnf value++instance Data.ToJSON PropertyRequest where+ toJSON PropertyRequest' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("definition" Data..=) Prelude.<$> definition,+ ("updateType" Data..=) Prelude.<$> updateType,+ ("value" Data..=) Prelude.<$> value+ ]+ )
+ gen/Amazonka/IotTwinMaker/Types/PropertyResponse.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.PropertyResponse+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.PropertyResponse where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.DataValue+import Amazonka.IotTwinMaker.Types.PropertyDefinitionResponse+import qualified Amazonka.Prelude as Prelude++-- | An object that contains information about a property response.+--+-- /See:/ 'newPropertyResponse' smart constructor.+data PropertyResponse = PropertyResponse'+ { -- | An object that specifies information about a property.+ definition :: Prelude.Maybe PropertyDefinitionResponse,+ -- | The value of the property.+ value :: Prelude.Maybe DataValue+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PropertyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'definition', 'propertyResponse_definition' - An object that specifies information about a property.+--+-- 'value', 'propertyResponse_value' - The value of the property.+newPropertyResponse ::+ PropertyResponse+newPropertyResponse =+ PropertyResponse'+ { definition = Prelude.Nothing,+ value = Prelude.Nothing+ }++-- | An object that specifies information about a property.+propertyResponse_definition :: Lens.Lens' PropertyResponse (Prelude.Maybe PropertyDefinitionResponse)+propertyResponse_definition = Lens.lens (\PropertyResponse' {definition} -> definition) (\s@PropertyResponse' {} a -> s {definition = a} :: PropertyResponse)++-- | The value of the property.+propertyResponse_value :: Lens.Lens' PropertyResponse (Prelude.Maybe DataValue)+propertyResponse_value = Lens.lens (\PropertyResponse' {value} -> value) (\s@PropertyResponse' {} a -> s {value = a} :: PropertyResponse)++instance Data.FromJSON PropertyResponse where+ parseJSON =+ Data.withObject+ "PropertyResponse"+ ( \x ->+ PropertyResponse'+ Prelude.<$> (x Data..:? "definition")+ Prelude.<*> (x Data..:? "value")+ )++instance Prelude.Hashable PropertyResponse where+ hashWithSalt _salt PropertyResponse' {..} =+ _salt+ `Prelude.hashWithSalt` definition+ `Prelude.hashWithSalt` value++instance Prelude.NFData PropertyResponse where+ rnf PropertyResponse' {..} =+ Prelude.rnf definition+ `Prelude.seq` Prelude.rnf value
+ gen/Amazonka/IotTwinMaker/Types/PropertyUpdateType.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.PropertyUpdateType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.PropertyUpdateType+ ( PropertyUpdateType+ ( ..,+ PropertyUpdateType_CREATE,+ PropertyUpdateType_DELETE,+ PropertyUpdateType_UPDATE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PropertyUpdateType = PropertyUpdateType'+ { fromPropertyUpdateType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern PropertyUpdateType_CREATE :: PropertyUpdateType+pattern PropertyUpdateType_CREATE = PropertyUpdateType' "CREATE"++pattern PropertyUpdateType_DELETE :: PropertyUpdateType+pattern PropertyUpdateType_DELETE = PropertyUpdateType' "DELETE"++pattern PropertyUpdateType_UPDATE :: PropertyUpdateType+pattern PropertyUpdateType_UPDATE = PropertyUpdateType' "UPDATE"++{-# COMPLETE+ PropertyUpdateType_CREATE,+ PropertyUpdateType_DELETE,+ PropertyUpdateType_UPDATE,+ PropertyUpdateType'+ #-}
+ gen/Amazonka/IotTwinMaker/Types/PropertyValue.hs view
@@ -0,0 +1,185 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.PropertyValue+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.PropertyValue where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.DataValue+import qualified Amazonka.Prelude as Prelude++-- | An object that contains information about a value for a time series+-- property.+--+-- /See:/ 'newPropertyValue' smart constructor.+data PropertyValue = PropertyValue'+ { -- | ISO8601 DateTime of a value for a time series property.+ --+ -- The time for when the property value was recorded in ISO 8601 format:+ -- /YYYY-MM-DDThh:mm:ss[.SSSSSSSSS][Z\/±HH:mm]/.+ --+ -- - /[YYYY]/: year+ --+ -- - /[MM]/: month+ --+ -- - /[DD]/: day+ --+ -- - /[hh]/: hour+ --+ -- - /[mm]/: minute+ --+ -- - /[ss]/: seconds+ --+ -- - /[.SSSSSSSSS]/: additional precision, where precedence is+ -- maintained. For example: [.573123] is equal to 573123000+ -- nanoseconds.+ --+ -- - /Z/: default timezone UTC+ --+ -- - /± HH:mm/: time zone offset in Hours and Minutes.+ --+ -- /Required sub-fields/: YYYY-MM-DDThh:mm:ss and [Z\/±HH:mm]+ time :: Prelude.Maybe Prelude.Text,+ -- | The timestamp of a value for a time series property.+ timestamp :: Prelude.Maybe Data.POSIX,+ -- | An object that specifies a value for a time series property.+ value :: DataValue+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PropertyValue' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'time', 'propertyValue_time' - ISO8601 DateTime of a value for a time series property.+--+-- The time for when the property value was recorded in ISO 8601 format:+-- /YYYY-MM-DDThh:mm:ss[.SSSSSSSSS][Z\/±HH:mm]/.+--+-- - /[YYYY]/: year+--+-- - /[MM]/: month+--+-- - /[DD]/: day+--+-- - /[hh]/: hour+--+-- - /[mm]/: minute+--+-- - /[ss]/: seconds+--+-- - /[.SSSSSSSSS]/: additional precision, where precedence is+-- maintained. For example: [.573123] is equal to 573123000+-- nanoseconds.+--+-- - /Z/: default timezone UTC+--+-- - /± HH:mm/: time zone offset in Hours and Minutes.+--+-- /Required sub-fields/: YYYY-MM-DDThh:mm:ss and [Z\/±HH:mm]+--+-- 'timestamp', 'propertyValue_timestamp' - The timestamp of a value for a time series property.+--+-- 'value', 'propertyValue_value' - An object that specifies a value for a time series property.+newPropertyValue ::+ -- | 'value'+ DataValue ->+ PropertyValue+newPropertyValue pValue_ =+ PropertyValue'+ { time = Prelude.Nothing,+ timestamp = Prelude.Nothing,+ value = pValue_+ }++-- | ISO8601 DateTime of a value for a time series property.+--+-- The time for when the property value was recorded in ISO 8601 format:+-- /YYYY-MM-DDThh:mm:ss[.SSSSSSSSS][Z\/±HH:mm]/.+--+-- - /[YYYY]/: year+--+-- - /[MM]/: month+--+-- - /[DD]/: day+--+-- - /[hh]/: hour+--+-- - /[mm]/: minute+--+-- - /[ss]/: seconds+--+-- - /[.SSSSSSSSS]/: additional precision, where precedence is+-- maintained. For example: [.573123] is equal to 573123000+-- nanoseconds.+--+-- - /Z/: default timezone UTC+--+-- - /± HH:mm/: time zone offset in Hours and Minutes.+--+-- /Required sub-fields/: YYYY-MM-DDThh:mm:ss and [Z\/±HH:mm]+propertyValue_time :: Lens.Lens' PropertyValue (Prelude.Maybe Prelude.Text)+propertyValue_time = Lens.lens (\PropertyValue' {time} -> time) (\s@PropertyValue' {} a -> s {time = a} :: PropertyValue)++-- | The timestamp of a value for a time series property.+propertyValue_timestamp :: Lens.Lens' PropertyValue (Prelude.Maybe Prelude.UTCTime)+propertyValue_timestamp = Lens.lens (\PropertyValue' {timestamp} -> timestamp) (\s@PropertyValue' {} a -> s {timestamp = a} :: PropertyValue) Prelude.. Lens.mapping Data._Time++-- | An object that specifies a value for a time series property.+propertyValue_value :: Lens.Lens' PropertyValue DataValue+propertyValue_value = Lens.lens (\PropertyValue' {value} -> value) (\s@PropertyValue' {} a -> s {value = a} :: PropertyValue)++instance Data.FromJSON PropertyValue where+ parseJSON =+ Data.withObject+ "PropertyValue"+ ( \x ->+ PropertyValue'+ Prelude.<$> (x Data..:? "time")+ Prelude.<*> (x Data..:? "timestamp")+ Prelude.<*> (x Data..: "value")+ )++instance Prelude.Hashable PropertyValue where+ hashWithSalt _salt PropertyValue' {..} =+ _salt+ `Prelude.hashWithSalt` time+ `Prelude.hashWithSalt` timestamp+ `Prelude.hashWithSalt` value++instance Prelude.NFData PropertyValue where+ rnf PropertyValue' {..} =+ Prelude.rnf time+ `Prelude.seq` Prelude.rnf timestamp+ `Prelude.seq` Prelude.rnf value++instance Data.ToJSON PropertyValue where+ toJSON PropertyValue' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("time" Data..=) Prelude.<$> time,+ ("timestamp" Data..=) Prelude.<$> timestamp,+ Prelude.Just ("value" Data..= value)+ ]+ )
+ gen/Amazonka/IotTwinMaker/Types/PropertyValueEntry.hs view
@@ -0,0 +1,108 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.PropertyValueEntry+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.PropertyValueEntry where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.EntityPropertyReference+import Amazonka.IotTwinMaker.Types.PropertyValue+import qualified Amazonka.Prelude as Prelude++-- | An object that specifies information about time series property values.+-- This object is used and consumed by the+-- <https://docs.aws.amazon.com/iot-twinmaker/latest/apireference/API_BatchPutPropertyValues.html BatchPutPropertyValues>+-- action.+--+-- /See:/ 'newPropertyValueEntry' smart constructor.+data PropertyValueEntry = PropertyValueEntry'+ { -- | A list of objects that specify time series property values.+ propertyValues :: Prelude.Maybe (Prelude.NonEmpty PropertyValue),+ -- | An object that contains information about the entity that has the+ -- property.+ entityPropertyReference :: EntityPropertyReference+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PropertyValueEntry' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'propertyValues', 'propertyValueEntry_propertyValues' - A list of objects that specify time series property values.+--+-- 'entityPropertyReference', 'propertyValueEntry_entityPropertyReference' - An object that contains information about the entity that has the+-- property.+newPropertyValueEntry ::+ -- | 'entityPropertyReference'+ EntityPropertyReference ->+ PropertyValueEntry+newPropertyValueEntry pEntityPropertyReference_ =+ PropertyValueEntry'+ { propertyValues =+ Prelude.Nothing,+ entityPropertyReference = pEntityPropertyReference_+ }++-- | A list of objects that specify time series property values.+propertyValueEntry_propertyValues :: Lens.Lens' PropertyValueEntry (Prelude.Maybe (Prelude.NonEmpty PropertyValue))+propertyValueEntry_propertyValues = Lens.lens (\PropertyValueEntry' {propertyValues} -> propertyValues) (\s@PropertyValueEntry' {} a -> s {propertyValues = a} :: PropertyValueEntry) Prelude.. Lens.mapping Lens.coerced++-- | An object that contains information about the entity that has the+-- property.+propertyValueEntry_entityPropertyReference :: Lens.Lens' PropertyValueEntry EntityPropertyReference+propertyValueEntry_entityPropertyReference = Lens.lens (\PropertyValueEntry' {entityPropertyReference} -> entityPropertyReference) (\s@PropertyValueEntry' {} a -> s {entityPropertyReference = a} :: PropertyValueEntry)++instance Data.FromJSON PropertyValueEntry where+ parseJSON =+ Data.withObject+ "PropertyValueEntry"+ ( \x ->+ PropertyValueEntry'+ Prelude.<$> (x Data..:? "propertyValues")+ Prelude.<*> (x Data..: "entityPropertyReference")+ )++instance Prelude.Hashable PropertyValueEntry where+ hashWithSalt _salt PropertyValueEntry' {..} =+ _salt+ `Prelude.hashWithSalt` propertyValues+ `Prelude.hashWithSalt` entityPropertyReference++instance Prelude.NFData PropertyValueEntry where+ rnf PropertyValueEntry' {..} =+ Prelude.rnf propertyValues+ `Prelude.seq` Prelude.rnf entityPropertyReference++instance Data.ToJSON PropertyValueEntry where+ toJSON PropertyValueEntry' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("propertyValues" Data..=)+ Prelude.<$> propertyValues,+ Prelude.Just+ ( "entityPropertyReference"+ Data..= entityPropertyReference+ )+ ]+ )
+ gen/Amazonka/IotTwinMaker/Types/PropertyValueHistory.hs view
@@ -0,0 +1,91 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.PropertyValueHistory+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.PropertyValueHistory where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.EntityPropertyReference+import Amazonka.IotTwinMaker.Types.PropertyValue+import qualified Amazonka.Prelude as Prelude++-- | The history of values for a time series property.+--+-- /See:/ 'newPropertyValueHistory' smart constructor.+data PropertyValueHistory = PropertyValueHistory'+ { -- | A list of objects that contain information about the values in the+ -- history of a time series property.+ values :: Prelude.Maybe [PropertyValue],+ -- | An object that uniquely identifies an entity property.+ entityPropertyReference :: EntityPropertyReference+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PropertyValueHistory' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'values', 'propertyValueHistory_values' - A list of objects that contain information about the values in the+-- history of a time series property.+--+-- 'entityPropertyReference', 'propertyValueHistory_entityPropertyReference' - An object that uniquely identifies an entity property.+newPropertyValueHistory ::+ -- | 'entityPropertyReference'+ EntityPropertyReference ->+ PropertyValueHistory+newPropertyValueHistory pEntityPropertyReference_ =+ PropertyValueHistory'+ { values = Prelude.Nothing,+ entityPropertyReference = pEntityPropertyReference_+ }++-- | A list of objects that contain information about the values in the+-- history of a time series property.+propertyValueHistory_values :: Lens.Lens' PropertyValueHistory (Prelude.Maybe [PropertyValue])+propertyValueHistory_values = Lens.lens (\PropertyValueHistory' {values} -> values) (\s@PropertyValueHistory' {} a -> s {values = a} :: PropertyValueHistory) Prelude.. Lens.mapping Lens.coerced++-- | An object that uniquely identifies an entity property.+propertyValueHistory_entityPropertyReference :: Lens.Lens' PropertyValueHistory EntityPropertyReference+propertyValueHistory_entityPropertyReference = Lens.lens (\PropertyValueHistory' {entityPropertyReference} -> entityPropertyReference) (\s@PropertyValueHistory' {} a -> s {entityPropertyReference = a} :: PropertyValueHistory)++instance Data.FromJSON PropertyValueHistory where+ parseJSON =+ Data.withObject+ "PropertyValueHistory"+ ( \x ->+ PropertyValueHistory'+ Prelude.<$> (x Data..:? "values" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..: "entityPropertyReference")+ )++instance Prelude.Hashable PropertyValueHistory where+ hashWithSalt _salt PropertyValueHistory' {..} =+ _salt+ `Prelude.hashWithSalt` values+ `Prelude.hashWithSalt` entityPropertyReference++instance Prelude.NFData PropertyValueHistory where+ rnf PropertyValueHistory' {..} =+ Prelude.rnf values+ `Prelude.seq` Prelude.rnf entityPropertyReference
+ gen/Amazonka/IotTwinMaker/Types/QueryResultValue.hs view
@@ -0,0 +1,52 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.QueryResultValue+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.QueryResultValue where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | /See:/ 'newQueryResultValue' smart constructor.+data QueryResultValue = QueryResultValue'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'QueryResultValue' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newQueryResultValue ::+ QueryResultValue+newQueryResultValue = QueryResultValue'++instance Data.FromJSON QueryResultValue where+ parseJSON =+ Data.withObject+ "QueryResultValue"+ (\x -> Prelude.pure QueryResultValue')++instance Prelude.Hashable QueryResultValue where+ hashWithSalt _salt _ =+ _salt `Prelude.hashWithSalt` ()++instance Prelude.NFData QueryResultValue where+ rnf _ = ()
+ gen/Amazonka/IotTwinMaker/Types/Relationship.hs view
@@ -0,0 +1,95 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.Relationship+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.Relationship where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | An object that specifies a relationship with another component type.+--+-- /See:/ 'newRelationship' smart constructor.+data Relationship = Relationship'+ { -- | The type of the relationship.+ relationshipType :: Prelude.Maybe Prelude.Text,+ -- | The ID of the target component type associated with this relationship.+ targetComponentTypeId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Relationship' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'relationshipType', 'relationship_relationshipType' - The type of the relationship.+--+-- 'targetComponentTypeId', 'relationship_targetComponentTypeId' - The ID of the target component type associated with this relationship.+newRelationship ::+ Relationship+newRelationship =+ Relationship'+ { relationshipType = Prelude.Nothing,+ targetComponentTypeId = Prelude.Nothing+ }++-- | The type of the relationship.+relationship_relationshipType :: Lens.Lens' Relationship (Prelude.Maybe Prelude.Text)+relationship_relationshipType = Lens.lens (\Relationship' {relationshipType} -> relationshipType) (\s@Relationship' {} a -> s {relationshipType = a} :: Relationship)++-- | The ID of the target component type associated with this relationship.+relationship_targetComponentTypeId :: Lens.Lens' Relationship (Prelude.Maybe Prelude.Text)+relationship_targetComponentTypeId = Lens.lens (\Relationship' {targetComponentTypeId} -> targetComponentTypeId) (\s@Relationship' {} a -> s {targetComponentTypeId = a} :: Relationship)++instance Data.FromJSON Relationship where+ parseJSON =+ Data.withObject+ "Relationship"+ ( \x ->+ Relationship'+ Prelude.<$> (x Data..:? "relationshipType")+ Prelude.<*> (x Data..:? "targetComponentTypeId")+ )++instance Prelude.Hashable Relationship where+ hashWithSalt _salt Relationship' {..} =+ _salt+ `Prelude.hashWithSalt` relationshipType+ `Prelude.hashWithSalt` targetComponentTypeId++instance Prelude.NFData Relationship where+ rnf Relationship' {..} =+ Prelude.rnf relationshipType+ `Prelude.seq` Prelude.rnf targetComponentTypeId++instance Data.ToJSON Relationship where+ toJSON Relationship' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("relationshipType" Data..=)+ Prelude.<$> relationshipType,+ ("targetComponentTypeId" Data..=)+ Prelude.<$> targetComponentTypeId+ ]+ )
+ gen/Amazonka/IotTwinMaker/Types/RelationshipValue.hs view
@@ -0,0 +1,96 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.RelationshipValue+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.RelationshipValue where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | A value that associates a component and an entity.+--+-- /See:/ 'newRelationshipValue' smart constructor.+data RelationshipValue = RelationshipValue'+ { -- | The name of the target component associated with the relationship value.+ targetComponentName :: Prelude.Maybe Prelude.Text,+ -- | The ID of the target entity associated with this relationship value.+ targetEntityId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RelationshipValue' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'targetComponentName', 'relationshipValue_targetComponentName' - The name of the target component associated with the relationship value.+--+-- 'targetEntityId', 'relationshipValue_targetEntityId' - The ID of the target entity associated with this relationship value.+newRelationshipValue ::+ RelationshipValue+newRelationshipValue =+ RelationshipValue'+ { targetComponentName =+ Prelude.Nothing,+ targetEntityId = Prelude.Nothing+ }++-- | The name of the target component associated with the relationship value.+relationshipValue_targetComponentName :: Lens.Lens' RelationshipValue (Prelude.Maybe Prelude.Text)+relationshipValue_targetComponentName = Lens.lens (\RelationshipValue' {targetComponentName} -> targetComponentName) (\s@RelationshipValue' {} a -> s {targetComponentName = a} :: RelationshipValue)++-- | The ID of the target entity associated with this relationship value.+relationshipValue_targetEntityId :: Lens.Lens' RelationshipValue (Prelude.Maybe Prelude.Text)+relationshipValue_targetEntityId = Lens.lens (\RelationshipValue' {targetEntityId} -> targetEntityId) (\s@RelationshipValue' {} a -> s {targetEntityId = a} :: RelationshipValue)++instance Data.FromJSON RelationshipValue where+ parseJSON =+ Data.withObject+ "RelationshipValue"+ ( \x ->+ RelationshipValue'+ Prelude.<$> (x Data..:? "targetComponentName")+ Prelude.<*> (x Data..:? "targetEntityId")+ )++instance Prelude.Hashable RelationshipValue where+ hashWithSalt _salt RelationshipValue' {..} =+ _salt+ `Prelude.hashWithSalt` targetComponentName+ `Prelude.hashWithSalt` targetEntityId++instance Prelude.NFData RelationshipValue where+ rnf RelationshipValue' {..} =+ Prelude.rnf targetComponentName+ `Prelude.seq` Prelude.rnf targetEntityId++instance Data.ToJSON RelationshipValue where+ toJSON RelationshipValue' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("targetComponentName" Data..=)+ Prelude.<$> targetComponentName,+ ("targetEntityId" Data..=)+ Prelude.<$> targetEntityId+ ]+ )
+ gen/Amazonka/IotTwinMaker/Types/Row.hs view
@@ -0,0 +1,68 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.Row+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.Row where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.QueryResultValue+import qualified Amazonka.Prelude as Prelude++-- | Represents a single row in the query results.+--+-- /See:/ 'newRow' smart constructor.+data Row = Row'+ { -- | The data in a row of query results.+ rowData :: Prelude.Maybe [QueryResultValue]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Row' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'rowData', 'row_rowData' - The data in a row of query results.+newRow ::+ Row+newRow = Row' {rowData = Prelude.Nothing}++-- | The data in a row of query results.+row_rowData :: Lens.Lens' Row (Prelude.Maybe [QueryResultValue])+row_rowData = Lens.lens (\Row' {rowData} -> rowData) (\s@Row' {} a -> s {rowData = a} :: Row) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON Row where+ parseJSON =+ Data.withObject+ "Row"+ ( \x ->+ Row'+ Prelude.<$> (x Data..:? "rowData" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable Row where+ hashWithSalt _salt Row' {..} =+ _salt `Prelude.hashWithSalt` rowData++instance Prelude.NFData Row where+ rnf Row' {..} = Prelude.rnf rowData
+ gen/Amazonka/IotTwinMaker/Types/SceneSummary.hs view
@@ -0,0 +1,151 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.SceneSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.SceneSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | An object that contains information about a scene.+--+-- /See:/ 'newSceneSummary' smart constructor.+data SceneSummary = SceneSummary'+ { -- | The scene description.+ description :: Prelude.Maybe Prelude.Text,+ -- | The ID of the scene.+ sceneId :: Prelude.Text,+ -- | The relative path that specifies the location of the content definition+ -- file.+ contentLocation :: Prelude.Text,+ -- | The ARN of the scene.+ arn :: Prelude.Text,+ -- | The date and time when the scene was created.+ creationDateTime :: Data.POSIX,+ -- | The date and time when the scene was last updated.+ updateDateTime :: Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SceneSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'sceneSummary_description' - The scene description.+--+-- 'sceneId', 'sceneSummary_sceneId' - The ID of the scene.+--+-- 'contentLocation', 'sceneSummary_contentLocation' - The relative path that specifies the location of the content definition+-- file.+--+-- 'arn', 'sceneSummary_arn' - The ARN of the scene.+--+-- 'creationDateTime', 'sceneSummary_creationDateTime' - The date and time when the scene was created.+--+-- 'updateDateTime', 'sceneSummary_updateDateTime' - The date and time when the scene was last updated.+newSceneSummary ::+ -- | 'sceneId'+ Prelude.Text ->+ -- | 'contentLocation'+ Prelude.Text ->+ -- | 'arn'+ Prelude.Text ->+ -- | 'creationDateTime'+ Prelude.UTCTime ->+ -- | 'updateDateTime'+ Prelude.UTCTime ->+ SceneSummary+newSceneSummary+ pSceneId_+ pContentLocation_+ pArn_+ pCreationDateTime_+ pUpdateDateTime_ =+ SceneSummary'+ { description = Prelude.Nothing,+ sceneId = pSceneId_,+ contentLocation = pContentLocation_,+ arn = pArn_,+ creationDateTime =+ Data._Time Lens.# pCreationDateTime_,+ updateDateTime = Data._Time Lens.# pUpdateDateTime_+ }++-- | The scene description.+sceneSummary_description :: Lens.Lens' SceneSummary (Prelude.Maybe Prelude.Text)+sceneSummary_description = Lens.lens (\SceneSummary' {description} -> description) (\s@SceneSummary' {} a -> s {description = a} :: SceneSummary)++-- | The ID of the scene.+sceneSummary_sceneId :: Lens.Lens' SceneSummary Prelude.Text+sceneSummary_sceneId = Lens.lens (\SceneSummary' {sceneId} -> sceneId) (\s@SceneSummary' {} a -> s {sceneId = a} :: SceneSummary)++-- | The relative path that specifies the location of the content definition+-- file.+sceneSummary_contentLocation :: Lens.Lens' SceneSummary Prelude.Text+sceneSummary_contentLocation = Lens.lens (\SceneSummary' {contentLocation} -> contentLocation) (\s@SceneSummary' {} a -> s {contentLocation = a} :: SceneSummary)++-- | The ARN of the scene.+sceneSummary_arn :: Lens.Lens' SceneSummary Prelude.Text+sceneSummary_arn = Lens.lens (\SceneSummary' {arn} -> arn) (\s@SceneSummary' {} a -> s {arn = a} :: SceneSummary)++-- | The date and time when the scene was created.+sceneSummary_creationDateTime :: Lens.Lens' SceneSummary Prelude.UTCTime+sceneSummary_creationDateTime = Lens.lens (\SceneSummary' {creationDateTime} -> creationDateTime) (\s@SceneSummary' {} a -> s {creationDateTime = a} :: SceneSummary) Prelude.. Data._Time++-- | The date and time when the scene was last updated.+sceneSummary_updateDateTime :: Lens.Lens' SceneSummary Prelude.UTCTime+sceneSummary_updateDateTime = Lens.lens (\SceneSummary' {updateDateTime} -> updateDateTime) (\s@SceneSummary' {} a -> s {updateDateTime = a} :: SceneSummary) Prelude.. Data._Time++instance Data.FromJSON SceneSummary where+ parseJSON =+ Data.withObject+ "SceneSummary"+ ( \x ->+ SceneSummary'+ Prelude.<$> (x Data..:? "description")+ Prelude.<*> (x Data..: "sceneId")+ Prelude.<*> (x Data..: "contentLocation")+ Prelude.<*> (x Data..: "arn")+ Prelude.<*> (x Data..: "creationDateTime")+ Prelude.<*> (x Data..: "updateDateTime")+ )++instance Prelude.Hashable SceneSummary where+ hashWithSalt _salt SceneSummary' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` sceneId+ `Prelude.hashWithSalt` contentLocation+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` creationDateTime+ `Prelude.hashWithSalt` updateDateTime++instance Prelude.NFData SceneSummary where+ rnf SceneSummary' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf sceneId+ `Prelude.seq` Prelude.rnf contentLocation+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf updateDateTime
+ gen/Amazonka/IotTwinMaker/Types/Scope.hs view
@@ -0,0 +1,68 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.Scope+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.Scope+ ( Scope+ ( ..,+ Scope_ENTITY,+ Scope_WORKSPACE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype Scope = Scope' {fromScope :: Data.Text}+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern Scope_ENTITY :: Scope+pattern Scope_ENTITY = Scope' "ENTITY"++pattern Scope_WORKSPACE :: Scope+pattern Scope_WORKSPACE = Scope' "WORKSPACE"++{-# COMPLETE+ Scope_ENTITY,+ Scope_WORKSPACE,+ Scope'+ #-}
+ gen/Amazonka/IotTwinMaker/Types/State.hs view
@@ -0,0 +1,83 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.State+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.State+ ( State+ ( ..,+ State_ACTIVE,+ State_CREATING,+ State_DELETING,+ State_ERROR,+ State_UPDATING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype State = State' {fromState :: Data.Text}+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern State_ACTIVE :: State+pattern State_ACTIVE = State' "ACTIVE"++pattern State_CREATING :: State+pattern State_CREATING = State' "CREATING"++pattern State_DELETING :: State+pattern State_DELETING = State' "DELETING"++pattern State_ERROR :: State+pattern State_ERROR = State' "ERROR"++pattern State_UPDATING :: State+pattern State_UPDATING = State' "UPDATING"++{-# COMPLETE+ State_ACTIVE,+ State_CREATING,+ State_DELETING,+ State_ERROR,+ State_UPDATING,+ State'+ #-}
+ gen/Amazonka/IotTwinMaker/Types/Status.hs view
@@ -0,0 +1,89 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.Status+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.Status where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.ErrorDetails+import Amazonka.IotTwinMaker.Types.State+import qualified Amazonka.Prelude as Prelude++-- | An object that represents the status of an entity, component, component+-- type, or workspace.+--+-- /See:/ 'newStatus' smart constructor.+data Status = Status'+ { -- | The error message.+ error :: Prelude.Maybe ErrorDetails,+ -- | The current state of the entity, component, component type, or+ -- workspace.+ state :: Prelude.Maybe State+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Status' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'error', 'status_error' - The error message.+--+-- 'state', 'status_state' - The current state of the entity, component, component type, or+-- workspace.+newStatus ::+ Status+newStatus =+ Status'+ { error = Prelude.Nothing,+ state = Prelude.Nothing+ }++-- | The error message.+status_error :: Lens.Lens' Status (Prelude.Maybe ErrorDetails)+status_error = Lens.lens (\Status' {error} -> error) (\s@Status' {} a -> s {error = a} :: Status)++-- | The current state of the entity, component, component type, or+-- workspace.+status_state :: Lens.Lens' Status (Prelude.Maybe State)+status_state = Lens.lens (\Status' {state} -> state) (\s@Status' {} a -> s {state = a} :: Status)++instance Data.FromJSON Status where+ parseJSON =+ Data.withObject+ "Status"+ ( \x ->+ Status'+ Prelude.<$> (x Data..:? "error")+ Prelude.<*> (x Data..:? "state")+ )++instance Prelude.Hashable Status where+ hashWithSalt _salt Status' {..} =+ _salt+ `Prelude.hashWithSalt` error+ `Prelude.hashWithSalt` state++instance Prelude.NFData Status where+ rnf Status' {..} =+ Prelude.rnf error `Prelude.seq` Prelude.rnf state
+ gen/Amazonka/IotTwinMaker/Types/SyncJobState.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.SyncJobState+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.SyncJobState+ ( SyncJobState+ ( ..,+ SyncJobState_ACTIVE,+ SyncJobState_CREATING,+ SyncJobState_DELETING,+ SyncJobState_ERROR,+ SyncJobState_INITIALIZING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SyncJobState = SyncJobState'+ { fromSyncJobState ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern SyncJobState_ACTIVE :: SyncJobState+pattern SyncJobState_ACTIVE = SyncJobState' "ACTIVE"++pattern SyncJobState_CREATING :: SyncJobState+pattern SyncJobState_CREATING = SyncJobState' "CREATING"++pattern SyncJobState_DELETING :: SyncJobState+pattern SyncJobState_DELETING = SyncJobState' "DELETING"++pattern SyncJobState_ERROR :: SyncJobState+pattern SyncJobState_ERROR = SyncJobState' "ERROR"++pattern SyncJobState_INITIALIZING :: SyncJobState+pattern SyncJobState_INITIALIZING = SyncJobState' "INITIALIZING"++{-# COMPLETE+ SyncJobState_ACTIVE,+ SyncJobState_CREATING,+ SyncJobState_DELETING,+ SyncJobState_ERROR,+ SyncJobState_INITIALIZING,+ SyncJobState'+ #-}
+ gen/Amazonka/IotTwinMaker/Types/SyncJobStatus.hs view
@@ -0,0 +1,85 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.SyncJobStatus+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.SyncJobStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.ErrorDetails+import Amazonka.IotTwinMaker.Types.SyncJobState+import qualified Amazonka.Prelude as Prelude++-- | The SyncJob status.+--+-- /See:/ 'newSyncJobStatus' smart constructor.+data SyncJobStatus = SyncJobStatus'+ { -- | The SyncJob error.+ error :: Prelude.Maybe ErrorDetails,+ -- | The SyncJob status state.+ state :: Prelude.Maybe SyncJobState+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SyncJobStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'error', 'syncJobStatus_error' - The SyncJob error.+--+-- 'state', 'syncJobStatus_state' - The SyncJob status state.+newSyncJobStatus ::+ SyncJobStatus+newSyncJobStatus =+ SyncJobStatus'+ { error = Prelude.Nothing,+ state = Prelude.Nothing+ }++-- | The SyncJob error.+syncJobStatus_error :: Lens.Lens' SyncJobStatus (Prelude.Maybe ErrorDetails)+syncJobStatus_error = Lens.lens (\SyncJobStatus' {error} -> error) (\s@SyncJobStatus' {} a -> s {error = a} :: SyncJobStatus)++-- | The SyncJob status state.+syncJobStatus_state :: Lens.Lens' SyncJobStatus (Prelude.Maybe SyncJobState)+syncJobStatus_state = Lens.lens (\SyncJobStatus' {state} -> state) (\s@SyncJobStatus' {} a -> s {state = a} :: SyncJobStatus)++instance Data.FromJSON SyncJobStatus where+ parseJSON =+ Data.withObject+ "SyncJobStatus"+ ( \x ->+ SyncJobStatus'+ Prelude.<$> (x Data..:? "error")+ Prelude.<*> (x Data..:? "state")+ )++instance Prelude.Hashable SyncJobStatus where+ hashWithSalt _salt SyncJobStatus' {..} =+ _salt+ `Prelude.hashWithSalt` error+ `Prelude.hashWithSalt` state++instance Prelude.NFData SyncJobStatus where+ rnf SyncJobStatus' {..} =+ Prelude.rnf error `Prelude.seq` Prelude.rnf state
+ gen/Amazonka/IotTwinMaker/Types/SyncJobSummary.hs view
@@ -0,0 +1,133 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.SyncJobSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.SyncJobSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.SyncJobStatus+import qualified Amazonka.Prelude as Prelude++-- | The SyncJob summary.+--+-- /See:/ 'newSyncJobSummary' smart constructor.+data SyncJobSummary = SyncJobSummary'+ { -- | The SyncJob summary ARN.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The creation date and time.+ creationDateTime :: Prelude.Maybe Data.POSIX,+ -- | The SyncJob summaries status.+ status :: Prelude.Maybe SyncJobStatus,+ -- | The sync source.+ syncSource :: Prelude.Maybe Prelude.Text,+ -- | The update date and time.+ updateDateTime :: Prelude.Maybe Data.POSIX,+ -- | The ID of the workspace that contains the sync job.+ workspaceId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SyncJobSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'arn', 'syncJobSummary_arn' - The SyncJob summary ARN.+--+-- 'creationDateTime', 'syncJobSummary_creationDateTime' - The creation date and time.+--+-- 'status', 'syncJobSummary_status' - The SyncJob summaries status.+--+-- 'syncSource', 'syncJobSummary_syncSource' - The sync source.+--+-- 'updateDateTime', 'syncJobSummary_updateDateTime' - The update date and time.+--+-- 'workspaceId', 'syncJobSummary_workspaceId' - The ID of the workspace that contains the sync job.+newSyncJobSummary ::+ SyncJobSummary+newSyncJobSummary =+ SyncJobSummary'+ { arn = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ status = Prelude.Nothing,+ syncSource = Prelude.Nothing,+ updateDateTime = Prelude.Nothing,+ workspaceId = Prelude.Nothing+ }++-- | The SyncJob summary ARN.+syncJobSummary_arn :: Lens.Lens' SyncJobSummary (Prelude.Maybe Prelude.Text)+syncJobSummary_arn = Lens.lens (\SyncJobSummary' {arn} -> arn) (\s@SyncJobSummary' {} a -> s {arn = a} :: SyncJobSummary)++-- | The creation date and time.+syncJobSummary_creationDateTime :: Lens.Lens' SyncJobSummary (Prelude.Maybe Prelude.UTCTime)+syncJobSummary_creationDateTime = Lens.lens (\SyncJobSummary' {creationDateTime} -> creationDateTime) (\s@SyncJobSummary' {} a -> s {creationDateTime = a} :: SyncJobSummary) Prelude.. Lens.mapping Data._Time++-- | The SyncJob summaries status.+syncJobSummary_status :: Lens.Lens' SyncJobSummary (Prelude.Maybe SyncJobStatus)+syncJobSummary_status = Lens.lens (\SyncJobSummary' {status} -> status) (\s@SyncJobSummary' {} a -> s {status = a} :: SyncJobSummary)++-- | The sync source.+syncJobSummary_syncSource :: Lens.Lens' SyncJobSummary (Prelude.Maybe Prelude.Text)+syncJobSummary_syncSource = Lens.lens (\SyncJobSummary' {syncSource} -> syncSource) (\s@SyncJobSummary' {} a -> s {syncSource = a} :: SyncJobSummary)++-- | The update date and time.+syncJobSummary_updateDateTime :: Lens.Lens' SyncJobSummary (Prelude.Maybe Prelude.UTCTime)+syncJobSummary_updateDateTime = Lens.lens (\SyncJobSummary' {updateDateTime} -> updateDateTime) (\s@SyncJobSummary' {} a -> s {updateDateTime = a} :: SyncJobSummary) Prelude.. Lens.mapping Data._Time++-- | The ID of the workspace that contains the sync job.+syncJobSummary_workspaceId :: Lens.Lens' SyncJobSummary (Prelude.Maybe Prelude.Text)+syncJobSummary_workspaceId = Lens.lens (\SyncJobSummary' {workspaceId} -> workspaceId) (\s@SyncJobSummary' {} a -> s {workspaceId = a} :: SyncJobSummary)++instance Data.FromJSON SyncJobSummary where+ parseJSON =+ Data.withObject+ "SyncJobSummary"+ ( \x ->+ SyncJobSummary'+ Prelude.<$> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "creationDateTime")+ Prelude.<*> (x Data..:? "status")+ Prelude.<*> (x Data..:? "syncSource")+ Prelude.<*> (x Data..:? "updateDateTime")+ Prelude.<*> (x Data..:? "workspaceId")+ )++instance Prelude.Hashable SyncJobSummary where+ hashWithSalt _salt SyncJobSummary' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` creationDateTime+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` syncSource+ `Prelude.hashWithSalt` updateDateTime+ `Prelude.hashWithSalt` workspaceId++instance Prelude.NFData SyncJobSummary where+ rnf SyncJobSummary' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf syncSource+ `Prelude.seq` Prelude.rnf updateDateTime+ `Prelude.seq` Prelude.rnf workspaceId
+ gen/Amazonka/IotTwinMaker/Types/SyncResourceFilter.hs view
@@ -0,0 +1,109 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.SyncResourceFilter+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.SyncResourceFilter where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.SyncResourceState+import Amazonka.IotTwinMaker.Types.SyncResourceType+import qualified Amazonka.Prelude as Prelude++-- | The sync resource filter.+--+-- /See:/ 'newSyncResourceFilter' smart constructor.+data SyncResourceFilter = SyncResourceFilter'+ { -- | The external Id.+ externalId :: Prelude.Maybe Prelude.Text,+ -- | The sync resource filter resource Id.+ resourceId :: Prelude.Maybe Prelude.Text,+ -- | The sync resource filter resoucre type+ resourceType :: Prelude.Maybe SyncResourceType,+ -- | The sync resource filter\'s state.+ state :: Prelude.Maybe SyncResourceState+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SyncResourceFilter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'externalId', 'syncResourceFilter_externalId' - The external Id.+--+-- 'resourceId', 'syncResourceFilter_resourceId' - The sync resource filter resource Id.+--+-- 'resourceType', 'syncResourceFilter_resourceType' - The sync resource filter resoucre type+--+-- 'state', 'syncResourceFilter_state' - The sync resource filter\'s state.+newSyncResourceFilter ::+ SyncResourceFilter+newSyncResourceFilter =+ SyncResourceFilter'+ { externalId = Prelude.Nothing,+ resourceId = Prelude.Nothing,+ resourceType = Prelude.Nothing,+ state = Prelude.Nothing+ }++-- | The external Id.+syncResourceFilter_externalId :: Lens.Lens' SyncResourceFilter (Prelude.Maybe Prelude.Text)+syncResourceFilter_externalId = Lens.lens (\SyncResourceFilter' {externalId} -> externalId) (\s@SyncResourceFilter' {} a -> s {externalId = a} :: SyncResourceFilter)++-- | The sync resource filter resource Id.+syncResourceFilter_resourceId :: Lens.Lens' SyncResourceFilter (Prelude.Maybe Prelude.Text)+syncResourceFilter_resourceId = Lens.lens (\SyncResourceFilter' {resourceId} -> resourceId) (\s@SyncResourceFilter' {} a -> s {resourceId = a} :: SyncResourceFilter)++-- | The sync resource filter resoucre type+syncResourceFilter_resourceType :: Lens.Lens' SyncResourceFilter (Prelude.Maybe SyncResourceType)+syncResourceFilter_resourceType = Lens.lens (\SyncResourceFilter' {resourceType} -> resourceType) (\s@SyncResourceFilter' {} a -> s {resourceType = a} :: SyncResourceFilter)++-- | The sync resource filter\'s state.+syncResourceFilter_state :: Lens.Lens' SyncResourceFilter (Prelude.Maybe SyncResourceState)+syncResourceFilter_state = Lens.lens (\SyncResourceFilter' {state} -> state) (\s@SyncResourceFilter' {} a -> s {state = a} :: SyncResourceFilter)++instance Prelude.Hashable SyncResourceFilter where+ hashWithSalt _salt SyncResourceFilter' {..} =+ _salt+ `Prelude.hashWithSalt` externalId+ `Prelude.hashWithSalt` resourceId+ `Prelude.hashWithSalt` resourceType+ `Prelude.hashWithSalt` state++instance Prelude.NFData SyncResourceFilter where+ rnf SyncResourceFilter' {..} =+ Prelude.rnf externalId+ `Prelude.seq` Prelude.rnf resourceId+ `Prelude.seq` Prelude.rnf resourceType+ `Prelude.seq` Prelude.rnf state++instance Data.ToJSON SyncResourceFilter where+ toJSON SyncResourceFilter' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("externalId" Data..=) Prelude.<$> externalId,+ ("resourceId" Data..=) Prelude.<$> resourceId,+ ("resourceType" Data..=) Prelude.<$> resourceType,+ ("state" Data..=) Prelude.<$> state+ ]+ )
+ gen/Amazonka/IotTwinMaker/Types/SyncResourceState.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.SyncResourceState+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.SyncResourceState+ ( SyncResourceState+ ( ..,+ SyncResourceState_DELETED,+ SyncResourceState_ERROR,+ SyncResourceState_INITIALIZING,+ SyncResourceState_IN_SYNC,+ SyncResourceState_PROCESSING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SyncResourceState = SyncResourceState'+ { fromSyncResourceState ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern SyncResourceState_DELETED :: SyncResourceState+pattern SyncResourceState_DELETED = SyncResourceState' "DELETED"++pattern SyncResourceState_ERROR :: SyncResourceState+pattern SyncResourceState_ERROR = SyncResourceState' "ERROR"++pattern SyncResourceState_INITIALIZING :: SyncResourceState+pattern SyncResourceState_INITIALIZING = SyncResourceState' "INITIALIZING"++pattern SyncResourceState_IN_SYNC :: SyncResourceState+pattern SyncResourceState_IN_SYNC = SyncResourceState' "IN_SYNC"++pattern SyncResourceState_PROCESSING :: SyncResourceState+pattern SyncResourceState_PROCESSING = SyncResourceState' "PROCESSING"++{-# COMPLETE+ SyncResourceState_DELETED,+ SyncResourceState_ERROR,+ SyncResourceState_INITIALIZING,+ SyncResourceState_IN_SYNC,+ SyncResourceState_PROCESSING,+ SyncResourceState'+ #-}
+ gen/Amazonka/IotTwinMaker/Types/SyncResourceStatus.hs view
@@ -0,0 +1,85 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.SyncResourceStatus+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.SyncResourceStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.ErrorDetails+import Amazonka.IotTwinMaker.Types.SyncResourceState+import qualified Amazonka.Prelude as Prelude++-- | The sync resource status.+--+-- /See:/ 'newSyncResourceStatus' smart constructor.+data SyncResourceStatus = SyncResourceStatus'+ { -- | The status error.+ error :: Prelude.Maybe ErrorDetails,+ -- | The sync resource status state.+ state :: Prelude.Maybe SyncResourceState+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SyncResourceStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'error', 'syncResourceStatus_error' - The status error.+--+-- 'state', 'syncResourceStatus_state' - The sync resource status state.+newSyncResourceStatus ::+ SyncResourceStatus+newSyncResourceStatus =+ SyncResourceStatus'+ { error = Prelude.Nothing,+ state = Prelude.Nothing+ }++-- | The status error.+syncResourceStatus_error :: Lens.Lens' SyncResourceStatus (Prelude.Maybe ErrorDetails)+syncResourceStatus_error = Lens.lens (\SyncResourceStatus' {error} -> error) (\s@SyncResourceStatus' {} a -> s {error = a} :: SyncResourceStatus)++-- | The sync resource status state.+syncResourceStatus_state :: Lens.Lens' SyncResourceStatus (Prelude.Maybe SyncResourceState)+syncResourceStatus_state = Lens.lens (\SyncResourceStatus' {state} -> state) (\s@SyncResourceStatus' {} a -> s {state = a} :: SyncResourceStatus)++instance Data.FromJSON SyncResourceStatus where+ parseJSON =+ Data.withObject+ "SyncResourceStatus"+ ( \x ->+ SyncResourceStatus'+ Prelude.<$> (x Data..:? "error")+ Prelude.<*> (x Data..:? "state")+ )++instance Prelude.Hashable SyncResourceStatus where+ hashWithSalt _salt SyncResourceStatus' {..} =+ _salt+ `Prelude.hashWithSalt` error+ `Prelude.hashWithSalt` state++instance Prelude.NFData SyncResourceStatus where+ rnf SyncResourceStatus' {..} =+ Prelude.rnf error `Prelude.seq` Prelude.rnf state
+ gen/Amazonka/IotTwinMaker/Types/SyncResourceSummary.hs view
@@ -0,0 +1,122 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.SyncResourceSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.SyncResourceSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.SyncResourceStatus+import Amazonka.IotTwinMaker.Types.SyncResourceType+import qualified Amazonka.Prelude as Prelude++-- | The sync resource summary.+--+-- /See:/ 'newSyncResourceSummary' smart constructor.+data SyncResourceSummary = SyncResourceSummary'+ { -- | The external Id.+ externalId :: Prelude.Maybe Prelude.Text,+ -- | The resource Id.+ resourceId :: Prelude.Maybe Prelude.Text,+ -- | The resource type.+ resourceType :: Prelude.Maybe SyncResourceType,+ -- | The sync resource summary status.+ status :: Prelude.Maybe SyncResourceStatus,+ -- | The update date and time.+ updateDateTime :: Prelude.Maybe Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SyncResourceSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'externalId', 'syncResourceSummary_externalId' - The external Id.+--+-- 'resourceId', 'syncResourceSummary_resourceId' - The resource Id.+--+-- 'resourceType', 'syncResourceSummary_resourceType' - The resource type.+--+-- 'status', 'syncResourceSummary_status' - The sync resource summary status.+--+-- 'updateDateTime', 'syncResourceSummary_updateDateTime' - The update date and time.+newSyncResourceSummary ::+ SyncResourceSummary+newSyncResourceSummary =+ SyncResourceSummary'+ { externalId = Prelude.Nothing,+ resourceId = Prelude.Nothing,+ resourceType = Prelude.Nothing,+ status = Prelude.Nothing,+ updateDateTime = Prelude.Nothing+ }++-- | The external Id.+syncResourceSummary_externalId :: Lens.Lens' SyncResourceSummary (Prelude.Maybe Prelude.Text)+syncResourceSummary_externalId = Lens.lens (\SyncResourceSummary' {externalId} -> externalId) (\s@SyncResourceSummary' {} a -> s {externalId = a} :: SyncResourceSummary)++-- | The resource Id.+syncResourceSummary_resourceId :: Lens.Lens' SyncResourceSummary (Prelude.Maybe Prelude.Text)+syncResourceSummary_resourceId = Lens.lens (\SyncResourceSummary' {resourceId} -> resourceId) (\s@SyncResourceSummary' {} a -> s {resourceId = a} :: SyncResourceSummary)++-- | The resource type.+syncResourceSummary_resourceType :: Lens.Lens' SyncResourceSummary (Prelude.Maybe SyncResourceType)+syncResourceSummary_resourceType = Lens.lens (\SyncResourceSummary' {resourceType} -> resourceType) (\s@SyncResourceSummary' {} a -> s {resourceType = a} :: SyncResourceSummary)++-- | The sync resource summary status.+syncResourceSummary_status :: Lens.Lens' SyncResourceSummary (Prelude.Maybe SyncResourceStatus)+syncResourceSummary_status = Lens.lens (\SyncResourceSummary' {status} -> status) (\s@SyncResourceSummary' {} a -> s {status = a} :: SyncResourceSummary)++-- | The update date and time.+syncResourceSummary_updateDateTime :: Lens.Lens' SyncResourceSummary (Prelude.Maybe Prelude.UTCTime)+syncResourceSummary_updateDateTime = Lens.lens (\SyncResourceSummary' {updateDateTime} -> updateDateTime) (\s@SyncResourceSummary' {} a -> s {updateDateTime = a} :: SyncResourceSummary) Prelude.. Lens.mapping Data._Time++instance Data.FromJSON SyncResourceSummary where+ parseJSON =+ Data.withObject+ "SyncResourceSummary"+ ( \x ->+ SyncResourceSummary'+ Prelude.<$> (x Data..:? "externalId")+ Prelude.<*> (x Data..:? "resourceId")+ Prelude.<*> (x Data..:? "resourceType")+ Prelude.<*> (x Data..:? "status")+ Prelude.<*> (x Data..:? "updateDateTime")+ )++instance Prelude.Hashable SyncResourceSummary where+ hashWithSalt _salt SyncResourceSummary' {..} =+ _salt+ `Prelude.hashWithSalt` externalId+ `Prelude.hashWithSalt` resourceId+ `Prelude.hashWithSalt` resourceType+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` updateDateTime++instance Prelude.NFData SyncResourceSummary where+ rnf SyncResourceSummary' {..} =+ Prelude.rnf externalId+ `Prelude.seq` Prelude.rnf resourceId+ `Prelude.seq` Prelude.rnf resourceType+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf updateDateTime
+ gen/Amazonka/IotTwinMaker/Types/SyncResourceType.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.SyncResourceType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.SyncResourceType+ ( SyncResourceType+ ( ..,+ SyncResourceType_COMPONENT_TYPE,+ SyncResourceType_ENTITY+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SyncResourceType = SyncResourceType'+ { fromSyncResourceType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern SyncResourceType_COMPONENT_TYPE :: SyncResourceType+pattern SyncResourceType_COMPONENT_TYPE = SyncResourceType' "COMPONENT_TYPE"++pattern SyncResourceType_ENTITY :: SyncResourceType+pattern SyncResourceType_ENTITY = SyncResourceType' "ENTITY"++{-# COMPLETE+ SyncResourceType_COMPONENT_TYPE,+ SyncResourceType_ENTITY,+ SyncResourceType'+ #-}
+ gen/Amazonka/IotTwinMaker/Types/TabularConditions.hs view
@@ -0,0 +1,98 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.TabularConditions+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.TabularConditions where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types.OrderBy+import Amazonka.IotTwinMaker.Types.PropertyFilter+import qualified Amazonka.Prelude as Prelude++-- | The tabular conditions.+--+-- /See:/ 'newTabularConditions' smart constructor.+data TabularConditions = TabularConditions'+ { -- | Filter criteria that orders the output. It can be sorted in ascending or+ -- descending order.+ orderBy :: Prelude.Maybe (Prelude.NonEmpty OrderBy),+ -- | You can filter the request using various logical operators and a+ -- key-value format. For example:+ --+ -- @{\"key\": \"serverType\", \"value\": \"webServer\"}@+ propertyFilters :: Prelude.Maybe (Prelude.NonEmpty PropertyFilter)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TabularConditions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'orderBy', 'tabularConditions_orderBy' - Filter criteria that orders the output. It can be sorted in ascending or+-- descending order.+--+-- 'propertyFilters', 'tabularConditions_propertyFilters' - You can filter the request using various logical operators and a+-- key-value format. For example:+--+-- @{\"key\": \"serverType\", \"value\": \"webServer\"}@+newTabularConditions ::+ TabularConditions+newTabularConditions =+ TabularConditions'+ { orderBy = Prelude.Nothing,+ propertyFilters = Prelude.Nothing+ }++-- | Filter criteria that orders the output. It can be sorted in ascending or+-- descending order.+tabularConditions_orderBy :: Lens.Lens' TabularConditions (Prelude.Maybe (Prelude.NonEmpty OrderBy))+tabularConditions_orderBy = Lens.lens (\TabularConditions' {orderBy} -> orderBy) (\s@TabularConditions' {} a -> s {orderBy = a} :: TabularConditions) Prelude.. Lens.mapping Lens.coerced++-- | You can filter the request using various logical operators and a+-- key-value format. For example:+--+-- @{\"key\": \"serverType\", \"value\": \"webServer\"}@+tabularConditions_propertyFilters :: Lens.Lens' TabularConditions (Prelude.Maybe (Prelude.NonEmpty PropertyFilter))+tabularConditions_propertyFilters = Lens.lens (\TabularConditions' {propertyFilters} -> propertyFilters) (\s@TabularConditions' {} a -> s {propertyFilters = a} :: TabularConditions) Prelude.. Lens.mapping Lens.coerced++instance Prelude.Hashable TabularConditions where+ hashWithSalt _salt TabularConditions' {..} =+ _salt+ `Prelude.hashWithSalt` orderBy+ `Prelude.hashWithSalt` propertyFilters++instance Prelude.NFData TabularConditions where+ rnf TabularConditions' {..} =+ Prelude.rnf orderBy+ `Prelude.seq` Prelude.rnf propertyFilters++instance Data.ToJSON TabularConditions where+ toJSON TabularConditions' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("orderBy" Data..=) Prelude.<$> orderBy,+ ("propertyFilters" Data..=)+ Prelude.<$> propertyFilters+ ]+ )
+ gen/Amazonka/IotTwinMaker/Types/Type.hs view
@@ -0,0 +1,98 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.Type+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.Type+ ( Type+ ( ..,+ Type_BOOLEAN,+ Type_DOUBLE,+ Type_INTEGER,+ Type_LIST,+ Type_LONG,+ Type_MAP,+ Type_RELATIONSHIP,+ Type_STRING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype Type = Type' {fromType :: Data.Text}+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern Type_BOOLEAN :: Type+pattern Type_BOOLEAN = Type' "BOOLEAN"++pattern Type_DOUBLE :: Type+pattern Type_DOUBLE = Type' "DOUBLE"++pattern Type_INTEGER :: Type+pattern Type_INTEGER = Type' "INTEGER"++pattern Type_LIST :: Type+pattern Type_LIST = Type' "LIST"++pattern Type_LONG :: Type+pattern Type_LONG = Type' "LONG"++pattern Type_MAP :: Type+pattern Type_MAP = Type' "MAP"++pattern Type_RELATIONSHIP :: Type+pattern Type_RELATIONSHIP = Type' "RELATIONSHIP"++pattern Type_STRING :: Type+pattern Type_STRING = Type' "STRING"++{-# COMPLETE+ Type_BOOLEAN,+ Type_DOUBLE,+ Type_INTEGER,+ Type_LIST,+ Type_LONG,+ Type_MAP,+ Type_RELATIONSHIP,+ Type_STRING,+ Type'+ #-}
+ gen/Amazonka/IotTwinMaker/Types/UpdateReason.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.UpdateReason+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.UpdateReason+ ( UpdateReason+ ( ..,+ UpdateReason_DEFAULT,+ UpdateReason_ENTITY_COUNT_UPDATE,+ UpdateReason_OVERWRITTEN,+ UpdateReason_PRICING_MODE_UPDATE,+ UpdateReason_PRICING_TIER_UPDATE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype UpdateReason = UpdateReason'+ { fromUpdateReason ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern UpdateReason_DEFAULT :: UpdateReason+pattern UpdateReason_DEFAULT = UpdateReason' "DEFAULT"++pattern UpdateReason_ENTITY_COUNT_UPDATE :: UpdateReason+pattern UpdateReason_ENTITY_COUNT_UPDATE = UpdateReason' "ENTITY_COUNT_UPDATE"++pattern UpdateReason_OVERWRITTEN :: UpdateReason+pattern UpdateReason_OVERWRITTEN = UpdateReason' "OVERWRITTEN"++pattern UpdateReason_PRICING_MODE_UPDATE :: UpdateReason+pattern UpdateReason_PRICING_MODE_UPDATE = UpdateReason' "PRICING_MODE_UPDATE"++pattern UpdateReason_PRICING_TIER_UPDATE :: UpdateReason+pattern UpdateReason_PRICING_TIER_UPDATE = UpdateReason' "PRICING_TIER_UPDATE"++{-# COMPLETE+ UpdateReason_DEFAULT,+ UpdateReason_ENTITY_COUNT_UPDATE,+ UpdateReason_OVERWRITTEN,+ UpdateReason_PRICING_MODE_UPDATE,+ UpdateReason_PRICING_TIER_UPDATE,+ UpdateReason'+ #-}
+ gen/Amazonka/IotTwinMaker/Types/WorkspaceSummary.hs view
@@ -0,0 +1,133 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Types.WorkspaceSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Types.WorkspaceSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | An object that contains information about a workspace.+--+-- /See:/ 'newWorkspaceSummary' smart constructor.+data WorkspaceSummary = WorkspaceSummary'+ { -- | The description of the workspace.+ description :: Prelude.Maybe Prelude.Text,+ -- | The ID of the workspace.+ workspaceId :: Prelude.Text,+ -- | The ARN of the workspace.+ arn :: Prelude.Text,+ -- | The date and time when the workspace was created.+ creationDateTime :: Data.POSIX,+ -- | The date and time when the workspace was last updated.+ updateDateTime :: Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'WorkspaceSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'workspaceSummary_description' - The description of the workspace.+--+-- 'workspaceId', 'workspaceSummary_workspaceId' - The ID of the workspace.+--+-- 'arn', 'workspaceSummary_arn' - The ARN of the workspace.+--+-- 'creationDateTime', 'workspaceSummary_creationDateTime' - The date and time when the workspace was created.+--+-- 'updateDateTime', 'workspaceSummary_updateDateTime' - The date and time when the workspace was last updated.+newWorkspaceSummary ::+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'arn'+ Prelude.Text ->+ -- | 'creationDateTime'+ Prelude.UTCTime ->+ -- | 'updateDateTime'+ Prelude.UTCTime ->+ WorkspaceSummary+newWorkspaceSummary+ pWorkspaceId_+ pArn_+ pCreationDateTime_+ pUpdateDateTime_ =+ WorkspaceSummary'+ { description = Prelude.Nothing,+ workspaceId = pWorkspaceId_,+ arn = pArn_,+ creationDateTime =+ Data._Time Lens.# pCreationDateTime_,+ updateDateTime = Data._Time Lens.# pUpdateDateTime_+ }++-- | The description of the workspace.+workspaceSummary_description :: Lens.Lens' WorkspaceSummary (Prelude.Maybe Prelude.Text)+workspaceSummary_description = Lens.lens (\WorkspaceSummary' {description} -> description) (\s@WorkspaceSummary' {} a -> s {description = a} :: WorkspaceSummary)++-- | The ID of the workspace.+workspaceSummary_workspaceId :: Lens.Lens' WorkspaceSummary Prelude.Text+workspaceSummary_workspaceId = Lens.lens (\WorkspaceSummary' {workspaceId} -> workspaceId) (\s@WorkspaceSummary' {} a -> s {workspaceId = a} :: WorkspaceSummary)++-- | The ARN of the workspace.+workspaceSummary_arn :: Lens.Lens' WorkspaceSummary Prelude.Text+workspaceSummary_arn = Lens.lens (\WorkspaceSummary' {arn} -> arn) (\s@WorkspaceSummary' {} a -> s {arn = a} :: WorkspaceSummary)++-- | The date and time when the workspace was created.+workspaceSummary_creationDateTime :: Lens.Lens' WorkspaceSummary Prelude.UTCTime+workspaceSummary_creationDateTime = Lens.lens (\WorkspaceSummary' {creationDateTime} -> creationDateTime) (\s@WorkspaceSummary' {} a -> s {creationDateTime = a} :: WorkspaceSummary) Prelude.. Data._Time++-- | The date and time when the workspace was last updated.+workspaceSummary_updateDateTime :: Lens.Lens' WorkspaceSummary Prelude.UTCTime+workspaceSummary_updateDateTime = Lens.lens (\WorkspaceSummary' {updateDateTime} -> updateDateTime) (\s@WorkspaceSummary' {} a -> s {updateDateTime = a} :: WorkspaceSummary) Prelude.. Data._Time++instance Data.FromJSON WorkspaceSummary where+ parseJSON =+ Data.withObject+ "WorkspaceSummary"+ ( \x ->+ WorkspaceSummary'+ Prelude.<$> (x Data..:? "description")+ Prelude.<*> (x Data..: "workspaceId")+ Prelude.<*> (x Data..: "arn")+ Prelude.<*> (x Data..: "creationDateTime")+ Prelude.<*> (x Data..: "updateDateTime")+ )++instance Prelude.Hashable WorkspaceSummary where+ hashWithSalt _salt WorkspaceSummary' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` workspaceId+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` creationDateTime+ `Prelude.hashWithSalt` updateDateTime++instance Prelude.NFData WorkspaceSummary where+ rnf WorkspaceSummary' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf updateDateTime
+ gen/Amazonka/IotTwinMaker/UntagResource.hs view
@@ -0,0 +1,165 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.UntagResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes tags from a resource.+module Amazonka.IotTwinMaker.UntagResource+ ( -- * Creating a Request+ UntagResource (..),+ newUntagResource,++ -- * Request Lenses+ untagResource_resourceARN,+ untagResource_tagKeys,++ -- * Destructuring the Response+ UntagResourceResponse (..),+ newUntagResourceResponse,++ -- * Response Lenses+ untagResourceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUntagResource' smart constructor.+data UntagResource = UntagResource'+ { -- | The ARN of the resource.+ resourceARN :: Prelude.Text,+ -- | A list of tag key names to remove from the resource. You don\'t specify+ -- the value. Both the key and its associated value are removed.+ tagKeys :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceARN', 'untagResource_resourceARN' - The ARN of the resource.+--+-- 'tagKeys', 'untagResource_tagKeys' - A list of tag key names to remove from the resource. You don\'t specify+-- the value. Both the key and its associated value are removed.+newUntagResource ::+ -- | 'resourceARN'+ Prelude.Text ->+ UntagResource+newUntagResource pResourceARN_ =+ UntagResource'+ { resourceARN = pResourceARN_,+ tagKeys = Prelude.mempty+ }++-- | The ARN of the resource.+untagResource_resourceARN :: Lens.Lens' UntagResource Prelude.Text+untagResource_resourceARN = Lens.lens (\UntagResource' {resourceARN} -> resourceARN) (\s@UntagResource' {} a -> s {resourceARN = a} :: UntagResource)++-- | A list of tag key names to remove from the resource. You don\'t specify+-- the value. Both the key and its associated value are removed.+untagResource_tagKeys :: Lens.Lens' UntagResource [Prelude.Text]+untagResource_tagKeys = Lens.lens (\UntagResource' {tagKeys} -> tagKeys) (\s@UntagResource' {} a -> s {tagKeys = a} :: UntagResource) Prelude.. Lens.coerced++instance Core.AWSRequest UntagResource where+ type+ AWSResponse UntagResource =+ UntagResourceResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ UntagResourceResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UntagResource where+ hashWithSalt _salt UntagResource' {..} =+ _salt+ `Prelude.hashWithSalt` resourceARN+ `Prelude.hashWithSalt` tagKeys++instance Prelude.NFData UntagResource where+ rnf UntagResource' {..} =+ Prelude.rnf resourceARN+ `Prelude.seq` Prelude.rnf tagKeys++instance Data.ToHeaders UntagResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath UntagResource where+ toPath = Prelude.const "/tags"++instance Data.ToQuery UntagResource where+ toQuery UntagResource' {..} =+ Prelude.mconcat+ [ "resourceARN" Data.=: resourceARN,+ "tagKeys" Data.=: Data.toQueryList "member" tagKeys+ ]++-- | /See:/ 'newUntagResourceResponse' smart constructor.+data UntagResourceResponse = UntagResourceResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'untagResourceResponse_httpStatus' - The response's http status code.+newUntagResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UntagResourceResponse+newUntagResourceResponse pHttpStatus_ =+ UntagResourceResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+untagResourceResponse_httpStatus :: Lens.Lens' UntagResourceResponse Prelude.Int+untagResourceResponse_httpStatus = Lens.lens (\UntagResourceResponse' {httpStatus} -> httpStatus) (\s@UntagResourceResponse' {} a -> s {httpStatus = a} :: UntagResourceResponse)++instance Prelude.NFData UntagResourceResponse where+ rnf UntagResourceResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/IotTwinMaker/UpdateComponentType.hs view
@@ -0,0 +1,343 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.UpdateComponentType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates information in a component type.+module Amazonka.IotTwinMaker.UpdateComponentType+ ( -- * Creating a Request+ UpdateComponentType (..),+ newUpdateComponentType,++ -- * Request Lenses+ updateComponentType_componentTypeName,+ updateComponentType_description,+ updateComponentType_extendsFrom,+ updateComponentType_functions,+ updateComponentType_isSingleton,+ updateComponentType_propertyDefinitions,+ updateComponentType_propertyGroups,+ updateComponentType_workspaceId,+ updateComponentType_componentTypeId,++ -- * Destructuring the Response+ UpdateComponentTypeResponse (..),+ newUpdateComponentTypeResponse,++ -- * Response Lenses+ updateComponentTypeResponse_httpStatus,+ updateComponentTypeResponse_workspaceId,+ updateComponentTypeResponse_arn,+ updateComponentTypeResponse_componentTypeId,+ updateComponentTypeResponse_state,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateComponentType' smart constructor.+data UpdateComponentType = UpdateComponentType'+ { -- | The component type name.+ componentTypeName :: Prelude.Maybe Prelude.Text,+ -- | The description of the component type.+ description :: Prelude.Maybe Prelude.Text,+ -- | Specifies the component type that this component type extends.+ extendsFrom :: Prelude.Maybe [Prelude.Text],+ -- | An object that maps strings to the functions in the component type. Each+ -- string in the mapping must be unique to this object.+ functions :: Prelude.Maybe (Prelude.HashMap Prelude.Text FunctionRequest),+ -- | A Boolean value that specifies whether an entity can have more than one+ -- component of this type.+ isSingleton :: Prelude.Maybe Prelude.Bool,+ -- | An object that maps strings to the property definitions in the component+ -- type. Each string in the mapping must be unique to this object.+ propertyDefinitions :: Prelude.Maybe (Prelude.HashMap Prelude.Text PropertyDefinitionRequest),+ -- | The property groups+ propertyGroups :: Prelude.Maybe (Prelude.HashMap Prelude.Text PropertyGroupRequest),+ -- | The ID of the workspace.+ workspaceId :: Prelude.Text,+ -- | The ID of the component type.+ componentTypeId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateComponentType' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'componentTypeName', 'updateComponentType_componentTypeName' - The component type name.+--+-- 'description', 'updateComponentType_description' - The description of the component type.+--+-- 'extendsFrom', 'updateComponentType_extendsFrom' - Specifies the component type that this component type extends.+--+-- 'functions', 'updateComponentType_functions' - An object that maps strings to the functions in the component type. Each+-- string in the mapping must be unique to this object.+--+-- 'isSingleton', 'updateComponentType_isSingleton' - A Boolean value that specifies whether an entity can have more than one+-- component of this type.+--+-- 'propertyDefinitions', 'updateComponentType_propertyDefinitions' - An object that maps strings to the property definitions in the component+-- type. Each string in the mapping must be unique to this object.+--+-- 'propertyGroups', 'updateComponentType_propertyGroups' - The property groups+--+-- 'workspaceId', 'updateComponentType_workspaceId' - The ID of the workspace.+--+-- 'componentTypeId', 'updateComponentType_componentTypeId' - The ID of the component type.+newUpdateComponentType ::+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'componentTypeId'+ Prelude.Text ->+ UpdateComponentType+newUpdateComponentType+ pWorkspaceId_+ pComponentTypeId_ =+ UpdateComponentType'+ { componentTypeName =+ Prelude.Nothing,+ description = Prelude.Nothing,+ extendsFrom = Prelude.Nothing,+ functions = Prelude.Nothing,+ isSingleton = Prelude.Nothing,+ propertyDefinitions = Prelude.Nothing,+ propertyGroups = Prelude.Nothing,+ workspaceId = pWorkspaceId_,+ componentTypeId = pComponentTypeId_+ }++-- | The component type name.+updateComponentType_componentTypeName :: Lens.Lens' UpdateComponentType (Prelude.Maybe Prelude.Text)+updateComponentType_componentTypeName = Lens.lens (\UpdateComponentType' {componentTypeName} -> componentTypeName) (\s@UpdateComponentType' {} a -> s {componentTypeName = a} :: UpdateComponentType)++-- | The description of the component type.+updateComponentType_description :: Lens.Lens' UpdateComponentType (Prelude.Maybe Prelude.Text)+updateComponentType_description = Lens.lens (\UpdateComponentType' {description} -> description) (\s@UpdateComponentType' {} a -> s {description = a} :: UpdateComponentType)++-- | Specifies the component type that this component type extends.+updateComponentType_extendsFrom :: Lens.Lens' UpdateComponentType (Prelude.Maybe [Prelude.Text])+updateComponentType_extendsFrom = Lens.lens (\UpdateComponentType' {extendsFrom} -> extendsFrom) (\s@UpdateComponentType' {} a -> s {extendsFrom = a} :: UpdateComponentType) Prelude.. Lens.mapping Lens.coerced++-- | An object that maps strings to the functions in the component type. Each+-- string in the mapping must be unique to this object.+updateComponentType_functions :: Lens.Lens' UpdateComponentType (Prelude.Maybe (Prelude.HashMap Prelude.Text FunctionRequest))+updateComponentType_functions = Lens.lens (\UpdateComponentType' {functions} -> functions) (\s@UpdateComponentType' {} a -> s {functions = a} :: UpdateComponentType) Prelude.. Lens.mapping Lens.coerced++-- | A Boolean value that specifies whether an entity can have more than one+-- component of this type.+updateComponentType_isSingleton :: Lens.Lens' UpdateComponentType (Prelude.Maybe Prelude.Bool)+updateComponentType_isSingleton = Lens.lens (\UpdateComponentType' {isSingleton} -> isSingleton) (\s@UpdateComponentType' {} a -> s {isSingleton = a} :: UpdateComponentType)++-- | An object that maps strings to the property definitions in the component+-- type. Each string in the mapping must be unique to this object.+updateComponentType_propertyDefinitions :: Lens.Lens' UpdateComponentType (Prelude.Maybe (Prelude.HashMap Prelude.Text PropertyDefinitionRequest))+updateComponentType_propertyDefinitions = Lens.lens (\UpdateComponentType' {propertyDefinitions} -> propertyDefinitions) (\s@UpdateComponentType' {} a -> s {propertyDefinitions = a} :: UpdateComponentType) Prelude.. Lens.mapping Lens.coerced++-- | The property groups+updateComponentType_propertyGroups :: Lens.Lens' UpdateComponentType (Prelude.Maybe (Prelude.HashMap Prelude.Text PropertyGroupRequest))+updateComponentType_propertyGroups = Lens.lens (\UpdateComponentType' {propertyGroups} -> propertyGroups) (\s@UpdateComponentType' {} a -> s {propertyGroups = a} :: UpdateComponentType) Prelude.. Lens.mapping Lens.coerced++-- | The ID of the workspace.+updateComponentType_workspaceId :: Lens.Lens' UpdateComponentType Prelude.Text+updateComponentType_workspaceId = Lens.lens (\UpdateComponentType' {workspaceId} -> workspaceId) (\s@UpdateComponentType' {} a -> s {workspaceId = a} :: UpdateComponentType)++-- | The ID of the component type.+updateComponentType_componentTypeId :: Lens.Lens' UpdateComponentType Prelude.Text+updateComponentType_componentTypeId = Lens.lens (\UpdateComponentType' {componentTypeId} -> componentTypeId) (\s@UpdateComponentType' {} a -> s {componentTypeId = a} :: UpdateComponentType)++instance Core.AWSRequest UpdateComponentType where+ type+ AWSResponse UpdateComponentType =+ UpdateComponentTypeResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateComponentTypeResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "workspaceId")+ Prelude.<*> (x Data..:> "arn")+ Prelude.<*> (x Data..:> "componentTypeId")+ Prelude.<*> (x Data..:> "state")+ )++instance Prelude.Hashable UpdateComponentType where+ hashWithSalt _salt UpdateComponentType' {..} =+ _salt+ `Prelude.hashWithSalt` componentTypeName+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` extendsFrom+ `Prelude.hashWithSalt` functions+ `Prelude.hashWithSalt` isSingleton+ `Prelude.hashWithSalt` propertyDefinitions+ `Prelude.hashWithSalt` propertyGroups+ `Prelude.hashWithSalt` workspaceId+ `Prelude.hashWithSalt` componentTypeId++instance Prelude.NFData UpdateComponentType where+ rnf UpdateComponentType' {..} =+ Prelude.rnf componentTypeName+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf extendsFrom+ `Prelude.seq` Prelude.rnf functions+ `Prelude.seq` Prelude.rnf isSingleton+ `Prelude.seq` Prelude.rnf propertyDefinitions+ `Prelude.seq` Prelude.rnf propertyGroups+ `Prelude.seq` Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf componentTypeId++instance Data.ToHeaders UpdateComponentType where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateComponentType where+ toJSON UpdateComponentType' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("componentTypeName" Data..=)+ Prelude.<$> componentTypeName,+ ("description" Data..=) Prelude.<$> description,+ ("extendsFrom" Data..=) Prelude.<$> extendsFrom,+ ("functions" Data..=) Prelude.<$> functions,+ ("isSingleton" Data..=) Prelude.<$> isSingleton,+ ("propertyDefinitions" Data..=)+ Prelude.<$> propertyDefinitions,+ ("propertyGroups" Data..=)+ Prelude.<$> propertyGroups+ ]+ )++instance Data.ToPath UpdateComponentType where+ toPath UpdateComponentType' {..} =+ Prelude.mconcat+ [ "/workspaces/",+ Data.toBS workspaceId,+ "/component-types/",+ Data.toBS componentTypeId+ ]++instance Data.ToQuery UpdateComponentType where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateComponentTypeResponse' smart constructor.+data UpdateComponentTypeResponse = UpdateComponentTypeResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The ID of the workspace that contains the component type.+ workspaceId :: Prelude.Text,+ -- | The ARN of the component type.+ arn :: Prelude.Text,+ -- | The ID of the component type.+ componentTypeId :: Prelude.Text,+ -- | The current state of the component type.+ state :: State+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateComponentTypeResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'updateComponentTypeResponse_httpStatus' - The response's http status code.+--+-- 'workspaceId', 'updateComponentTypeResponse_workspaceId' - The ID of the workspace that contains the component type.+--+-- 'arn', 'updateComponentTypeResponse_arn' - The ARN of the component type.+--+-- 'componentTypeId', 'updateComponentTypeResponse_componentTypeId' - The ID of the component type.+--+-- 'state', 'updateComponentTypeResponse_state' - The current state of the component type.+newUpdateComponentTypeResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'arn'+ Prelude.Text ->+ -- | 'componentTypeId'+ Prelude.Text ->+ -- | 'state'+ State ->+ UpdateComponentTypeResponse+newUpdateComponentTypeResponse+ pHttpStatus_+ pWorkspaceId_+ pArn_+ pComponentTypeId_+ pState_ =+ UpdateComponentTypeResponse'+ { httpStatus =+ pHttpStatus_,+ workspaceId = pWorkspaceId_,+ arn = pArn_,+ componentTypeId = pComponentTypeId_,+ state = pState_+ }++-- | The response's http status code.+updateComponentTypeResponse_httpStatus :: Lens.Lens' UpdateComponentTypeResponse Prelude.Int+updateComponentTypeResponse_httpStatus = Lens.lens (\UpdateComponentTypeResponse' {httpStatus} -> httpStatus) (\s@UpdateComponentTypeResponse' {} a -> s {httpStatus = a} :: UpdateComponentTypeResponse)++-- | The ID of the workspace that contains the component type.+updateComponentTypeResponse_workspaceId :: Lens.Lens' UpdateComponentTypeResponse Prelude.Text+updateComponentTypeResponse_workspaceId = Lens.lens (\UpdateComponentTypeResponse' {workspaceId} -> workspaceId) (\s@UpdateComponentTypeResponse' {} a -> s {workspaceId = a} :: UpdateComponentTypeResponse)++-- | The ARN of the component type.+updateComponentTypeResponse_arn :: Lens.Lens' UpdateComponentTypeResponse Prelude.Text+updateComponentTypeResponse_arn = Lens.lens (\UpdateComponentTypeResponse' {arn} -> arn) (\s@UpdateComponentTypeResponse' {} a -> s {arn = a} :: UpdateComponentTypeResponse)++-- | The ID of the component type.+updateComponentTypeResponse_componentTypeId :: Lens.Lens' UpdateComponentTypeResponse Prelude.Text+updateComponentTypeResponse_componentTypeId = Lens.lens (\UpdateComponentTypeResponse' {componentTypeId} -> componentTypeId) (\s@UpdateComponentTypeResponse' {} a -> s {componentTypeId = a} :: UpdateComponentTypeResponse)++-- | The current state of the component type.+updateComponentTypeResponse_state :: Lens.Lens' UpdateComponentTypeResponse State+updateComponentTypeResponse_state = Lens.lens (\UpdateComponentTypeResponse' {state} -> state) (\s@UpdateComponentTypeResponse' {} a -> s {state = a} :: UpdateComponentTypeResponse)++instance Prelude.NFData UpdateComponentTypeResponse where+ rnf UpdateComponentTypeResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf componentTypeId+ `Prelude.seq` Prelude.rnf state
+ gen/Amazonka/IotTwinMaker/UpdateEntity.hs view
@@ -0,0 +1,261 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.UpdateEntity+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates an entity.+module Amazonka.IotTwinMaker.UpdateEntity+ ( -- * Creating a Request+ UpdateEntity (..),+ newUpdateEntity,++ -- * Request Lenses+ updateEntity_componentUpdates,+ updateEntity_description,+ updateEntity_entityName,+ updateEntity_parentEntityUpdate,+ updateEntity_workspaceId,+ updateEntity_entityId,++ -- * Destructuring the Response+ UpdateEntityResponse (..),+ newUpdateEntityResponse,++ -- * Response Lenses+ updateEntityResponse_httpStatus,+ updateEntityResponse_updateDateTime,+ updateEntityResponse_state,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateEntity' smart constructor.+data UpdateEntity = UpdateEntity'+ { -- | An object that maps strings to the component updates in the request.+ -- Each string in the mapping must be unique to this object.+ componentUpdates :: Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentUpdateRequest),+ -- | The description of the entity.+ description :: Prelude.Maybe Prelude.Text,+ -- | The name of the entity.+ entityName :: Prelude.Maybe Prelude.Text,+ -- | An object that describes the update request for a parent entity.+ parentEntityUpdate :: Prelude.Maybe ParentEntityUpdateRequest,+ -- | The ID of the workspace that contains the entity.+ workspaceId :: Prelude.Text,+ -- | The ID of the entity.+ entityId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateEntity' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'componentUpdates', 'updateEntity_componentUpdates' - An object that maps strings to the component updates in the request.+-- Each string in the mapping must be unique to this object.+--+-- 'description', 'updateEntity_description' - The description of the entity.+--+-- 'entityName', 'updateEntity_entityName' - The name of the entity.+--+-- 'parentEntityUpdate', 'updateEntity_parentEntityUpdate' - An object that describes the update request for a parent entity.+--+-- 'workspaceId', 'updateEntity_workspaceId' - The ID of the workspace that contains the entity.+--+-- 'entityId', 'updateEntity_entityId' - The ID of the entity.+newUpdateEntity ::+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'entityId'+ Prelude.Text ->+ UpdateEntity+newUpdateEntity pWorkspaceId_ pEntityId_ =+ UpdateEntity'+ { componentUpdates = Prelude.Nothing,+ description = Prelude.Nothing,+ entityName = Prelude.Nothing,+ parentEntityUpdate = Prelude.Nothing,+ workspaceId = pWorkspaceId_,+ entityId = pEntityId_+ }++-- | An object that maps strings to the component updates in the request.+-- Each string in the mapping must be unique to this object.+updateEntity_componentUpdates :: Lens.Lens' UpdateEntity (Prelude.Maybe (Prelude.HashMap Prelude.Text ComponentUpdateRequest))+updateEntity_componentUpdates = Lens.lens (\UpdateEntity' {componentUpdates} -> componentUpdates) (\s@UpdateEntity' {} a -> s {componentUpdates = a} :: UpdateEntity) Prelude.. Lens.mapping Lens.coerced++-- | The description of the entity.+updateEntity_description :: Lens.Lens' UpdateEntity (Prelude.Maybe Prelude.Text)+updateEntity_description = Lens.lens (\UpdateEntity' {description} -> description) (\s@UpdateEntity' {} a -> s {description = a} :: UpdateEntity)++-- | The name of the entity.+updateEntity_entityName :: Lens.Lens' UpdateEntity (Prelude.Maybe Prelude.Text)+updateEntity_entityName = Lens.lens (\UpdateEntity' {entityName} -> entityName) (\s@UpdateEntity' {} a -> s {entityName = a} :: UpdateEntity)++-- | An object that describes the update request for a parent entity.+updateEntity_parentEntityUpdate :: Lens.Lens' UpdateEntity (Prelude.Maybe ParentEntityUpdateRequest)+updateEntity_parentEntityUpdate = Lens.lens (\UpdateEntity' {parentEntityUpdate} -> parentEntityUpdate) (\s@UpdateEntity' {} a -> s {parentEntityUpdate = a} :: UpdateEntity)++-- | The ID of the workspace that contains the entity.+updateEntity_workspaceId :: Lens.Lens' UpdateEntity Prelude.Text+updateEntity_workspaceId = Lens.lens (\UpdateEntity' {workspaceId} -> workspaceId) (\s@UpdateEntity' {} a -> s {workspaceId = a} :: UpdateEntity)++-- | The ID of the entity.+updateEntity_entityId :: Lens.Lens' UpdateEntity Prelude.Text+updateEntity_entityId = Lens.lens (\UpdateEntity' {entityId} -> entityId) (\s@UpdateEntity' {} a -> s {entityId = a} :: UpdateEntity)++instance Core.AWSRequest UpdateEntity where+ type AWSResponse UpdateEntity = UpdateEntityResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateEntityResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "updateDateTime")+ Prelude.<*> (x Data..:> "state")+ )++instance Prelude.Hashable UpdateEntity where+ hashWithSalt _salt UpdateEntity' {..} =+ _salt+ `Prelude.hashWithSalt` componentUpdates+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` entityName+ `Prelude.hashWithSalt` parentEntityUpdate+ `Prelude.hashWithSalt` workspaceId+ `Prelude.hashWithSalt` entityId++instance Prelude.NFData UpdateEntity where+ rnf UpdateEntity' {..} =+ Prelude.rnf componentUpdates+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf entityName+ `Prelude.seq` Prelude.rnf parentEntityUpdate+ `Prelude.seq` Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf entityId++instance Data.ToHeaders UpdateEntity where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateEntity where+ toJSON UpdateEntity' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("componentUpdates" Data..=)+ Prelude.<$> componentUpdates,+ ("description" Data..=) Prelude.<$> description,+ ("entityName" Data..=) Prelude.<$> entityName,+ ("parentEntityUpdate" Data..=)+ Prelude.<$> parentEntityUpdate+ ]+ )++instance Data.ToPath UpdateEntity where+ toPath UpdateEntity' {..} =+ Prelude.mconcat+ [ "/workspaces/",+ Data.toBS workspaceId,+ "/entities/",+ Data.toBS entityId+ ]++instance Data.ToQuery UpdateEntity where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateEntityResponse' smart constructor.+data UpdateEntityResponse = UpdateEntityResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The date and time when the entity was last updated.+ updateDateTime :: Data.POSIX,+ -- | The current state of the entity update.+ state :: State+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateEntityResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'updateEntityResponse_httpStatus' - The response's http status code.+--+-- 'updateDateTime', 'updateEntityResponse_updateDateTime' - The date and time when the entity was last updated.+--+-- 'state', 'updateEntityResponse_state' - The current state of the entity update.+newUpdateEntityResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'updateDateTime'+ Prelude.UTCTime ->+ -- | 'state'+ State ->+ UpdateEntityResponse+newUpdateEntityResponse+ pHttpStatus_+ pUpdateDateTime_+ pState_ =+ UpdateEntityResponse'+ { httpStatus = pHttpStatus_,+ updateDateTime = Data._Time Lens.# pUpdateDateTime_,+ state = pState_+ }++-- | The response's http status code.+updateEntityResponse_httpStatus :: Lens.Lens' UpdateEntityResponse Prelude.Int+updateEntityResponse_httpStatus = Lens.lens (\UpdateEntityResponse' {httpStatus} -> httpStatus) (\s@UpdateEntityResponse' {} a -> s {httpStatus = a} :: UpdateEntityResponse)++-- | The date and time when the entity was last updated.+updateEntityResponse_updateDateTime :: Lens.Lens' UpdateEntityResponse Prelude.UTCTime+updateEntityResponse_updateDateTime = Lens.lens (\UpdateEntityResponse' {updateDateTime} -> updateDateTime) (\s@UpdateEntityResponse' {} a -> s {updateDateTime = a} :: UpdateEntityResponse) Prelude.. Data._Time++-- | The current state of the entity update.+updateEntityResponse_state :: Lens.Lens' UpdateEntityResponse State+updateEntityResponse_state = Lens.lens (\UpdateEntityResponse' {state} -> state) (\s@UpdateEntityResponse' {} a -> s {state = a} :: UpdateEntityResponse)++instance Prelude.NFData UpdateEntityResponse where+ rnf UpdateEntityResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf updateDateTime+ `Prelude.seq` Prelude.rnf state
+ gen/Amazonka/IotTwinMaker/UpdatePricingPlan.hs view
@@ -0,0 +1,198 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.UpdatePricingPlan+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update the pricing plan.+module Amazonka.IotTwinMaker.UpdatePricingPlan+ ( -- * Creating a Request+ UpdatePricingPlan (..),+ newUpdatePricingPlan,++ -- * Request Lenses+ updatePricingPlan_bundleNames,+ updatePricingPlan_pricingMode,++ -- * Destructuring the Response+ UpdatePricingPlanResponse (..),+ newUpdatePricingPlanResponse,++ -- * Response Lenses+ updatePricingPlanResponse_pendingPricingPlan,+ updatePricingPlanResponse_httpStatus,+ updatePricingPlanResponse_currentPricingPlan,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdatePricingPlan' smart constructor.+data UpdatePricingPlan = UpdatePricingPlan'+ { -- | The bundle names.+ bundleNames :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),+ -- | The pricing mode.+ pricingMode :: PricingMode+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdatePricingPlan' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'bundleNames', 'updatePricingPlan_bundleNames' - The bundle names.+--+-- 'pricingMode', 'updatePricingPlan_pricingMode' - The pricing mode.+newUpdatePricingPlan ::+ -- | 'pricingMode'+ PricingMode ->+ UpdatePricingPlan+newUpdatePricingPlan pPricingMode_ =+ UpdatePricingPlan'+ { bundleNames = Prelude.Nothing,+ pricingMode = pPricingMode_+ }++-- | The bundle names.+updatePricingPlan_bundleNames :: Lens.Lens' UpdatePricingPlan (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+updatePricingPlan_bundleNames = Lens.lens (\UpdatePricingPlan' {bundleNames} -> bundleNames) (\s@UpdatePricingPlan' {} a -> s {bundleNames = a} :: UpdatePricingPlan) Prelude.. Lens.mapping Lens.coerced++-- | The pricing mode.+updatePricingPlan_pricingMode :: Lens.Lens' UpdatePricingPlan PricingMode+updatePricingPlan_pricingMode = Lens.lens (\UpdatePricingPlan' {pricingMode} -> pricingMode) (\s@UpdatePricingPlan' {} a -> s {pricingMode = a} :: UpdatePricingPlan)++instance Core.AWSRequest UpdatePricingPlan where+ type+ AWSResponse UpdatePricingPlan =+ UpdatePricingPlanResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdatePricingPlanResponse'+ Prelude.<$> (x Data..?> "pendingPricingPlan")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "currentPricingPlan")+ )++instance Prelude.Hashable UpdatePricingPlan where+ hashWithSalt _salt UpdatePricingPlan' {..} =+ _salt+ `Prelude.hashWithSalt` bundleNames+ `Prelude.hashWithSalt` pricingMode++instance Prelude.NFData UpdatePricingPlan where+ rnf UpdatePricingPlan' {..} =+ Prelude.rnf bundleNames+ `Prelude.seq` Prelude.rnf pricingMode++instance Data.ToHeaders UpdatePricingPlan where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdatePricingPlan where+ toJSON UpdatePricingPlan' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("bundleNames" Data..=) Prelude.<$> bundleNames,+ Prelude.Just ("pricingMode" Data..= pricingMode)+ ]+ )++instance Data.ToPath UpdatePricingPlan where+ toPath = Prelude.const "/pricingplan"++instance Data.ToQuery UpdatePricingPlan where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdatePricingPlanResponse' smart constructor.+data UpdatePricingPlanResponse = UpdatePricingPlanResponse'+ { -- | Update the pending pricing plan.+ pendingPricingPlan :: Prelude.Maybe PricingPlan,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Update the current pricing plan.+ currentPricingPlan :: PricingPlan+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdatePricingPlanResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'pendingPricingPlan', 'updatePricingPlanResponse_pendingPricingPlan' - Update the pending pricing plan.+--+-- 'httpStatus', 'updatePricingPlanResponse_httpStatus' - The response's http status code.+--+-- 'currentPricingPlan', 'updatePricingPlanResponse_currentPricingPlan' - Update the current pricing plan.+newUpdatePricingPlanResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'currentPricingPlan'+ PricingPlan ->+ UpdatePricingPlanResponse+newUpdatePricingPlanResponse+ pHttpStatus_+ pCurrentPricingPlan_ =+ UpdatePricingPlanResponse'+ { pendingPricingPlan =+ Prelude.Nothing,+ httpStatus = pHttpStatus_,+ currentPricingPlan = pCurrentPricingPlan_+ }++-- | Update the pending pricing plan.+updatePricingPlanResponse_pendingPricingPlan :: Lens.Lens' UpdatePricingPlanResponse (Prelude.Maybe PricingPlan)+updatePricingPlanResponse_pendingPricingPlan = Lens.lens (\UpdatePricingPlanResponse' {pendingPricingPlan} -> pendingPricingPlan) (\s@UpdatePricingPlanResponse' {} a -> s {pendingPricingPlan = a} :: UpdatePricingPlanResponse)++-- | The response's http status code.+updatePricingPlanResponse_httpStatus :: Lens.Lens' UpdatePricingPlanResponse Prelude.Int+updatePricingPlanResponse_httpStatus = Lens.lens (\UpdatePricingPlanResponse' {httpStatus} -> httpStatus) (\s@UpdatePricingPlanResponse' {} a -> s {httpStatus = a} :: UpdatePricingPlanResponse)++-- | Update the current pricing plan.+updatePricingPlanResponse_currentPricingPlan :: Lens.Lens' UpdatePricingPlanResponse PricingPlan+updatePricingPlanResponse_currentPricingPlan = Lens.lens (\UpdatePricingPlanResponse' {currentPricingPlan} -> currentPricingPlan) (\s@UpdatePricingPlanResponse' {} a -> s {currentPricingPlan = a} :: UpdatePricingPlanResponse)++instance Prelude.NFData UpdatePricingPlanResponse where+ rnf UpdatePricingPlanResponse' {..} =+ Prelude.rnf pendingPricingPlan+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf currentPricingPlan
+ gen/Amazonka/IotTwinMaker/UpdateScene.hs view
@@ -0,0 +1,230 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.UpdateScene+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates a scene.+module Amazonka.IotTwinMaker.UpdateScene+ ( -- * Creating a Request+ UpdateScene (..),+ newUpdateScene,++ -- * Request Lenses+ updateScene_capabilities,+ updateScene_contentLocation,+ updateScene_description,+ updateScene_workspaceId,+ updateScene_sceneId,++ -- * Destructuring the Response+ UpdateSceneResponse (..),+ newUpdateSceneResponse,++ -- * Response Lenses+ updateSceneResponse_httpStatus,+ updateSceneResponse_updateDateTime,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateScene' smart constructor.+data UpdateScene = UpdateScene'+ { -- | A list of capabilities that the scene uses to render.+ capabilities :: Prelude.Maybe [Prelude.Text],+ -- | The relative path that specifies the location of the content definition+ -- file.+ contentLocation :: Prelude.Maybe Prelude.Text,+ -- | The description of this scene.+ description :: Prelude.Maybe Prelude.Text,+ -- | The ID of the workspace that contains the scene.+ workspaceId :: Prelude.Text,+ -- | The ID of the scene.+ sceneId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateScene' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'capabilities', 'updateScene_capabilities' - A list of capabilities that the scene uses to render.+--+-- 'contentLocation', 'updateScene_contentLocation' - The relative path that specifies the location of the content definition+-- file.+--+-- 'description', 'updateScene_description' - The description of this scene.+--+-- 'workspaceId', 'updateScene_workspaceId' - The ID of the workspace that contains the scene.+--+-- 'sceneId', 'updateScene_sceneId' - The ID of the scene.+newUpdateScene ::+ -- | 'workspaceId'+ Prelude.Text ->+ -- | 'sceneId'+ Prelude.Text ->+ UpdateScene+newUpdateScene pWorkspaceId_ pSceneId_ =+ UpdateScene'+ { capabilities = Prelude.Nothing,+ contentLocation = Prelude.Nothing,+ description = Prelude.Nothing,+ workspaceId = pWorkspaceId_,+ sceneId = pSceneId_+ }++-- | A list of capabilities that the scene uses to render.+updateScene_capabilities :: Lens.Lens' UpdateScene (Prelude.Maybe [Prelude.Text])+updateScene_capabilities = Lens.lens (\UpdateScene' {capabilities} -> capabilities) (\s@UpdateScene' {} a -> s {capabilities = a} :: UpdateScene) Prelude.. Lens.mapping Lens.coerced++-- | The relative path that specifies the location of the content definition+-- file.+updateScene_contentLocation :: Lens.Lens' UpdateScene (Prelude.Maybe Prelude.Text)+updateScene_contentLocation = Lens.lens (\UpdateScene' {contentLocation} -> contentLocation) (\s@UpdateScene' {} a -> s {contentLocation = a} :: UpdateScene)++-- | The description of this scene.+updateScene_description :: Lens.Lens' UpdateScene (Prelude.Maybe Prelude.Text)+updateScene_description = Lens.lens (\UpdateScene' {description} -> description) (\s@UpdateScene' {} a -> s {description = a} :: UpdateScene)++-- | The ID of the workspace that contains the scene.+updateScene_workspaceId :: Lens.Lens' UpdateScene Prelude.Text+updateScene_workspaceId = Lens.lens (\UpdateScene' {workspaceId} -> workspaceId) (\s@UpdateScene' {} a -> s {workspaceId = a} :: UpdateScene)++-- | The ID of the scene.+updateScene_sceneId :: Lens.Lens' UpdateScene Prelude.Text+updateScene_sceneId = Lens.lens (\UpdateScene' {sceneId} -> sceneId) (\s@UpdateScene' {} a -> s {sceneId = a} :: UpdateScene)++instance Core.AWSRequest UpdateScene where+ type AWSResponse UpdateScene = UpdateSceneResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateSceneResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "updateDateTime")+ )++instance Prelude.Hashable UpdateScene where+ hashWithSalt _salt UpdateScene' {..} =+ _salt+ `Prelude.hashWithSalt` capabilities+ `Prelude.hashWithSalt` contentLocation+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` workspaceId+ `Prelude.hashWithSalt` sceneId++instance Prelude.NFData UpdateScene where+ rnf UpdateScene' {..} =+ Prelude.rnf capabilities+ `Prelude.seq` Prelude.rnf contentLocation+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf workspaceId+ `Prelude.seq` Prelude.rnf sceneId++instance Data.ToHeaders UpdateScene where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateScene where+ toJSON UpdateScene' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("capabilities" Data..=) Prelude.<$> capabilities,+ ("contentLocation" Data..=)+ Prelude.<$> contentLocation,+ ("description" Data..=) Prelude.<$> description+ ]+ )++instance Data.ToPath UpdateScene where+ toPath UpdateScene' {..} =+ Prelude.mconcat+ [ "/workspaces/",+ Data.toBS workspaceId,+ "/scenes/",+ Data.toBS sceneId+ ]++instance Data.ToQuery UpdateScene where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateSceneResponse' smart constructor.+data UpdateSceneResponse = UpdateSceneResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The date and time when the scene was last updated.+ updateDateTime :: Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateSceneResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'updateSceneResponse_httpStatus' - The response's http status code.+--+-- 'updateDateTime', 'updateSceneResponse_updateDateTime' - The date and time when the scene was last updated.+newUpdateSceneResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'updateDateTime'+ Prelude.UTCTime ->+ UpdateSceneResponse+newUpdateSceneResponse pHttpStatus_ pUpdateDateTime_ =+ UpdateSceneResponse'+ { httpStatus = pHttpStatus_,+ updateDateTime = Data._Time Lens.# pUpdateDateTime_+ }++-- | The response's http status code.+updateSceneResponse_httpStatus :: Lens.Lens' UpdateSceneResponse Prelude.Int+updateSceneResponse_httpStatus = Lens.lens (\UpdateSceneResponse' {httpStatus} -> httpStatus) (\s@UpdateSceneResponse' {} a -> s {httpStatus = a} :: UpdateSceneResponse)++-- | The date and time when the scene was last updated.+updateSceneResponse_updateDateTime :: Lens.Lens' UpdateSceneResponse Prelude.UTCTime+updateSceneResponse_updateDateTime = Lens.lens (\UpdateSceneResponse' {updateDateTime} -> updateDateTime) (\s@UpdateSceneResponse' {} a -> s {updateDateTime = a} :: UpdateSceneResponse) Prelude.. Data._Time++instance Prelude.NFData UpdateSceneResponse where+ rnf UpdateSceneResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf updateDateTime
+ gen/Amazonka/IotTwinMaker/UpdateWorkspace.hs view
@@ -0,0 +1,200 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.UpdateWorkspace+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates a workspace.+module Amazonka.IotTwinMaker.UpdateWorkspace+ ( -- * Creating a Request+ UpdateWorkspace (..),+ newUpdateWorkspace,++ -- * Request Lenses+ updateWorkspace_description,+ updateWorkspace_role,+ updateWorkspace_workspaceId,++ -- * Destructuring the Response+ UpdateWorkspaceResponse (..),+ newUpdateWorkspaceResponse,++ -- * Response Lenses+ updateWorkspaceResponse_httpStatus,+ updateWorkspaceResponse_updateDateTime,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateWorkspace' smart constructor.+data UpdateWorkspace = UpdateWorkspace'+ { -- | The description of the workspace.+ description :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the execution role associated with the workspace.+ role' :: Prelude.Maybe Prelude.Text,+ -- | The ID of the workspace.+ workspaceId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateWorkspace' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'updateWorkspace_description' - The description of the workspace.+--+-- 'role'', 'updateWorkspace_role' - The ARN of the execution role associated with the workspace.+--+-- 'workspaceId', 'updateWorkspace_workspaceId' - The ID of the workspace.+newUpdateWorkspace ::+ -- | 'workspaceId'+ Prelude.Text ->+ UpdateWorkspace+newUpdateWorkspace pWorkspaceId_ =+ UpdateWorkspace'+ { description = Prelude.Nothing,+ role' = Prelude.Nothing,+ workspaceId = pWorkspaceId_+ }++-- | The description of the workspace.+updateWorkspace_description :: Lens.Lens' UpdateWorkspace (Prelude.Maybe Prelude.Text)+updateWorkspace_description = Lens.lens (\UpdateWorkspace' {description} -> description) (\s@UpdateWorkspace' {} a -> s {description = a} :: UpdateWorkspace)++-- | The ARN of the execution role associated with the workspace.+updateWorkspace_role :: Lens.Lens' UpdateWorkspace (Prelude.Maybe Prelude.Text)+updateWorkspace_role = Lens.lens (\UpdateWorkspace' {role'} -> role') (\s@UpdateWorkspace' {} a -> s {role' = a} :: UpdateWorkspace)++-- | The ID of the workspace.+updateWorkspace_workspaceId :: Lens.Lens' UpdateWorkspace Prelude.Text+updateWorkspace_workspaceId = Lens.lens (\UpdateWorkspace' {workspaceId} -> workspaceId) (\s@UpdateWorkspace' {} a -> s {workspaceId = a} :: UpdateWorkspace)++instance Core.AWSRequest UpdateWorkspace where+ type+ AWSResponse UpdateWorkspace =+ UpdateWorkspaceResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateWorkspaceResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "updateDateTime")+ )++instance Prelude.Hashable UpdateWorkspace where+ hashWithSalt _salt UpdateWorkspace' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` role'+ `Prelude.hashWithSalt` workspaceId++instance Prelude.NFData UpdateWorkspace where+ rnf UpdateWorkspace' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf role'+ `Prelude.seq` Prelude.rnf workspaceId++instance Data.ToHeaders UpdateWorkspace where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateWorkspace where+ toJSON UpdateWorkspace' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("description" Data..=) Prelude.<$> description,+ ("role" Data..=) Prelude.<$> role'+ ]+ )++instance Data.ToPath UpdateWorkspace where+ toPath UpdateWorkspace' {..} =+ Prelude.mconcat+ ["/workspaces/", Data.toBS workspaceId]++instance Data.ToQuery UpdateWorkspace where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateWorkspaceResponse' smart constructor.+data UpdateWorkspaceResponse = UpdateWorkspaceResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The date and time of the current update.+ updateDateTime :: Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateWorkspaceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'updateWorkspaceResponse_httpStatus' - The response's http status code.+--+-- 'updateDateTime', 'updateWorkspaceResponse_updateDateTime' - The date and time of the current update.+newUpdateWorkspaceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'updateDateTime'+ Prelude.UTCTime ->+ UpdateWorkspaceResponse+newUpdateWorkspaceResponse+ pHttpStatus_+ pUpdateDateTime_ =+ UpdateWorkspaceResponse'+ { httpStatus = pHttpStatus_,+ updateDateTime =+ Data._Time Lens.# pUpdateDateTime_+ }++-- | The response's http status code.+updateWorkspaceResponse_httpStatus :: Lens.Lens' UpdateWorkspaceResponse Prelude.Int+updateWorkspaceResponse_httpStatus = Lens.lens (\UpdateWorkspaceResponse' {httpStatus} -> httpStatus) (\s@UpdateWorkspaceResponse' {} a -> s {httpStatus = a} :: UpdateWorkspaceResponse)++-- | The date and time of the current update.+updateWorkspaceResponse_updateDateTime :: Lens.Lens' UpdateWorkspaceResponse Prelude.UTCTime+updateWorkspaceResponse_updateDateTime = Lens.lens (\UpdateWorkspaceResponse' {updateDateTime} -> updateDateTime) (\s@UpdateWorkspaceResponse' {} a -> s {updateDateTime = a} :: UpdateWorkspaceResponse) Prelude.. Data._Time++instance Prelude.NFData UpdateWorkspaceResponse where+ rnf UpdateWorkspaceResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf updateDateTime
+ gen/Amazonka/IotTwinMaker/Waiters.hs view
@@ -0,0 +1,24 @@+{-# LANGUAGE DisambiguateRecordFields #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IotTwinMaker.Waiters+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IotTwinMaker.Waiters where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IotTwinMaker.Lens+import Amazonka.IotTwinMaker.Types+import qualified Amazonka.Prelude as Prelude
+ src/.gitkeep view
+ test/Main.hs view
@@ -0,0 +1,23 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Main+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Main (main) where++import Test.Amazonka.IotTwinMaker+import Test.Amazonka.IotTwinMaker.Internal+import Test.Tasty++main :: IO ()+main =+ defaultMain $+ testGroup+ "IotTwinMaker"+ [ testGroup "tests" tests,+ testGroup "fixtures" fixtures+ ]
+ test/Test/Amazonka/Gen/IotTwinMaker.hs view
@@ -0,0 +1,718 @@+{-# OPTIONS_GHC -fno-warn-orphans #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Test.Amazonka.Gen.IotTwinMaker+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.Gen.IotTwinMaker where++import Amazonka.IotTwinMaker+import qualified Data.Proxy as Proxy+import Test.Amazonka.Fixture+import Test.Amazonka.IotTwinMaker.Internal+import Test.Amazonka.Prelude+import Test.Tasty++-- 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"+-- [ requestBatchPutPropertyValues $+-- newBatchPutPropertyValues+--+-- , requestCreateComponentType $+-- newCreateComponentType+--+-- , requestCreateEntity $+-- newCreateEntity+--+-- , requestCreateScene $+-- newCreateScene+--+-- , requestCreateSyncJob $+-- newCreateSyncJob+--+-- , requestCreateWorkspace $+-- newCreateWorkspace+--+-- , requestDeleteComponentType $+-- newDeleteComponentType+--+-- , requestDeleteEntity $+-- newDeleteEntity+--+-- , requestDeleteScene $+-- newDeleteScene+--+-- , requestDeleteSyncJob $+-- newDeleteSyncJob+--+-- , requestDeleteWorkspace $+-- newDeleteWorkspace+--+-- , requestExecuteQuery $+-- newExecuteQuery+--+-- , requestGetComponentType $+-- newGetComponentType+--+-- , requestGetEntity $+-- newGetEntity+--+-- , requestGetPricingPlan $+-- newGetPricingPlan+--+-- , requestGetPropertyValue $+-- newGetPropertyValue+--+-- , requestGetPropertyValueHistory $+-- newGetPropertyValueHistory+--+-- , requestGetScene $+-- newGetScene+--+-- , requestGetSyncJob $+-- newGetSyncJob+--+-- , requestGetWorkspace $+-- newGetWorkspace+--+-- , requestListComponentTypes $+-- newListComponentTypes+--+-- , requestListEntities $+-- newListEntities+--+-- , requestListScenes $+-- newListScenes+--+-- , requestListSyncJobs $+-- newListSyncJobs+--+-- , requestListSyncResources $+-- newListSyncResources+--+-- , requestListTagsForResource $+-- newListTagsForResource+--+-- , requestListWorkspaces $+-- newListWorkspaces+--+-- , requestTagResource $+-- newTagResource+--+-- , requestUntagResource $+-- newUntagResource+--+-- , requestUpdateComponentType $+-- newUpdateComponentType+--+-- , requestUpdateEntity $+-- newUpdateEntity+--+-- , requestUpdatePricingPlan $+-- newUpdatePricingPlan+--+-- , requestUpdateScene $+-- newUpdateScene+--+-- , requestUpdateWorkspace $+-- newUpdateWorkspace+--+-- ]++-- , testGroup "response"+-- [ responseBatchPutPropertyValues $+-- newBatchPutPropertyValuesResponse+--+-- , responseCreateComponentType $+-- newCreateComponentTypeResponse+--+-- , responseCreateEntity $+-- newCreateEntityResponse+--+-- , responseCreateScene $+-- newCreateSceneResponse+--+-- , responseCreateSyncJob $+-- newCreateSyncJobResponse+--+-- , responseCreateWorkspace $+-- newCreateWorkspaceResponse+--+-- , responseDeleteComponentType $+-- newDeleteComponentTypeResponse+--+-- , responseDeleteEntity $+-- newDeleteEntityResponse+--+-- , responseDeleteScene $+-- newDeleteSceneResponse+--+-- , responseDeleteSyncJob $+-- newDeleteSyncJobResponse+--+-- , responseDeleteWorkspace $+-- newDeleteWorkspaceResponse+--+-- , responseExecuteQuery $+-- newExecuteQueryResponse+--+-- , responseGetComponentType $+-- newGetComponentTypeResponse+--+-- , responseGetEntity $+-- newGetEntityResponse+--+-- , responseGetPricingPlan $+-- newGetPricingPlanResponse+--+-- , responseGetPropertyValue $+-- newGetPropertyValueResponse+--+-- , responseGetPropertyValueHistory $+-- newGetPropertyValueHistoryResponse+--+-- , responseGetScene $+-- newGetSceneResponse+--+-- , responseGetSyncJob $+-- newGetSyncJobResponse+--+-- , responseGetWorkspace $+-- newGetWorkspaceResponse+--+-- , responseListComponentTypes $+-- newListComponentTypesResponse+--+-- , responseListEntities $+-- newListEntitiesResponse+--+-- , responseListScenes $+-- newListScenesResponse+--+-- , responseListSyncJobs $+-- newListSyncJobsResponse+--+-- , responseListSyncResources $+-- newListSyncResourcesResponse+--+-- , responseListTagsForResource $+-- newListTagsForResourceResponse+--+-- , responseListWorkspaces $+-- newListWorkspacesResponse+--+-- , responseTagResource $+-- newTagResourceResponse+--+-- , responseUntagResource $+-- newUntagResourceResponse+--+-- , responseUpdateComponentType $+-- newUpdateComponentTypeResponse+--+-- , responseUpdateEntity $+-- newUpdateEntityResponse+--+-- , responseUpdatePricingPlan $+-- newUpdatePricingPlanResponse+--+-- , responseUpdateScene $+-- newUpdateSceneResponse+--+-- , responseUpdateWorkspace $+-- newUpdateWorkspaceResponse+--+-- ]+-- ]++-- Requests++requestBatchPutPropertyValues :: BatchPutPropertyValues -> TestTree+requestBatchPutPropertyValues =+ req+ "BatchPutPropertyValues"+ "fixture/BatchPutPropertyValues.yaml"++requestCreateComponentType :: CreateComponentType -> TestTree+requestCreateComponentType =+ req+ "CreateComponentType"+ "fixture/CreateComponentType.yaml"++requestCreateEntity :: CreateEntity -> TestTree+requestCreateEntity =+ req+ "CreateEntity"+ "fixture/CreateEntity.yaml"++requestCreateScene :: CreateScene -> TestTree+requestCreateScene =+ req+ "CreateScene"+ "fixture/CreateScene.yaml"++requestCreateSyncJob :: CreateSyncJob -> TestTree+requestCreateSyncJob =+ req+ "CreateSyncJob"+ "fixture/CreateSyncJob.yaml"++requestCreateWorkspace :: CreateWorkspace -> TestTree+requestCreateWorkspace =+ req+ "CreateWorkspace"+ "fixture/CreateWorkspace.yaml"++requestDeleteComponentType :: DeleteComponentType -> TestTree+requestDeleteComponentType =+ req+ "DeleteComponentType"+ "fixture/DeleteComponentType.yaml"++requestDeleteEntity :: DeleteEntity -> TestTree+requestDeleteEntity =+ req+ "DeleteEntity"+ "fixture/DeleteEntity.yaml"++requestDeleteScene :: DeleteScene -> TestTree+requestDeleteScene =+ req+ "DeleteScene"+ "fixture/DeleteScene.yaml"++requestDeleteSyncJob :: DeleteSyncJob -> TestTree+requestDeleteSyncJob =+ req+ "DeleteSyncJob"+ "fixture/DeleteSyncJob.yaml"++requestDeleteWorkspace :: DeleteWorkspace -> TestTree+requestDeleteWorkspace =+ req+ "DeleteWorkspace"+ "fixture/DeleteWorkspace.yaml"++requestExecuteQuery :: ExecuteQuery -> TestTree+requestExecuteQuery =+ req+ "ExecuteQuery"+ "fixture/ExecuteQuery.yaml"++requestGetComponentType :: GetComponentType -> TestTree+requestGetComponentType =+ req+ "GetComponentType"+ "fixture/GetComponentType.yaml"++requestGetEntity :: GetEntity -> TestTree+requestGetEntity =+ req+ "GetEntity"+ "fixture/GetEntity.yaml"++requestGetPricingPlan :: GetPricingPlan -> TestTree+requestGetPricingPlan =+ req+ "GetPricingPlan"+ "fixture/GetPricingPlan.yaml"++requestGetPropertyValue :: GetPropertyValue -> TestTree+requestGetPropertyValue =+ req+ "GetPropertyValue"+ "fixture/GetPropertyValue.yaml"++requestGetPropertyValueHistory :: GetPropertyValueHistory -> TestTree+requestGetPropertyValueHistory =+ req+ "GetPropertyValueHistory"+ "fixture/GetPropertyValueHistory.yaml"++requestGetScene :: GetScene -> TestTree+requestGetScene =+ req+ "GetScene"+ "fixture/GetScene.yaml"++requestGetSyncJob :: GetSyncJob -> TestTree+requestGetSyncJob =+ req+ "GetSyncJob"+ "fixture/GetSyncJob.yaml"++requestGetWorkspace :: GetWorkspace -> TestTree+requestGetWorkspace =+ req+ "GetWorkspace"+ "fixture/GetWorkspace.yaml"++requestListComponentTypes :: ListComponentTypes -> TestTree+requestListComponentTypes =+ req+ "ListComponentTypes"+ "fixture/ListComponentTypes.yaml"++requestListEntities :: ListEntities -> TestTree+requestListEntities =+ req+ "ListEntities"+ "fixture/ListEntities.yaml"++requestListScenes :: ListScenes -> TestTree+requestListScenes =+ req+ "ListScenes"+ "fixture/ListScenes.yaml"++requestListSyncJobs :: ListSyncJobs -> TestTree+requestListSyncJobs =+ req+ "ListSyncJobs"+ "fixture/ListSyncJobs.yaml"++requestListSyncResources :: ListSyncResources -> TestTree+requestListSyncResources =+ req+ "ListSyncResources"+ "fixture/ListSyncResources.yaml"++requestListTagsForResource :: ListTagsForResource -> TestTree+requestListTagsForResource =+ req+ "ListTagsForResource"+ "fixture/ListTagsForResource.yaml"++requestListWorkspaces :: ListWorkspaces -> TestTree+requestListWorkspaces =+ req+ "ListWorkspaces"+ "fixture/ListWorkspaces.yaml"++requestTagResource :: TagResource -> TestTree+requestTagResource =+ req+ "TagResource"+ "fixture/TagResource.yaml"++requestUntagResource :: UntagResource -> TestTree+requestUntagResource =+ req+ "UntagResource"+ "fixture/UntagResource.yaml"++requestUpdateComponentType :: UpdateComponentType -> TestTree+requestUpdateComponentType =+ req+ "UpdateComponentType"+ "fixture/UpdateComponentType.yaml"++requestUpdateEntity :: UpdateEntity -> TestTree+requestUpdateEntity =+ req+ "UpdateEntity"+ "fixture/UpdateEntity.yaml"++requestUpdatePricingPlan :: UpdatePricingPlan -> TestTree+requestUpdatePricingPlan =+ req+ "UpdatePricingPlan"+ "fixture/UpdatePricingPlan.yaml"++requestUpdateScene :: UpdateScene -> TestTree+requestUpdateScene =+ req+ "UpdateScene"+ "fixture/UpdateScene.yaml"++requestUpdateWorkspace :: UpdateWorkspace -> TestTree+requestUpdateWorkspace =+ req+ "UpdateWorkspace"+ "fixture/UpdateWorkspace.yaml"++-- Responses++responseBatchPutPropertyValues :: BatchPutPropertyValuesResponse -> TestTree+responseBatchPutPropertyValues =+ res+ "BatchPutPropertyValuesResponse"+ "fixture/BatchPutPropertyValuesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy BatchPutPropertyValues)++responseCreateComponentType :: CreateComponentTypeResponse -> TestTree+responseCreateComponentType =+ res+ "CreateComponentTypeResponse"+ "fixture/CreateComponentTypeResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateComponentType)++responseCreateEntity :: CreateEntityResponse -> TestTree+responseCreateEntity =+ res+ "CreateEntityResponse"+ "fixture/CreateEntityResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateEntity)++responseCreateScene :: CreateSceneResponse -> TestTree+responseCreateScene =+ res+ "CreateSceneResponse"+ "fixture/CreateSceneResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateScene)++responseCreateSyncJob :: CreateSyncJobResponse -> TestTree+responseCreateSyncJob =+ res+ "CreateSyncJobResponse"+ "fixture/CreateSyncJobResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateSyncJob)++responseCreateWorkspace :: CreateWorkspaceResponse -> TestTree+responseCreateWorkspace =+ res+ "CreateWorkspaceResponse"+ "fixture/CreateWorkspaceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateWorkspace)++responseDeleteComponentType :: DeleteComponentTypeResponse -> TestTree+responseDeleteComponentType =+ res+ "DeleteComponentTypeResponse"+ "fixture/DeleteComponentTypeResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteComponentType)++responseDeleteEntity :: DeleteEntityResponse -> TestTree+responseDeleteEntity =+ res+ "DeleteEntityResponse"+ "fixture/DeleteEntityResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteEntity)++responseDeleteScene :: DeleteSceneResponse -> TestTree+responseDeleteScene =+ res+ "DeleteSceneResponse"+ "fixture/DeleteSceneResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteScene)++responseDeleteSyncJob :: DeleteSyncJobResponse -> TestTree+responseDeleteSyncJob =+ res+ "DeleteSyncJobResponse"+ "fixture/DeleteSyncJobResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteSyncJob)++responseDeleteWorkspace :: DeleteWorkspaceResponse -> TestTree+responseDeleteWorkspace =+ res+ "DeleteWorkspaceResponse"+ "fixture/DeleteWorkspaceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteWorkspace)++responseExecuteQuery :: ExecuteQueryResponse -> TestTree+responseExecuteQuery =+ res+ "ExecuteQueryResponse"+ "fixture/ExecuteQueryResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ExecuteQuery)++responseGetComponentType :: GetComponentTypeResponse -> TestTree+responseGetComponentType =+ res+ "GetComponentTypeResponse"+ "fixture/GetComponentTypeResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetComponentType)++responseGetEntity :: GetEntityResponse -> TestTree+responseGetEntity =+ res+ "GetEntityResponse"+ "fixture/GetEntityResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetEntity)++responseGetPricingPlan :: GetPricingPlanResponse -> TestTree+responseGetPricingPlan =+ res+ "GetPricingPlanResponse"+ "fixture/GetPricingPlanResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetPricingPlan)++responseGetPropertyValue :: GetPropertyValueResponse -> TestTree+responseGetPropertyValue =+ res+ "GetPropertyValueResponse"+ "fixture/GetPropertyValueResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetPropertyValue)++responseGetPropertyValueHistory :: GetPropertyValueHistoryResponse -> TestTree+responseGetPropertyValueHistory =+ res+ "GetPropertyValueHistoryResponse"+ "fixture/GetPropertyValueHistoryResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetPropertyValueHistory)++responseGetScene :: GetSceneResponse -> TestTree+responseGetScene =+ res+ "GetSceneResponse"+ "fixture/GetSceneResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetScene)++responseGetSyncJob :: GetSyncJobResponse -> TestTree+responseGetSyncJob =+ res+ "GetSyncJobResponse"+ "fixture/GetSyncJobResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetSyncJob)++responseGetWorkspace :: GetWorkspaceResponse -> TestTree+responseGetWorkspace =+ res+ "GetWorkspaceResponse"+ "fixture/GetWorkspaceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetWorkspace)++responseListComponentTypes :: ListComponentTypesResponse -> TestTree+responseListComponentTypes =+ res+ "ListComponentTypesResponse"+ "fixture/ListComponentTypesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListComponentTypes)++responseListEntities :: ListEntitiesResponse -> TestTree+responseListEntities =+ res+ "ListEntitiesResponse"+ "fixture/ListEntitiesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListEntities)++responseListScenes :: ListScenesResponse -> TestTree+responseListScenes =+ res+ "ListScenesResponse"+ "fixture/ListScenesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListScenes)++responseListSyncJobs :: ListSyncJobsResponse -> TestTree+responseListSyncJobs =+ res+ "ListSyncJobsResponse"+ "fixture/ListSyncJobsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListSyncJobs)++responseListSyncResources :: ListSyncResourcesResponse -> TestTree+responseListSyncResources =+ res+ "ListSyncResourcesResponse"+ "fixture/ListSyncResourcesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListSyncResources)++responseListTagsForResource :: ListTagsForResourceResponse -> TestTree+responseListTagsForResource =+ res+ "ListTagsForResourceResponse"+ "fixture/ListTagsForResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListTagsForResource)++responseListWorkspaces :: ListWorkspacesResponse -> TestTree+responseListWorkspaces =+ res+ "ListWorkspacesResponse"+ "fixture/ListWorkspacesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListWorkspaces)++responseTagResource :: TagResourceResponse -> TestTree+responseTagResource =+ res+ "TagResourceResponse"+ "fixture/TagResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy TagResource)++responseUntagResource :: UntagResourceResponse -> TestTree+responseUntagResource =+ res+ "UntagResourceResponse"+ "fixture/UntagResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UntagResource)++responseUpdateComponentType :: UpdateComponentTypeResponse -> TestTree+responseUpdateComponentType =+ res+ "UpdateComponentTypeResponse"+ "fixture/UpdateComponentTypeResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateComponentType)++responseUpdateEntity :: UpdateEntityResponse -> TestTree+responseUpdateEntity =+ res+ "UpdateEntityResponse"+ "fixture/UpdateEntityResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateEntity)++responseUpdatePricingPlan :: UpdatePricingPlanResponse -> TestTree+responseUpdatePricingPlan =+ res+ "UpdatePricingPlanResponse"+ "fixture/UpdatePricingPlanResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdatePricingPlan)++responseUpdateScene :: UpdateSceneResponse -> TestTree+responseUpdateScene =+ res+ "UpdateSceneResponse"+ "fixture/UpdateSceneResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateScene)++responseUpdateWorkspace :: UpdateWorkspaceResponse -> TestTree+responseUpdateWorkspace =+ res+ "UpdateWorkspaceResponse"+ "fixture/UpdateWorkspaceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateWorkspace)
+ test/Test/Amazonka/IotTwinMaker.hs view
@@ -0,0 +1,20 @@+-- |+-- Module : Test.Amazonka.IotTwinMaker+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.IotTwinMaker+ ( tests,+ fixtures,+ )+where++import Test.Tasty (TestTree)++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/Amazonka/IotTwinMaker/Internal.hs view
@@ -0,0 +1,8 @@+-- |+-- Module : Test.Amazonka.IotTwinMaker.Internal+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.IotTwinMaker.Internal where