1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146
|
// Code generated by smithy-go-codegen DO NOT EDIT.
package databasemigrationservice
import (
"context"
"fmt"
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
"github.com/aws/smithy-go/middleware"
smithyhttp "github.com/aws/smithy-go/transport/http"
)
// Migrates 10 active and enabled Amazon SNS subscriptions at a time and converts
// them to corresponding Amazon EventBridge rules. By default, this operation
// migrates subscriptions only when all your replication instance versions are
// 3.4.5 or higher. If any replication instances are from versions earlier than
// 3.4.5, the operation raises an error and tells you to upgrade these instances to
// version 3.4.5 or higher. To enable migration regardless of version, set the
// Force option to true. However, if you don't upgrade instances earlier than
// version 3.4.5, some types of events might not be available when you use Amazon
// EventBridge. To call this operation, make sure that you have certain permissions
// added to your user account. For more information, see Migrating event
// subscriptions to Amazon EventBridge (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Events.html#CHAP_Events-migrate-to-eventbridge)
// in the Amazon Web Services Database Migration Service User Guide.
func (c *Client) UpdateSubscriptionsToEventBridge(ctx context.Context, params *UpdateSubscriptionsToEventBridgeInput, optFns ...func(*Options)) (*UpdateSubscriptionsToEventBridgeOutput, error) {
if params == nil {
params = &UpdateSubscriptionsToEventBridgeInput{}
}
result, metadata, err := c.invokeOperation(ctx, "UpdateSubscriptionsToEventBridge", params, optFns, c.addOperationUpdateSubscriptionsToEventBridgeMiddlewares)
if err != nil {
return nil, err
}
out := result.(*UpdateSubscriptionsToEventBridgeOutput)
out.ResultMetadata = metadata
return out, nil
}
type UpdateSubscriptionsToEventBridgeInput struct {
// When set to true, this operation migrates DMS subscriptions for Amazon SNS
// notifications no matter what your replication instance version is. If not set or
// set to false, this operation runs only when all your replication instances are
// from DMS version 3.4.5 or higher.
ForceMove *bool
noSmithyDocumentSerde
}
type UpdateSubscriptionsToEventBridgeOutput struct {
// A string that indicates how many event subscriptions were migrated and how many
// remain to be migrated.
Result *string
// Metadata pertaining to the operation's result.
ResultMetadata middleware.Metadata
noSmithyDocumentSerde
}
func (c *Client) addOperationUpdateSubscriptionsToEventBridgeMiddlewares(stack *middleware.Stack, options Options) (err error) {
if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil {
return err
}
err = stack.Serialize.Add(&awsAwsjson11_serializeOpUpdateSubscriptionsToEventBridge{}, middleware.After)
if err != nil {
return err
}
err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpUpdateSubscriptionsToEventBridge{}, middleware.After)
if err != nil {
return err
}
if err := addProtocolFinalizerMiddlewares(stack, options, "UpdateSubscriptionsToEventBridge"); err != nil {
return fmt.Errorf("add protocol finalizers: %v", err)
}
if err = addlegacyEndpointContextSetter(stack, options); err != nil {
return err
}
if err = addSetLoggerMiddleware(stack, options); err != nil {
return err
}
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
return err
}
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
return err
}
if err = addResolveEndpointMiddleware(stack, options); err != nil {
return err
}
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
return err
}
if err = addRetryMiddlewares(stack, options); err != nil {
return err
}
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
return err
}
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
return err
}
if err = addClientUserAgent(stack, options); err != nil {
return err
}
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
return err
}
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
return err
}
if err = addSetLegacyContextSigningOptionsMiddleware(stack); err != nil {
return err
}
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opUpdateSubscriptionsToEventBridge(options.Region), middleware.Before); err != nil {
return err
}
if err = awsmiddleware.AddRecursionDetection(stack); err != nil {
return err
}
if err = addRequestIDRetrieverMiddleware(stack); err != nil {
return err
}
if err = addResponseErrorMiddleware(stack); err != nil {
return err
}
if err = addRequestResponseLogging(stack, options); err != nil {
return err
}
if err = addDisableHTTPSMiddleware(stack, options); err != nil {
return err
}
return nil
}
func newServiceMetadataMiddleware_opUpdateSubscriptionsToEventBridge(region string) *awsmiddleware.RegisterServiceMetadata {
return &awsmiddleware.RegisterServiceMetadata{
Region: region,
ServiceID: ServiceID,
OperationName: "UpdateSubscriptionsToEventBridge",
}
}
|