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 (172 lines) | stat: -rw-r--r-- 6,598 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
// Code generated by smithy-go-codegen DO NOT EDIT.

package types

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

// This section describes operations that you can perform on an AWS Elemental
// MediaStore container.
type Container struct {

	// The Amazon Resource Name (ARN) of the container. The ARN has the following
	// format:
	//
	// arn:aws:::container/
	//
	// For example: arn:aws:mediastore:us-west-2:111122223333:container/movies
	ARN *string

	// The state of access logging on the container. This value is false by default,
	// indicating that AWS Elemental MediaStore does not send access logs to Amazon
	// CloudWatch Logs. When you enable access logging on the container, MediaStore
	// changes this value to true , indicating that the service delivers access logs
	// for objects stored in that container to CloudWatch Logs.
	AccessLoggingEnabled *bool

	// Unix timestamp.
	CreationTime *time.Time

	// The DNS endpoint of the container. Use the endpoint to identify the specific
	// container when sending requests to the data plane. The service assigns this
	// value when the container is created. Once the value has been assigned, it does
	// not change.
	Endpoint *string

	// The name of the container.
	Name *string

	// The status of container creation or deletion. The status is one of the
	// following: CREATING , ACTIVE , or DELETING . While the service is creating the
	// container, the status is CREATING . When the endpoint is available, the status
	// changes to ACTIVE .
	Status ContainerStatus

	noSmithyDocumentSerde
}

// A rule for a CORS policy. You can add up to 100 rules to a CORS policy. If more
// than one rule applies, the service uses the first applicable rule listed.
type CorsRule struct {

	// Specifies which headers are allowed in a preflight OPTIONS request through the
	// Access-Control-Request-Headers header. Each header name that is specified in
	// Access-Control-Request-Headers must have a corresponding entry in the rule. Only
	// the headers that were requested are sent back.
	//
	// This element can contain only one wildcard character (*).
	//
	// This member is required.
	AllowedHeaders []string

	// One or more response headers that you want users to be able to access from
	// their applications (for example, from a JavaScript XMLHttpRequest object).
	//
	// Each CORS rule must have at least one AllowedOrigins element. The string value
	// can include only one wildcard character (*), for example, http://*.example.com.
	// Additionally, you can specify only one wildcard character to allow cross-origin
	// access for all origins.
	//
	// This member is required.
	AllowedOrigins []string

	// Identifies an HTTP method that the origin that is specified in the rule is
	// allowed to execute.
	//
	// Each CORS rule must contain at least one AllowedMethods and one AllowedOrigins
	// element.
	AllowedMethods []MethodName

	// One or more headers in the response that you want users to be able to access
	// from their applications (for example, from a JavaScript XMLHttpRequest object).
	//
	// This element is optional for each rule.
	ExposeHeaders []string

	// The time in seconds that your browser caches the preflight response for the
	// specified resource.
	//
	// A CORS rule can have only one MaxAgeSeconds element.
	MaxAgeSeconds int32

	noSmithyDocumentSerde
}

// The metric policy that is associated with the container. A metric policy allows
// AWS Elemental MediaStore to send metrics to Amazon CloudWatch. In the policy,
// you must indicate whether you want MediaStore to send container-level metrics.
// You can also include rules to define groups of objects that you want MediaStore
// to send object-level metrics for.
//
// To view examples of how to construct a metric policy for your use case, see [Example Metric Policies].
//
// [Example Metric Policies]: https://docs.aws.amazon.com/mediastore/latest/ug/policies-metric-examples.html
type MetricPolicy struct {

	// A setting to enable or disable metrics at the container level.
	//
	// This member is required.
	ContainerLevelMetrics ContainerLevelMetrics

	// A parameter that holds an array of rules that enable metrics at the object
	// level. This parameter is optional, but if you choose to include it, you must
	// also include at least one rule. By default, you can include up to five rules.
	// You can also [request a quota increase]to allow up to 300 rules per policy.
	//
	// [request a quota increase]: https://console.aws.amazon.com/servicequotas/home?region=us-east-1#!/services/mediastore/quotas
	MetricPolicyRules []MetricPolicyRule

	noSmithyDocumentSerde
}

// A setting that enables metrics at the object level. Each rule contains an
// object group and an object group name. If the policy includes the
// MetricPolicyRules parameter, you must include at least one rule. Each metric
// policy can include up to five rules by default. You can also [request a quota increase]to allow up to 300
// rules per policy.
//
// [request a quota increase]: https://console.aws.amazon.com/servicequotas/home?region=us-east-1#!/services/mediastore/quotas
type MetricPolicyRule struct {

	// A path or file name that defines which objects to include in the group.
	// Wildcards (*) are acceptable.
	//
	// This member is required.
	ObjectGroup *string

	// A name that allows you to refer to the object group.
	//
	// This member is required.
	ObjectGroupName *string

	noSmithyDocumentSerde
}

// A collection of tags associated with a container. Each tag consists of a
// key:value pair, which can be anything you define. Typically, the tag key
// represents a category (such as "environment") and the tag value represents a
// specific value within that category (such as "test," "development," or
// "production"). You can add up to 50 tags to each container. For more information
// about tagging, including naming and usage conventions, see [Tagging Resources in MediaStore].
//
// [Tagging Resources in MediaStore]: https://docs.aws.amazon.com/mediastore/latest/ug/tagging.html
type Tag struct {

	// Part of the key:value pair that defines a tag. You can use a tag key to
	// describe a category of information, such as "customer." Tag keys are
	// case-sensitive.
	//
	// This member is required.
	Key *string

	// Part of the key:value pair that defines a tag. You can use a tag value to
	// describe a specific value within a category, such as "companyA" or "companyB."
	// Tag values are case-sensitive.
	Value *string

	noSmithyDocumentSerde
}

type noSmithyDocumentSerde = smithydocument.NoSerde