packages feed

amazonka-iot-dataplane 1.6.1 → 2.0

raw patch · 42 files changed

+2603/−1093 lines, 42 filesdep +case-insensitivedep ~amazonka-coredep ~amazonka-testdep ~basesetup-changedPVP ok

version bump matches the API change (PVP)

Dependencies added: case-insensitive

Dependency ranges changed: amazonka-core, amazonka-test, base

API changes (from Hackage documentation)

- Network.AWS.IoTData: _ConflictException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IoTData: _InternalFailureException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IoTData: _InvalidRequestException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IoTData: _MethodNotAllowedException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IoTData: _RequestEntityTooLargeException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IoTData: _ResourceNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IoTData: _ServiceUnavailableException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IoTData: _ThrottlingException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IoTData: _UnauthorizedException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IoTData: _UnsupportedDocumentEncodingException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IoTData: ioTData :: Service
- Network.AWS.IoTData.DeleteThingShadow: data DeleteThingShadow
- Network.AWS.IoTData.DeleteThingShadow: data DeleteThingShadowResponse
- Network.AWS.IoTData.DeleteThingShadow: deleteThingShadow :: Text -> DeleteThingShadow
- Network.AWS.IoTData.DeleteThingShadow: deleteThingShadowResponse :: Int -> ByteString -> DeleteThingShadowResponse
- Network.AWS.IoTData.DeleteThingShadow: dtsThingName :: Lens' DeleteThingShadow Text
- Network.AWS.IoTData.DeleteThingShadow: dtsrsPayload :: Lens' DeleteThingShadowResponse ByteString
- Network.AWS.IoTData.DeleteThingShadow: dtsrsResponseStatus :: Lens' DeleteThingShadowResponse Int
- Network.AWS.IoTData.DeleteThingShadow: instance Control.DeepSeq.NFData Network.AWS.IoTData.DeleteThingShadow.DeleteThingShadow
- Network.AWS.IoTData.DeleteThingShadow: instance Control.DeepSeq.NFData Network.AWS.IoTData.DeleteThingShadow.DeleteThingShadowResponse
- Network.AWS.IoTData.DeleteThingShadow: instance Data.Data.Data Network.AWS.IoTData.DeleteThingShadow.DeleteThingShadow
- Network.AWS.IoTData.DeleteThingShadow: instance Data.Data.Data Network.AWS.IoTData.DeleteThingShadow.DeleteThingShadowResponse
- Network.AWS.IoTData.DeleteThingShadow: instance Data.Hashable.Class.Hashable Network.AWS.IoTData.DeleteThingShadow.DeleteThingShadow
- Network.AWS.IoTData.DeleteThingShadow: instance GHC.Classes.Eq Network.AWS.IoTData.DeleteThingShadow.DeleteThingShadow
- Network.AWS.IoTData.DeleteThingShadow: instance GHC.Classes.Eq Network.AWS.IoTData.DeleteThingShadow.DeleteThingShadowResponse
- Network.AWS.IoTData.DeleteThingShadow: instance GHC.Generics.Generic Network.AWS.IoTData.DeleteThingShadow.DeleteThingShadow
- Network.AWS.IoTData.DeleteThingShadow: instance GHC.Generics.Generic Network.AWS.IoTData.DeleteThingShadow.DeleteThingShadowResponse
- Network.AWS.IoTData.DeleteThingShadow: instance GHC.Read.Read Network.AWS.IoTData.DeleteThingShadow.DeleteThingShadow
- Network.AWS.IoTData.DeleteThingShadow: instance GHC.Show.Show Network.AWS.IoTData.DeleteThingShadow.DeleteThingShadow
- Network.AWS.IoTData.DeleteThingShadow: instance GHC.Show.Show Network.AWS.IoTData.DeleteThingShadow.DeleteThingShadowResponse
- Network.AWS.IoTData.DeleteThingShadow: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IoTData.DeleteThingShadow.DeleteThingShadow
- Network.AWS.IoTData.DeleteThingShadow: instance Network.AWS.Data.Path.ToPath Network.AWS.IoTData.DeleteThingShadow.DeleteThingShadow
- Network.AWS.IoTData.DeleteThingShadow: instance Network.AWS.Data.Query.ToQuery Network.AWS.IoTData.DeleteThingShadow.DeleteThingShadow
- Network.AWS.IoTData.DeleteThingShadow: instance Network.AWS.Types.AWSRequest Network.AWS.IoTData.DeleteThingShadow.DeleteThingShadow
- Network.AWS.IoTData.GetThingShadow: data GetThingShadow
- Network.AWS.IoTData.GetThingShadow: data GetThingShadowResponse
- Network.AWS.IoTData.GetThingShadow: getThingShadow :: Text -> GetThingShadow
- Network.AWS.IoTData.GetThingShadow: getThingShadowResponse :: Int -> GetThingShadowResponse
- Network.AWS.IoTData.GetThingShadow: gtsThingName :: Lens' GetThingShadow Text
- Network.AWS.IoTData.GetThingShadow: gtsrsPayload :: Lens' GetThingShadowResponse (Maybe ByteString)
- Network.AWS.IoTData.GetThingShadow: gtsrsResponseStatus :: Lens' GetThingShadowResponse Int
- Network.AWS.IoTData.GetThingShadow: instance Control.DeepSeq.NFData Network.AWS.IoTData.GetThingShadow.GetThingShadow
- Network.AWS.IoTData.GetThingShadow: instance Control.DeepSeq.NFData Network.AWS.IoTData.GetThingShadow.GetThingShadowResponse
- Network.AWS.IoTData.GetThingShadow: instance Data.Data.Data Network.AWS.IoTData.GetThingShadow.GetThingShadow
- Network.AWS.IoTData.GetThingShadow: instance Data.Data.Data Network.AWS.IoTData.GetThingShadow.GetThingShadowResponse
- Network.AWS.IoTData.GetThingShadow: instance Data.Hashable.Class.Hashable Network.AWS.IoTData.GetThingShadow.GetThingShadow
- Network.AWS.IoTData.GetThingShadow: instance GHC.Classes.Eq Network.AWS.IoTData.GetThingShadow.GetThingShadow
- Network.AWS.IoTData.GetThingShadow: instance GHC.Classes.Eq Network.AWS.IoTData.GetThingShadow.GetThingShadowResponse
- Network.AWS.IoTData.GetThingShadow: instance GHC.Generics.Generic Network.AWS.IoTData.GetThingShadow.GetThingShadow
- Network.AWS.IoTData.GetThingShadow: instance GHC.Generics.Generic Network.AWS.IoTData.GetThingShadow.GetThingShadowResponse
- Network.AWS.IoTData.GetThingShadow: instance GHC.Read.Read Network.AWS.IoTData.GetThingShadow.GetThingShadow
- Network.AWS.IoTData.GetThingShadow: instance GHC.Show.Show Network.AWS.IoTData.GetThingShadow.GetThingShadow
- Network.AWS.IoTData.GetThingShadow: instance GHC.Show.Show Network.AWS.IoTData.GetThingShadow.GetThingShadowResponse
- Network.AWS.IoTData.GetThingShadow: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IoTData.GetThingShadow.GetThingShadow
- Network.AWS.IoTData.GetThingShadow: instance Network.AWS.Data.Path.ToPath Network.AWS.IoTData.GetThingShadow.GetThingShadow
- Network.AWS.IoTData.GetThingShadow: instance Network.AWS.Data.Query.ToQuery Network.AWS.IoTData.GetThingShadow.GetThingShadow
- Network.AWS.IoTData.GetThingShadow: instance Network.AWS.Types.AWSRequest Network.AWS.IoTData.GetThingShadow.GetThingShadow
- Network.AWS.IoTData.Publish: data Publish
- Network.AWS.IoTData.Publish: data PublishResponse
- Network.AWS.IoTData.Publish: instance Control.DeepSeq.NFData Network.AWS.IoTData.Publish.Publish
- Network.AWS.IoTData.Publish: instance Control.DeepSeq.NFData Network.AWS.IoTData.Publish.PublishResponse
- Network.AWS.IoTData.Publish: instance Data.Data.Data Network.AWS.IoTData.Publish.Publish
- Network.AWS.IoTData.Publish: instance Data.Data.Data Network.AWS.IoTData.Publish.PublishResponse
- Network.AWS.IoTData.Publish: instance Data.Hashable.Class.Hashable Network.AWS.IoTData.Publish.Publish
- Network.AWS.IoTData.Publish: instance GHC.Classes.Eq Network.AWS.IoTData.Publish.Publish
- Network.AWS.IoTData.Publish: instance GHC.Classes.Eq Network.AWS.IoTData.Publish.PublishResponse
- Network.AWS.IoTData.Publish: instance GHC.Generics.Generic Network.AWS.IoTData.Publish.Publish
- Network.AWS.IoTData.Publish: instance GHC.Generics.Generic Network.AWS.IoTData.Publish.PublishResponse
- Network.AWS.IoTData.Publish: instance GHC.Read.Read Network.AWS.IoTData.Publish.PublishResponse
- Network.AWS.IoTData.Publish: instance GHC.Show.Show Network.AWS.IoTData.Publish.Publish
- Network.AWS.IoTData.Publish: instance GHC.Show.Show Network.AWS.IoTData.Publish.PublishResponse
- Network.AWS.IoTData.Publish: instance Network.AWS.Data.Body.ToBody Network.AWS.IoTData.Publish.Publish
- Network.AWS.IoTData.Publish: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IoTData.Publish.Publish
- Network.AWS.IoTData.Publish: instance Network.AWS.Data.Path.ToPath Network.AWS.IoTData.Publish.Publish
- Network.AWS.IoTData.Publish: instance Network.AWS.Data.Query.ToQuery Network.AWS.IoTData.Publish.Publish
- Network.AWS.IoTData.Publish: instance Network.AWS.Types.AWSRequest Network.AWS.IoTData.Publish.Publish
- Network.AWS.IoTData.Publish: pPayload :: Lens' Publish (Maybe ByteString)
- Network.AWS.IoTData.Publish: pQos :: Lens' Publish (Maybe Natural)
- Network.AWS.IoTData.Publish: pTopic :: Lens' Publish Text
- Network.AWS.IoTData.Publish: publish :: Text -> Publish
- Network.AWS.IoTData.Publish: publishResponse :: PublishResponse
- Network.AWS.IoTData.Types: _ConflictException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IoTData.Types: _InternalFailureException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IoTData.Types: _InvalidRequestException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IoTData.Types: _MethodNotAllowedException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IoTData.Types: _RequestEntityTooLargeException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IoTData.Types: _ResourceNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IoTData.Types: _ServiceUnavailableException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IoTData.Types: _ThrottlingException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IoTData.Types: _UnauthorizedException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IoTData.Types: _UnsupportedDocumentEncodingException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IoTData.Types: ioTData :: Service
- Network.AWS.IoTData.UpdateThingShadow: data UpdateThingShadow
- Network.AWS.IoTData.UpdateThingShadow: data UpdateThingShadowResponse
- Network.AWS.IoTData.UpdateThingShadow: instance Control.DeepSeq.NFData Network.AWS.IoTData.UpdateThingShadow.UpdateThingShadow
- Network.AWS.IoTData.UpdateThingShadow: instance Control.DeepSeq.NFData Network.AWS.IoTData.UpdateThingShadow.UpdateThingShadowResponse
- Network.AWS.IoTData.UpdateThingShadow: instance Data.Data.Data Network.AWS.IoTData.UpdateThingShadow.UpdateThingShadow
- Network.AWS.IoTData.UpdateThingShadow: instance Data.Data.Data Network.AWS.IoTData.UpdateThingShadow.UpdateThingShadowResponse
- Network.AWS.IoTData.UpdateThingShadow: instance Data.Hashable.Class.Hashable Network.AWS.IoTData.UpdateThingShadow.UpdateThingShadow
- Network.AWS.IoTData.UpdateThingShadow: instance GHC.Classes.Eq Network.AWS.IoTData.UpdateThingShadow.UpdateThingShadow
- Network.AWS.IoTData.UpdateThingShadow: instance GHC.Classes.Eq Network.AWS.IoTData.UpdateThingShadow.UpdateThingShadowResponse
- Network.AWS.IoTData.UpdateThingShadow: instance GHC.Generics.Generic Network.AWS.IoTData.UpdateThingShadow.UpdateThingShadow
- Network.AWS.IoTData.UpdateThingShadow: instance GHC.Generics.Generic Network.AWS.IoTData.UpdateThingShadow.UpdateThingShadowResponse
- Network.AWS.IoTData.UpdateThingShadow: instance GHC.Show.Show Network.AWS.IoTData.UpdateThingShadow.UpdateThingShadow
- Network.AWS.IoTData.UpdateThingShadow: instance GHC.Show.Show Network.AWS.IoTData.UpdateThingShadow.UpdateThingShadowResponse
- Network.AWS.IoTData.UpdateThingShadow: instance Network.AWS.Data.Body.ToBody Network.AWS.IoTData.UpdateThingShadow.UpdateThingShadow
- Network.AWS.IoTData.UpdateThingShadow: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IoTData.UpdateThingShadow.UpdateThingShadow
- Network.AWS.IoTData.UpdateThingShadow: instance Network.AWS.Data.Path.ToPath Network.AWS.IoTData.UpdateThingShadow.UpdateThingShadow
- Network.AWS.IoTData.UpdateThingShadow: instance Network.AWS.Data.Query.ToQuery Network.AWS.IoTData.UpdateThingShadow.UpdateThingShadow
- Network.AWS.IoTData.UpdateThingShadow: instance Network.AWS.Types.AWSRequest Network.AWS.IoTData.UpdateThingShadow.UpdateThingShadow
- Network.AWS.IoTData.UpdateThingShadow: updateThingShadow :: Text -> ByteString -> UpdateThingShadow
- Network.AWS.IoTData.UpdateThingShadow: updateThingShadowResponse :: Int -> UpdateThingShadowResponse
- Network.AWS.IoTData.UpdateThingShadow: utsPayload :: Lens' UpdateThingShadow ByteString
- Network.AWS.IoTData.UpdateThingShadow: utsThingName :: Lens' UpdateThingShadow Text
- Network.AWS.IoTData.UpdateThingShadow: utsrsPayload :: Lens' UpdateThingShadowResponse (Maybe ByteString)
- Network.AWS.IoTData.UpdateThingShadow: utsrsResponseStatus :: Lens' UpdateThingShadowResponse Int
+ Amazonka.IoTData: DeleteThingShadow' :: Maybe Text -> Text -> DeleteThingShadow
+ Amazonka.IoTData: DeleteThingShadowResponse' :: Int -> ByteString -> DeleteThingShadowResponse
+ Amazonka.IoTData: GetRetainedMessage' :: Text -> GetRetainedMessage
+ Amazonka.IoTData: GetRetainedMessageResponse' :: Maybe Integer -> Maybe Base64 -> Maybe Natural -> Maybe Text -> Int -> GetRetainedMessageResponse
+ Amazonka.IoTData: GetThingShadow' :: Maybe Text -> Text -> GetThingShadow
+ Amazonka.IoTData: GetThingShadowResponse' :: Maybe ByteString -> Int -> GetThingShadowResponse
+ Amazonka.IoTData: ListNamedShadowsForThing' :: Maybe Text -> Maybe Natural -> Text -> ListNamedShadowsForThing
+ Amazonka.IoTData: ListNamedShadowsForThingResponse' :: Maybe Text -> Maybe [Text] -> Maybe Integer -> Int -> ListNamedShadowsForThingResponse
+ Amazonka.IoTData: ListRetainedMessages' :: Maybe Natural -> Maybe Text -> ListRetainedMessages
+ Amazonka.IoTData: ListRetainedMessagesResponse' :: Maybe Text -> Maybe [RetainedMessageSummary] -> Int -> ListRetainedMessagesResponse
+ Amazonka.IoTData: PayloadFormatIndicator' :: Text -> PayloadFormatIndicator
+ Amazonka.IoTData: Publish' :: Maybe Text -> Maybe Text -> Maybe Integer -> Maybe ByteString -> Maybe PayloadFormatIndicator -> Maybe Natural -> Maybe Text -> Maybe Bool -> Maybe Text -> Text -> Publish
+ Amazonka.IoTData: PublishResponse' :: PublishResponse
+ Amazonka.IoTData: RetainedMessageSummary' :: Maybe Integer -> Maybe Integer -> Maybe Natural -> Maybe Text -> RetainedMessageSummary
+ Amazonka.IoTData: UpdateThingShadow' :: Maybe Text -> Text -> ByteString -> UpdateThingShadow
+ Amazonka.IoTData: UpdateThingShadowResponse' :: Maybe ByteString -> Int -> UpdateThingShadowResponse
+ Amazonka.IoTData: [fromPayloadFormatIndicator] :: PayloadFormatIndicator -> Text
+ Amazonka.IoTData: _ConflictException :: AsError a => Fold a ServiceError
+ Amazonka.IoTData: _InternalFailureException :: AsError a => Fold a ServiceError
+ Amazonka.IoTData: _InvalidRequestException :: AsError a => Fold a ServiceError
+ Amazonka.IoTData: _MethodNotAllowedException :: AsError a => Fold a ServiceError
+ Amazonka.IoTData: _RequestEntityTooLargeException :: AsError a => Fold a ServiceError
+ Amazonka.IoTData: _ResourceNotFoundException :: AsError a => Fold a ServiceError
+ Amazonka.IoTData: _ServiceUnavailableException :: AsError a => Fold a ServiceError
+ Amazonka.IoTData: _ThrottlingException :: AsError a => Fold a ServiceError
+ Amazonka.IoTData: _UnauthorizedException :: AsError a => Fold a ServiceError
+ Amazonka.IoTData: _UnsupportedDocumentEncodingException :: AsError a => Fold a ServiceError
+ Amazonka.IoTData: data DeleteThingShadow
+ Amazonka.IoTData: data DeleteThingShadowResponse
+ Amazonka.IoTData: data GetRetainedMessage
+ Amazonka.IoTData: data GetRetainedMessageResponse
+ Amazonka.IoTData: data GetThingShadow
+ Amazonka.IoTData: data GetThingShadowResponse
+ Amazonka.IoTData: data ListNamedShadowsForThing
+ Amazonka.IoTData: data ListNamedShadowsForThingResponse
+ Amazonka.IoTData: data ListRetainedMessages
+ Amazonka.IoTData: data ListRetainedMessagesResponse
+ Amazonka.IoTData: data Publish
+ Amazonka.IoTData: data PublishResponse
+ Amazonka.IoTData: data RetainedMessageSummary
+ Amazonka.IoTData: data UpdateThingShadow
+ Amazonka.IoTData: data UpdateThingShadowResponse
+ Amazonka.IoTData: defaultService :: Service
+ Amazonka.IoTData: newDeleteThingShadow :: Text -> DeleteThingShadow
+ Amazonka.IoTData: newDeleteThingShadowResponse :: Int -> ByteString -> DeleteThingShadowResponse
+ Amazonka.IoTData: newGetRetainedMessage :: Text -> GetRetainedMessage
+ Amazonka.IoTData: newGetRetainedMessageResponse :: Int -> GetRetainedMessageResponse
+ Amazonka.IoTData: newGetThingShadow :: Text -> GetThingShadow
+ Amazonka.IoTData: newGetThingShadowResponse :: Int -> GetThingShadowResponse
+ Amazonka.IoTData: newListNamedShadowsForThing :: Text -> ListNamedShadowsForThing
+ Amazonka.IoTData: newListNamedShadowsForThingResponse :: Int -> ListNamedShadowsForThingResponse
+ Amazonka.IoTData: newListRetainedMessages :: ListRetainedMessages
+ Amazonka.IoTData: newListRetainedMessagesResponse :: Int -> ListRetainedMessagesResponse
+ Amazonka.IoTData: newPublish :: Text -> Publish
+ Amazonka.IoTData: newPublishResponse :: PublishResponse
+ Amazonka.IoTData: newRetainedMessageSummary :: RetainedMessageSummary
+ Amazonka.IoTData: newUpdateThingShadow :: Text -> ByteString -> UpdateThingShadow
+ Amazonka.IoTData: newUpdateThingShadowResponse :: Int -> UpdateThingShadowResponse
+ Amazonka.IoTData: newtype PayloadFormatIndicator
+ Amazonka.IoTData: pattern PayloadFormatIndicator_UNSPECIFIED_BYTES :: PayloadFormatIndicator
+ Amazonka.IoTData: pattern PayloadFormatIndicator_UTF8_DATA :: PayloadFormatIndicator
+ Amazonka.IoTData.DeleteThingShadow: DeleteThingShadow' :: Maybe Text -> Text -> DeleteThingShadow
+ Amazonka.IoTData.DeleteThingShadow: DeleteThingShadowResponse' :: Int -> ByteString -> DeleteThingShadowResponse
+ Amazonka.IoTData.DeleteThingShadow: [$sel:httpStatus:DeleteThingShadowResponse'] :: DeleteThingShadowResponse -> Int
+ Amazonka.IoTData.DeleteThingShadow: [$sel:payload:DeleteThingShadowResponse'] :: DeleteThingShadowResponse -> ByteString
+ Amazonka.IoTData.DeleteThingShadow: [$sel:shadowName:DeleteThingShadow'] :: DeleteThingShadow -> Maybe Text
+ Amazonka.IoTData.DeleteThingShadow: [$sel:thingName:DeleteThingShadow'] :: DeleteThingShadow -> Text
+ Amazonka.IoTData.DeleteThingShadow: data DeleteThingShadow
+ Amazonka.IoTData.DeleteThingShadow: data DeleteThingShadowResponse
+ Amazonka.IoTData.DeleteThingShadow: deleteThingShadowResponse_httpStatus :: Lens' DeleteThingShadowResponse Int
+ Amazonka.IoTData.DeleteThingShadow: deleteThingShadowResponse_payload :: Lens' DeleteThingShadowResponse ByteString
+ Amazonka.IoTData.DeleteThingShadow: deleteThingShadow_shadowName :: Lens' DeleteThingShadow (Maybe Text)
+ Amazonka.IoTData.DeleteThingShadow: deleteThingShadow_thingName :: Lens' DeleteThingShadow Text
+ Amazonka.IoTData.DeleteThingShadow: instance Amazonka.Data.Headers.ToHeaders Amazonka.IoTData.DeleteThingShadow.DeleteThingShadow
+ Amazonka.IoTData.DeleteThingShadow: instance Amazonka.Data.Path.ToPath Amazonka.IoTData.DeleteThingShadow.DeleteThingShadow
+ Amazonka.IoTData.DeleteThingShadow: instance Amazonka.Data.Query.ToQuery Amazonka.IoTData.DeleteThingShadow.DeleteThingShadow
+ Amazonka.IoTData.DeleteThingShadow: instance Amazonka.Types.AWSRequest Amazonka.IoTData.DeleteThingShadow.DeleteThingShadow
+ Amazonka.IoTData.DeleteThingShadow: instance Control.DeepSeq.NFData Amazonka.IoTData.DeleteThingShadow.DeleteThingShadow
+ Amazonka.IoTData.DeleteThingShadow: instance Control.DeepSeq.NFData Amazonka.IoTData.DeleteThingShadow.DeleteThingShadowResponse
+ Amazonka.IoTData.DeleteThingShadow: instance Data.Hashable.Class.Hashable Amazonka.IoTData.DeleteThingShadow.DeleteThingShadow
+ Amazonka.IoTData.DeleteThingShadow: instance GHC.Classes.Eq Amazonka.IoTData.DeleteThingShadow.DeleteThingShadow
+ Amazonka.IoTData.DeleteThingShadow: instance GHC.Classes.Eq Amazonka.IoTData.DeleteThingShadow.DeleteThingShadowResponse
+ Amazonka.IoTData.DeleteThingShadow: instance GHC.Generics.Generic Amazonka.IoTData.DeleteThingShadow.DeleteThingShadow
+ Amazonka.IoTData.DeleteThingShadow: instance GHC.Generics.Generic Amazonka.IoTData.DeleteThingShadow.DeleteThingShadowResponse
+ Amazonka.IoTData.DeleteThingShadow: instance GHC.Read.Read Amazonka.IoTData.DeleteThingShadow.DeleteThingShadow
+ Amazonka.IoTData.DeleteThingShadow: instance GHC.Show.Show Amazonka.IoTData.DeleteThingShadow.DeleteThingShadow
+ Amazonka.IoTData.DeleteThingShadow: instance GHC.Show.Show Amazonka.IoTData.DeleteThingShadow.DeleteThingShadowResponse
+ Amazonka.IoTData.DeleteThingShadow: newDeleteThingShadow :: Text -> DeleteThingShadow
+ Amazonka.IoTData.DeleteThingShadow: newDeleteThingShadowResponse :: Int -> ByteString -> DeleteThingShadowResponse
+ Amazonka.IoTData.GetRetainedMessage: GetRetainedMessage' :: Text -> GetRetainedMessage
+ Amazonka.IoTData.GetRetainedMessage: GetRetainedMessageResponse' :: Maybe Integer -> Maybe Base64 -> Maybe Natural -> Maybe Text -> Int -> GetRetainedMessageResponse
+ Amazonka.IoTData.GetRetainedMessage: [$sel:httpStatus:GetRetainedMessageResponse'] :: GetRetainedMessageResponse -> Int
+ Amazonka.IoTData.GetRetainedMessage: [$sel:lastModifiedTime:GetRetainedMessageResponse'] :: GetRetainedMessageResponse -> Maybe Integer
+ Amazonka.IoTData.GetRetainedMessage: [$sel:payload:GetRetainedMessageResponse'] :: GetRetainedMessageResponse -> Maybe Base64
+ Amazonka.IoTData.GetRetainedMessage: [$sel:qos:GetRetainedMessageResponse'] :: GetRetainedMessageResponse -> Maybe Natural
+ Amazonka.IoTData.GetRetainedMessage: [$sel:topic:GetRetainedMessage'] :: GetRetainedMessage -> Text
+ Amazonka.IoTData.GetRetainedMessage: [$sel:topic:GetRetainedMessageResponse'] :: GetRetainedMessageResponse -> Maybe Text
+ Amazonka.IoTData.GetRetainedMessage: data GetRetainedMessage
+ Amazonka.IoTData.GetRetainedMessage: data GetRetainedMessageResponse
+ Amazonka.IoTData.GetRetainedMessage: getRetainedMessageResponse_httpStatus :: Lens' GetRetainedMessageResponse Int
+ Amazonka.IoTData.GetRetainedMessage: getRetainedMessageResponse_lastModifiedTime :: Lens' GetRetainedMessageResponse (Maybe Integer)
+ Amazonka.IoTData.GetRetainedMessage: getRetainedMessageResponse_payload :: Lens' GetRetainedMessageResponse (Maybe ByteString)
+ Amazonka.IoTData.GetRetainedMessage: getRetainedMessageResponse_qos :: Lens' GetRetainedMessageResponse (Maybe Natural)
+ Amazonka.IoTData.GetRetainedMessage: getRetainedMessageResponse_topic :: Lens' GetRetainedMessageResponse (Maybe Text)
+ Amazonka.IoTData.GetRetainedMessage: getRetainedMessage_topic :: Lens' GetRetainedMessage Text
+ Amazonka.IoTData.GetRetainedMessage: instance Amazonka.Data.Headers.ToHeaders Amazonka.IoTData.GetRetainedMessage.GetRetainedMessage
+ Amazonka.IoTData.GetRetainedMessage: instance Amazonka.Data.Path.ToPath Amazonka.IoTData.GetRetainedMessage.GetRetainedMessage
+ Amazonka.IoTData.GetRetainedMessage: instance Amazonka.Data.Query.ToQuery Amazonka.IoTData.GetRetainedMessage.GetRetainedMessage
+ Amazonka.IoTData.GetRetainedMessage: instance Amazonka.Types.AWSRequest Amazonka.IoTData.GetRetainedMessage.GetRetainedMessage
+ Amazonka.IoTData.GetRetainedMessage: instance Control.DeepSeq.NFData Amazonka.IoTData.GetRetainedMessage.GetRetainedMessage
+ Amazonka.IoTData.GetRetainedMessage: instance Control.DeepSeq.NFData Amazonka.IoTData.GetRetainedMessage.GetRetainedMessageResponse
+ Amazonka.IoTData.GetRetainedMessage: instance Data.Hashable.Class.Hashable Amazonka.IoTData.GetRetainedMessage.GetRetainedMessage
+ Amazonka.IoTData.GetRetainedMessage: instance GHC.Classes.Eq Amazonka.IoTData.GetRetainedMessage.GetRetainedMessage
+ Amazonka.IoTData.GetRetainedMessage: instance GHC.Classes.Eq Amazonka.IoTData.GetRetainedMessage.GetRetainedMessageResponse
+ Amazonka.IoTData.GetRetainedMessage: instance GHC.Generics.Generic Amazonka.IoTData.GetRetainedMessage.GetRetainedMessage
+ Amazonka.IoTData.GetRetainedMessage: instance GHC.Generics.Generic Amazonka.IoTData.GetRetainedMessage.GetRetainedMessageResponse
+ Amazonka.IoTData.GetRetainedMessage: instance GHC.Read.Read Amazonka.IoTData.GetRetainedMessage.GetRetainedMessage
+ Amazonka.IoTData.GetRetainedMessage: instance GHC.Read.Read Amazonka.IoTData.GetRetainedMessage.GetRetainedMessageResponse
+ Amazonka.IoTData.GetRetainedMessage: instance GHC.Show.Show Amazonka.IoTData.GetRetainedMessage.GetRetainedMessage
+ Amazonka.IoTData.GetRetainedMessage: instance GHC.Show.Show Amazonka.IoTData.GetRetainedMessage.GetRetainedMessageResponse
+ Amazonka.IoTData.GetRetainedMessage: newGetRetainedMessage :: Text -> GetRetainedMessage
+ Amazonka.IoTData.GetRetainedMessage: newGetRetainedMessageResponse :: Int -> GetRetainedMessageResponse
+ Amazonka.IoTData.GetThingShadow: GetThingShadow' :: Maybe Text -> Text -> GetThingShadow
+ Amazonka.IoTData.GetThingShadow: GetThingShadowResponse' :: Maybe ByteString -> Int -> GetThingShadowResponse
+ Amazonka.IoTData.GetThingShadow: [$sel:httpStatus:GetThingShadowResponse'] :: GetThingShadowResponse -> Int
+ Amazonka.IoTData.GetThingShadow: [$sel:payload:GetThingShadowResponse'] :: GetThingShadowResponse -> Maybe ByteString
+ Amazonka.IoTData.GetThingShadow: [$sel:shadowName:GetThingShadow'] :: GetThingShadow -> Maybe Text
+ Amazonka.IoTData.GetThingShadow: [$sel:thingName:GetThingShadow'] :: GetThingShadow -> Text
+ Amazonka.IoTData.GetThingShadow: data GetThingShadow
+ Amazonka.IoTData.GetThingShadow: data GetThingShadowResponse
+ Amazonka.IoTData.GetThingShadow: getThingShadowResponse_httpStatus :: Lens' GetThingShadowResponse Int
+ Amazonka.IoTData.GetThingShadow: getThingShadowResponse_payload :: Lens' GetThingShadowResponse (Maybe ByteString)
+ Amazonka.IoTData.GetThingShadow: getThingShadow_shadowName :: Lens' GetThingShadow (Maybe Text)
+ Amazonka.IoTData.GetThingShadow: getThingShadow_thingName :: Lens' GetThingShadow Text
+ Amazonka.IoTData.GetThingShadow: instance Amazonka.Data.Headers.ToHeaders Amazonka.IoTData.GetThingShadow.GetThingShadow
+ Amazonka.IoTData.GetThingShadow: instance Amazonka.Data.Path.ToPath Amazonka.IoTData.GetThingShadow.GetThingShadow
+ Amazonka.IoTData.GetThingShadow: instance Amazonka.Data.Query.ToQuery Amazonka.IoTData.GetThingShadow.GetThingShadow
+ Amazonka.IoTData.GetThingShadow: instance Amazonka.Types.AWSRequest Amazonka.IoTData.GetThingShadow.GetThingShadow
+ Amazonka.IoTData.GetThingShadow: instance Control.DeepSeq.NFData Amazonka.IoTData.GetThingShadow.GetThingShadow
+ Amazonka.IoTData.GetThingShadow: instance Control.DeepSeq.NFData Amazonka.IoTData.GetThingShadow.GetThingShadowResponse
+ Amazonka.IoTData.GetThingShadow: instance Data.Hashable.Class.Hashable Amazonka.IoTData.GetThingShadow.GetThingShadow
+ Amazonka.IoTData.GetThingShadow: instance GHC.Classes.Eq Amazonka.IoTData.GetThingShadow.GetThingShadow
+ Amazonka.IoTData.GetThingShadow: instance GHC.Classes.Eq Amazonka.IoTData.GetThingShadow.GetThingShadowResponse
+ Amazonka.IoTData.GetThingShadow: instance GHC.Generics.Generic Amazonka.IoTData.GetThingShadow.GetThingShadow
+ Amazonka.IoTData.GetThingShadow: instance GHC.Generics.Generic Amazonka.IoTData.GetThingShadow.GetThingShadowResponse
+ Amazonka.IoTData.GetThingShadow: instance GHC.Read.Read Amazonka.IoTData.GetThingShadow.GetThingShadow
+ Amazonka.IoTData.GetThingShadow: instance GHC.Show.Show Amazonka.IoTData.GetThingShadow.GetThingShadow
+ Amazonka.IoTData.GetThingShadow: instance GHC.Show.Show Amazonka.IoTData.GetThingShadow.GetThingShadowResponse
+ Amazonka.IoTData.GetThingShadow: newGetThingShadow :: Text -> GetThingShadow
+ Amazonka.IoTData.GetThingShadow: newGetThingShadowResponse :: Int -> GetThingShadowResponse
+ Amazonka.IoTData.Lens: deleteThingShadowResponse_httpStatus :: Lens' DeleteThingShadowResponse Int
+ Amazonka.IoTData.Lens: deleteThingShadowResponse_payload :: Lens' DeleteThingShadowResponse ByteString
+ Amazonka.IoTData.Lens: deleteThingShadow_shadowName :: Lens' DeleteThingShadow (Maybe Text)
+ Amazonka.IoTData.Lens: deleteThingShadow_thingName :: Lens' DeleteThingShadow Text
+ Amazonka.IoTData.Lens: getRetainedMessageResponse_httpStatus :: Lens' GetRetainedMessageResponse Int
+ Amazonka.IoTData.Lens: getRetainedMessageResponse_lastModifiedTime :: Lens' GetRetainedMessageResponse (Maybe Integer)
+ Amazonka.IoTData.Lens: getRetainedMessageResponse_payload :: Lens' GetRetainedMessageResponse (Maybe ByteString)
+ Amazonka.IoTData.Lens: getRetainedMessageResponse_qos :: Lens' GetRetainedMessageResponse (Maybe Natural)
+ Amazonka.IoTData.Lens: getRetainedMessageResponse_topic :: Lens' GetRetainedMessageResponse (Maybe Text)
+ Amazonka.IoTData.Lens: getRetainedMessage_topic :: Lens' GetRetainedMessage Text
+ Amazonka.IoTData.Lens: getThingShadowResponse_httpStatus :: Lens' GetThingShadowResponse Int
+ Amazonka.IoTData.Lens: getThingShadowResponse_payload :: Lens' GetThingShadowResponse (Maybe ByteString)
+ Amazonka.IoTData.Lens: getThingShadow_shadowName :: Lens' GetThingShadow (Maybe Text)
+ Amazonka.IoTData.Lens: getThingShadow_thingName :: Lens' GetThingShadow Text
+ Amazonka.IoTData.Lens: listNamedShadowsForThingResponse_httpStatus :: Lens' ListNamedShadowsForThingResponse Int
+ Amazonka.IoTData.Lens: listNamedShadowsForThingResponse_nextToken :: Lens' ListNamedShadowsForThingResponse (Maybe Text)
+ Amazonka.IoTData.Lens: listNamedShadowsForThingResponse_results :: Lens' ListNamedShadowsForThingResponse (Maybe [Text])
+ Amazonka.IoTData.Lens: listNamedShadowsForThingResponse_timestamp :: Lens' ListNamedShadowsForThingResponse (Maybe Integer)
+ Amazonka.IoTData.Lens: listNamedShadowsForThing_nextToken :: Lens' ListNamedShadowsForThing (Maybe Text)
+ Amazonka.IoTData.Lens: listNamedShadowsForThing_pageSize :: Lens' ListNamedShadowsForThing (Maybe Natural)
+ Amazonka.IoTData.Lens: listNamedShadowsForThing_thingName :: Lens' ListNamedShadowsForThing Text
+ Amazonka.IoTData.Lens: listRetainedMessagesResponse_httpStatus :: Lens' ListRetainedMessagesResponse Int
+ Amazonka.IoTData.Lens: listRetainedMessagesResponse_nextToken :: Lens' ListRetainedMessagesResponse (Maybe Text)
+ Amazonka.IoTData.Lens: listRetainedMessagesResponse_retainedTopics :: Lens' ListRetainedMessagesResponse (Maybe [RetainedMessageSummary])
+ Amazonka.IoTData.Lens: listRetainedMessages_maxResults :: Lens' ListRetainedMessages (Maybe Natural)
+ Amazonka.IoTData.Lens: listRetainedMessages_nextToken :: Lens' ListRetainedMessages (Maybe Text)
+ Amazonka.IoTData.Lens: publish_contentType :: Lens' Publish (Maybe Text)
+ Amazonka.IoTData.Lens: publish_correlationData :: Lens' Publish (Maybe Text)
+ Amazonka.IoTData.Lens: publish_messageExpiry :: Lens' Publish (Maybe Integer)
+ Amazonka.IoTData.Lens: publish_payload :: Lens' Publish (Maybe ByteString)
+ Amazonka.IoTData.Lens: publish_payloadFormatIndicator :: Lens' Publish (Maybe PayloadFormatIndicator)
+ Amazonka.IoTData.Lens: publish_qos :: Lens' Publish (Maybe Natural)
+ Amazonka.IoTData.Lens: publish_responseTopic :: Lens' Publish (Maybe Text)
+ Amazonka.IoTData.Lens: publish_retain :: Lens' Publish (Maybe Bool)
+ Amazonka.IoTData.Lens: publish_topic :: Lens' Publish Text
+ Amazonka.IoTData.Lens: publish_userProperties :: Lens' Publish (Maybe Text)
+ Amazonka.IoTData.Lens: retainedMessageSummary_lastModifiedTime :: Lens' RetainedMessageSummary (Maybe Integer)
+ Amazonka.IoTData.Lens: retainedMessageSummary_payloadSize :: Lens' RetainedMessageSummary (Maybe Integer)
+ Amazonka.IoTData.Lens: retainedMessageSummary_qos :: Lens' RetainedMessageSummary (Maybe Natural)
+ Amazonka.IoTData.Lens: retainedMessageSummary_topic :: Lens' RetainedMessageSummary (Maybe Text)
+ Amazonka.IoTData.Lens: updateThingShadowResponse_httpStatus :: Lens' UpdateThingShadowResponse Int
+ Amazonka.IoTData.Lens: updateThingShadowResponse_payload :: Lens' UpdateThingShadowResponse (Maybe ByteString)
+ Amazonka.IoTData.Lens: updateThingShadow_payload :: Lens' UpdateThingShadow ByteString
+ Amazonka.IoTData.Lens: updateThingShadow_shadowName :: Lens' UpdateThingShadow (Maybe Text)
+ Amazonka.IoTData.Lens: updateThingShadow_thingName :: Lens' UpdateThingShadow Text
+ Amazonka.IoTData.ListNamedShadowsForThing: ListNamedShadowsForThing' :: Maybe Text -> Maybe Natural -> Text -> ListNamedShadowsForThing
+ Amazonka.IoTData.ListNamedShadowsForThing: ListNamedShadowsForThingResponse' :: Maybe Text -> Maybe [Text] -> Maybe Integer -> Int -> ListNamedShadowsForThingResponse
+ Amazonka.IoTData.ListNamedShadowsForThing: [$sel:httpStatus:ListNamedShadowsForThingResponse'] :: ListNamedShadowsForThingResponse -> Int
+ Amazonka.IoTData.ListNamedShadowsForThing: [$sel:nextToken:ListNamedShadowsForThing'] :: ListNamedShadowsForThing -> Maybe Text
+ Amazonka.IoTData.ListNamedShadowsForThing: [$sel:nextToken:ListNamedShadowsForThingResponse'] :: ListNamedShadowsForThingResponse -> Maybe Text
+ Amazonka.IoTData.ListNamedShadowsForThing: [$sel:pageSize:ListNamedShadowsForThing'] :: ListNamedShadowsForThing -> Maybe Natural
+ Amazonka.IoTData.ListNamedShadowsForThing: [$sel:results:ListNamedShadowsForThingResponse'] :: ListNamedShadowsForThingResponse -> Maybe [Text]
+ Amazonka.IoTData.ListNamedShadowsForThing: [$sel:thingName:ListNamedShadowsForThing'] :: ListNamedShadowsForThing -> Text
+ Amazonka.IoTData.ListNamedShadowsForThing: [$sel:timestamp:ListNamedShadowsForThingResponse'] :: ListNamedShadowsForThingResponse -> Maybe Integer
+ Amazonka.IoTData.ListNamedShadowsForThing: data ListNamedShadowsForThing
+ Amazonka.IoTData.ListNamedShadowsForThing: data ListNamedShadowsForThingResponse
+ Amazonka.IoTData.ListNamedShadowsForThing: instance Amazonka.Data.Headers.ToHeaders Amazonka.IoTData.ListNamedShadowsForThing.ListNamedShadowsForThing
+ Amazonka.IoTData.ListNamedShadowsForThing: instance Amazonka.Data.Path.ToPath Amazonka.IoTData.ListNamedShadowsForThing.ListNamedShadowsForThing
+ Amazonka.IoTData.ListNamedShadowsForThing: instance Amazonka.Data.Query.ToQuery Amazonka.IoTData.ListNamedShadowsForThing.ListNamedShadowsForThing
+ Amazonka.IoTData.ListNamedShadowsForThing: instance Amazonka.Types.AWSRequest Amazonka.IoTData.ListNamedShadowsForThing.ListNamedShadowsForThing
+ Amazonka.IoTData.ListNamedShadowsForThing: instance Control.DeepSeq.NFData Amazonka.IoTData.ListNamedShadowsForThing.ListNamedShadowsForThing
+ Amazonka.IoTData.ListNamedShadowsForThing: instance Control.DeepSeq.NFData Amazonka.IoTData.ListNamedShadowsForThing.ListNamedShadowsForThingResponse
+ Amazonka.IoTData.ListNamedShadowsForThing: instance Data.Hashable.Class.Hashable Amazonka.IoTData.ListNamedShadowsForThing.ListNamedShadowsForThing
+ Amazonka.IoTData.ListNamedShadowsForThing: instance GHC.Classes.Eq Amazonka.IoTData.ListNamedShadowsForThing.ListNamedShadowsForThing
+ Amazonka.IoTData.ListNamedShadowsForThing: instance GHC.Classes.Eq Amazonka.IoTData.ListNamedShadowsForThing.ListNamedShadowsForThingResponse
+ Amazonka.IoTData.ListNamedShadowsForThing: instance GHC.Generics.Generic Amazonka.IoTData.ListNamedShadowsForThing.ListNamedShadowsForThing
+ Amazonka.IoTData.ListNamedShadowsForThing: instance GHC.Generics.Generic Amazonka.IoTData.ListNamedShadowsForThing.ListNamedShadowsForThingResponse
+ Amazonka.IoTData.ListNamedShadowsForThing: instance GHC.Read.Read Amazonka.IoTData.ListNamedShadowsForThing.ListNamedShadowsForThing
+ Amazonka.IoTData.ListNamedShadowsForThing: instance GHC.Read.Read Amazonka.IoTData.ListNamedShadowsForThing.ListNamedShadowsForThingResponse
+ Amazonka.IoTData.ListNamedShadowsForThing: instance GHC.Show.Show Amazonka.IoTData.ListNamedShadowsForThing.ListNamedShadowsForThing
+ Amazonka.IoTData.ListNamedShadowsForThing: instance GHC.Show.Show Amazonka.IoTData.ListNamedShadowsForThing.ListNamedShadowsForThingResponse
+ Amazonka.IoTData.ListNamedShadowsForThing: listNamedShadowsForThingResponse_httpStatus :: Lens' ListNamedShadowsForThingResponse Int
+ Amazonka.IoTData.ListNamedShadowsForThing: listNamedShadowsForThingResponse_nextToken :: Lens' ListNamedShadowsForThingResponse (Maybe Text)
+ Amazonka.IoTData.ListNamedShadowsForThing: listNamedShadowsForThingResponse_results :: Lens' ListNamedShadowsForThingResponse (Maybe [Text])
+ Amazonka.IoTData.ListNamedShadowsForThing: listNamedShadowsForThingResponse_timestamp :: Lens' ListNamedShadowsForThingResponse (Maybe Integer)
+ Amazonka.IoTData.ListNamedShadowsForThing: listNamedShadowsForThing_nextToken :: Lens' ListNamedShadowsForThing (Maybe Text)
+ Amazonka.IoTData.ListNamedShadowsForThing: listNamedShadowsForThing_pageSize :: Lens' ListNamedShadowsForThing (Maybe Natural)
+ Amazonka.IoTData.ListNamedShadowsForThing: listNamedShadowsForThing_thingName :: Lens' ListNamedShadowsForThing Text
+ Amazonka.IoTData.ListNamedShadowsForThing: newListNamedShadowsForThing :: Text -> ListNamedShadowsForThing
+ Amazonka.IoTData.ListNamedShadowsForThing: newListNamedShadowsForThingResponse :: Int -> ListNamedShadowsForThingResponse
+ Amazonka.IoTData.ListRetainedMessages: ListRetainedMessages' :: Maybe Natural -> Maybe Text -> ListRetainedMessages
+ Amazonka.IoTData.ListRetainedMessages: ListRetainedMessagesResponse' :: Maybe Text -> Maybe [RetainedMessageSummary] -> Int -> ListRetainedMessagesResponse
+ Amazonka.IoTData.ListRetainedMessages: [$sel:httpStatus:ListRetainedMessagesResponse'] :: ListRetainedMessagesResponse -> Int
+ Amazonka.IoTData.ListRetainedMessages: [$sel:maxResults:ListRetainedMessages'] :: ListRetainedMessages -> Maybe Natural
+ Amazonka.IoTData.ListRetainedMessages: [$sel:nextToken:ListRetainedMessages'] :: ListRetainedMessages -> Maybe Text
+ Amazonka.IoTData.ListRetainedMessages: [$sel:nextToken:ListRetainedMessagesResponse'] :: ListRetainedMessagesResponse -> Maybe Text
+ Amazonka.IoTData.ListRetainedMessages: [$sel:retainedTopics:ListRetainedMessagesResponse'] :: ListRetainedMessagesResponse -> Maybe [RetainedMessageSummary]
+ Amazonka.IoTData.ListRetainedMessages: data ListRetainedMessages
+ Amazonka.IoTData.ListRetainedMessages: data ListRetainedMessagesResponse
+ Amazonka.IoTData.ListRetainedMessages: instance Amazonka.Data.Headers.ToHeaders Amazonka.IoTData.ListRetainedMessages.ListRetainedMessages
+ Amazonka.IoTData.ListRetainedMessages: instance Amazonka.Data.Path.ToPath Amazonka.IoTData.ListRetainedMessages.ListRetainedMessages
+ Amazonka.IoTData.ListRetainedMessages: instance Amazonka.Data.Query.ToQuery Amazonka.IoTData.ListRetainedMessages.ListRetainedMessages
+ Amazonka.IoTData.ListRetainedMessages: instance Amazonka.Pager.AWSPager Amazonka.IoTData.ListRetainedMessages.ListRetainedMessages
+ Amazonka.IoTData.ListRetainedMessages: instance Amazonka.Types.AWSRequest Amazonka.IoTData.ListRetainedMessages.ListRetainedMessages
+ Amazonka.IoTData.ListRetainedMessages: instance Control.DeepSeq.NFData Amazonka.IoTData.ListRetainedMessages.ListRetainedMessages
+ Amazonka.IoTData.ListRetainedMessages: instance Control.DeepSeq.NFData Amazonka.IoTData.ListRetainedMessages.ListRetainedMessagesResponse
+ Amazonka.IoTData.ListRetainedMessages: instance Data.Hashable.Class.Hashable Amazonka.IoTData.ListRetainedMessages.ListRetainedMessages
+ Amazonka.IoTData.ListRetainedMessages: instance GHC.Classes.Eq Amazonka.IoTData.ListRetainedMessages.ListRetainedMessages
+ Amazonka.IoTData.ListRetainedMessages: instance GHC.Classes.Eq Amazonka.IoTData.ListRetainedMessages.ListRetainedMessagesResponse
+ Amazonka.IoTData.ListRetainedMessages: instance GHC.Generics.Generic Amazonka.IoTData.ListRetainedMessages.ListRetainedMessages
+ Amazonka.IoTData.ListRetainedMessages: instance GHC.Generics.Generic Amazonka.IoTData.ListRetainedMessages.ListRetainedMessagesResponse
+ Amazonka.IoTData.ListRetainedMessages: instance GHC.Read.Read Amazonka.IoTData.ListRetainedMessages.ListRetainedMessages
+ Amazonka.IoTData.ListRetainedMessages: instance GHC.Read.Read Amazonka.IoTData.ListRetainedMessages.ListRetainedMessagesResponse
+ Amazonka.IoTData.ListRetainedMessages: instance GHC.Show.Show Amazonka.IoTData.ListRetainedMessages.ListRetainedMessages
+ Amazonka.IoTData.ListRetainedMessages: instance GHC.Show.Show Amazonka.IoTData.ListRetainedMessages.ListRetainedMessagesResponse
+ Amazonka.IoTData.ListRetainedMessages: listRetainedMessagesResponse_httpStatus :: Lens' ListRetainedMessagesResponse Int
+ Amazonka.IoTData.ListRetainedMessages: listRetainedMessagesResponse_nextToken :: Lens' ListRetainedMessagesResponse (Maybe Text)
+ Amazonka.IoTData.ListRetainedMessages: listRetainedMessagesResponse_retainedTopics :: Lens' ListRetainedMessagesResponse (Maybe [RetainedMessageSummary])
+ Amazonka.IoTData.ListRetainedMessages: listRetainedMessages_maxResults :: Lens' ListRetainedMessages (Maybe Natural)
+ Amazonka.IoTData.ListRetainedMessages: listRetainedMessages_nextToken :: Lens' ListRetainedMessages (Maybe Text)
+ Amazonka.IoTData.ListRetainedMessages: newListRetainedMessages :: ListRetainedMessages
+ Amazonka.IoTData.ListRetainedMessages: newListRetainedMessagesResponse :: Int -> ListRetainedMessagesResponse
+ Amazonka.IoTData.Publish: Publish' :: Maybe Text -> Maybe Text -> Maybe Integer -> Maybe ByteString -> Maybe PayloadFormatIndicator -> Maybe Natural -> Maybe Text -> Maybe Bool -> Maybe Text -> Text -> Publish
+ Amazonka.IoTData.Publish: PublishResponse' :: PublishResponse
+ Amazonka.IoTData.Publish: [$sel:contentType:Publish'] :: Publish -> Maybe Text
+ Amazonka.IoTData.Publish: [$sel:correlationData:Publish'] :: Publish -> Maybe Text
+ Amazonka.IoTData.Publish: [$sel:messageExpiry:Publish'] :: Publish -> Maybe Integer
+ Amazonka.IoTData.Publish: [$sel:payload:Publish'] :: Publish -> Maybe ByteString
+ Amazonka.IoTData.Publish: [$sel:payloadFormatIndicator:Publish'] :: Publish -> Maybe PayloadFormatIndicator
+ Amazonka.IoTData.Publish: [$sel:qos:Publish'] :: Publish -> Maybe Natural
+ Amazonka.IoTData.Publish: [$sel:responseTopic:Publish'] :: Publish -> Maybe Text
+ Amazonka.IoTData.Publish: [$sel:retain:Publish'] :: Publish -> Maybe Bool
+ Amazonka.IoTData.Publish: [$sel:topic:Publish'] :: Publish -> Text
+ Amazonka.IoTData.Publish: [$sel:userProperties:Publish'] :: Publish -> Maybe Text
+ Amazonka.IoTData.Publish: data Publish
+ Amazonka.IoTData.Publish: data PublishResponse
+ Amazonka.IoTData.Publish: instance Amazonka.Data.Body.ToBody Amazonka.IoTData.Publish.Publish
+ Amazonka.IoTData.Publish: instance Amazonka.Data.Headers.ToHeaders Amazonka.IoTData.Publish.Publish
+ Amazonka.IoTData.Publish: instance Amazonka.Data.Path.ToPath Amazonka.IoTData.Publish.Publish
+ Amazonka.IoTData.Publish: instance Amazonka.Data.Query.ToQuery Amazonka.IoTData.Publish.Publish
+ Amazonka.IoTData.Publish: instance Amazonka.Types.AWSRequest Amazonka.IoTData.Publish.Publish
+ Amazonka.IoTData.Publish: instance Control.DeepSeq.NFData Amazonka.IoTData.Publish.Publish
+ Amazonka.IoTData.Publish: instance Control.DeepSeq.NFData Amazonka.IoTData.Publish.PublishResponse
+ Amazonka.IoTData.Publish: instance Data.Hashable.Class.Hashable Amazonka.IoTData.Publish.Publish
+ Amazonka.IoTData.Publish: instance GHC.Classes.Eq Amazonka.IoTData.Publish.Publish
+ Amazonka.IoTData.Publish: instance GHC.Classes.Eq Amazonka.IoTData.Publish.PublishResponse
+ Amazonka.IoTData.Publish: instance GHC.Generics.Generic Amazonka.IoTData.Publish.Publish
+ Amazonka.IoTData.Publish: instance GHC.Generics.Generic Amazonka.IoTData.Publish.PublishResponse
+ Amazonka.IoTData.Publish: instance GHC.Read.Read Amazonka.IoTData.Publish.Publish
+ Amazonka.IoTData.Publish: instance GHC.Read.Read Amazonka.IoTData.Publish.PublishResponse
+ Amazonka.IoTData.Publish: instance GHC.Show.Show Amazonka.IoTData.Publish.Publish
+ Amazonka.IoTData.Publish: instance GHC.Show.Show Amazonka.IoTData.Publish.PublishResponse
+ Amazonka.IoTData.Publish: newPublish :: Text -> Publish
+ Amazonka.IoTData.Publish: newPublishResponse :: PublishResponse
+ Amazonka.IoTData.Publish: publish_contentType :: Lens' Publish (Maybe Text)
+ Amazonka.IoTData.Publish: publish_correlationData :: Lens' Publish (Maybe Text)
+ Amazonka.IoTData.Publish: publish_messageExpiry :: Lens' Publish (Maybe Integer)
+ Amazonka.IoTData.Publish: publish_payload :: Lens' Publish (Maybe ByteString)
+ Amazonka.IoTData.Publish: publish_payloadFormatIndicator :: Lens' Publish (Maybe PayloadFormatIndicator)
+ Amazonka.IoTData.Publish: publish_qos :: Lens' Publish (Maybe Natural)
+ Amazonka.IoTData.Publish: publish_responseTopic :: Lens' Publish (Maybe Text)
+ Amazonka.IoTData.Publish: publish_retain :: Lens' Publish (Maybe Bool)
+ Amazonka.IoTData.Publish: publish_topic :: Lens' Publish Text
+ Amazonka.IoTData.Publish: publish_userProperties :: Lens' Publish (Maybe Text)
+ Amazonka.IoTData.Types: PayloadFormatIndicator' :: Text -> PayloadFormatIndicator
+ Amazonka.IoTData.Types: RetainedMessageSummary' :: Maybe Integer -> Maybe Integer -> Maybe Natural -> Maybe Text -> RetainedMessageSummary
+ Amazonka.IoTData.Types: [$sel:lastModifiedTime:RetainedMessageSummary'] :: RetainedMessageSummary -> Maybe Integer
+ Amazonka.IoTData.Types: [$sel:payloadSize:RetainedMessageSummary'] :: RetainedMessageSummary -> Maybe Integer
+ Amazonka.IoTData.Types: [$sel:qos:RetainedMessageSummary'] :: RetainedMessageSummary -> Maybe Natural
+ Amazonka.IoTData.Types: [$sel:topic:RetainedMessageSummary'] :: RetainedMessageSummary -> Maybe Text
+ Amazonka.IoTData.Types: [fromPayloadFormatIndicator] :: PayloadFormatIndicator -> Text
+ Amazonka.IoTData.Types: _ConflictException :: AsError a => Fold a ServiceError
+ Amazonka.IoTData.Types: _InternalFailureException :: AsError a => Fold a ServiceError
+ Amazonka.IoTData.Types: _InvalidRequestException :: AsError a => Fold a ServiceError
+ Amazonka.IoTData.Types: _MethodNotAllowedException :: AsError a => Fold a ServiceError
+ Amazonka.IoTData.Types: _RequestEntityTooLargeException :: AsError a => Fold a ServiceError
+ Amazonka.IoTData.Types: _ResourceNotFoundException :: AsError a => Fold a ServiceError
+ Amazonka.IoTData.Types: _ServiceUnavailableException :: AsError a => Fold a ServiceError
+ Amazonka.IoTData.Types: _ThrottlingException :: AsError a => Fold a ServiceError
+ Amazonka.IoTData.Types: _UnauthorizedException :: AsError a => Fold a ServiceError
+ Amazonka.IoTData.Types: _UnsupportedDocumentEncodingException :: AsError a => Fold a ServiceError
+ Amazonka.IoTData.Types: data RetainedMessageSummary
+ Amazonka.IoTData.Types: defaultService :: Service
+ Amazonka.IoTData.Types: newRetainedMessageSummary :: RetainedMessageSummary
+ Amazonka.IoTData.Types: newtype PayloadFormatIndicator
+ Amazonka.IoTData.Types: pattern PayloadFormatIndicator_UNSPECIFIED_BYTES :: PayloadFormatIndicator
+ Amazonka.IoTData.Types: pattern PayloadFormatIndicator_UTF8_DATA :: PayloadFormatIndicator
+ Amazonka.IoTData.Types: retainedMessageSummary_lastModifiedTime :: Lens' RetainedMessageSummary (Maybe Integer)
+ Amazonka.IoTData.Types: retainedMessageSummary_payloadSize :: Lens' RetainedMessageSummary (Maybe Integer)
+ Amazonka.IoTData.Types: retainedMessageSummary_qos :: Lens' RetainedMessageSummary (Maybe Natural)
+ Amazonka.IoTData.Types: retainedMessageSummary_topic :: Lens' RetainedMessageSummary (Maybe Text)
+ Amazonka.IoTData.Types.PayloadFormatIndicator: PayloadFormatIndicator' :: Text -> PayloadFormatIndicator
+ Amazonka.IoTData.Types.PayloadFormatIndicator: [fromPayloadFormatIndicator] :: PayloadFormatIndicator -> Text
+ Amazonka.IoTData.Types.PayloadFormatIndicator: instance Amazonka.Data.ByteString.ToByteString Amazonka.IoTData.Types.PayloadFormatIndicator.PayloadFormatIndicator
+ Amazonka.IoTData.Types.PayloadFormatIndicator: instance Amazonka.Data.Headers.ToHeader Amazonka.IoTData.Types.PayloadFormatIndicator.PayloadFormatIndicator
+ Amazonka.IoTData.Types.PayloadFormatIndicator: instance Amazonka.Data.Log.ToLog Amazonka.IoTData.Types.PayloadFormatIndicator.PayloadFormatIndicator
+ Amazonka.IoTData.Types.PayloadFormatIndicator: instance Amazonka.Data.Query.ToQuery Amazonka.IoTData.Types.PayloadFormatIndicator.PayloadFormatIndicator
+ Amazonka.IoTData.Types.PayloadFormatIndicator: instance Amazonka.Data.Text.FromText Amazonka.IoTData.Types.PayloadFormatIndicator.PayloadFormatIndicator
+ Amazonka.IoTData.Types.PayloadFormatIndicator: instance Amazonka.Data.Text.ToText Amazonka.IoTData.Types.PayloadFormatIndicator.PayloadFormatIndicator
+ Amazonka.IoTData.Types.PayloadFormatIndicator: instance Amazonka.Data.XML.FromXML Amazonka.IoTData.Types.PayloadFormatIndicator.PayloadFormatIndicator
+ Amazonka.IoTData.Types.PayloadFormatIndicator: instance Amazonka.Data.XML.ToXML Amazonka.IoTData.Types.PayloadFormatIndicator.PayloadFormatIndicator
+ Amazonka.IoTData.Types.PayloadFormatIndicator: instance Control.DeepSeq.NFData Amazonka.IoTData.Types.PayloadFormatIndicator.PayloadFormatIndicator
+ Amazonka.IoTData.Types.PayloadFormatIndicator: instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.IoTData.Types.PayloadFormatIndicator.PayloadFormatIndicator
+ Amazonka.IoTData.Types.PayloadFormatIndicator: instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.IoTData.Types.PayloadFormatIndicator.PayloadFormatIndicator
+ Amazonka.IoTData.Types.PayloadFormatIndicator: instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.IoTData.Types.PayloadFormatIndicator.PayloadFormatIndicator
+ Amazonka.IoTData.Types.PayloadFormatIndicator: instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.IoTData.Types.PayloadFormatIndicator.PayloadFormatIndicator
+ Amazonka.IoTData.Types.PayloadFormatIndicator: instance Data.Hashable.Class.Hashable Amazonka.IoTData.Types.PayloadFormatIndicator.PayloadFormatIndicator
+ Amazonka.IoTData.Types.PayloadFormatIndicator: instance GHC.Classes.Eq Amazonka.IoTData.Types.PayloadFormatIndicator.PayloadFormatIndicator
+ Amazonka.IoTData.Types.PayloadFormatIndicator: instance GHC.Classes.Ord Amazonka.IoTData.Types.PayloadFormatIndicator.PayloadFormatIndicator
+ Amazonka.IoTData.Types.PayloadFormatIndicator: instance GHC.Generics.Generic Amazonka.IoTData.Types.PayloadFormatIndicator.PayloadFormatIndicator
+ Amazonka.IoTData.Types.PayloadFormatIndicator: instance GHC.Read.Read Amazonka.IoTData.Types.PayloadFormatIndicator.PayloadFormatIndicator
+ Amazonka.IoTData.Types.PayloadFormatIndicator: instance GHC.Show.Show Amazonka.IoTData.Types.PayloadFormatIndicator.PayloadFormatIndicator
+ Amazonka.IoTData.Types.PayloadFormatIndicator: newtype PayloadFormatIndicator
+ Amazonka.IoTData.Types.PayloadFormatIndicator: pattern PayloadFormatIndicator_UNSPECIFIED_BYTES :: PayloadFormatIndicator
+ Amazonka.IoTData.Types.PayloadFormatIndicator: pattern PayloadFormatIndicator_UTF8_DATA :: PayloadFormatIndicator
+ Amazonka.IoTData.Types.RetainedMessageSummary: RetainedMessageSummary' :: Maybe Integer -> Maybe Integer -> Maybe Natural -> Maybe Text -> RetainedMessageSummary
+ Amazonka.IoTData.Types.RetainedMessageSummary: [$sel:lastModifiedTime:RetainedMessageSummary'] :: RetainedMessageSummary -> Maybe Integer
+ Amazonka.IoTData.Types.RetainedMessageSummary: [$sel:payloadSize:RetainedMessageSummary'] :: RetainedMessageSummary -> Maybe Integer
+ Amazonka.IoTData.Types.RetainedMessageSummary: [$sel:qos:RetainedMessageSummary'] :: RetainedMessageSummary -> Maybe Natural
+ Amazonka.IoTData.Types.RetainedMessageSummary: [$sel:topic:RetainedMessageSummary'] :: RetainedMessageSummary -> Maybe Text
+ Amazonka.IoTData.Types.RetainedMessageSummary: data RetainedMessageSummary
+ Amazonka.IoTData.Types.RetainedMessageSummary: instance Control.DeepSeq.NFData Amazonka.IoTData.Types.RetainedMessageSummary.RetainedMessageSummary
+ Amazonka.IoTData.Types.RetainedMessageSummary: instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.IoTData.Types.RetainedMessageSummary.RetainedMessageSummary
+ Amazonka.IoTData.Types.RetainedMessageSummary: instance Data.Hashable.Class.Hashable Amazonka.IoTData.Types.RetainedMessageSummary.RetainedMessageSummary
+ Amazonka.IoTData.Types.RetainedMessageSummary: instance GHC.Classes.Eq Amazonka.IoTData.Types.RetainedMessageSummary.RetainedMessageSummary
+ Amazonka.IoTData.Types.RetainedMessageSummary: instance GHC.Generics.Generic Amazonka.IoTData.Types.RetainedMessageSummary.RetainedMessageSummary
+ Amazonka.IoTData.Types.RetainedMessageSummary: instance GHC.Read.Read Amazonka.IoTData.Types.RetainedMessageSummary.RetainedMessageSummary
+ Amazonka.IoTData.Types.RetainedMessageSummary: instance GHC.Show.Show Amazonka.IoTData.Types.RetainedMessageSummary.RetainedMessageSummary
+ Amazonka.IoTData.Types.RetainedMessageSummary: newRetainedMessageSummary :: RetainedMessageSummary
+ Amazonka.IoTData.Types.RetainedMessageSummary: retainedMessageSummary_lastModifiedTime :: Lens' RetainedMessageSummary (Maybe Integer)
+ Amazonka.IoTData.Types.RetainedMessageSummary: retainedMessageSummary_payloadSize :: Lens' RetainedMessageSummary (Maybe Integer)
+ Amazonka.IoTData.Types.RetainedMessageSummary: retainedMessageSummary_qos :: Lens' RetainedMessageSummary (Maybe Natural)
+ Amazonka.IoTData.Types.RetainedMessageSummary: retainedMessageSummary_topic :: Lens' RetainedMessageSummary (Maybe Text)
+ Amazonka.IoTData.UpdateThingShadow: UpdateThingShadow' :: Maybe Text -> Text -> ByteString -> UpdateThingShadow
+ Amazonka.IoTData.UpdateThingShadow: UpdateThingShadowResponse' :: Maybe ByteString -> Int -> UpdateThingShadowResponse
+ Amazonka.IoTData.UpdateThingShadow: [$sel:httpStatus:UpdateThingShadowResponse'] :: UpdateThingShadowResponse -> Int
+ Amazonka.IoTData.UpdateThingShadow: [$sel:payload:UpdateThingShadow'] :: UpdateThingShadow -> ByteString
+ Amazonka.IoTData.UpdateThingShadow: [$sel:payload:UpdateThingShadowResponse'] :: UpdateThingShadowResponse -> Maybe ByteString
+ Amazonka.IoTData.UpdateThingShadow: [$sel:shadowName:UpdateThingShadow'] :: UpdateThingShadow -> Maybe Text
+ Amazonka.IoTData.UpdateThingShadow: [$sel:thingName:UpdateThingShadow'] :: UpdateThingShadow -> Text
+ Amazonka.IoTData.UpdateThingShadow: data UpdateThingShadow
+ Amazonka.IoTData.UpdateThingShadow: data UpdateThingShadowResponse
+ Amazonka.IoTData.UpdateThingShadow: instance Amazonka.Data.Body.ToBody Amazonka.IoTData.UpdateThingShadow.UpdateThingShadow
+ Amazonka.IoTData.UpdateThingShadow: instance Amazonka.Data.Headers.ToHeaders Amazonka.IoTData.UpdateThingShadow.UpdateThingShadow
+ Amazonka.IoTData.UpdateThingShadow: instance Amazonka.Data.Path.ToPath Amazonka.IoTData.UpdateThingShadow.UpdateThingShadow
+ Amazonka.IoTData.UpdateThingShadow: instance Amazonka.Data.Query.ToQuery Amazonka.IoTData.UpdateThingShadow.UpdateThingShadow
+ Amazonka.IoTData.UpdateThingShadow: instance Amazonka.Types.AWSRequest Amazonka.IoTData.UpdateThingShadow.UpdateThingShadow
+ Amazonka.IoTData.UpdateThingShadow: instance Control.DeepSeq.NFData Amazonka.IoTData.UpdateThingShadow.UpdateThingShadow
+ Amazonka.IoTData.UpdateThingShadow: instance Control.DeepSeq.NFData Amazonka.IoTData.UpdateThingShadow.UpdateThingShadowResponse
+ Amazonka.IoTData.UpdateThingShadow: instance Data.Hashable.Class.Hashable Amazonka.IoTData.UpdateThingShadow.UpdateThingShadow
+ Amazonka.IoTData.UpdateThingShadow: instance GHC.Classes.Eq Amazonka.IoTData.UpdateThingShadow.UpdateThingShadow
+ Amazonka.IoTData.UpdateThingShadow: instance GHC.Classes.Eq Amazonka.IoTData.UpdateThingShadow.UpdateThingShadowResponse
+ Amazonka.IoTData.UpdateThingShadow: instance GHC.Generics.Generic Amazonka.IoTData.UpdateThingShadow.UpdateThingShadow
+ Amazonka.IoTData.UpdateThingShadow: instance GHC.Generics.Generic Amazonka.IoTData.UpdateThingShadow.UpdateThingShadowResponse
+ Amazonka.IoTData.UpdateThingShadow: instance GHC.Show.Show Amazonka.IoTData.UpdateThingShadow.UpdateThingShadow
+ Amazonka.IoTData.UpdateThingShadow: instance GHC.Show.Show Amazonka.IoTData.UpdateThingShadow.UpdateThingShadowResponse
+ Amazonka.IoTData.UpdateThingShadow: newUpdateThingShadow :: Text -> ByteString -> UpdateThingShadow
+ Amazonka.IoTData.UpdateThingShadow: newUpdateThingShadowResponse :: Int -> UpdateThingShadowResponse
+ Amazonka.IoTData.UpdateThingShadow: updateThingShadowResponse_httpStatus :: Lens' UpdateThingShadowResponse Int
+ Amazonka.IoTData.UpdateThingShadow: updateThingShadowResponse_payload :: Lens' UpdateThingShadowResponse (Maybe ByteString)
+ Amazonka.IoTData.UpdateThingShadow: updateThingShadow_payload :: Lens' UpdateThingShadow ByteString
+ Amazonka.IoTData.UpdateThingShadow: updateThingShadow_shadowName :: Lens' UpdateThingShadow (Maybe Text)
+ Amazonka.IoTData.UpdateThingShadow: updateThingShadow_thingName :: Lens' UpdateThingShadow Text

Files

README.md view
@@ -7,9 +7,8 @@   ## Version--`1.6.1`-+ +`2.0` - Derived from API version @2015-05-28@ of the AWS service descriptions, licensed under Apache 2.0.  ## Description @@ -26,7 +25,7 @@ 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 [Network.AWS.IoTData](http://hackage.haskell.org/package/amazonka-iot-dataplane/docs/Network-AWS-IoTData.html)+See [Amazonka.IoTData](http://hackage.haskell.org/package/amazonka-iot-dataplane/docs/Amazonka-IoTData.html) or [the AWS documentation](https://aws.amazon.com/documentation/) to get started.  
− Setup.hs
@@ -1,2 +0,0 @@-import           Distribution.Simple-main = defaultMain
amazonka-iot-dataplane.cabal view
@@ -1,89 +1,92 @@-name:                  amazonka-iot-dataplane-version:               1.6.1-synopsis:              Amazon IoT Data Plane 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>-copyright:             Copyright (c) 2013-2018 Brendan Hay-category:              Network, AWS, Cloud, Distributed Computing-build-type:            Simple-cabal-version:         >= 1.10-extra-source-files:    README.md fixture/*.yaml fixture/*.proto src/.gitkeep+cabal-version:      2.2+name:               amazonka-iot-dataplane+version:            2.0+synopsis:           Amazon IoT Data Plane 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:-    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.-    .-    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-    such as <http://hackage.haskell.org/package/lens lens> or-    <http://hackage.haskell.org/package/lens-family-core lens-family-core>.-    .-    See "Network.AWS.IoTData" or <https://aws.amazon.com/documentation/ the AWS documentation>-    to get started.+  Derived from API version @2015-05-28@ 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.IoTData.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.IoTData" 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-iot-dataplane+  type:     git+  location: git://github.com/brendanhay/amazonka.git+  subdir:   amazonka-iot-dataplane  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:-          Network.AWS.IoTData-        , Network.AWS.IoTData.DeleteThingShadow-        , Network.AWS.IoTData.GetThingShadow-        , Network.AWS.IoTData.Publish-        , Network.AWS.IoTData.Types-        , Network.AWS.IoTData.UpdateThingShadow-        , Network.AWS.IoTData.Waiters+  default-language: Haskell2010+  hs-source-dirs:   src gen+  ghc-options:+    -Wall -fwarn-incomplete-uni-patterns+    -fwarn-incomplete-record-updates -funbox-strict-fields -    other-modules:-          Network.AWS.IoTData.Types.Product-        , Network.AWS.IoTData.Types.Sum+  exposed-modules:+    Amazonka.IoTData+    Amazonka.IoTData.DeleteThingShadow+    Amazonka.IoTData.GetRetainedMessage+    Amazonka.IoTData.GetThingShadow+    Amazonka.IoTData.Lens+    Amazonka.IoTData.ListNamedShadowsForThing+    Amazonka.IoTData.ListRetainedMessages+    Amazonka.IoTData.Publish+    Amazonka.IoTData.Types+    Amazonka.IoTData.Types.PayloadFormatIndicator+    Amazonka.IoTData.Types.RetainedMessageSummary+    Amazonka.IoTData.UpdateThingShadow+    Amazonka.IoTData.Waiters -    build-depends:-          amazonka-core == 1.6.1.*-        , base          >= 4.7     && < 5+  build-depends:+    , amazonka-core  >=2.0  && <2.1+    , base           >=4.12 && <5  test-suite amazonka-iot-dataplane-test-    type:              exitcode-stdio-1.0-    default-language:  Haskell2010-    hs-source-dirs:    test-    main-is:           Main.hs--    ghc-options:       -Wall -threaded+  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.AWS.IoTData-        , Test.AWS.Gen.IoTData-        , Test.AWS.IoTData.Internal+  -- 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.IoTData+    Test.Amazonka.IoTData+    Test.Amazonka.IoTData.Internal -    build-depends:-          amazonka-core == 1.6.1.*-        , amazonka-test == 1.6.1.*-        , amazonka-iot-dataplane-        , base-        , bytestring-        , tasty-        , tasty-hunit-        , text-        , time-        , unordered-containers+  build-depends:+    , amazonka-core           >=2.0 && <2.1+    , amazonka-iot-dataplane+    , amazonka-test           >=2.0 && <2.1+    , base+    , bytestring+    , case-insensitive+    , tasty+    , tasty-hunit+    , text+    , time+    , unordered-containers
fixture/DeleteThingShadow.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/data-ats.iot/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  data-ats.iot.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/GetRetainedMessage.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/data-ats.iot/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  data-ats.iot.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/GetRetainedMessageResponse.proto view
fixture/GetThingShadow.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/data-ats.iot/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  data-ats.iot.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/ListNamedShadowsForThing.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/data-ats.iot/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  data-ats.iot.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/ListNamedShadowsForThingResponse.proto view
+ fixture/ListRetainedMessages.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/data-ats.iot/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  data-ats.iot.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/ListRetainedMessagesResponse.proto view
fixture/Publish.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/data-ats.iot/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  data-ats.iot.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/UpdateThingShadow.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/data-ats.iot/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  data-ats.iot.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:+  ''
+ gen/Amazonka/IoTData.hs view
@@ -0,0 +1,164 @@+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module      : Amazonka.IoTData+-- 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 @2015-05-28@ of the AWS service descriptions, licensed under Apache 2.0.+--+-- IoT data+--+-- IoT data enables secure, bi-directional communication between+-- Internet-connected things (such as sensors, actuators, embedded devices,+-- or smart appliances) and the Amazon Web Services cloud. It implements a+-- broker for applications and things to publish messages over HTTP+-- (Publish) and retrieve, update, and delete shadows. A shadow is a+-- persistent representation of your things and their state in the Amazon+-- Web Services cloud.+--+-- Find the endpoint address for actions in IoT data by running this CLI+-- command:+--+-- @aws iot describe-endpoint --endpoint-type iot:Data-ATS@+--+-- The service name used by+-- <https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html Amazon Web ServicesSignature Version 4>+-- to sign requests is: /iotdevicegateway/.+module Amazonka.IoTData+  ( -- * Service Configuration+    defaultService,++    -- * Errors+    -- $errors++    -- ** ConflictException+    _ConflictException,++    -- ** InternalFailureException+    _InternalFailureException,++    -- ** InvalidRequestException+    _InvalidRequestException,++    -- ** MethodNotAllowedException+    _MethodNotAllowedException,++    -- ** RequestEntityTooLargeException+    _RequestEntityTooLargeException,++    -- ** ResourceNotFoundException+    _ResourceNotFoundException,++    -- ** ServiceUnavailableException+    _ServiceUnavailableException,++    -- ** ThrottlingException+    _ThrottlingException,++    -- ** UnauthorizedException+    _UnauthorizedException,++    -- ** UnsupportedDocumentEncodingException+    _UnsupportedDocumentEncodingException,++    -- * Waiters+    -- $waiters++    -- * Operations+    -- $operations++    -- ** DeleteThingShadow+    DeleteThingShadow (DeleteThingShadow'),+    newDeleteThingShadow,+    DeleteThingShadowResponse (DeleteThingShadowResponse'),+    newDeleteThingShadowResponse,++    -- ** GetRetainedMessage+    GetRetainedMessage (GetRetainedMessage'),+    newGetRetainedMessage,+    GetRetainedMessageResponse (GetRetainedMessageResponse'),+    newGetRetainedMessageResponse,++    -- ** GetThingShadow+    GetThingShadow (GetThingShadow'),+    newGetThingShadow,+    GetThingShadowResponse (GetThingShadowResponse'),+    newGetThingShadowResponse,++    -- ** ListNamedShadowsForThing+    ListNamedShadowsForThing (ListNamedShadowsForThing'),+    newListNamedShadowsForThing,+    ListNamedShadowsForThingResponse (ListNamedShadowsForThingResponse'),+    newListNamedShadowsForThingResponse,++    -- ** ListRetainedMessages (Paginated)+    ListRetainedMessages (ListRetainedMessages'),+    newListRetainedMessages,+    ListRetainedMessagesResponse (ListRetainedMessagesResponse'),+    newListRetainedMessagesResponse,++    -- ** Publish+    Publish (Publish'),+    newPublish,+    PublishResponse (PublishResponse'),+    newPublishResponse,++    -- ** UpdateThingShadow+    UpdateThingShadow (UpdateThingShadow'),+    newUpdateThingShadow,+    UpdateThingShadowResponse (UpdateThingShadowResponse'),+    newUpdateThingShadowResponse,++    -- * Types++    -- ** PayloadFormatIndicator+    PayloadFormatIndicator (..),++    -- ** RetainedMessageSummary+    RetainedMessageSummary (RetainedMessageSummary'),+    newRetainedMessageSummary,+  )+where++import Amazonka.IoTData.DeleteThingShadow+import Amazonka.IoTData.GetRetainedMessage+import Amazonka.IoTData.GetThingShadow+import Amazonka.IoTData.Lens+import Amazonka.IoTData.ListNamedShadowsForThing+import Amazonka.IoTData.ListRetainedMessages+import Amazonka.IoTData.Publish+import Amazonka.IoTData.Types+import Amazonka.IoTData.UpdateThingShadow+import Amazonka.IoTData.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 'IoTData'.++-- $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/IoTData/DeleteThingShadow.hs view
@@ -0,0 +1,182 @@+{-# 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.IoTData.DeleteThingShadow+-- 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 the shadow for the specified thing.+--+-- Requires permission to access the+-- <https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions DeleteThingShadow>+-- action.+--+-- For more information, see+-- <http://docs.aws.amazon.com/iot/latest/developerguide/API_DeleteThingShadow.html DeleteThingShadow>+-- in the IoT Developer Guide.+module Amazonka.IoTData.DeleteThingShadow+  ( -- * Creating a Request+    DeleteThingShadow (..),+    newDeleteThingShadow,++    -- * Request Lenses+    deleteThingShadow_shadowName,+    deleteThingShadow_thingName,++    -- * Destructuring the Response+    DeleteThingShadowResponse (..),+    newDeleteThingShadowResponse,++    -- * Response Lenses+    deleteThingShadowResponse_httpStatus,+    deleteThingShadowResponse_payload,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTData.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | The input for the DeleteThingShadow operation.+--+-- /See:/ 'newDeleteThingShadow' smart constructor.+data DeleteThingShadow = DeleteThingShadow'+  { -- | The name of the shadow.+    shadowName :: Prelude.Maybe Prelude.Text,+    -- | The name of the thing.+    thingName :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteThingShadow' 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:+--+-- 'shadowName', 'deleteThingShadow_shadowName' - The name of the shadow.+--+-- 'thingName', 'deleteThingShadow_thingName' - The name of the thing.+newDeleteThingShadow ::+  -- | 'thingName'+  Prelude.Text ->+  DeleteThingShadow+newDeleteThingShadow pThingName_ =+  DeleteThingShadow'+    { shadowName = Prelude.Nothing,+      thingName = pThingName_+    }++-- | The name of the shadow.+deleteThingShadow_shadowName :: Lens.Lens' DeleteThingShadow (Prelude.Maybe Prelude.Text)+deleteThingShadow_shadowName = Lens.lens (\DeleteThingShadow' {shadowName} -> shadowName) (\s@DeleteThingShadow' {} a -> s {shadowName = a} :: DeleteThingShadow)++-- | The name of the thing.+deleteThingShadow_thingName :: Lens.Lens' DeleteThingShadow Prelude.Text+deleteThingShadow_thingName = Lens.lens (\DeleteThingShadow' {thingName} -> thingName) (\s@DeleteThingShadow' {} a -> s {thingName = a} :: DeleteThingShadow)++instance Core.AWSRequest DeleteThingShadow where+  type+    AWSResponse DeleteThingShadow =+      DeleteThingShadowResponse+  request overrides =+    Request.delete (overrides defaultService)+  response =+    Response.receiveBytes+      ( \s h x ->+          DeleteThingShadowResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (Prelude.pure x)+      )++instance Prelude.Hashable DeleteThingShadow where+  hashWithSalt _salt DeleteThingShadow' {..} =+    _salt+      `Prelude.hashWithSalt` shadowName+      `Prelude.hashWithSalt` thingName++instance Prelude.NFData DeleteThingShadow where+  rnf DeleteThingShadow' {..} =+    Prelude.rnf shadowName+      `Prelude.seq` Prelude.rnf thingName++instance Data.ToHeaders DeleteThingShadow where+  toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteThingShadow where+  toPath DeleteThingShadow' {..} =+    Prelude.mconcat+      ["/things/", Data.toBS thingName, "/shadow"]++instance Data.ToQuery DeleteThingShadow where+  toQuery DeleteThingShadow' {..} =+    Prelude.mconcat ["name" Data.=: shadowName]++-- | The output from the DeleteThingShadow operation.+--+-- /See:/ 'newDeleteThingShadowResponse' smart constructor.+data DeleteThingShadowResponse = DeleteThingShadowResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | The state information, in JSON format.+    payload :: Prelude.ByteString+  }+  deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteThingShadowResponse' 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', 'deleteThingShadowResponse_httpStatus' - The response's http status code.+--+-- 'payload', 'deleteThingShadowResponse_payload' - The state information, in JSON format.+newDeleteThingShadowResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'payload'+  Prelude.ByteString ->+  DeleteThingShadowResponse+newDeleteThingShadowResponse pHttpStatus_ pPayload_ =+  DeleteThingShadowResponse'+    { httpStatus =+        pHttpStatus_,+      payload = pPayload_+    }++-- | The response's http status code.+deleteThingShadowResponse_httpStatus :: Lens.Lens' DeleteThingShadowResponse Prelude.Int+deleteThingShadowResponse_httpStatus = Lens.lens (\DeleteThingShadowResponse' {httpStatus} -> httpStatus) (\s@DeleteThingShadowResponse' {} a -> s {httpStatus = a} :: DeleteThingShadowResponse)++-- | The state information, in JSON format.+deleteThingShadowResponse_payload :: Lens.Lens' DeleteThingShadowResponse Prelude.ByteString+deleteThingShadowResponse_payload = Lens.lens (\DeleteThingShadowResponse' {payload} -> payload) (\s@DeleteThingShadowResponse' {} a -> s {payload = a} :: DeleteThingShadowResponse)++instance Prelude.NFData DeleteThingShadowResponse where+  rnf DeleteThingShadowResponse' {..} =+    Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf payload
+ gen/Amazonka/IoTData/GetRetainedMessage.hs view
@@ -0,0 +1,214 @@+{-# 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.IoTData.GetRetainedMessage+-- 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 details of a single retained message for the specified topic.+--+-- This action returns the message payload of the retained message, which+-- can incur messaging costs. To list only the topic names of the retained+-- messages, call+-- </iot/latest/developerguide/API_iotdata_ListRetainedMessages.html ListRetainedMessages>.+--+-- Requires permission to access the+-- <https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiotfleethubfordevicemanagement.html#awsiotfleethubfordevicemanagement-actions-as-permissions GetRetainedMessage>+-- action.+--+-- For more information about messaging costs, see+-- <http://aws.amazon.com/iot-core/pricing/#Messaging Amazon Web Services IoT Core pricing - Messaging>.+module Amazonka.IoTData.GetRetainedMessage+  ( -- * Creating a Request+    GetRetainedMessage (..),+    newGetRetainedMessage,++    -- * Request Lenses+    getRetainedMessage_topic,++    -- * Destructuring the Response+    GetRetainedMessageResponse (..),+    newGetRetainedMessageResponse,++    -- * Response Lenses+    getRetainedMessageResponse_lastModifiedTime,+    getRetainedMessageResponse_payload,+    getRetainedMessageResponse_qos,+    getRetainedMessageResponse_topic,+    getRetainedMessageResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTData.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | The input for the GetRetainedMessage operation.+--+-- /See:/ 'newGetRetainedMessage' smart constructor.+data GetRetainedMessage = GetRetainedMessage'+  { -- | The topic name of the retained message to retrieve.+    topic :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetRetainedMessage' 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:+--+-- 'topic', 'getRetainedMessage_topic' - The topic name of the retained message to retrieve.+newGetRetainedMessage ::+  -- | 'topic'+  Prelude.Text ->+  GetRetainedMessage+newGetRetainedMessage pTopic_ =+  GetRetainedMessage' {topic = pTopic_}++-- | The topic name of the retained message to retrieve.+getRetainedMessage_topic :: Lens.Lens' GetRetainedMessage Prelude.Text+getRetainedMessage_topic = Lens.lens (\GetRetainedMessage' {topic} -> topic) (\s@GetRetainedMessage' {} a -> s {topic = a} :: GetRetainedMessage)++instance Core.AWSRequest GetRetainedMessage where+  type+    AWSResponse GetRetainedMessage =+      GetRetainedMessageResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          GetRetainedMessageResponse'+            Prelude.<$> (x Data..?> "lastModifiedTime")+            Prelude.<*> (x Data..?> "payload")+            Prelude.<*> (x Data..?> "qos")+            Prelude.<*> (x Data..?> "topic")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable GetRetainedMessage where+  hashWithSalt _salt GetRetainedMessage' {..} =+    _salt `Prelude.hashWithSalt` topic++instance Prelude.NFData GetRetainedMessage where+  rnf GetRetainedMessage' {..} = Prelude.rnf topic++instance Data.ToHeaders GetRetainedMessage where+  toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetRetainedMessage where+  toPath GetRetainedMessage' {..} =+    Prelude.mconcat+      ["/retainedMessage/", Data.toBS topic]++instance Data.ToQuery GetRetainedMessage where+  toQuery = Prelude.const Prelude.mempty++-- | The output from the GetRetainedMessage operation.+--+-- /See:/ 'newGetRetainedMessageResponse' smart constructor.+data GetRetainedMessageResponse = GetRetainedMessageResponse'+  { -- | The Epoch date and time, in milliseconds, when the retained message was+    -- stored by IoT.+    lastModifiedTime :: Prelude.Maybe Prelude.Integer,+    -- | The Base64-encoded message payload of the retained message body.+    payload :: Prelude.Maybe Data.Base64,+    -- | The quality of service (QoS) level used to publish the retained message.+    qos :: Prelude.Maybe Prelude.Natural,+    -- | The topic name to which the retained message was published.+    topic :: 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 'GetRetainedMessageResponse' 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:+--+-- 'lastModifiedTime', 'getRetainedMessageResponse_lastModifiedTime' - The Epoch date and time, in milliseconds, when the retained message was+-- stored by IoT.+--+-- 'payload', 'getRetainedMessageResponse_payload' - The Base64-encoded message payload of the retained message body.--+-- -- /Note:/ This 'Lens' automatically encodes and decodes Base64 data.+-- -- The underlying isomorphism will encode to Base64 representation during+-- -- serialisation, and decode from Base64 representation during deserialisation.+-- -- This 'Lens' accepts and returns only raw unencoded data.+--+-- 'qos', 'getRetainedMessageResponse_qos' - The quality of service (QoS) level used to publish the retained message.+--+-- 'topic', 'getRetainedMessageResponse_topic' - The topic name to which the retained message was published.+--+-- 'httpStatus', 'getRetainedMessageResponse_httpStatus' - The response's http status code.+newGetRetainedMessageResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  GetRetainedMessageResponse+newGetRetainedMessageResponse pHttpStatus_ =+  GetRetainedMessageResponse'+    { lastModifiedTime =+        Prelude.Nothing,+      payload = Prelude.Nothing,+      qos = Prelude.Nothing,+      topic = Prelude.Nothing,+      httpStatus = pHttpStatus_+    }++-- | The Epoch date and time, in milliseconds, when the retained message was+-- stored by IoT.+getRetainedMessageResponse_lastModifiedTime :: Lens.Lens' GetRetainedMessageResponse (Prelude.Maybe Prelude.Integer)+getRetainedMessageResponse_lastModifiedTime = Lens.lens (\GetRetainedMessageResponse' {lastModifiedTime} -> lastModifiedTime) (\s@GetRetainedMessageResponse' {} a -> s {lastModifiedTime = a} :: GetRetainedMessageResponse)++-- | The Base64-encoded message payload of the retained message body.--+-- -- /Note:/ This 'Lens' automatically encodes and decodes Base64 data.+-- -- The underlying isomorphism will encode to Base64 representation during+-- -- serialisation, and decode from Base64 representation during deserialisation.+-- -- This 'Lens' accepts and returns only raw unencoded data.+getRetainedMessageResponse_payload :: Lens.Lens' GetRetainedMessageResponse (Prelude.Maybe Prelude.ByteString)+getRetainedMessageResponse_payload = Lens.lens (\GetRetainedMessageResponse' {payload} -> payload) (\s@GetRetainedMessageResponse' {} a -> s {payload = a} :: GetRetainedMessageResponse) Prelude.. Lens.mapping Data._Base64++-- | The quality of service (QoS) level used to publish the retained message.+getRetainedMessageResponse_qos :: Lens.Lens' GetRetainedMessageResponse (Prelude.Maybe Prelude.Natural)+getRetainedMessageResponse_qos = Lens.lens (\GetRetainedMessageResponse' {qos} -> qos) (\s@GetRetainedMessageResponse' {} a -> s {qos = a} :: GetRetainedMessageResponse)++-- | The topic name to which the retained message was published.+getRetainedMessageResponse_topic :: Lens.Lens' GetRetainedMessageResponse (Prelude.Maybe Prelude.Text)+getRetainedMessageResponse_topic = Lens.lens (\GetRetainedMessageResponse' {topic} -> topic) (\s@GetRetainedMessageResponse' {} a -> s {topic = a} :: GetRetainedMessageResponse)++-- | The response's http status code.+getRetainedMessageResponse_httpStatus :: Lens.Lens' GetRetainedMessageResponse Prelude.Int+getRetainedMessageResponse_httpStatus = Lens.lens (\GetRetainedMessageResponse' {httpStatus} -> httpStatus) (\s@GetRetainedMessageResponse' {} a -> s {httpStatus = a} :: GetRetainedMessageResponse)++instance Prelude.NFData GetRetainedMessageResponse where+  rnf GetRetainedMessageResponse' {..} =+    Prelude.rnf lastModifiedTime+      `Prelude.seq` Prelude.rnf payload+      `Prelude.seq` Prelude.rnf qos+      `Prelude.seq` Prelude.rnf topic+      `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IoTData/GetThingShadow.hs view
@@ -0,0 +1,179 @@+{-# 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.IoTData.GetThingShadow+-- 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 shadow for the specified thing.+--+-- Requires permission to access the+-- <https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions GetThingShadow>+-- action.+--+-- For more information, see+-- <http://docs.aws.amazon.com/iot/latest/developerguide/API_GetThingShadow.html GetThingShadow>+-- in the IoT Developer Guide.+module Amazonka.IoTData.GetThingShadow+  ( -- * Creating a Request+    GetThingShadow (..),+    newGetThingShadow,++    -- * Request Lenses+    getThingShadow_shadowName,+    getThingShadow_thingName,++    -- * Destructuring the Response+    GetThingShadowResponse (..),+    newGetThingShadowResponse,++    -- * Response Lenses+    getThingShadowResponse_payload,+    getThingShadowResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTData.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | The input for the GetThingShadow operation.+--+-- /See:/ 'newGetThingShadow' smart constructor.+data GetThingShadow = GetThingShadow'+  { -- | The name of the shadow.+    shadowName :: Prelude.Maybe Prelude.Text,+    -- | The name of the thing.+    thingName :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetThingShadow' 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:+--+-- 'shadowName', 'getThingShadow_shadowName' - The name of the shadow.+--+-- 'thingName', 'getThingShadow_thingName' - The name of the thing.+newGetThingShadow ::+  -- | 'thingName'+  Prelude.Text ->+  GetThingShadow+newGetThingShadow pThingName_ =+  GetThingShadow'+    { shadowName = Prelude.Nothing,+      thingName = pThingName_+    }++-- | The name of the shadow.+getThingShadow_shadowName :: Lens.Lens' GetThingShadow (Prelude.Maybe Prelude.Text)+getThingShadow_shadowName = Lens.lens (\GetThingShadow' {shadowName} -> shadowName) (\s@GetThingShadow' {} a -> s {shadowName = a} :: GetThingShadow)++-- | The name of the thing.+getThingShadow_thingName :: Lens.Lens' GetThingShadow Prelude.Text+getThingShadow_thingName = Lens.lens (\GetThingShadow' {thingName} -> thingName) (\s@GetThingShadow' {} a -> s {thingName = a} :: GetThingShadow)++instance Core.AWSRequest GetThingShadow where+  type+    AWSResponse GetThingShadow =+      GetThingShadowResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveBytes+      ( \s h x ->+          GetThingShadowResponse'+            Prelude.<$> (Prelude.pure (Prelude.Just (Prelude.coerce x)))+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable GetThingShadow where+  hashWithSalt _salt GetThingShadow' {..} =+    _salt+      `Prelude.hashWithSalt` shadowName+      `Prelude.hashWithSalt` thingName++instance Prelude.NFData GetThingShadow where+  rnf GetThingShadow' {..} =+    Prelude.rnf shadowName+      `Prelude.seq` Prelude.rnf thingName++instance Data.ToHeaders GetThingShadow where+  toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetThingShadow where+  toPath GetThingShadow' {..} =+    Prelude.mconcat+      ["/things/", Data.toBS thingName, "/shadow"]++instance Data.ToQuery GetThingShadow where+  toQuery GetThingShadow' {..} =+    Prelude.mconcat ["name" Data.=: shadowName]++-- | The output from the GetThingShadow operation.+--+-- /See:/ 'newGetThingShadowResponse' smart constructor.+data GetThingShadowResponse = GetThingShadowResponse'+  { -- | The state information, in JSON format.+    payload :: Prelude.Maybe Prelude.ByteString,+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetThingShadowResponse' 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:+--+-- 'payload', 'getThingShadowResponse_payload' - The state information, in JSON format.+--+-- 'httpStatus', 'getThingShadowResponse_httpStatus' - The response's http status code.+newGetThingShadowResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  GetThingShadowResponse+newGetThingShadowResponse pHttpStatus_ =+  GetThingShadowResponse'+    { payload = Prelude.Nothing,+      httpStatus = pHttpStatus_+    }++-- | The state information, in JSON format.+getThingShadowResponse_payload :: Lens.Lens' GetThingShadowResponse (Prelude.Maybe Prelude.ByteString)+getThingShadowResponse_payload = Lens.lens (\GetThingShadowResponse' {payload} -> payload) (\s@GetThingShadowResponse' {} a -> s {payload = a} :: GetThingShadowResponse)++-- | The response's http status code.+getThingShadowResponse_httpStatus :: Lens.Lens' GetThingShadowResponse Prelude.Int+getThingShadowResponse_httpStatus = Lens.lens (\GetThingShadowResponse' {httpStatus} -> httpStatus) (\s@GetThingShadowResponse' {} a -> s {httpStatus = a} :: GetThingShadowResponse)++instance Prelude.NFData GetThingShadowResponse where+  rnf GetThingShadowResponse' {..} =+    Prelude.rnf payload+      `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IoTData/Lens.hs view
@@ -0,0 +1,89 @@+{-# 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.IoTData.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.IoTData.Lens+  ( -- * Operations++    -- ** DeleteThingShadow+    deleteThingShadow_shadowName,+    deleteThingShadow_thingName,+    deleteThingShadowResponse_httpStatus,+    deleteThingShadowResponse_payload,++    -- ** GetRetainedMessage+    getRetainedMessage_topic,+    getRetainedMessageResponse_lastModifiedTime,+    getRetainedMessageResponse_payload,+    getRetainedMessageResponse_qos,+    getRetainedMessageResponse_topic,+    getRetainedMessageResponse_httpStatus,++    -- ** GetThingShadow+    getThingShadow_shadowName,+    getThingShadow_thingName,+    getThingShadowResponse_payload,+    getThingShadowResponse_httpStatus,++    -- ** ListNamedShadowsForThing+    listNamedShadowsForThing_nextToken,+    listNamedShadowsForThing_pageSize,+    listNamedShadowsForThing_thingName,+    listNamedShadowsForThingResponse_nextToken,+    listNamedShadowsForThingResponse_results,+    listNamedShadowsForThingResponse_timestamp,+    listNamedShadowsForThingResponse_httpStatus,++    -- ** ListRetainedMessages+    listRetainedMessages_maxResults,+    listRetainedMessages_nextToken,+    listRetainedMessagesResponse_nextToken,+    listRetainedMessagesResponse_retainedTopics,+    listRetainedMessagesResponse_httpStatus,++    -- ** Publish+    publish_contentType,+    publish_correlationData,+    publish_messageExpiry,+    publish_payload,+    publish_payloadFormatIndicator,+    publish_qos,+    publish_responseTopic,+    publish_retain,+    publish_userProperties,+    publish_topic,++    -- ** UpdateThingShadow+    updateThingShadow_shadowName,+    updateThingShadow_thingName,+    updateThingShadow_payload,+    updateThingShadowResponse_payload,+    updateThingShadowResponse_httpStatus,++    -- * Types++    -- ** RetainedMessageSummary+    retainedMessageSummary_lastModifiedTime,+    retainedMessageSummary_payloadSize,+    retainedMessageSummary_qos,+    retainedMessageSummary_topic,+  )+where++import Amazonka.IoTData.DeleteThingShadow+import Amazonka.IoTData.GetRetainedMessage+import Amazonka.IoTData.GetThingShadow+import Amazonka.IoTData.ListNamedShadowsForThing+import Amazonka.IoTData.ListRetainedMessages+import Amazonka.IoTData.Publish+import Amazonka.IoTData.Types.RetainedMessageSummary+import Amazonka.IoTData.UpdateThingShadow
+ gen/Amazonka/IoTData/ListNamedShadowsForThing.hs view
@@ -0,0 +1,220 @@+{-# 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.IoTData.ListNamedShadowsForThing+-- 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 shadows for the specified thing.+--+-- Requires permission to access the+-- <https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions ListNamedShadowsForThing>+-- action.+module Amazonka.IoTData.ListNamedShadowsForThing+  ( -- * Creating a Request+    ListNamedShadowsForThing (..),+    newListNamedShadowsForThing,++    -- * Request Lenses+    listNamedShadowsForThing_nextToken,+    listNamedShadowsForThing_pageSize,+    listNamedShadowsForThing_thingName,++    -- * Destructuring the Response+    ListNamedShadowsForThingResponse (..),+    newListNamedShadowsForThingResponse,++    -- * Response Lenses+    listNamedShadowsForThingResponse_nextToken,+    listNamedShadowsForThingResponse_results,+    listNamedShadowsForThingResponse_timestamp,+    listNamedShadowsForThingResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTData.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListNamedShadowsForThing' smart constructor.+data ListNamedShadowsForThing = ListNamedShadowsForThing'+  { -- | The token to retrieve the next set of results.+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | The result page size.+    pageSize :: Prelude.Maybe Prelude.Natural,+    -- | The name of the thing.+    thingName :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListNamedShadowsForThing' 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', 'listNamedShadowsForThing_nextToken' - The token to retrieve the next set of results.+--+-- 'pageSize', 'listNamedShadowsForThing_pageSize' - The result page size.+--+-- 'thingName', 'listNamedShadowsForThing_thingName' - The name of the thing.+newListNamedShadowsForThing ::+  -- | 'thingName'+  Prelude.Text ->+  ListNamedShadowsForThing+newListNamedShadowsForThing pThingName_ =+  ListNamedShadowsForThing'+    { nextToken =+        Prelude.Nothing,+      pageSize = Prelude.Nothing,+      thingName = pThingName_+    }++-- | The token to retrieve the next set of results.+listNamedShadowsForThing_nextToken :: Lens.Lens' ListNamedShadowsForThing (Prelude.Maybe Prelude.Text)+listNamedShadowsForThing_nextToken = Lens.lens (\ListNamedShadowsForThing' {nextToken} -> nextToken) (\s@ListNamedShadowsForThing' {} a -> s {nextToken = a} :: ListNamedShadowsForThing)++-- | The result page size.+listNamedShadowsForThing_pageSize :: Lens.Lens' ListNamedShadowsForThing (Prelude.Maybe Prelude.Natural)+listNamedShadowsForThing_pageSize = Lens.lens (\ListNamedShadowsForThing' {pageSize} -> pageSize) (\s@ListNamedShadowsForThing' {} a -> s {pageSize = a} :: ListNamedShadowsForThing)++-- | The name of the thing.+listNamedShadowsForThing_thingName :: Lens.Lens' ListNamedShadowsForThing Prelude.Text+listNamedShadowsForThing_thingName = Lens.lens (\ListNamedShadowsForThing' {thingName} -> thingName) (\s@ListNamedShadowsForThing' {} a -> s {thingName = a} :: ListNamedShadowsForThing)++instance Core.AWSRequest ListNamedShadowsForThing where+  type+    AWSResponse ListNamedShadowsForThing =+      ListNamedShadowsForThingResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          ListNamedShadowsForThingResponse'+            Prelude.<$> (x Data..?> "nextToken")+            Prelude.<*> (x Data..?> "results" Core..!@ Prelude.mempty)+            Prelude.<*> (x Data..?> "timestamp")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable ListNamedShadowsForThing where+  hashWithSalt _salt ListNamedShadowsForThing' {..} =+    _salt+      `Prelude.hashWithSalt` nextToken+      `Prelude.hashWithSalt` pageSize+      `Prelude.hashWithSalt` thingName++instance Prelude.NFData ListNamedShadowsForThing where+  rnf ListNamedShadowsForThing' {..} =+    Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf pageSize+      `Prelude.seq` Prelude.rnf thingName++instance Data.ToHeaders ListNamedShadowsForThing where+  toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListNamedShadowsForThing where+  toPath ListNamedShadowsForThing' {..} =+    Prelude.mconcat+      [ "/api/things/shadow/ListNamedShadowsForThing/",+        Data.toBS thingName+      ]++instance Data.ToQuery ListNamedShadowsForThing where+  toQuery ListNamedShadowsForThing' {..} =+    Prelude.mconcat+      [ "nextToken" Data.=: nextToken,+        "pageSize" Data.=: pageSize+      ]++-- | /See:/ 'newListNamedShadowsForThingResponse' smart constructor.+data ListNamedShadowsForThingResponse = ListNamedShadowsForThingResponse'+  { -- | The token to use to get the next set of results, or __null__ if there+    -- are no additional results.+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | The list of shadows for the specified thing.+    results :: Prelude.Maybe [Prelude.Text],+    -- | The Epoch date and time the response was generated by IoT.+    timestamp :: Prelude.Maybe Prelude.Integer,+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListNamedShadowsForThingResponse' 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', 'listNamedShadowsForThingResponse_nextToken' - The token to use to get the next set of results, or __null__ if there+-- are no additional results.+--+-- 'results', 'listNamedShadowsForThingResponse_results' - The list of shadows for the specified thing.+--+-- 'timestamp', 'listNamedShadowsForThingResponse_timestamp' - The Epoch date and time the response was generated by IoT.+--+-- 'httpStatus', 'listNamedShadowsForThingResponse_httpStatus' - The response's http status code.+newListNamedShadowsForThingResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  ListNamedShadowsForThingResponse+newListNamedShadowsForThingResponse pHttpStatus_ =+  ListNamedShadowsForThingResponse'+    { nextToken =+        Prelude.Nothing,+      results = Prelude.Nothing,+      timestamp = Prelude.Nothing,+      httpStatus = pHttpStatus_+    }++-- | The token to use to get the next set of results, or __null__ if there+-- are no additional results.+listNamedShadowsForThingResponse_nextToken :: Lens.Lens' ListNamedShadowsForThingResponse (Prelude.Maybe Prelude.Text)+listNamedShadowsForThingResponse_nextToken = Lens.lens (\ListNamedShadowsForThingResponse' {nextToken} -> nextToken) (\s@ListNamedShadowsForThingResponse' {} a -> s {nextToken = a} :: ListNamedShadowsForThingResponse)++-- | The list of shadows for the specified thing.+listNamedShadowsForThingResponse_results :: Lens.Lens' ListNamedShadowsForThingResponse (Prelude.Maybe [Prelude.Text])+listNamedShadowsForThingResponse_results = Lens.lens (\ListNamedShadowsForThingResponse' {results} -> results) (\s@ListNamedShadowsForThingResponse' {} a -> s {results = a} :: ListNamedShadowsForThingResponse) Prelude.. Lens.mapping Lens.coerced++-- | The Epoch date and time the response was generated by IoT.+listNamedShadowsForThingResponse_timestamp :: Lens.Lens' ListNamedShadowsForThingResponse (Prelude.Maybe Prelude.Integer)+listNamedShadowsForThingResponse_timestamp = Lens.lens (\ListNamedShadowsForThingResponse' {timestamp} -> timestamp) (\s@ListNamedShadowsForThingResponse' {} a -> s {timestamp = a} :: ListNamedShadowsForThingResponse)++-- | The response's http status code.+listNamedShadowsForThingResponse_httpStatus :: Lens.Lens' ListNamedShadowsForThingResponse Prelude.Int+listNamedShadowsForThingResponse_httpStatus = Lens.lens (\ListNamedShadowsForThingResponse' {httpStatus} -> httpStatus) (\s@ListNamedShadowsForThingResponse' {} a -> s {httpStatus = a} :: ListNamedShadowsForThingResponse)++instance+  Prelude.NFData+    ListNamedShadowsForThingResponse+  where+  rnf ListNamedShadowsForThingResponse' {..} =+    Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf results+      `Prelude.seq` Prelude.rnf timestamp+      `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IoTData/ListRetainedMessages.hs view
@@ -0,0 +1,231 @@+{-# 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.IoTData.ListRetainedMessages+-- 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 summary information about the retained messages stored for the+-- account.+--+-- This action returns only the topic names of the retained messages. It+-- doesn\'t return any message payloads. Although this action doesn\'t+-- return a message payload, it can still incur messaging costs.+--+-- To get the message payload of a retained message, call+-- <https://docs.aws.amazon.com/iot/latest/developerguide/API_iotdata_GetRetainedMessage.html GetRetainedMessage>+-- with the topic name of the retained message.+--+-- Requires permission to access the+-- <https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiotfleethubfordevicemanagement.html#awsiotfleethubfordevicemanagement-actions-as-permissions ListRetainedMessages>+-- action.+--+-- For more information about messaging costs, see+-- <http://aws.amazon.com/iot-core/pricing/#Messaging Amazon Web Services IoT Core pricing - Messaging>.+--+-- This operation returns paginated results.+module Amazonka.IoTData.ListRetainedMessages+  ( -- * Creating a Request+    ListRetainedMessages (..),+    newListRetainedMessages,++    -- * Request Lenses+    listRetainedMessages_maxResults,+    listRetainedMessages_nextToken,++    -- * Destructuring the Response+    ListRetainedMessagesResponse (..),+    newListRetainedMessagesResponse,++    -- * Response Lenses+    listRetainedMessagesResponse_nextToken,+    listRetainedMessagesResponse_retainedTopics,+    listRetainedMessagesResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTData.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListRetainedMessages' smart constructor.+data ListRetainedMessages = ListRetainedMessages'+  { -- | The maximum number of results to return at one time.+    maxResults :: Prelude.Maybe Prelude.Natural,+    -- | To retrieve the next set of results, the @nextToken@ value from a+    -- previous response; otherwise __null__ to receive the first set of+    -- results.+    nextToken :: Prelude.Maybe Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRetainedMessages' 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', 'listRetainedMessages_maxResults' - The maximum number of results to return at one time.+--+-- 'nextToken', 'listRetainedMessages_nextToken' - To retrieve the next set of results, the @nextToken@ value from a+-- previous response; otherwise __null__ to receive the first set of+-- results.+newListRetainedMessages ::+  ListRetainedMessages+newListRetainedMessages =+  ListRetainedMessages'+    { maxResults = Prelude.Nothing,+      nextToken = Prelude.Nothing+    }++-- | The maximum number of results to return at one time.+listRetainedMessages_maxResults :: Lens.Lens' ListRetainedMessages (Prelude.Maybe Prelude.Natural)+listRetainedMessages_maxResults = Lens.lens (\ListRetainedMessages' {maxResults} -> maxResults) (\s@ListRetainedMessages' {} a -> s {maxResults = a} :: ListRetainedMessages)++-- | To retrieve the next set of results, the @nextToken@ value from a+-- previous response; otherwise __null__ to receive the first set of+-- results.+listRetainedMessages_nextToken :: Lens.Lens' ListRetainedMessages (Prelude.Maybe Prelude.Text)+listRetainedMessages_nextToken = Lens.lens (\ListRetainedMessages' {nextToken} -> nextToken) (\s@ListRetainedMessages' {} a -> s {nextToken = a} :: ListRetainedMessages)++instance Core.AWSPager ListRetainedMessages where+  page rq rs+    | Core.stop+        ( rs+            Lens.^? listRetainedMessagesResponse_nextToken+            Prelude.. Lens._Just+        ) =+        Prelude.Nothing+    | Core.stop+        ( rs+            Lens.^? listRetainedMessagesResponse_retainedTopics+            Prelude.. Lens._Just+        ) =+        Prelude.Nothing+    | Prelude.otherwise =+        Prelude.Just+          Prelude.$ rq+          Prelude.& listRetainedMessages_nextToken+          Lens..~ rs+          Lens.^? listRetainedMessagesResponse_nextToken+          Prelude.. Lens._Just++instance Core.AWSRequest ListRetainedMessages where+  type+    AWSResponse ListRetainedMessages =+      ListRetainedMessagesResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          ListRetainedMessagesResponse'+            Prelude.<$> (x Data..?> "nextToken")+            Prelude.<*> (x Data..?> "retainedTopics" Core..!@ Prelude.mempty)+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable ListRetainedMessages where+  hashWithSalt _salt ListRetainedMessages' {..} =+    _salt+      `Prelude.hashWithSalt` maxResults+      `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListRetainedMessages where+  rnf ListRetainedMessages' {..} =+    Prelude.rnf maxResults+      `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListRetainedMessages where+  toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListRetainedMessages where+  toPath = Prelude.const "/retainedMessage"++instance Data.ToQuery ListRetainedMessages where+  toQuery ListRetainedMessages' {..} =+    Prelude.mconcat+      [ "maxResults" Data.=: maxResults,+        "nextToken" Data.=: nextToken+      ]++-- | /See:/ 'newListRetainedMessagesResponse' smart constructor.+data ListRetainedMessagesResponse = ListRetainedMessagesResponse'+  { -- | The token for the next set of results, or null if there are no+    -- additional results.+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | A summary list the account\'s retained messages. The information+    -- returned doesn\'t include the message payloads of the retained messages.+    retainedTopics :: Prelude.Maybe [RetainedMessageSummary],+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRetainedMessagesResponse' 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', 'listRetainedMessagesResponse_nextToken' - The token for the next set of results, or null if there are no+-- additional results.+--+-- 'retainedTopics', 'listRetainedMessagesResponse_retainedTopics' - A summary list the account\'s retained messages. The information+-- returned doesn\'t include the message payloads of the retained messages.+--+-- 'httpStatus', 'listRetainedMessagesResponse_httpStatus' - The response's http status code.+newListRetainedMessagesResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  ListRetainedMessagesResponse+newListRetainedMessagesResponse pHttpStatus_ =+  ListRetainedMessagesResponse'+    { nextToken =+        Prelude.Nothing,+      retainedTopics = Prelude.Nothing,+      httpStatus = pHttpStatus_+    }++-- | The token for the next set of results, or null if there are no+-- additional results.+listRetainedMessagesResponse_nextToken :: Lens.Lens' ListRetainedMessagesResponse (Prelude.Maybe Prelude.Text)+listRetainedMessagesResponse_nextToken = Lens.lens (\ListRetainedMessagesResponse' {nextToken} -> nextToken) (\s@ListRetainedMessagesResponse' {} a -> s {nextToken = a} :: ListRetainedMessagesResponse)++-- | A summary list the account\'s retained messages. The information+-- returned doesn\'t include the message payloads of the retained messages.+listRetainedMessagesResponse_retainedTopics :: Lens.Lens' ListRetainedMessagesResponse (Prelude.Maybe [RetainedMessageSummary])+listRetainedMessagesResponse_retainedTopics = Lens.lens (\ListRetainedMessagesResponse' {retainedTopics} -> retainedTopics) (\s@ListRetainedMessagesResponse' {} a -> s {retainedTopics = a} :: ListRetainedMessagesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listRetainedMessagesResponse_httpStatus :: Lens.Lens' ListRetainedMessagesResponse Prelude.Int+listRetainedMessagesResponse_httpStatus = Lens.lens (\ListRetainedMessagesResponse' {httpStatus} -> httpStatus) (\s@ListRetainedMessagesResponse' {} a -> s {httpStatus = a} :: ListRetainedMessagesResponse)++instance Prelude.NFData ListRetainedMessagesResponse where+  rnf ListRetainedMessagesResponse' {..} =+    Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf retainedTopics+      `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IoTData/Publish.hs view
@@ -0,0 +1,349 @@+{-# 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.IoTData.Publish+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Publishes an MQTT message.+--+-- Requires permission to access the+-- <https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions Publish>+-- action.+--+-- For more information about MQTT messages, see+-- <http://docs.aws.amazon.com/iot/latest/developerguide/mqtt.html MQTT Protocol>+-- in the IoT Developer Guide.+--+-- For more information about messaging costs, see+-- <http://aws.amazon.com/iot-core/pricing/#Messaging Amazon Web Services IoT Core pricing - Messaging>.+module Amazonka.IoTData.Publish+  ( -- * Creating a Request+    Publish (..),+    newPublish,++    -- * Request Lenses+    publish_contentType,+    publish_correlationData,+    publish_messageExpiry,+    publish_payload,+    publish_payloadFormatIndicator,+    publish_qos,+    publish_responseTopic,+    publish_retain,+    publish_userProperties,+    publish_topic,++    -- * Destructuring the Response+    PublishResponse (..),+    newPublishResponse,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTData.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | The input for the Publish operation.+--+-- /See:/ 'newPublish' smart constructor.+data Publish = Publish'+  { -- | A UTF-8 encoded string that describes the content of the publishing+    -- message.+    contentType :: Prelude.Maybe Prelude.Text,+    -- | The base64-encoded binary data used by the sender of the request message+    -- to identify which request the response message is for when it\'s+    -- received. @correlationData@ is an HTTP header value in the API.+    correlationData :: Prelude.Maybe Prelude.Text,+    -- | A user-defined integer value that represents the message expiry interval+    -- in seconds. If absent, the message doesn\'t expire. For more information+    -- about the limits of @messageExpiry@, see+    -- <https://docs.aws.amazon.com/general/latest/gr/iot-core.html#message-broker-limits Amazon Web Services IoT Core message broker and protocol limits and quotas>+    -- from the Amazon Web Services Reference Guide.+    messageExpiry :: Prelude.Maybe Prelude.Integer,+    -- | The message body. MQTT accepts text, binary, and empty (null) message+    -- payloads.+    --+    -- Publishing an empty (null) payload with __retain__ = @true@ deletes the+    -- retained message identified by __topic__ from Amazon Web Services IoT+    -- Core.+    payload :: Prelude.Maybe Prelude.ByteString,+    -- | An @Enum@ string value that indicates whether the payload is formatted+    -- as UTF-8. @payloadFormatIndicator@ is an HTTP header value in the API.+    payloadFormatIndicator :: Prelude.Maybe PayloadFormatIndicator,+    -- | The Quality of Service (QoS) level. The default QoS level is 0.+    qos :: Prelude.Maybe Prelude.Natural,+    -- | A UTF-8 encoded string that\'s used as the topic name for a response+    -- message. The response topic is used to describe the topic which the+    -- receiver should publish to as part of the request-response flow. The+    -- topic must not contain wildcard characters.+    responseTopic :: Prelude.Maybe Prelude.Text,+    -- | A Boolean value that determines whether to set the RETAIN flag when the+    -- message is published.+    --+    -- Setting the RETAIN flag causes the message to be retained and sent to+    -- new subscribers to the topic.+    --+    -- Valid values: @true@ | @false@+    --+    -- Default value: @false@+    retain :: Prelude.Maybe Prelude.Bool,+    -- | A JSON string that contains an array of JSON objects. If you don’t use+    -- Amazon Web Services SDK or CLI, you must encode the JSON string to+    -- base64 format before adding it to the HTTP header. @userProperties@ is+    -- an HTTP header value in the API.+    --+    -- The following example @userProperties@ parameter is a JSON string which+    -- represents two User Properties. Note that it needs to be base64-encoded:+    --+    -- @[{\"deviceName\": \"alpha\"}, {\"deviceCnt\": \"45\"}]@+    userProperties :: Prelude.Maybe Prelude.Text,+    -- | The name of the MQTT topic.+    topic :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Publish' 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:+--+-- 'contentType', 'publish_contentType' - A UTF-8 encoded string that describes the content of the publishing+-- message.+--+-- 'correlationData', 'publish_correlationData' - The base64-encoded binary data used by the sender of the request message+-- to identify which request the response message is for when it\'s+-- received. @correlationData@ is an HTTP header value in the API.+--+-- 'messageExpiry', 'publish_messageExpiry' - A user-defined integer value that represents the message expiry interval+-- in seconds. If absent, the message doesn\'t expire. For more information+-- about the limits of @messageExpiry@, see+-- <https://docs.aws.amazon.com/general/latest/gr/iot-core.html#message-broker-limits Amazon Web Services IoT Core message broker and protocol limits and quotas>+-- from the Amazon Web Services Reference Guide.+--+-- 'payload', 'publish_payload' - The message body. MQTT accepts text, binary, and empty (null) message+-- payloads.+--+-- Publishing an empty (null) payload with __retain__ = @true@ deletes the+-- retained message identified by __topic__ from Amazon Web Services IoT+-- Core.+--+-- 'payloadFormatIndicator', 'publish_payloadFormatIndicator' - An @Enum@ string value that indicates whether the payload is formatted+-- as UTF-8. @payloadFormatIndicator@ is an HTTP header value in the API.+--+-- 'qos', 'publish_qos' - The Quality of Service (QoS) level. The default QoS level is 0.+--+-- 'responseTopic', 'publish_responseTopic' - A UTF-8 encoded string that\'s used as the topic name for a response+-- message. The response topic is used to describe the topic which the+-- receiver should publish to as part of the request-response flow. The+-- topic must not contain wildcard characters.+--+-- 'retain', 'publish_retain' - A Boolean value that determines whether to set the RETAIN flag when the+-- message is published.+--+-- Setting the RETAIN flag causes the message to be retained and sent to+-- new subscribers to the topic.+--+-- Valid values: @true@ | @false@+--+-- Default value: @false@+--+-- 'userProperties', 'publish_userProperties' - A JSON string that contains an array of JSON objects. If you don’t use+-- Amazon Web Services SDK or CLI, you must encode the JSON string to+-- base64 format before adding it to the HTTP header. @userProperties@ is+-- an HTTP header value in the API.+--+-- The following example @userProperties@ parameter is a JSON string which+-- represents two User Properties. Note that it needs to be base64-encoded:+--+-- @[{\"deviceName\": \"alpha\"}, {\"deviceCnt\": \"45\"}]@+--+-- 'topic', 'publish_topic' - The name of the MQTT topic.+newPublish ::+  -- | 'topic'+  Prelude.Text ->+  Publish+newPublish pTopic_ =+  Publish'+    { contentType = Prelude.Nothing,+      correlationData = Prelude.Nothing,+      messageExpiry = Prelude.Nothing,+      payload = Prelude.Nothing,+      payloadFormatIndicator = Prelude.Nothing,+      qos = Prelude.Nothing,+      responseTopic = Prelude.Nothing,+      retain = Prelude.Nothing,+      userProperties = Prelude.Nothing,+      topic = pTopic_+    }++-- | A UTF-8 encoded string that describes the content of the publishing+-- message.+publish_contentType :: Lens.Lens' Publish (Prelude.Maybe Prelude.Text)+publish_contentType = Lens.lens (\Publish' {contentType} -> contentType) (\s@Publish' {} a -> s {contentType = a} :: Publish)++-- | The base64-encoded binary data used by the sender of the request message+-- to identify which request the response message is for when it\'s+-- received. @correlationData@ is an HTTP header value in the API.+publish_correlationData :: Lens.Lens' Publish (Prelude.Maybe Prelude.Text)+publish_correlationData = Lens.lens (\Publish' {correlationData} -> correlationData) (\s@Publish' {} a -> s {correlationData = a} :: Publish)++-- | A user-defined integer value that represents the message expiry interval+-- in seconds. If absent, the message doesn\'t expire. For more information+-- about the limits of @messageExpiry@, see+-- <https://docs.aws.amazon.com/general/latest/gr/iot-core.html#message-broker-limits Amazon Web Services IoT Core message broker and protocol limits and quotas>+-- from the Amazon Web Services Reference Guide.+publish_messageExpiry :: Lens.Lens' Publish (Prelude.Maybe Prelude.Integer)+publish_messageExpiry = Lens.lens (\Publish' {messageExpiry} -> messageExpiry) (\s@Publish' {} a -> s {messageExpiry = a} :: Publish)++-- | The message body. MQTT accepts text, binary, and empty (null) message+-- payloads.+--+-- Publishing an empty (null) payload with __retain__ = @true@ deletes the+-- retained message identified by __topic__ from Amazon Web Services IoT+-- Core.+publish_payload :: Lens.Lens' Publish (Prelude.Maybe Prelude.ByteString)+publish_payload = Lens.lens (\Publish' {payload} -> payload) (\s@Publish' {} a -> s {payload = a} :: Publish)++-- | An @Enum@ string value that indicates whether the payload is formatted+-- as UTF-8. @payloadFormatIndicator@ is an HTTP header value in the API.+publish_payloadFormatIndicator :: Lens.Lens' Publish (Prelude.Maybe PayloadFormatIndicator)+publish_payloadFormatIndicator = Lens.lens (\Publish' {payloadFormatIndicator} -> payloadFormatIndicator) (\s@Publish' {} a -> s {payloadFormatIndicator = a} :: Publish)++-- | The Quality of Service (QoS) level. The default QoS level is 0.+publish_qos :: Lens.Lens' Publish (Prelude.Maybe Prelude.Natural)+publish_qos = Lens.lens (\Publish' {qos} -> qos) (\s@Publish' {} a -> s {qos = a} :: Publish)++-- | A UTF-8 encoded string that\'s used as the topic name for a response+-- message. The response topic is used to describe the topic which the+-- receiver should publish to as part of the request-response flow. The+-- topic must not contain wildcard characters.+publish_responseTopic :: Lens.Lens' Publish (Prelude.Maybe Prelude.Text)+publish_responseTopic = Lens.lens (\Publish' {responseTopic} -> responseTopic) (\s@Publish' {} a -> s {responseTopic = a} :: Publish)++-- | A Boolean value that determines whether to set the RETAIN flag when the+-- message is published.+--+-- Setting the RETAIN flag causes the message to be retained and sent to+-- new subscribers to the topic.+--+-- Valid values: @true@ | @false@+--+-- Default value: @false@+publish_retain :: Lens.Lens' Publish (Prelude.Maybe Prelude.Bool)+publish_retain = Lens.lens (\Publish' {retain} -> retain) (\s@Publish' {} a -> s {retain = a} :: Publish)++-- | A JSON string that contains an array of JSON objects. If you don’t use+-- Amazon Web Services SDK or CLI, you must encode the JSON string to+-- base64 format before adding it to the HTTP header. @userProperties@ is+-- an HTTP header value in the API.+--+-- The following example @userProperties@ parameter is a JSON string which+-- represents two User Properties. Note that it needs to be base64-encoded:+--+-- @[{\"deviceName\": \"alpha\"}, {\"deviceCnt\": \"45\"}]@+publish_userProperties :: Lens.Lens' Publish (Prelude.Maybe Prelude.Text)+publish_userProperties = Lens.lens (\Publish' {userProperties} -> userProperties) (\s@Publish' {} a -> s {userProperties = a} :: Publish)++-- | The name of the MQTT topic.+publish_topic :: Lens.Lens' Publish Prelude.Text+publish_topic = Lens.lens (\Publish' {topic} -> topic) (\s@Publish' {} a -> s {topic = a} :: Publish)++instance Core.AWSRequest Publish where+  type AWSResponse Publish = PublishResponse+  request overrides =+    Request.postBody (overrides defaultService)+  response = Response.receiveNull PublishResponse'++instance Prelude.Hashable Publish where+  hashWithSalt _salt Publish' {..} =+    _salt+      `Prelude.hashWithSalt` contentType+      `Prelude.hashWithSalt` correlationData+      `Prelude.hashWithSalt` messageExpiry+      `Prelude.hashWithSalt` payload+      `Prelude.hashWithSalt` payloadFormatIndicator+      `Prelude.hashWithSalt` qos+      `Prelude.hashWithSalt` responseTopic+      `Prelude.hashWithSalt` retain+      `Prelude.hashWithSalt` userProperties+      `Prelude.hashWithSalt` topic++instance Prelude.NFData Publish where+  rnf Publish' {..} =+    Prelude.rnf contentType+      `Prelude.seq` Prelude.rnf correlationData+      `Prelude.seq` Prelude.rnf messageExpiry+      `Prelude.seq` Prelude.rnf payload+      `Prelude.seq` Prelude.rnf payloadFormatIndicator+      `Prelude.seq` Prelude.rnf qos+      `Prelude.seq` Prelude.rnf responseTopic+      `Prelude.seq` Prelude.rnf retain+      `Prelude.seq` Prelude.rnf userProperties+      `Prelude.seq` Prelude.rnf topic++instance Data.ToBody Publish where+  toBody Publish' {..} = Data.toBody payload++instance Data.ToHeaders Publish where+  toHeaders Publish' {..} =+    Prelude.mconcat+      [ "x-amz-mqtt5-correlation-data"+          Data.=# correlationData,+        "x-amz-mqtt5-payload-format-indicator"+          Data.=# payloadFormatIndicator,+        "x-amz-mqtt5-user-properties" Data.=# userProperties+      ]++instance Data.ToPath Publish where+  toPath Publish' {..} =+    Prelude.mconcat ["/topics/", Data.toBS topic]++instance Data.ToQuery Publish where+  toQuery Publish' {..} =+    Prelude.mconcat+      [ "contentType" Data.=: contentType,+        "messageExpiry" Data.=: messageExpiry,+        "qos" Data.=: qos,+        "responseTopic" Data.=: responseTopic,+        "retain" Data.=: retain+      ]++-- | /See:/ 'newPublishResponse' smart constructor.+data PublishResponse = PublishResponse'+  {+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PublishResponse' 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.+newPublishResponse ::+  PublishResponse+newPublishResponse = PublishResponse'++instance Prelude.NFData PublishResponse where+  rnf _ = ()
+ gen/Amazonka/IoTData/Types.hs view
@@ -0,0 +1,200 @@+{-# 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.IoTData.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.IoTData.Types+  ( -- * Service Configuration+    defaultService,++    -- * Errors+    _ConflictException,+    _InternalFailureException,+    _InvalidRequestException,+    _MethodNotAllowedException,+    _RequestEntityTooLargeException,+    _ResourceNotFoundException,+    _ServiceUnavailableException,+    _ThrottlingException,+    _UnauthorizedException,+    _UnsupportedDocumentEncodingException,++    -- * PayloadFormatIndicator+    PayloadFormatIndicator (..),++    -- * RetainedMessageSummary+    RetainedMessageSummary (..),+    newRetainedMessageSummary,+    retainedMessageSummary_lastModifiedTime,+    retainedMessageSummary_payloadSize,+    retainedMessageSummary_qos,+    retainedMessageSummary_topic,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import Amazonka.IoTData.Types.PayloadFormatIndicator+import Amazonka.IoTData.Types.RetainedMessageSummary+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Sign.V4 as Sign++-- | API version @2015-05-28@ of the Amazon IoT Data Plane SDK configuration.+defaultService :: Core.Service+defaultService =+  Core.Service+    { Core.abbrev = "IoTData",+      Core.signer = Sign.v4,+      Core.endpointPrefix = "data-ats.iot",+      Core.signingName = "iotdata",+      Core.version = "2015-05-28",+      Core.s3AddressingStyle = Core.S3AddressingStyleAuto,+      Core.endpoint = Core.defaultEndpoint defaultService,+      Core.timeout = Prelude.Just 70,+      Core.check = Core.statusSuccess,+      Core.error = Core.parseJSONError "IoTData",+      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++-- | The specified version does not match the version of the document.+_ConflictException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ConflictException =+  Core._MatchServiceError+    defaultService+    "ConflictException"+    Prelude.. Core.hasStatus 409++-- | An unexpected error has occurred.+_InternalFailureException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InternalFailureException =+  Core._MatchServiceError+    defaultService+    "InternalFailureException"+    Prelude.. Core.hasStatus 500++-- | The request is not valid.+_InvalidRequestException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidRequestException =+  Core._MatchServiceError+    defaultService+    "InvalidRequestException"+    Prelude.. Core.hasStatus 400++-- | The specified combination of HTTP verb and URI is not supported.+_MethodNotAllowedException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_MethodNotAllowedException =+  Core._MatchServiceError+    defaultService+    "MethodNotAllowedException"+    Prelude.. Core.hasStatus 405++-- | The payload exceeds the maximum size allowed.+_RequestEntityTooLargeException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_RequestEntityTooLargeException =+  Core._MatchServiceError+    defaultService+    "RequestEntityTooLargeException"+    Prelude.. Core.hasStatus 413++-- | The specified resource does not exist.+_ResourceNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceNotFoundException =+  Core._MatchServiceError+    defaultService+    "ResourceNotFoundException"+    Prelude.. Core.hasStatus 404++-- | The service is temporarily unavailable.+_ServiceUnavailableException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ServiceUnavailableException =+  Core._MatchServiceError+    defaultService+    "ServiceUnavailableException"+    Prelude.. Core.hasStatus 503++-- | The rate exceeds the limit.+_ThrottlingException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ThrottlingException =+  Core._MatchServiceError+    defaultService+    "ThrottlingException"+    Prelude.. Core.hasStatus 429++-- | You are not authorized to perform this operation.+_UnauthorizedException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_UnauthorizedException =+  Core._MatchServiceError+    defaultService+    "UnauthorizedException"+    Prelude.. Core.hasStatus 401++-- | The document encoding is not supported.+_UnsupportedDocumentEncodingException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_UnsupportedDocumentEncodingException =+  Core._MatchServiceError+    defaultService+    "UnsupportedDocumentEncodingException"+    Prelude.. Core.hasStatus 415
+ gen/Amazonka/IoTData/Types/PayloadFormatIndicator.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.IoTData.Types.PayloadFormatIndicator+-- 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.IoTData.Types.PayloadFormatIndicator+  ( PayloadFormatIndicator+      ( ..,+        PayloadFormatIndicator_UNSPECIFIED_BYTES,+        PayloadFormatIndicator_UTF8_DATA+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PayloadFormatIndicator = PayloadFormatIndicator'+  { fromPayloadFormatIndicator ::+      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 PayloadFormatIndicator_UNSPECIFIED_BYTES :: PayloadFormatIndicator+pattern PayloadFormatIndicator_UNSPECIFIED_BYTES = PayloadFormatIndicator' "UNSPECIFIED_BYTES"++pattern PayloadFormatIndicator_UTF8_DATA :: PayloadFormatIndicator+pattern PayloadFormatIndicator_UTF8_DATA = PayloadFormatIndicator' "UTF8_DATA"++{-# COMPLETE+  PayloadFormatIndicator_UNSPECIFIED_BYTES,+  PayloadFormatIndicator_UTF8_DATA,+  PayloadFormatIndicator'+  #-}
+ gen/Amazonka/IoTData/Types/RetainedMessageSummary.hs view
@@ -0,0 +1,112 @@+{-# 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.IoTData.Types.RetainedMessageSummary+-- 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.IoTData.Types.RetainedMessageSummary 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++-- | Information about a single retained message.+--+-- /See:/ 'newRetainedMessageSummary' smart constructor.+data RetainedMessageSummary = RetainedMessageSummary'+  { -- | The Epoch date and time, in milliseconds, when the retained message was+    -- stored by IoT.+    lastModifiedTime :: Prelude.Maybe Prelude.Integer,+    -- | The size of the retained message\'s payload in bytes.+    payloadSize :: Prelude.Maybe Prelude.Integer,+    -- | The quality of service (QoS) level used to publish the retained message.+    qos :: Prelude.Maybe Prelude.Natural,+    -- | The topic name to which the retained message was published.+    topic :: Prelude.Maybe Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RetainedMessageSummary' 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:+--+-- 'lastModifiedTime', 'retainedMessageSummary_lastModifiedTime' - The Epoch date and time, in milliseconds, when the retained message was+-- stored by IoT.+--+-- 'payloadSize', 'retainedMessageSummary_payloadSize' - The size of the retained message\'s payload in bytes.+--+-- 'qos', 'retainedMessageSummary_qos' - The quality of service (QoS) level used to publish the retained message.+--+-- 'topic', 'retainedMessageSummary_topic' - The topic name to which the retained message was published.+newRetainedMessageSummary ::+  RetainedMessageSummary+newRetainedMessageSummary =+  RetainedMessageSummary'+    { lastModifiedTime =+        Prelude.Nothing,+      payloadSize = Prelude.Nothing,+      qos = Prelude.Nothing,+      topic = Prelude.Nothing+    }++-- | The Epoch date and time, in milliseconds, when the retained message was+-- stored by IoT.+retainedMessageSummary_lastModifiedTime :: Lens.Lens' RetainedMessageSummary (Prelude.Maybe Prelude.Integer)+retainedMessageSummary_lastModifiedTime = Lens.lens (\RetainedMessageSummary' {lastModifiedTime} -> lastModifiedTime) (\s@RetainedMessageSummary' {} a -> s {lastModifiedTime = a} :: RetainedMessageSummary)++-- | The size of the retained message\'s payload in bytes.+retainedMessageSummary_payloadSize :: Lens.Lens' RetainedMessageSummary (Prelude.Maybe Prelude.Integer)+retainedMessageSummary_payloadSize = Lens.lens (\RetainedMessageSummary' {payloadSize} -> payloadSize) (\s@RetainedMessageSummary' {} a -> s {payloadSize = a} :: RetainedMessageSummary)++-- | The quality of service (QoS) level used to publish the retained message.+retainedMessageSummary_qos :: Lens.Lens' RetainedMessageSummary (Prelude.Maybe Prelude.Natural)+retainedMessageSummary_qos = Lens.lens (\RetainedMessageSummary' {qos} -> qos) (\s@RetainedMessageSummary' {} a -> s {qos = a} :: RetainedMessageSummary)++-- | The topic name to which the retained message was published.+retainedMessageSummary_topic :: Lens.Lens' RetainedMessageSummary (Prelude.Maybe Prelude.Text)+retainedMessageSummary_topic = Lens.lens (\RetainedMessageSummary' {topic} -> topic) (\s@RetainedMessageSummary' {} a -> s {topic = a} :: RetainedMessageSummary)++instance Data.FromJSON RetainedMessageSummary where+  parseJSON =+    Data.withObject+      "RetainedMessageSummary"+      ( \x ->+          RetainedMessageSummary'+            Prelude.<$> (x Data..:? "lastModifiedTime")+            Prelude.<*> (x Data..:? "payloadSize")+            Prelude.<*> (x Data..:? "qos")+            Prelude.<*> (x Data..:? "topic")+      )++instance Prelude.Hashable RetainedMessageSummary where+  hashWithSalt _salt RetainedMessageSummary' {..} =+    _salt+      `Prelude.hashWithSalt` lastModifiedTime+      `Prelude.hashWithSalt` payloadSize+      `Prelude.hashWithSalt` qos+      `Prelude.hashWithSalt` topic++instance Prelude.NFData RetainedMessageSummary where+  rnf RetainedMessageSummary' {..} =+    Prelude.rnf lastModifiedTime+      `Prelude.seq` Prelude.rnf payloadSize+      `Prelude.seq` Prelude.rnf qos+      `Prelude.seq` Prelude.rnf topic
+ gen/Amazonka/IoTData/UpdateThingShadow.hs view
@@ -0,0 +1,197 @@+{-# 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.IoTData.UpdateThingShadow+-- 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 the shadow for the specified thing.+--+-- Requires permission to access the+-- <https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions UpdateThingShadow>+-- action.+--+-- For more information, see+-- <http://docs.aws.amazon.com/iot/latest/developerguide/API_UpdateThingShadow.html UpdateThingShadow>+-- in the IoT Developer Guide.+module Amazonka.IoTData.UpdateThingShadow+  ( -- * Creating a Request+    UpdateThingShadow (..),+    newUpdateThingShadow,++    -- * Request Lenses+    updateThingShadow_shadowName,+    updateThingShadow_thingName,+    updateThingShadow_payload,++    -- * Destructuring the Response+    UpdateThingShadowResponse (..),+    newUpdateThingShadowResponse,++    -- * Response Lenses+    updateThingShadowResponse_payload,+    updateThingShadowResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTData.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | The input for the UpdateThingShadow operation.+--+-- /See:/ 'newUpdateThingShadow' smart constructor.+data UpdateThingShadow = UpdateThingShadow'+  { -- | The name of the shadow.+    shadowName :: Prelude.Maybe Prelude.Text,+    -- | The name of the thing.+    thingName :: Prelude.Text,+    -- | The state information, in JSON format.+    payload :: Prelude.ByteString+  }+  deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateThingShadow' 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:+--+-- 'shadowName', 'updateThingShadow_shadowName' - The name of the shadow.+--+-- 'thingName', 'updateThingShadow_thingName' - The name of the thing.+--+-- 'payload', 'updateThingShadow_payload' - The state information, in JSON format.+newUpdateThingShadow ::+  -- | 'thingName'+  Prelude.Text ->+  -- | 'payload'+  Prelude.ByteString ->+  UpdateThingShadow+newUpdateThingShadow pThingName_ pPayload_ =+  UpdateThingShadow'+    { shadowName = Prelude.Nothing,+      thingName = pThingName_,+      payload = pPayload_+    }++-- | The name of the shadow.+updateThingShadow_shadowName :: Lens.Lens' UpdateThingShadow (Prelude.Maybe Prelude.Text)+updateThingShadow_shadowName = Lens.lens (\UpdateThingShadow' {shadowName} -> shadowName) (\s@UpdateThingShadow' {} a -> s {shadowName = a} :: UpdateThingShadow)++-- | The name of the thing.+updateThingShadow_thingName :: Lens.Lens' UpdateThingShadow Prelude.Text+updateThingShadow_thingName = Lens.lens (\UpdateThingShadow' {thingName} -> thingName) (\s@UpdateThingShadow' {} a -> s {thingName = a} :: UpdateThingShadow)++-- | The state information, in JSON format.+updateThingShadow_payload :: Lens.Lens' UpdateThingShadow Prelude.ByteString+updateThingShadow_payload = Lens.lens (\UpdateThingShadow' {payload} -> payload) (\s@UpdateThingShadow' {} a -> s {payload = a} :: UpdateThingShadow)++instance Core.AWSRequest UpdateThingShadow where+  type+    AWSResponse UpdateThingShadow =+      UpdateThingShadowResponse+  request overrides =+    Request.postBody (overrides defaultService)+  response =+    Response.receiveBytes+      ( \s h x ->+          UpdateThingShadowResponse'+            Prelude.<$> (Prelude.pure (Prelude.Just (Prelude.coerce x)))+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable UpdateThingShadow where+  hashWithSalt _salt UpdateThingShadow' {..} =+    _salt+      `Prelude.hashWithSalt` shadowName+      `Prelude.hashWithSalt` thingName+      `Prelude.hashWithSalt` payload++instance Prelude.NFData UpdateThingShadow where+  rnf UpdateThingShadow' {..} =+    Prelude.rnf shadowName+      `Prelude.seq` Prelude.rnf thingName+      `Prelude.seq` Prelude.rnf payload++instance Data.ToBody UpdateThingShadow where+  toBody UpdateThingShadow' {..} = Data.toBody payload++instance Data.ToHeaders UpdateThingShadow where+  toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UpdateThingShadow where+  toPath UpdateThingShadow' {..} =+    Prelude.mconcat+      ["/things/", Data.toBS thingName, "/shadow"]++instance Data.ToQuery UpdateThingShadow where+  toQuery UpdateThingShadow' {..} =+    Prelude.mconcat ["name" Data.=: shadowName]++-- | The output from the UpdateThingShadow operation.+--+-- /See:/ 'newUpdateThingShadowResponse' smart constructor.+data UpdateThingShadowResponse = UpdateThingShadowResponse'+  { -- | The state information, in JSON format.+    payload :: Prelude.Maybe Prelude.ByteString,+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateThingShadowResponse' 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:+--+-- 'payload', 'updateThingShadowResponse_payload' - The state information, in JSON format.+--+-- 'httpStatus', 'updateThingShadowResponse_httpStatus' - The response's http status code.+newUpdateThingShadowResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  UpdateThingShadowResponse+newUpdateThingShadowResponse pHttpStatus_ =+  UpdateThingShadowResponse'+    { payload =+        Prelude.Nothing,+      httpStatus = pHttpStatus_+    }++-- | The state information, in JSON format.+updateThingShadowResponse_payload :: Lens.Lens' UpdateThingShadowResponse (Prelude.Maybe Prelude.ByteString)+updateThingShadowResponse_payload = Lens.lens (\UpdateThingShadowResponse' {payload} -> payload) (\s@UpdateThingShadowResponse' {} a -> s {payload = a} :: UpdateThingShadowResponse)++-- | The response's http status code.+updateThingShadowResponse_httpStatus :: Lens.Lens' UpdateThingShadowResponse Prelude.Int+updateThingShadowResponse_httpStatus = Lens.lens (\UpdateThingShadowResponse' {httpStatus} -> httpStatus) (\s@UpdateThingShadowResponse' {} a -> s {httpStatus = a} :: UpdateThingShadowResponse)++instance Prelude.NFData UpdateThingShadowResponse where+  rnf UpdateThingShadowResponse' {..} =+    Prelude.rnf payload+      `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IoTData/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.IoTData.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.IoTData.Waiters where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTData.Lens+import Amazonka.IoTData.Types+import qualified Amazonka.Prelude as Prelude
− gen/Network/AWS/IoTData.hs
@@ -1,112 +0,0 @@-{-# OPTIONS_GHC -fno-warn-unused-imports    #-}-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module      : Network.AWS.IoTData--- Copyright   : (c) 2013-2018 Brendan Hay--- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability   : auto-generated--- Portability : non-portable (GHC extensions)------ __AWS IoT__------ AWS IoT-Data enables secure, bi-directional communication between Internet-connected things (such as sensors, actuators, embedded devices, or smart appliances) and the AWS cloud. It implements a broker for applications and things to publish messages over HTTP (Publish) and retrieve, update, and delete thing shadows. A thing shadow is a persistent representation of your things and their state in the AWS cloud.----module Network.AWS.IoTData-    (-    -- * Service Configuration-      ioTData--    -- * Errors-    -- $errors--    -- ** InvalidRequestException-    , _InvalidRequestException--    -- ** ConflictException-    , _ConflictException--    -- ** RequestEntityTooLargeException-    , _RequestEntityTooLargeException--    -- ** ThrottlingException-    , _ThrottlingException--    -- ** MethodNotAllowedException-    , _MethodNotAllowedException--    -- ** InternalFailureException-    , _InternalFailureException--    -- ** ServiceUnavailableException-    , _ServiceUnavailableException--    -- ** UnauthorizedException-    , _UnauthorizedException--    -- ** ResourceNotFoundException-    , _ResourceNotFoundException--    -- ** UnsupportedDocumentEncodingException-    , _UnsupportedDocumentEncodingException--    -- * Waiters-    -- $waiters--    -- * Operations-    -- $operations--    -- ** GetThingShadow-    , module Network.AWS.IoTData.GetThingShadow--    -- ** DeleteThingShadow-    , module Network.AWS.IoTData.DeleteThingShadow--    -- ** UpdateThingShadow-    , module Network.AWS.IoTData.UpdateThingShadow--    -- ** Publish-    , module Network.AWS.IoTData.Publish--    -- * Types-    ) where--import Network.AWS.IoTData.DeleteThingShadow-import Network.AWS.IoTData.GetThingShadow-import Network.AWS.IoTData.Publish-import Network.AWS.IoTData.Types-import Network.AWS.IoTData.UpdateThingShadow-import Network.AWS.IoTData.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 'IoTData'.--}--{- $operations-Some AWS operations return results that are incomplete and require subsequent-requests in order to obtain the entire result set. The process of sending-subsequent requests to continue where a previous request left off is called-pagination. For example, the 'ListObjects' operation of Amazon S3 returns up to-1000 objects at a time, and you must send subsequent requests with the-appropriate Marker in order to retrieve the next page of results.--Operations that have an 'AWSPager' instance can transparently perform subsequent-requests, correctly setting Markers and other request facets to iterate through-the entire result set of a truncated API operation. Operations which support-this have an additional note in the documentation.--Many operations have the ability to filter results on the server side. See the-individual operation parameters for details.--}--{- $waiters-Waiters poll by repeatedly sending a request until some remote success condition-configured by the 'Wait' specification is fulfilled. The 'Wait' specification-determines how many attempts should be made, in addition to delay and retry strategies.--}
− gen/Network/AWS/IoTData/DeleteThingShadow.hs
@@ -1,132 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric      #-}-{-# LANGUAGE OverloadedStrings  #-}-{-# LANGUAGE RecordWildCards    #-}-{-# LANGUAGE TypeFamilies       #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds   #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module      : Network.AWS.IoTData.DeleteThingShadow--- Copyright   : (c) 2013-2018 Brendan Hay--- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability   : auto-generated--- Portability : non-portable (GHC extensions)------ Deletes the thing shadow for the specified thing.--------- For more information, see <http://docs.aws.amazon.com/iot/latest/developerguide/API_DeleteThingShadow.html DeleteThingShadow> in the /AWS IoT Developer Guide/ .----module Network.AWS.IoTData.DeleteThingShadow-    (-    -- * Creating a Request-      deleteThingShadow-    , DeleteThingShadow-    -- * Request Lenses-    , dtsThingName--    -- * Destructuring the Response-    , deleteThingShadowResponse-    , DeleteThingShadowResponse-    -- * Response Lenses-    , dtsrsResponseStatus-    , dtsrsPayload-    ) where--import Network.AWS.IoTData.Types-import Network.AWS.IoTData.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | The input for the DeleteThingShadow operation.------------ /See:/ 'deleteThingShadow' smart constructor.-newtype DeleteThingShadow = DeleteThingShadow'-  { _dtsThingName :: Text-  } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteThingShadow' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dtsThingName' - The name of the thing.-deleteThingShadow-    :: Text -- ^ 'dtsThingName'-    -> DeleteThingShadow-deleteThingShadow pThingName_ = DeleteThingShadow' {_dtsThingName = pThingName_}----- | The name of the thing.-dtsThingName :: Lens' DeleteThingShadow Text-dtsThingName = lens _dtsThingName (\ s a -> s{_dtsThingName = a})--instance AWSRequest DeleteThingShadow where-        type Rs DeleteThingShadow = DeleteThingShadowResponse-        request = delete ioTData-        response-          = receiveBytes-              (\ s h x ->-                 DeleteThingShadowResponse' <$>-                   (pure (fromEnum s)) <*> (pure x))--instance Hashable DeleteThingShadow where--instance NFData DeleteThingShadow where--instance ToHeaders DeleteThingShadow where-        toHeaders = const mempty--instance ToPath DeleteThingShadow where-        toPath DeleteThingShadow'{..}-          = mconcat ["/things/", toBS _dtsThingName, "/shadow"]--instance ToQuery DeleteThingShadow where-        toQuery = const mempty---- | The output from the DeleteThingShadow operation.------------ /See:/ 'deleteThingShadowResponse' smart constructor.-data DeleteThingShadowResponse = DeleteThingShadowResponse'-  { _dtsrsResponseStatus :: !Int-  , _dtsrsPayload        :: !ByteString-  } deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteThingShadowResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dtsrsResponseStatus' - -- | The response status code.------ * 'dtsrsPayload' - The state information, in JSON format.-deleteThingShadowResponse-    :: Int -- ^ 'dtsrsResponseStatus'-    -> ByteString -- ^ 'dtsrsPayload'-    -> DeleteThingShadowResponse-deleteThingShadowResponse pResponseStatus_ pPayload_ =-  DeleteThingShadowResponse'-    {_dtsrsResponseStatus = pResponseStatus_, _dtsrsPayload = pPayload_}----- | -- | The response status code.-dtsrsResponseStatus :: Lens' DeleteThingShadowResponse Int-dtsrsResponseStatus = lens _dtsrsResponseStatus (\ s a -> s{_dtsrsResponseStatus = a})---- | The state information, in JSON format.-dtsrsPayload :: Lens' DeleteThingShadowResponse ByteString-dtsrsPayload = lens _dtsrsPayload (\ s a -> s{_dtsrsPayload = a})--instance NFData DeleteThingShadowResponse where
− gen/Network/AWS/IoTData/GetThingShadow.hs
@@ -1,131 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric      #-}-{-# LANGUAGE OverloadedStrings  #-}-{-# LANGUAGE RecordWildCards    #-}-{-# LANGUAGE TypeFamilies       #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds   #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module      : Network.AWS.IoTData.GetThingShadow--- Copyright   : (c) 2013-2018 Brendan Hay--- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability   : auto-generated--- Portability : non-portable (GHC extensions)------ Gets the thing shadow for the specified thing.--------- For more information, see <http://docs.aws.amazon.com/iot/latest/developerguide/API_GetThingShadow.html GetThingShadow> in the /AWS IoT Developer Guide/ .----module Network.AWS.IoTData.GetThingShadow-    (-    -- * Creating a Request-      getThingShadow-    , GetThingShadow-    -- * Request Lenses-    , gtsThingName--    -- * Destructuring the Response-    , getThingShadowResponse-    , GetThingShadowResponse-    -- * Response Lenses-    , gtsrsPayload-    , gtsrsResponseStatus-    ) where--import Network.AWS.IoTData.Types-import Network.AWS.IoTData.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | The input for the GetThingShadow operation.------------ /See:/ 'getThingShadow' smart constructor.-newtype GetThingShadow = GetThingShadow'-  { _gtsThingName :: Text-  } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetThingShadow' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gtsThingName' - The name of the thing.-getThingShadow-    :: Text -- ^ 'gtsThingName'-    -> GetThingShadow-getThingShadow pThingName_ = GetThingShadow' {_gtsThingName = pThingName_}----- | The name of the thing.-gtsThingName :: Lens' GetThingShadow Text-gtsThingName = lens _gtsThingName (\ s a -> s{_gtsThingName = a})--instance AWSRequest GetThingShadow where-        type Rs GetThingShadow = GetThingShadowResponse-        request = get ioTData-        response-          = receiveBytes-              (\ s h x ->-                 GetThingShadowResponse' <$>-                   (pure (Just x)) <*> (pure (fromEnum s)))--instance Hashable GetThingShadow where--instance NFData GetThingShadow where--instance ToHeaders GetThingShadow where-        toHeaders = const mempty--instance ToPath GetThingShadow where-        toPath GetThingShadow'{..}-          = mconcat ["/things/", toBS _gtsThingName, "/shadow"]--instance ToQuery GetThingShadow where-        toQuery = const mempty---- | The output from the GetThingShadow operation.------------ /See:/ 'getThingShadowResponse' smart constructor.-data GetThingShadowResponse = GetThingShadowResponse'-  { _gtsrsPayload        :: !(Maybe ByteString)-  , _gtsrsResponseStatus :: !Int-  } deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'GetThingShadowResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gtsrsPayload' - The state information, in JSON format.------ * 'gtsrsResponseStatus' - -- | The response status code.-getThingShadowResponse-    :: Int -- ^ 'gtsrsResponseStatus'-    -> GetThingShadowResponse-getThingShadowResponse pResponseStatus_ =-  GetThingShadowResponse'-    {_gtsrsPayload = Nothing, _gtsrsResponseStatus = pResponseStatus_}----- | The state information, in JSON format.-gtsrsPayload :: Lens' GetThingShadowResponse (Maybe ByteString)-gtsrsPayload = lens _gtsrsPayload (\ s a -> s{_gtsrsPayload = a})---- | -- | The response status code.-gtsrsResponseStatus :: Lens' GetThingShadowResponse Int-gtsrsResponseStatus = lens _gtsrsResponseStatus (\ s a -> s{_gtsrsResponseStatus = a})--instance NFData GetThingShadowResponse where
− gen/Network/AWS/IoTData/Publish.hs
@@ -1,123 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric      #-}-{-# LANGUAGE OverloadedStrings  #-}-{-# LANGUAGE RecordWildCards    #-}-{-# LANGUAGE TypeFamilies       #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds   #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module      : Network.AWS.IoTData.Publish--- Copyright   : (c) 2013-2018 Brendan Hay--- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability   : auto-generated--- Portability : non-portable (GHC extensions)------ Publishes state information.--------- For more information, see <http://docs.aws.amazon.com/iot/latest/developerguide/protocols.html#http HTTP Protocol> in the /AWS IoT Developer Guide/ .----module Network.AWS.IoTData.Publish-    (-    -- * Creating a Request-      publish-    , Publish-    -- * Request Lenses-    , pPayload-    , pQos-    , pTopic--    -- * Destructuring the Response-    , publishResponse-    , PublishResponse-    ) where--import Network.AWS.IoTData.Types-import Network.AWS.IoTData.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | The input for the Publish operation.------------ /See:/ 'publish' smart constructor.-data Publish = Publish'-  { _pPayload :: !(Maybe ByteString)-  , _pQos     :: !(Maybe Nat)-  , _pTopic   :: !Text-  } deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'Publish' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'pPayload' - The state information, in JSON format.------ * 'pQos' - The Quality of Service (QoS) level.------ * 'pTopic' - The name of the MQTT topic.-publish-    :: Text -- ^ 'pTopic'-    -> Publish-publish pTopic_ =-  Publish' {_pPayload = Nothing, _pQos = Nothing, _pTopic = pTopic_}----- | The state information, in JSON format.-pPayload :: Lens' Publish (Maybe ByteString)-pPayload = lens _pPayload (\ s a -> s{_pPayload = a})---- | The Quality of Service (QoS) level.-pQos :: Lens' Publish (Maybe Natural)-pQos = lens _pQos (\ s a -> s{_pQos = a}) . mapping _Nat---- | The name of the MQTT topic.-pTopic :: Lens' Publish Text-pTopic = lens _pTopic (\ s a -> s{_pTopic = a})--instance AWSRequest Publish where-        type Rs Publish = PublishResponse-        request = postBody ioTData-        response = receiveNull PublishResponse'--instance Hashable Publish where--instance NFData Publish where--instance ToBody Publish where-        toBody = toBody . _pPayload--instance ToHeaders Publish where-        toHeaders = const mempty--instance ToPath Publish where-        toPath Publish'{..}-          = mconcat ["/topics/", toBS _pTopic]--instance ToQuery Publish where-        toQuery Publish'{..} = mconcat ["qos" =: _pQos]---- | /See:/ 'publishResponse' smart constructor.-data PublishResponse =-  PublishResponse'-  deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'PublishResponse' with the minimum fields required to make a request.----publishResponse-    :: PublishResponse-publishResponse = PublishResponse'---instance NFData PublishResponse where
− gen/Network/AWS/IoTData/Types.hs
@@ -1,155 +0,0 @@-{-# LANGUAGE OverloadedStrings #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module      : Network.AWS.IoTData.Types--- Copyright   : (c) 2013-2018 Brendan Hay--- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability   : auto-generated--- Portability : non-portable (GHC extensions)----module Network.AWS.IoTData.Types-    (-    -- * Service Configuration-      ioTData--    -- * Errors-    , _InvalidRequestException-    , _ConflictException-    , _RequestEntityTooLargeException-    , _ThrottlingException-    , _MethodNotAllowedException-    , _InternalFailureException-    , _ServiceUnavailableException-    , _UnauthorizedException-    , _ResourceNotFoundException-    , _UnsupportedDocumentEncodingException-    ) where--import Network.AWS.IoTData.Types.Product-import Network.AWS.IoTData.Types.Sum-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Sign.V4---- | API version @2015-05-28@ of the Amazon IoT Data Plane SDK configuration.-ioTData :: Service-ioTData =-  Service-    { _svcAbbrev = "IoTData"-    , _svcSigner = v4-    , _svcPrefix = "data.iot"-    , _svcVersion = "2015-05-28"-    , _svcEndpoint = defaultEndpoint ioTData-    , _svcTimeout = Just 70-    , _svcCheck = statusSuccess-    , _svcError = parseJSONError "IoTData"-    , _svcRetry = retry-    }-  where-    retry =-      Exponential-        { _retryBase = 5.0e-2-        , _retryGrowth = 2-        , _retryAttempts = 5-        , _retryCheck = check-        }-    check e-      | has (hasCode "ThrottledException" . hasStatus 400) e =-        Just "throttled_exception"-      | has (hasStatus 429) e = Just "too_many_requests"-      | has (hasCode "ThrottlingException" . hasStatus 400) e =-        Just "throttling_exception"-      | has (hasCode "Throttling" . hasStatus 400) e = Just "throttling"-      | has (hasStatus 504) e = Just "gateway_timeout"-      | has (hasCode "RequestThrottledException" . hasStatus 400) e =-        Just "request_throttled_exception"-      | has (hasStatus 502) e = Just "bad_gateway"-      | has (hasStatus 503) e = Just "service_unavailable"-      | has (hasStatus 500) e = Just "general_server_error"-      | has (hasStatus 509) e = Just "limit_exceeded"-      | otherwise = Nothing----- | The request is not valid.-------_InvalidRequestException :: AsError a => Getting (First ServiceError) a ServiceError-_InvalidRequestException =-  _MatchServiceError ioTData "InvalidRequestException" . hasStatus 400----- | The specified version does not match the version of the document.-------_ConflictException :: AsError a => Getting (First ServiceError) a ServiceError-_ConflictException =-  _MatchServiceError ioTData "ConflictException" . hasStatus 409----- | The payload exceeds the maximum size allowed.-------_RequestEntityTooLargeException :: AsError a => Getting (First ServiceError) a ServiceError-_RequestEntityTooLargeException =-  _MatchServiceError ioTData "RequestEntityTooLargeException" . hasStatus 413----- | The rate exceeds the limit.-------_ThrottlingException :: AsError a => Getting (First ServiceError) a ServiceError-_ThrottlingException =-  _MatchServiceError ioTData "ThrottlingException" . hasStatus 429----- | The specified combination of HTTP verb and URI is not supported.-------_MethodNotAllowedException :: AsError a => Getting (First ServiceError) a ServiceError-_MethodNotAllowedException =-  _MatchServiceError ioTData "MethodNotAllowedException" . hasStatus 405----- | An unexpected error has occurred.-------_InternalFailureException :: AsError a => Getting (First ServiceError) a ServiceError-_InternalFailureException =-  _MatchServiceError ioTData "InternalFailureException" . hasStatus 500----- | The service is temporarily unavailable.-------_ServiceUnavailableException :: AsError a => Getting (First ServiceError) a ServiceError-_ServiceUnavailableException =-  _MatchServiceError ioTData "ServiceUnavailableException" . hasStatus 503----- | You are not authorized to perform this operation.-------_UnauthorizedException :: AsError a => Getting (First ServiceError) a ServiceError-_UnauthorizedException =-  _MatchServiceError ioTData "UnauthorizedException" . hasStatus 401----- | The specified resource does not exist.-------_ResourceNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError-_ResourceNotFoundException =-  _MatchServiceError ioTData "ResourceNotFoundException" . hasStatus 404----- | The document encoding is not supported.-------_UnsupportedDocumentEncodingException :: AsError a => Getting (First ServiceError) a ServiceError-_UnsupportedDocumentEncodingException =-  _MatchServiceError ioTData "UnsupportedDocumentEncodingException" .-  hasStatus 415-
− gen/Network/AWS/IoTData/Types/Product.hs
@@ -1,22 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric      #-}-{-# LANGUAGE OverloadedStrings  #-}-{-# LANGUAGE RecordWildCards    #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module      : Network.AWS.IoTData.Types.Product--- Copyright   : (c) 2013-2018 Brendan Hay--- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability   : auto-generated--- Portability : non-portable (GHC extensions)----module Network.AWS.IoTData.Types.Product where--import Network.AWS.IoTData.Types.Sum-import Network.AWS.Lens-import Network.AWS.Prelude
− gen/Network/AWS/IoTData/Types/Sum.hs
@@ -1,20 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric      #-}-{-# LANGUAGE LambdaCase         #-}-{-# LANGUAGE OverloadedStrings  #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module      : Network.AWS.IoTData.Types.Sum--- Copyright   : (c) 2013-2018 Brendan Hay--- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability   : auto-generated--- Portability : non-portable (GHC extensions)----module Network.AWS.IoTData.Types.Sum where--import Network.AWS.Prelude
− gen/Network/AWS/IoTData/UpdateThingShadow.hs
@@ -1,144 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric      #-}-{-# LANGUAGE OverloadedStrings  #-}-{-# LANGUAGE RecordWildCards    #-}-{-# LANGUAGE TypeFamilies       #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds   #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module      : Network.AWS.IoTData.UpdateThingShadow--- Copyright   : (c) 2013-2018 Brendan Hay--- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability   : auto-generated--- Portability : non-portable (GHC extensions)------ Updates the thing shadow for the specified thing.--------- For more information, see <http://docs.aws.amazon.com/iot/latest/developerguide/API_UpdateThingShadow.html UpdateThingShadow> in the /AWS IoT Developer Guide/ .----module Network.AWS.IoTData.UpdateThingShadow-    (-    -- * Creating a Request-      updateThingShadow-    , UpdateThingShadow-    -- * Request Lenses-    , utsThingName-    , utsPayload--    -- * Destructuring the Response-    , updateThingShadowResponse-    , UpdateThingShadowResponse-    -- * Response Lenses-    , utsrsPayload-    , utsrsResponseStatus-    ) where--import Network.AWS.IoTData.Types-import Network.AWS.IoTData.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | The input for the UpdateThingShadow operation.------------ /See:/ 'updateThingShadow' smart constructor.-data UpdateThingShadow = UpdateThingShadow'-  { _utsThingName :: !Text-  , _utsPayload   :: !ByteString-  } deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateThingShadow' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'utsThingName' - The name of the thing.------ * 'utsPayload' - The state information, in JSON format.-updateThingShadow-    :: Text -- ^ 'utsThingName'-    -> ByteString -- ^ 'utsPayload'-    -> UpdateThingShadow-updateThingShadow pThingName_ pPayload_ =-  UpdateThingShadow' {_utsThingName = pThingName_, _utsPayload = pPayload_}----- | The name of the thing.-utsThingName :: Lens' UpdateThingShadow Text-utsThingName = lens _utsThingName (\ s a -> s{_utsThingName = a})---- | The state information, in JSON format.-utsPayload :: Lens' UpdateThingShadow ByteString-utsPayload = lens _utsPayload (\ s a -> s{_utsPayload = a})--instance AWSRequest UpdateThingShadow where-        type Rs UpdateThingShadow = UpdateThingShadowResponse-        request = postBody ioTData-        response-          = receiveBytes-              (\ s h x ->-                 UpdateThingShadowResponse' <$>-                   (pure (Just x)) <*> (pure (fromEnum s)))--instance Hashable UpdateThingShadow where--instance NFData UpdateThingShadow where--instance ToBody UpdateThingShadow where-        toBody = toBody . _utsPayload--instance ToHeaders UpdateThingShadow where-        toHeaders = const mempty--instance ToPath UpdateThingShadow where-        toPath UpdateThingShadow'{..}-          = mconcat ["/things/", toBS _utsThingName, "/shadow"]--instance ToQuery UpdateThingShadow where-        toQuery = const mempty---- | The output from the UpdateThingShadow operation.------------ /See:/ 'updateThingShadowResponse' smart constructor.-data UpdateThingShadowResponse = UpdateThingShadowResponse'-  { _utsrsPayload        :: !(Maybe ByteString)-  , _utsrsResponseStatus :: !Int-  } deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateThingShadowResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'utsrsPayload' - The state information, in JSON format.------ * 'utsrsResponseStatus' - -- | The response status code.-updateThingShadowResponse-    :: Int -- ^ 'utsrsResponseStatus'-    -> UpdateThingShadowResponse-updateThingShadowResponse pResponseStatus_ =-  UpdateThingShadowResponse'-    {_utsrsPayload = Nothing, _utsrsResponseStatus = pResponseStatus_}----- | The state information, in JSON format.-utsrsPayload :: Lens' UpdateThingShadowResponse (Maybe ByteString)-utsrsPayload = lens _utsrsPayload (\ s a -> s{_utsrsPayload = a})---- | -- | The response status code.-utsrsResponseStatus :: Lens' UpdateThingShadowResponse Int-utsrsResponseStatus = lens _utsrsResponseStatus (\ s a -> s{_utsrsResponseStatus = a})--instance NFData UpdateThingShadowResponse where
− gen/Network/AWS/IoTData/Waiters.hs
@@ -1,21 +0,0 @@-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE TypeFamilies      #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module      : Network.AWS.IoTData.Waiters--- Copyright   : (c) 2013-2018 Brendan Hay--- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability   : auto-generated--- Portability : non-portable (GHC extensions)----module Network.AWS.IoTData.Waiters where--import Network.AWS.IoTData.Types-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Waiter
test/Main.hs view
@@ -2,20 +2,22 @@  -- | -- Module      : Main--- Copyright   : (c) 2013-2018 Brendan Hay+-- Copyright   : (c) 2013-2023 Brendan Hay -- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>+-- Maintainer  : Brendan Hay -- Stability   : auto-generated -- Portability : non-portable (GHC extensions)--- module Main (main) where +import Test.Amazonka.IoTData+import Test.Amazonka.IoTData.Internal import Test.Tasty-import Test.AWS.IoTData-import Test.AWS.IoTData.Internal  main :: IO ()-main = defaultMain $ testGroup "IoTData"-    [ testGroup "tests"    tests-    , testGroup "fixtures" fixtures-    ]+main =+  defaultMain $+    testGroup+      "IoTData"+      [ testGroup "tests" tests,+        testGroup "fixtures" fixtures+      ]
− test/Test/AWS/Gen/IoTData.hs
@@ -1,111 +0,0 @@-{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-orphans        #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module      : Test.AWS.Gen.IoTData--- Copyright   : (c) 2013-2018 Brendan Hay--- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability   : auto-generated--- Portability : non-portable (GHC extensions)----module Test.AWS.Gen.IoTData where--import Data.Proxy-import Network.AWS.IoTData-import Test.AWS.Fixture-import Test.AWS.IoTData.Internal-import Test.AWS.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"---         [ requestGetThingShadow $---             getThingShadow------         , requestDeleteThingShadow $---             deleteThingShadow------         , requestUpdateThingShadow $---             updateThingShadow------         , requestPublish $---             publish------           ]----     , testGroup "response"---         [ responseGetThingShadow $---             getThingShadowResponse------         , responseDeleteThingShadow $---             deleteThingShadowResponse------         , responseUpdateThingShadow $---             updateThingShadowResponse------         , responsePublish $---             publishResponse------           ]---     ]---- Requests--requestGetThingShadow :: GetThingShadow -> TestTree-requestGetThingShadow = req-    "GetThingShadow"-    "fixture/GetThingShadow.yaml"--requestDeleteThingShadow :: DeleteThingShadow -> TestTree-requestDeleteThingShadow = req-    "DeleteThingShadow"-    "fixture/DeleteThingShadow.yaml"--requestUpdateThingShadow :: UpdateThingShadow -> TestTree-requestUpdateThingShadow = req-    "UpdateThingShadow"-    "fixture/UpdateThingShadow.yaml"--requestPublish :: Publish -> TestTree-requestPublish = req-    "Publish"-    "fixture/Publish.yaml"---- Responses--responseGetThingShadow :: GetThingShadowResponse -> TestTree-responseGetThingShadow = res-    "GetThingShadowResponse"-    "fixture/GetThingShadowResponse.proto"-    ioTData-    (Proxy :: Proxy GetThingShadow)--responseDeleteThingShadow :: DeleteThingShadowResponse -> TestTree-responseDeleteThingShadow = res-    "DeleteThingShadowResponse"-    "fixture/DeleteThingShadowResponse.proto"-    ioTData-    (Proxy :: Proxy DeleteThingShadow)--responseUpdateThingShadow :: UpdateThingShadowResponse -> TestTree-responseUpdateThingShadow = res-    "UpdateThingShadowResponse"-    "fixture/UpdateThingShadowResponse.proto"-    ioTData-    (Proxy :: Proxy UpdateThingShadow)--responsePublish :: PublishResponse -> TestTree-responsePublish = res-    "PublishResponse"-    "fixture/PublishResponse.proto"-    ioTData-    (Proxy :: Proxy Publish)
− test/Test/AWS/IoTData.hs
@@ -1,20 +0,0 @@--- |--- Module      : Test.AWS.IoTData--- Copyright   : (c) 2013-2018 Brendan Hay--- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability   : auto-generated--- Portability : non-portable (GHC extensions)----module Test.AWS.IoTData-    ( tests-    , fixtures-    ) where--import Test.Tasty (TestTree)--tests :: [TestTree]-tests = []--fixtures :: [TestTree]-fixtures = []
− test/Test/AWS/IoTData/Internal.hs
@@ -1,9 +0,0 @@--- |--- Module      : Test.AWS.IoTData.Internal--- Copyright   : (c) 2013-2018 Brendan Hay--- License     : Mozilla Public License, v. 2.0.--- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability   : auto-generated--- Portability : non-portable (GHC extensions)----module Test.AWS.IoTData.Internal where
+ test/Test/Amazonka/Gen/IoTData.hs view
@@ -0,0 +1,178 @@+{-# 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.IoTData+-- 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.IoTData where++import Amazonka.IoTData+import qualified Data.Proxy as Proxy+import Test.Amazonka.Fixture+import Test.Amazonka.IoTData.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"+--         [ requestDeleteThingShadow $+--             newDeleteThingShadow+--+--         , requestGetRetainedMessage $+--             newGetRetainedMessage+--+--         , requestGetThingShadow $+--             newGetThingShadow+--+--         , requestListNamedShadowsForThing $+--             newListNamedShadowsForThing+--+--         , requestListRetainedMessages $+--             newListRetainedMessages+--+--         , requestPublish $+--             newPublish+--+--         , requestUpdateThingShadow $+--             newUpdateThingShadow+--+--           ]++--     , testGroup "response"+--         [ responseDeleteThingShadow $+--             newDeleteThingShadowResponse+--+--         , responseGetRetainedMessage $+--             newGetRetainedMessageResponse+--+--         , responseGetThingShadow $+--             newGetThingShadowResponse+--+--         , responseListNamedShadowsForThing $+--             newListNamedShadowsForThingResponse+--+--         , responseListRetainedMessages $+--             newListRetainedMessagesResponse+--+--         , responsePublish $+--             newPublishResponse+--+--         , responseUpdateThingShadow $+--             newUpdateThingShadowResponse+--+--           ]+--     ]++-- Requests++requestDeleteThingShadow :: DeleteThingShadow -> TestTree+requestDeleteThingShadow =+  req+    "DeleteThingShadow"+    "fixture/DeleteThingShadow.yaml"++requestGetRetainedMessage :: GetRetainedMessage -> TestTree+requestGetRetainedMessage =+  req+    "GetRetainedMessage"+    "fixture/GetRetainedMessage.yaml"++requestGetThingShadow :: GetThingShadow -> TestTree+requestGetThingShadow =+  req+    "GetThingShadow"+    "fixture/GetThingShadow.yaml"++requestListNamedShadowsForThing :: ListNamedShadowsForThing -> TestTree+requestListNamedShadowsForThing =+  req+    "ListNamedShadowsForThing"+    "fixture/ListNamedShadowsForThing.yaml"++requestListRetainedMessages :: ListRetainedMessages -> TestTree+requestListRetainedMessages =+  req+    "ListRetainedMessages"+    "fixture/ListRetainedMessages.yaml"++requestPublish :: Publish -> TestTree+requestPublish =+  req+    "Publish"+    "fixture/Publish.yaml"++requestUpdateThingShadow :: UpdateThingShadow -> TestTree+requestUpdateThingShadow =+  req+    "UpdateThingShadow"+    "fixture/UpdateThingShadow.yaml"++-- Responses++responseDeleteThingShadow :: DeleteThingShadowResponse -> TestTree+responseDeleteThingShadow =+  res+    "DeleteThingShadowResponse"+    "fixture/DeleteThingShadowResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy DeleteThingShadow)++responseGetRetainedMessage :: GetRetainedMessageResponse -> TestTree+responseGetRetainedMessage =+  res+    "GetRetainedMessageResponse"+    "fixture/GetRetainedMessageResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy GetRetainedMessage)++responseGetThingShadow :: GetThingShadowResponse -> TestTree+responseGetThingShadow =+  res+    "GetThingShadowResponse"+    "fixture/GetThingShadowResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy GetThingShadow)++responseListNamedShadowsForThing :: ListNamedShadowsForThingResponse -> TestTree+responseListNamedShadowsForThing =+  res+    "ListNamedShadowsForThingResponse"+    "fixture/ListNamedShadowsForThingResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy ListNamedShadowsForThing)++responseListRetainedMessages :: ListRetainedMessagesResponse -> TestTree+responseListRetainedMessages =+  res+    "ListRetainedMessagesResponse"+    "fixture/ListRetainedMessagesResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy ListRetainedMessages)++responsePublish :: PublishResponse -> TestTree+responsePublish =+  res+    "PublishResponse"+    "fixture/PublishResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy Publish)++responseUpdateThingShadow :: UpdateThingShadowResponse -> TestTree+responseUpdateThingShadow =+  res+    "UpdateThingShadowResponse"+    "fixture/UpdateThingShadowResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy UpdateThingShadow)
+ test/Test/Amazonka/IoTData.hs view
@@ -0,0 +1,20 @@+-- |+-- Module      : Test.Amazonka.IoTData+-- 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.IoTData+  ( tests,+    fixtures,+  )+where++import Test.Tasty (TestTree)++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/Amazonka/IoTData/Internal.hs view
@@ -0,0 +1,8 @@+-- |+-- Module      : Test.Amazonka.IoTData.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.IoTData.Internal where