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 190 191 192 193 194 195 196 197 198
|
// Code generated by smithy-go-codegen DO NOT EDIT.
package kafkaconnect
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/kafkaconnect/types"
"github.com/aws/smithy-go/middleware"
smithyhttp "github.com/aws/smithy-go/transport/http"
)
// Creates a connector using the specified properties.
func (c *Client) CreateConnector(ctx context.Context, params *CreateConnectorInput, optFns ...func(*Options)) (*CreateConnectorOutput, error) {
if params == nil {
params = &CreateConnectorInput{}
}
result, metadata, err := c.invokeOperation(ctx, "CreateConnector", params, optFns, c.addOperationCreateConnectorMiddlewares)
if err != nil {
return nil, err
}
out := result.(*CreateConnectorOutput)
out.ResultMetadata = metadata
return out, nil
}
type CreateConnectorInput struct {
// Information about the capacity allocated to the connector. Exactly one of the
// two properties must be specified.
//
// This member is required.
Capacity *types.Capacity
// A map of keys to values that represent the configuration for the connector.
//
// This member is required.
ConnectorConfiguration map[string]string
// The name of the connector.
//
// This member is required.
ConnectorName *string
// Specifies which Apache Kafka cluster to connect to.
//
// This member is required.
KafkaCluster *types.KafkaCluster
// Details of the client authentication used by the Apache Kafka cluster.
//
// This member is required.
KafkaClusterClientAuthentication *types.KafkaClusterClientAuthentication
// Details of encryption in transit to the Apache Kafka cluster.
//
// This member is required.
KafkaClusterEncryptionInTransit *types.KafkaClusterEncryptionInTransit
// The version of Kafka Connect. It has to be compatible with both the Apache
// Kafka cluster's version and the plugins.
//
// This member is required.
KafkaConnectVersion *string
// Specifies which plugins to use for the connector.
//
// This member is required.
Plugins []types.Plugin
// The Amazon Resource Name (ARN) of the IAM role used by the connector to access
// the Amazon Web Services resources that it needs. The types of resources depends
// on the logic of the connector. For example, a connector that has Amazon S3 as a
// destination must have permissions that allow it to write to the S3 destination
// bucket.
//
// This member is required.
ServiceExecutionRoleArn *string
// A summary description of the connector.
ConnectorDescription *string
// Details about log delivery.
LogDelivery *types.LogDelivery
// Specifies which worker configuration to use with the connector.
WorkerConfiguration *types.WorkerConfiguration
noSmithyDocumentSerde
}
type CreateConnectorOutput struct {
// The Amazon Resource Name (ARN) that Amazon assigned to the connector.
ConnectorArn *string
// The name of the connector.
ConnectorName *string
// The state of the connector.
ConnectorState types.ConnectorState
// Metadata pertaining to the operation's result.
ResultMetadata middleware.Metadata
noSmithyDocumentSerde
}
func (c *Client) addOperationCreateConnectorMiddlewares(stack *middleware.Stack, options Options) (err error) {
if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil {
return err
}
err = stack.Serialize.Add(&awsRestjson1_serializeOpCreateConnector{}, middleware.After)
if err != nil {
return err
}
err = stack.Deserialize.Add(&awsRestjson1_deserializeOpCreateConnector{}, middleware.After)
if err != nil {
return err
}
if err := addProtocolFinalizerMiddlewares(stack, options, "CreateConnector"); 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 = addOpCreateConnectorValidationMiddleware(stack); err != nil {
return err
}
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opCreateConnector(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_opCreateConnector(region string) *awsmiddleware.RegisterServiceMetadata {
return &awsmiddleware.RegisterServiceMetadata{
Region: region,
ServiceID: ServiceID,
OperationName: "CreateConnector",
}
}
|