-
Notifications
You must be signed in to change notification settings - Fork 623
/
api_op_GetAssessmentReport.go
149 lines (122 loc) · 4.65 KB
/
api_op_GetAssessmentReport.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
// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
package inspector
import (
"context"
"github.com/aws/aws-sdk-go-v2/aws"
"github.com/aws/aws-sdk-go-v2/internal/awsutil"
)
type GetAssessmentReportInput struct {
_ struct{} `type:"structure"`
// The ARN that specifies the assessment run for which you want to generate
// a report.
//
// AssessmentRunArn is a required field
AssessmentRunArn *string `locationName:"assessmentRunArn" min:"1" type:"string" required:"true"`
// Specifies the file format (html or pdf) of the assessment report that you
// want to generate.
//
// ReportFileFormat is a required field
ReportFileFormat ReportFileFormat `locationName:"reportFileFormat" type:"string" required:"true" enum:"true"`
// Specifies the type of the assessment report that you want to generate. There
// are two types of assessment reports: a finding report and a full report.
// For more information, see Assessment Reports (https://docs.aws.amazon.com/inspector/latest/userguide/inspector_reports.html).
//
// ReportType is a required field
ReportType ReportType `locationName:"reportType" type:"string" required:"true" enum:"true"`
}
// String returns the string representation
func (s GetAssessmentReportInput) String() string {
return awsutil.Prettify(s)
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *GetAssessmentReportInput) Validate() error {
invalidParams := aws.ErrInvalidParams{Context: "GetAssessmentReportInput"}
if s.AssessmentRunArn == nil {
invalidParams.Add(aws.NewErrParamRequired("AssessmentRunArn"))
}
if s.AssessmentRunArn != nil && len(*s.AssessmentRunArn) < 1 {
invalidParams.Add(aws.NewErrParamMinLen("AssessmentRunArn", 1))
}
if len(s.ReportFileFormat) == 0 {
invalidParams.Add(aws.NewErrParamRequired("ReportFileFormat"))
}
if len(s.ReportType) == 0 {
invalidParams.Add(aws.NewErrParamRequired("ReportType"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
type GetAssessmentReportOutput struct {
_ struct{} `type:"structure"`
// Specifies the status of the request to generate an assessment report.
//
// Status is a required field
Status ReportStatus `locationName:"status" type:"string" required:"true" enum:"true"`
// Specifies the URL where you can find the generated assessment report. This
// parameter is only returned if the report is successfully generated.
Url *string `locationName:"url" type:"string"`
}
// String returns the string representation
func (s GetAssessmentReportOutput) String() string {
return awsutil.Prettify(s)
}
const opGetAssessmentReport = "GetAssessmentReport"
// GetAssessmentReportRequest returns a request value for making API operation for
// Amazon Inspector.
//
// Produces an assessment report that includes detailed and comprehensive results
// of a specified assessment run.
//
// // Example sending a request using GetAssessmentReportRequest.
// req := client.GetAssessmentReportRequest(params)
// resp, err := req.Send(context.TODO())
// if err == nil {
// fmt.Println(resp)
// }
//
// Please also see https://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/GetAssessmentReport
func (c *Client) GetAssessmentReportRequest(input *GetAssessmentReportInput) GetAssessmentReportRequest {
op := &aws.Operation{
Name: opGetAssessmentReport,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &GetAssessmentReportInput{}
}
req := c.newRequest(op, input, &GetAssessmentReportOutput{})
return GetAssessmentReportRequest{Request: req, Input: input, Copy: c.GetAssessmentReportRequest}
}
// GetAssessmentReportRequest is the request type for the
// GetAssessmentReport API operation.
type GetAssessmentReportRequest struct {
*aws.Request
Input *GetAssessmentReportInput
Copy func(*GetAssessmentReportInput) GetAssessmentReportRequest
}
// Send marshals and sends the GetAssessmentReport API request.
func (r GetAssessmentReportRequest) Send(ctx context.Context) (*GetAssessmentReportResponse, error) {
r.Request.SetContext(ctx)
err := r.Request.Send()
if err != nil {
return nil, err
}
resp := &GetAssessmentReportResponse{
GetAssessmentReportOutput: r.Request.Data.(*GetAssessmentReportOutput),
response: &aws.Response{Request: r.Request},
}
return resp, nil
}
// GetAssessmentReportResponse is the response type for the
// GetAssessmentReport API operation.
type GetAssessmentReportResponse struct {
*GetAssessmentReportOutput
response *aws.Response
}
// SDKResponseMetdata returns the response metadata for the
// GetAssessmentReport request.
func (r *GetAssessmentReportResponse) SDKResponseMetdata() *aws.Response {
return r.response
}