File: types.go

package info (click to toggle)
golang-github-aws-aws-sdk-go-v2 1.30.3-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 662,428 kB
  • sloc: java: 16,875; makefile: 432; sh: 175
file content (212 lines) | stat: -rw-r--r-- 6,459 bytes parent folder | download | duplicates (3)
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
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
// Code generated by smithy-go-codegen DO NOT EDIT.

package types

import (
	smithydocument "github.com/aws/smithy-go/document"
	"time"
)

// Specifies a CloudWatch Logs location where chat logs will be stored.
type CloudWatchLogsDestinationConfiguration struct {

	// Name of the Amazon Cloudwatch Logs destination where chat activity will be
	// logged.
	//
	// This member is required.
	LogGroupName *string

	noSmithyDocumentSerde
}

// A complex type that describes a location where chat logs will be stored. Each
// member represents the configuration of one log destination. For logging, you
// define only one type of destination (for CloudWatch Logs, Kinesis Firehose, or
// S3).
//
// The following types satisfy this interface:
//
//	DestinationConfigurationMemberCloudWatchLogs
//	DestinationConfigurationMemberFirehose
//	DestinationConfigurationMemberS3
type DestinationConfiguration interface {
	isDestinationConfiguration()
}

// An Amazon CloudWatch Logs destination configuration where chat activity will be
// logged.
type DestinationConfigurationMemberCloudWatchLogs struct {
	Value CloudWatchLogsDestinationConfiguration

	noSmithyDocumentSerde
}

func (*DestinationConfigurationMemberCloudWatchLogs) isDestinationConfiguration() {}

// An Amazon Kinesis Data Firehose destination configuration where chat activity
// will be logged.
type DestinationConfigurationMemberFirehose struct {
	Value FirehoseDestinationConfiguration

	noSmithyDocumentSerde
}

func (*DestinationConfigurationMemberFirehose) isDestinationConfiguration() {}

// An Amazon S3 destination configuration where chat activity will be logged.
type DestinationConfigurationMemberS3 struct {
	Value S3DestinationConfiguration

	noSmithyDocumentSerde
}

func (*DestinationConfigurationMemberS3) isDestinationConfiguration() {}

// Specifies a Kinesis Firehose location where chat logs will be stored.
type FirehoseDestinationConfiguration struct {

	// Name of the Amazon Kinesis Firehose delivery stream where chat activity will be
	// logged.
	//
	// This member is required.
	DeliveryStreamName *string

	noSmithyDocumentSerde
}

// Summary information about a logging configuration.
type LoggingConfigurationSummary struct {

	// Logging-configuration ARN.
	Arn *string

	// Time when the logging configuration was created. This is an ISO 8601 timestamp;
	// note that this is returned as a string.
	CreateTime *time.Time

	// A complex type that contains a destination configuration for where chat content
	// will be logged.
	DestinationConfiguration DestinationConfiguration

	// Logging-configuration ID, generated by the system. This is a relative
	// identifier, the part of the ARN that uniquely identifies the room.
	Id *string

	// Logging-configuration name. The value does not need to be unique.
	Name *string

	// The state of the logging configuration. When this is ACTIVE , the configuration
	// is ready for logging chat content.
	State LoggingConfigurationState

	// Tags to attach to the resource. Array of maps, each of the form string:string
	// (key:value) . See [Tagging AWS Resources] for details, including restrictions that apply to tags and
	// "Tag naming limits and requirements"; Amazon IVS Chat has no constraints on tags
	// beyond what is documented there.
	//
	// [Tagging AWS Resources]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
	Tags map[string]string

	// Time of the logging configuration’s last update. This is an ISO 8601 timestamp;
	// note that this is returned as a string.
	UpdateTime *time.Time

	noSmithyDocumentSerde
}

// Configuration information for optional message review.
type MessageReviewHandler struct {

	// Specifies the fallback behavior (whether the message is allowed or denied) if
	// the handler does not return a valid response, encounters an error, or times out.
	// (For the timeout period, see [Service Quotas].) If allowed, the message is delivered with
	// returned content to all users connected to the room. If denied, the message is
	// not delivered to any user. Default: ALLOW .
	//
	// [Service Quotas]: https://docs.aws.amazon.com/ivs/latest/userguide/service-quotas.html
	FallbackResult FallbackResult

	// Identifier of the message review handler. Currently this must be an ARN of a
	// lambda function.
	Uri *string

	noSmithyDocumentSerde
}

// Summary information about a room.
type RoomSummary struct {

	// Room ARN.
	Arn *string

	// Time when the room was created. This is an ISO 8601 timestamp; note that this
	// is returned as a string.
	CreateTime *time.Time

	// Room ID, generated by the system. This is a relative identifier, the part of
	// the ARN that uniquely identifies the room.
	Id *string

	// List of logging-configuration identifiers attached to the room.
	LoggingConfigurationIdentifiers []string

	// Configuration information for optional review of messages.
	MessageReviewHandler *MessageReviewHandler

	// Room name. The value does not need to be unique.
	Name *string

	// Tags attached to the resource. Array of maps, each of the form string:string
	// (key:value) . See [Tagging AWS Resources] for details, including restrictions that apply to tags and
	// "Tag naming limits and requirements"; Amazon IVS Chat has no constraints beyond
	// what is documented there.
	//
	// [Tagging AWS Resources]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
	Tags map[string]string

	// Time of the room’s last update. This is an ISO 8601 timestamp; note that this
	// is returned as a string.
	UpdateTime *time.Time

	noSmithyDocumentSerde
}

// Specifies an S3 location where chat logs will be stored.
type S3DestinationConfiguration struct {

	// Name of the Amazon S3 bucket where chat activity will be logged.
	//
	// This member is required.
	BucketName *string

	noSmithyDocumentSerde
}

// This object is used in the ValidationException error.
type ValidationExceptionField struct {

	// Explanation of the reason for the validation error.
	//
	// This member is required.
	Message *string

	// Name of the field which failed validation.
	//
	// This member is required.
	Name *string

	noSmithyDocumentSerde
}

type noSmithyDocumentSerde = smithydocument.NoSerde

// UnknownUnionMember is returned when a union member is returned over the wire,
// but has an unknown tag.
type UnknownUnionMember struct {
	Tag   string
	Value []byte

	noSmithyDocumentSerde
}

func (*UnknownUnionMember) isDestinationConfiguration() {}