-
Notifications
You must be signed in to change notification settings - Fork 626
/
api_op_ExportApi.go
161 lines (141 loc) · 4.46 KB
/
api_op_ExportApi.go
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
// Code generated by smithy-go-codegen DO NOT EDIT.
package apigatewayv2
import (
"context"
"fmt"
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
"github.com/aws/smithy-go/middleware"
smithyhttp "github.com/aws/smithy-go/transport/http"
)
func (c *Client) ExportApi(ctx context.Context, params *ExportApiInput, optFns ...func(*Options)) (*ExportApiOutput, error) {
if params == nil {
params = &ExportApiInput{}
}
result, metadata, err := c.invokeOperation(ctx, "ExportApi", params, optFns, c.addOperationExportApiMiddlewares)
if err != nil {
return nil, err
}
out := result.(*ExportApiOutput)
out.ResultMetadata = metadata
return out, nil
}
type ExportApiInput struct {
// The API identifier.
//
// This member is required.
ApiId *string
// The output type of the exported definition file. Valid values are JSON and YAML.
//
// This member is required.
OutputType *string
// The version of the API specification to use. OAS30, for OpenAPI 3.0, is the
// only supported value.
//
// This member is required.
Specification *string
// The version of the API Gateway export algorithm. API Gateway uses the latest
// version by default. Currently, the only supported version is 1.0.
ExportVersion *string
// Specifies whether to include [API Gateway extensions] in the exported API definition. API Gateway
// extensions are included by default.
//
// [API Gateway extensions]: https://docs.aws.amazon.com//apigateway/latest/developerguide/api-gateway-swagger-extensions.html
IncludeExtensions *bool
// The name of the API stage to export. If you don't specify this property, a
// representation of the latest API configuration is exported.
StageName *string
noSmithyDocumentSerde
}
type ExportApiOutput struct {
// Represents an exported definition of an API in a particular output format, for
// example, YAML. The API is serialized to the requested specification, for
// example, OpenAPI 3.0.
Body []byte
// Metadata pertaining to the operation's result.
ResultMetadata middleware.Metadata
noSmithyDocumentSerde
}
func (c *Client) addOperationExportApiMiddlewares(stack *middleware.Stack, options Options) (err error) {
if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil {
return err
}
err = stack.Serialize.Add(&awsRestjson1_serializeOpExportApi{}, middleware.After)
if err != nil {
return err
}
err = stack.Deserialize.Add(&awsRestjson1_deserializeOpExportApi{}, middleware.After)
if err != nil {
return err
}
if err := addProtocolFinalizerMiddlewares(stack, options, "ExportApi"); 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 = addClientRequestID(stack); err != nil {
return err
}
if err = addComputeContentLength(stack); err != nil {
return err
}
if err = addResolveEndpointMiddleware(stack, options); err != nil {
return err
}
if err = addComputePayloadSHA256(stack); err != nil {
return err
}
if err = addRetry(stack, options); err != nil {
return err
}
if err = addRawResponseToMetadata(stack); err != nil {
return err
}
if err = 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 = addOpExportApiValidationMiddleware(stack); err != nil {
return err
}
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opExportApi(options.Region), middleware.Before); err != nil {
return err
}
if err = 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_opExportApi(region string) *awsmiddleware.RegisterServiceMetadata {
return &awsmiddleware.RegisterServiceMetadata{
Region: region,
ServiceID: ServiceID,
OperationName: "ExportApi",
}
}