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 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189
|
// Code generated by smithy-go-codegen DO NOT EDIT.
package drs
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/aws-sdk-go-v2/service/drs/types"
"github.com/aws/smithy-go/middleware"
smithyhttp "github.com/aws/smithy-go/transport/http"
)
// Gets a ReplicationConfiguration, filtered by Source Server ID.
func (c *Client) GetReplicationConfiguration(ctx context.Context, params *GetReplicationConfigurationInput, optFns ...func(*Options)) (*GetReplicationConfigurationOutput, error) {
if params == nil {
params = &GetReplicationConfigurationInput{}
}
result, metadata, err := c.invokeOperation(ctx, "GetReplicationConfiguration", params, optFns, c.addOperationGetReplicationConfigurationMiddlewares)
if err != nil {
return nil, err
}
out := result.(*GetReplicationConfigurationOutput)
out.ResultMetadata = metadata
return out, nil
}
type GetReplicationConfigurationInput struct {
// The ID of the Source Serve for this Replication Configuration.r
//
// This member is required.
SourceServerID *string
noSmithyDocumentSerde
}
type GetReplicationConfigurationOutput struct {
// Whether to associate the default Elastic Disaster Recovery Security group with
// the Replication Configuration.
AssociateDefaultSecurityGroup *bool
// Whether to allow the AWS replication agent to automatically replicate newly
// added disks.
AutoReplicateNewDisks *bool
// Configure bandwidth throttling for the outbound data transfer rate of the
// Source Server in Mbps.
BandwidthThrottling int64
// Whether to create a Public IP for the Recovery Instance by default.
CreatePublicIP *bool
// The data plane routing mechanism that will be used for replication.
DataPlaneRouting types.ReplicationConfigurationDataPlaneRouting
// The Staging Disk EBS volume type to be used during replication.
DefaultLargeStagingDiskType types.ReplicationConfigurationDefaultLargeStagingDiskType
// The type of EBS encryption to be used during replication.
EbsEncryption types.ReplicationConfigurationEbsEncryption
// The ARN of the EBS encryption key to be used during replication.
EbsEncryptionKeyArn *string
// The name of the Replication Configuration.
Name *string
// The Point in time (PIT) policy to manage snapshots taken during replication.
PitPolicy []types.PITPolicyRule
// The configuration of the disks of the Source Server to be replicated.
ReplicatedDisks []types.ReplicationConfigurationReplicatedDisk
// The instance type to be used for the replication server.
ReplicationServerInstanceType *string
// The security group IDs that will be used by the replication server.
ReplicationServersSecurityGroupsIDs []string
// The ID of the Source Server for this Replication Configuration.
SourceServerID *string
// The subnet to be used by the replication staging area.
StagingAreaSubnetId *string
// A set of tags to be associated with all resources created in the replication
// staging area: EC2 replication server, EBS volumes, EBS snapshots, etc.
StagingAreaTags map[string]string
// Whether to use a dedicated Replication Server in the replication staging area.
UseDedicatedReplicationServer *bool
// Metadata pertaining to the operation's result.
ResultMetadata middleware.Metadata
noSmithyDocumentSerde
}
func (c *Client) addOperationGetReplicationConfigurationMiddlewares(stack *middleware.Stack, options Options) (err error) {
if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil {
return err
}
err = stack.Serialize.Add(&awsRestjson1_serializeOpGetReplicationConfiguration{}, middleware.After)
if err != nil {
return err
}
err = stack.Deserialize.Add(&awsRestjson1_deserializeOpGetReplicationConfiguration{}, middleware.After)
if err != nil {
return err
}
if err := addProtocolFinalizerMiddlewares(stack, options, "GetReplicationConfiguration"); 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 = addOpGetReplicationConfigurationValidationMiddleware(stack); err != nil {
return err
}
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetReplicationConfiguration(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_opGetReplicationConfiguration(region string) *awsmiddleware.RegisterServiceMetadata {
return &awsmiddleware.RegisterServiceMetadata{
Region: region,
ServiceID: ServiceID,
OperationName: "GetReplicationConfiguration",
}
}
|