Copyright | (c) 2013-2016 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay <brendan.g.hay@gmail.com> |
Stability | auto-generated |
Portability | non-portable (GHC extensions) |
Safe Haskell | None |
Language | Haskell2010 |
Updates the specified destination of the specified delivery stream.
This operation can be used to change the destination type (for example, to replace the Amazon S3 destination with Amazon Redshift) or change the parameters associated with a given destination (for example, to change the bucket name of the Amazon S3 destination). The update may not occur immediately. The target delivery stream remains active while the configurations are updated, so data writes to the delivery stream can continue during this process. The updated configurations are normally effective within a few minutes.
If the destination type is the same, Amazon Kinesis Firehose merges the configuration parameters specified in the UpdateDestination request with the destination configuration that already exists on the delivery stream. If any of the parameters are not specified in the update request, then the existing configuration parameters are retained. For example, in the Amazon S3 destination, if EncryptionConfiguration is not specified then the existing EncryptionConfiguration is maintained on the destination.
If the destination type is not the same, for example, changing the destination from Amazon S3 to Amazon Redshift, Amazon Kinesis Firehose does not merge any parameters. In this case, all parameters must be specified.
Amazon Kinesis Firehose uses the CurrentDeliveryStreamVersionId
to
avoid race conditions and conflicting merges. This is a required field
in every request and the service only updates the configuration if the
existing configuration matches the VersionId
. After the update is
applied successfully, the VersionId
is updated, which can be retrieved
with the DescribeDeliveryStream operation. The new VersionId
should
be uses to set CurrentDeliveryStreamVersionId
in the next
UpdateDestination operation.
- updateDestination :: Text -> Text -> Text -> UpdateDestination
- data UpdateDestination
- udS3DestinationUpdate :: Lens' UpdateDestination (Maybe S3DestinationUpdate)
- udRedshiftDestinationUpdate :: Lens' UpdateDestination (Maybe RedshiftDestinationUpdate)
- udDeliveryStreamName :: Lens' UpdateDestination Text
- udCurrentDeliveryStreamVersionId :: Lens' UpdateDestination Text
- udDestinationId :: Lens' UpdateDestination Text
- updateDestinationResponse :: Int -> UpdateDestinationResponse
- data UpdateDestinationResponse
- udrsResponseStatus :: Lens' UpdateDestinationResponse Int
Creating a Request
:: Text | |
-> Text | |
-> Text | |
-> UpdateDestination |
Creates a value of UpdateDestination
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
data UpdateDestination Source
Contains the parameters for UpdateDestination.
See: updateDestination
smart constructor.
Request Lenses
udS3DestinationUpdate :: Lens' UpdateDestination (Maybe S3DestinationUpdate) Source
Undocumented member.
udRedshiftDestinationUpdate :: Lens' UpdateDestination (Maybe RedshiftDestinationUpdate) Source
Undocumented member.
udDeliveryStreamName :: Lens' UpdateDestination Text Source
The name of the delivery stream.
udCurrentDeliveryStreamVersionId :: Lens' UpdateDestination Text Source
Obtain this value from the VersionId
result of the
DeliveryStreamDescription operation. This value is required, and
helps the service to perform conditional operations. For example, if
there is a interleaving update and this value is null, then the update
destination fails. After the update is successful, the VersionId
value
is updated. The service then performs a merge of the old configuration
with the new configuration.
udDestinationId :: Lens' UpdateDestination Text Source
The ID of the destination.
Destructuring the Response
updateDestinationResponse Source
Creates a value of UpdateDestinationResponse
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
data UpdateDestinationResponse Source
Contains the output of UpdateDestination.
See: updateDestinationResponse
smart constructor.
Response Lenses
udrsResponseStatus :: Lens' UpdateDestinationResponse Int Source
The response status code.