amazonka-kinesis-firehose-1.4.4: Amazon Kinesis Firehose SDK.

Copyright(c) 2013-2016 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Network.AWS.Firehose.UpdateDestination

Contents

Description

Updates the specified destination of the specified delivery stream. Note: Switching between Elasticsearch and other services is not supported. For Elasticsearch destination, you can only update an existing Elasticsearch destination with this operation.

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, 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, Firehose does not merge any parameters. In this case, all parameters must be specified.

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.

Synopsis

Creating a Request

data UpdateDestination Source #

Contains the parameters for UpdateDestination.

See: updateDestination smart constructor.

Instances

Eq UpdateDestination Source # 
Data UpdateDestination Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> UpdateDestination -> c UpdateDestination #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c UpdateDestination #

toConstr :: UpdateDestination -> Constr #

dataTypeOf :: UpdateDestination -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c UpdateDestination) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c UpdateDestination) #

gmapT :: (forall b. Data b => b -> b) -> UpdateDestination -> UpdateDestination #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> UpdateDestination -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> UpdateDestination -> r #

gmapQ :: (forall d. Data d => d -> u) -> UpdateDestination -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> UpdateDestination -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> UpdateDestination -> m UpdateDestination #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> UpdateDestination -> m UpdateDestination #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> UpdateDestination -> m UpdateDestination #

Read UpdateDestination Source # 
Show UpdateDestination Source # 
Generic UpdateDestination Source # 
Hashable UpdateDestination Source # 
NFData UpdateDestination Source # 

Methods

rnf :: UpdateDestination -> () #

AWSRequest UpdateDestination Source # 
ToPath UpdateDestination Source # 
ToHeaders UpdateDestination Source # 
ToQuery UpdateDestination Source # 
ToJSON UpdateDestination Source # 
type Rep UpdateDestination Source # 
type Rep UpdateDestination = D1 (MetaData "UpdateDestination" "Network.AWS.Firehose.UpdateDestination" "amazonka-kinesis-firehose-1.4.4-3VrKQ1GrRZo75kXUH005Cx" False) (C1 (MetaCons "UpdateDestination'" PrefixI True) ((:*:) ((:*:) (S1 (MetaSel (Just Symbol "_udS3DestinationUpdate") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe S3DestinationUpdate))) ((:*:) (S1 (MetaSel (Just Symbol "_udRedshiftDestinationUpdate") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe RedshiftDestinationUpdate))) (S1 (MetaSel (Just Symbol "_udElasticsearchDestinationUpdate") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe ElasticsearchDestinationUpdate))))) ((:*:) (S1 (MetaSel (Just Symbol "_udDeliveryStreamName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) ((:*:) (S1 (MetaSel (Just Symbol "_udCurrentDeliveryStreamVersionId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text)) (S1 (MetaSel (Just Symbol "_udDestinationId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text))))))
type Rs UpdateDestination Source # 

Request Lenses

udS3DestinationUpdate :: Lens' UpdateDestination (Maybe S3DestinationUpdate) Source #

Describes an update for a destination in Amazon S3.

udRedshiftDestinationUpdate :: Lens' UpdateDestination (Maybe RedshiftDestinationUpdate) Source #

Describes an update for a destination in Amazon Redshift.

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.

Instances

Eq UpdateDestinationResponse Source # 
Data UpdateDestinationResponse Source # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> UpdateDestinationResponse -> c UpdateDestinationResponse #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c UpdateDestinationResponse #

toConstr :: UpdateDestinationResponse -> Constr #

dataTypeOf :: UpdateDestinationResponse -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c UpdateDestinationResponse) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c UpdateDestinationResponse) #

gmapT :: (forall b. Data b => b -> b) -> UpdateDestinationResponse -> UpdateDestinationResponse #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> UpdateDestinationResponse -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> UpdateDestinationResponse -> r #

gmapQ :: (forall d. Data d => d -> u) -> UpdateDestinationResponse -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> UpdateDestinationResponse -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> UpdateDestinationResponse -> m UpdateDestinationResponse #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> UpdateDestinationResponse -> m UpdateDestinationResponse #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> UpdateDestinationResponse -> m UpdateDestinationResponse #

Read UpdateDestinationResponse Source # 
Show UpdateDestinationResponse Source # 
Generic UpdateDestinationResponse Source # 
NFData UpdateDestinationResponse Source # 
type Rep UpdateDestinationResponse Source # 
type Rep UpdateDestinationResponse = D1 (MetaData "UpdateDestinationResponse" "Network.AWS.Firehose.UpdateDestination" "amazonka-kinesis-firehose-1.4.4-3VrKQ1GrRZo75kXUH005Cx" True) (C1 (MetaCons "UpdateDestinationResponse'" PrefixI True) (S1 (MetaSel (Just Symbol "_udrsResponseStatus") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Int)))

Response Lenses