1// Code generated by smithy-go-codegen DO NOT EDIT.
2
3package frauddetector
4
5import (
6	"context"
7	awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
8	"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
9	"github.com/aws/aws-sdk-go-v2/service/frauddetector/types"
10	"github.com/aws/smithy-go/middleware"
11	smithyhttp "github.com/aws/smithy-go/transport/http"
12)
13
14// Gets the details of the specified model version.
15func (c *Client) GetModelVersion(ctx context.Context, params *GetModelVersionInput, optFns ...func(*Options)) (*GetModelVersionOutput, error) {
16	if params == nil {
17		params = &GetModelVersionInput{}
18	}
19
20	result, metadata, err := c.invokeOperation(ctx, "GetModelVersion", params, optFns, c.addOperationGetModelVersionMiddlewares)
21	if err != nil {
22		return nil, err
23	}
24
25	out := result.(*GetModelVersionOutput)
26	out.ResultMetadata = metadata
27	return out, nil
28}
29
30type GetModelVersionInput struct {
31
32	// The model ID.
33	//
34	// This member is required.
35	ModelId *string
36
37	// The model type.
38	//
39	// This member is required.
40	ModelType types.ModelTypeEnum
41
42	// The model version number.
43	//
44	// This member is required.
45	ModelVersionNumber *string
46
47	noSmithyDocumentSerde
48}
49
50type GetModelVersionOutput struct {
51
52	// The model version ARN.
53	Arn *string
54
55	// The event details.
56	ExternalEventsDetail *types.ExternalEventsDetail
57
58	// The model ID.
59	ModelId *string
60
61	// The model type.
62	ModelType types.ModelTypeEnum
63
64	// The model version number.
65	ModelVersionNumber *string
66
67	// The model version status. Possible values are:
68	//
69	// * TRAINING_IN_PROGRESS
70	//
71	// *
72	// TRAINING_COMPLETE
73	//
74	// * ACTIVATE_REQUESTED
75	//
76	// * ACTIVATE_IN_PROGRESS
77	//
78	// * ACTIVE
79	//
80	// *
81	// INACTIVATE_REQUESTED
82	//
83	// * INACTIVATE_IN_PROGRESS
84	//
85	// * INACTIVE
86	//
87	// * ERROR
88	Status *string
89
90	// The training data schema.
91	TrainingDataSchema *types.TrainingDataSchema
92
93	// The training data source.
94	TrainingDataSource types.TrainingDataSourceEnum
95
96	// Metadata pertaining to the operation's result.
97	ResultMetadata middleware.Metadata
98
99	noSmithyDocumentSerde
100}
101
102func (c *Client) addOperationGetModelVersionMiddlewares(stack *middleware.Stack, options Options) (err error) {
103	err = stack.Serialize.Add(&awsAwsjson11_serializeOpGetModelVersion{}, middleware.After)
104	if err != nil {
105		return err
106	}
107	err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpGetModelVersion{}, middleware.After)
108	if err != nil {
109		return err
110	}
111	if err = addSetLoggerMiddleware(stack, options); err != nil {
112		return err
113	}
114	if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
115		return err
116	}
117	if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
118		return err
119	}
120	if err = addResolveEndpointMiddleware(stack, options); err != nil {
121		return err
122	}
123	if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
124		return err
125	}
126	if err = addRetryMiddlewares(stack, options); err != nil {
127		return err
128	}
129	if err = addHTTPSignerV4Middleware(stack, options); err != nil {
130		return err
131	}
132	if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
133		return err
134	}
135	if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
136		return err
137	}
138	if err = addClientUserAgent(stack); err != nil {
139		return err
140	}
141	if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
142		return err
143	}
144	if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
145		return err
146	}
147	if err = addOpGetModelVersionValidationMiddleware(stack); err != nil {
148		return err
149	}
150	if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetModelVersion(options.Region), middleware.Before); err != nil {
151		return err
152	}
153	if err = addRequestIDRetrieverMiddleware(stack); err != nil {
154		return err
155	}
156	if err = addResponseErrorMiddleware(stack); err != nil {
157		return err
158	}
159	if err = addRequestResponseLogging(stack, options); err != nil {
160		return err
161	}
162	return nil
163}
164
165func newServiceMetadataMiddleware_opGetModelVersion(region string) *awsmiddleware.RegisterServiceMetadata {
166	return &awsmiddleware.RegisterServiceMetadata{
167		Region:        region,
168		ServiceID:     ServiceID,
169		SigningName:   "frauddetector",
170		OperationName: "GetModelVersion",
171	}
172}
173