/
api_op_DescribeAgreement.go
183 lines (159 loc) · 5.73 KB
/
api_op_DescribeAgreement.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
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
// Code generated by smithy-go-codegen DO NOT EDIT.
package marketplaceagreement
import (
"context"
"fmt"
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
"github.com/aws/aws-sdk-go-v2/service/marketplaceagreement/types"
"github.com/aws/smithy-go/middleware"
smithyhttp "github.com/aws/smithy-go/transport/http"
"time"
)
// Provides details about an agreement, such as the proposer, acceptor, start
// date, and end date.
func (c *Client) DescribeAgreement(ctx context.Context, params *DescribeAgreementInput, optFns ...func(*Options)) (*DescribeAgreementOutput, error) {
if params == nil {
params = &DescribeAgreementInput{}
}
result, metadata, err := c.invokeOperation(ctx, "DescribeAgreement", params, optFns, c.addOperationDescribeAgreementMiddlewares)
if err != nil {
return nil, err
}
out := result.(*DescribeAgreementOutput)
out.ResultMetadata = metadata
return out, nil
}
type DescribeAgreementInput struct {
// The unique identifier of the agreement.
//
// This member is required.
AgreementId *string
noSmithyDocumentSerde
}
type DescribeAgreementOutput struct {
// The date and time the offer was accepted or the agreement was created.
// AcceptanceTime and StartTime can differ for future dated agreements (FDAs).
AcceptanceTime *time.Time
// The details of the party accepting the agreement terms. This is commonly the
// buyer for PurchaseAgreement .
Acceptor *types.Acceptor
// The unique identifier of the agreement.
AgreementId *string
// The type of agreement. Values are PurchaseAgreement or VendorInsightsAgreement .
AgreementType *string
// The date and time when the agreement ends. The field is null for pay-as-you-go
// agreements, which don’t have end dates.
EndTime *time.Time
// The estimated cost of the agreement.
EstimatedCharges *types.EstimatedCharges
// A summary of the proposal received from the proposer.
ProposalSummary *types.ProposalSummary
// The details of the party proposing the agreement terms. This is commonly the
// seller for PurchaseAgreement .
Proposer *types.Proposer
// The date and time when the agreement starts.
StartTime *time.Time
// The current status of the agreement. Statuses include:
// - ACTIVE – The terms of the agreement are active.
// - ARCHIVED – The agreement ended without a specified reason.
// - CANCELLED – The acceptor ended the agreement before the defined end date.
// - EXPIRED – The agreement ended on the defined end date.
// - RENEWED – The agreement was renewed into a new agreement (for example, an
// auto-renewal).
// - REPLACED – The agreement was replaced using an agreement replacement offer.
// - ROLLED_BACK (Only applicable to inactive agreement revisions) – The
// agreement revision has been rolled back because of an error. An earlier revision
// is now active.
// - SUPERCEDED (Only applicable to inactive agreement revisions) – The agreement
// revision is no longer active and another agreement revision is now active.
// - TERMINATED – The agreement ended before the defined end date because of an
// AWS termination (for example, a payment failure).
Status types.AgreementStatus
// Metadata pertaining to the operation's result.
ResultMetadata middleware.Metadata
noSmithyDocumentSerde
}
func (c *Client) addOperationDescribeAgreementMiddlewares(stack *middleware.Stack, options Options) (err error) {
if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil {
return err
}
err = stack.Serialize.Add(&awsAwsjson10_serializeOpDescribeAgreement{}, middleware.After)
if err != nil {
return err
}
err = stack.Deserialize.Add(&awsAwsjson10_deserializeOpDescribeAgreement{}, middleware.After)
if err != nil {
return err
}
if err := addProtocolFinalizerMiddlewares(stack, options, "DescribeAgreement"); 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 = addOpDescribeAgreementValidationMiddleware(stack); err != nil {
return err
}
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDescribeAgreement(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_opDescribeAgreement(region string) *awsmiddleware.RegisterServiceMetadata {
return &awsmiddleware.RegisterServiceMetadata{
Region: region,
ServiceID: ServiceID,
OperationName: "DescribeAgreement",
}
}