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
|
// Code generated by smithy-go-codegen DO NOT EDIT.
package neptunedata
import (
"context"
"fmt"
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
"github.com/aws/aws-sdk-go-v2/service/neptunedata/types"
"github.com/aws/smithy-go/middleware"
smithyhttp "github.com/aws/smithy-go/transport/http"
)
// The fast reset REST API lets you reset a Neptune graph quicky and easily,
// removing all of its data.
//
// Neptune fast reset is a two-step process. First you call ExecuteFastReset with
// action set to initiateDatabaseReset . This returns a UUID token which you then
// include when calling ExecuteFastReset again with action set to
// performDatabaseReset . See [Empty an Amazon Neptune DB cluster using the fast reset API].
//
// When invoking this operation in a Neptune cluster that has IAM authentication
// enabled, the IAM user or role making the request must have a policy attached
// that allows the [neptune-db:ResetDatabase]IAM action in that cluster.
//
// [Empty an Amazon Neptune DB cluster using the fast reset API]: https://docs.aws.amazon.com/neptune/latest/userguide/manage-console-fast-reset.html
// [neptune-db:ResetDatabase]: https://docs.aws.amazon.com/neptune/latest/userguide/iam-dp-actions.html#resetdatabase
func (c *Client) ExecuteFastReset(ctx context.Context, params *ExecuteFastResetInput, optFns ...func(*Options)) (*ExecuteFastResetOutput, error) {
if params == nil {
params = &ExecuteFastResetInput{}
}
result, metadata, err := c.invokeOperation(ctx, "ExecuteFastReset", params, optFns, c.addOperationExecuteFastResetMiddlewares)
if err != nil {
return nil, err
}
out := result.(*ExecuteFastResetOutput)
out.ResultMetadata = metadata
return out, nil
}
type ExecuteFastResetInput struct {
// The fast reset action. One of the following values:
//
// - initiateDatabaseReset – This action generates a unique token needed to
// actually perform the fast reset.
//
// - performDatabaseReset – This action uses the token generated by the
// initiateDatabaseReset action to actually perform the fast reset.
//
// This member is required.
Action types.Action
// The fast-reset token to initiate the reset.
Token *string
noSmithyDocumentSerde
}
type ExecuteFastResetOutput struct {
// The status is only returned for the performDatabaseReset action, and indicates
// whether or not the fast reset rquest is accepted.
//
// This member is required.
Status *string
// The payload is only returned by the initiateDatabaseReset action, and contains
// the unique token to use with the performDatabaseReset action to make the reset
// occur.
Payload *types.FastResetToken
// Metadata pertaining to the operation's result.
ResultMetadata middleware.Metadata
noSmithyDocumentSerde
}
func (c *Client) addOperationExecuteFastResetMiddlewares(stack *middleware.Stack, options Options) (err error) {
if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil {
return err
}
err = stack.Serialize.Add(&awsRestjson1_serializeOpExecuteFastReset{}, middleware.After)
if err != nil {
return err
}
err = stack.Deserialize.Add(&awsRestjson1_deserializeOpExecuteFastReset{}, middleware.After)
if err != nil {
return err
}
if err := addProtocolFinalizerMiddlewares(stack, options, "ExecuteFastReset"); 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 = addTimeOffsetBuild(stack, c); err != nil {
return err
}
if err = addUserAgentRetryMode(stack, options); err != nil {
return err
}
if err = addOpExecuteFastResetValidationMiddleware(stack); err != nil {
return err
}
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opExecuteFastReset(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_opExecuteFastReset(region string) *awsmiddleware.RegisterServiceMetadata {
return &awsmiddleware.RegisterServiceMetadata{
Region: region,
ServiceID: ServiceID,
OperationName: "ExecuteFastReset",
}
}
|