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 (350 lines) | stat: -rw-r--r-- 7,858 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
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
// Code generated by smithy-go-codegen DO NOT EDIT.

package types

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

// The physical capacity of the Amazon Web Services Snow Family device.
type Capacity struct {

	// The amount of capacity available for use on the device.
	Available *int64

	// The name of the type of capacity, such as memory.
	Name *string

	// The total capacity on the device.
	Total *int64

	// The unit of measure for the type of capacity.
	Unit *string

	// The amount of capacity used on the device.
	Used *int64

	noSmithyDocumentSerde
}

// The command given to the device to execute.
//
// The following types satisfy this interface:
//
//	CommandMemberReboot
//	CommandMemberUnlock
type Command interface {
	isCommand()
}

// Reboots the device.
type CommandMemberReboot struct {
	Value Reboot

	noSmithyDocumentSerde
}

func (*CommandMemberReboot) isCommand() {}

// Unlocks the device.
type CommandMemberUnlock struct {
	Value Unlock

	noSmithyDocumentSerde
}

func (*CommandMemberUnlock) isCommand() {}

// The options for how a device's CPU is configured.
type CpuOptions struct {

	// The number of cores that the CPU can use.
	CoreCount *int32

	// The number of threads per core in the CPU.
	ThreadsPerCore *int32

	noSmithyDocumentSerde
}

// Identifying information about the device.
type DeviceSummary struct {

	// The ID of the job used to order the device.
	AssociatedWithJob *string

	// The Amazon Resource Name (ARN) of the device.
	ManagedDeviceArn *string

	// The ID of the device.
	ManagedDeviceId *string

	// Optional metadata that you assign to a resource. You can use tags to categorize
	// a resource in different ways, such as by purpose, owner, or environment.
	Tags map[string]string

	noSmithyDocumentSerde
}

// Describes a parameter used to set up an Amazon Elastic Block Store (Amazon EBS)
// volume in a block device mapping.
type EbsInstanceBlockDevice struct {

	// When the attachment was initiated.
	AttachTime *time.Time

	// A value that indicates whether the volume is deleted on instance termination.
	DeleteOnTermination *bool

	// The attachment state.
	Status AttachmentStatus

	// The ID of the Amazon EBS volume.
	VolumeId *string

	noSmithyDocumentSerde
}

// The summary of a task execution on a specified device.
type ExecutionSummary struct {

	// The ID of the execution.
	ExecutionId *string

	// The ID of the managed device that the task is being executed on.
	ManagedDeviceId *string

	// The state of the execution.
	State ExecutionState

	// The ID of the task.
	TaskId *string

	noSmithyDocumentSerde
}

// The description of an instance. Currently, Amazon EC2 instances are the only
// supported instance type.
type Instance struct {

	// The Amazon Machine Image (AMI) launch index, which you can use to find this
	// instance in the launch group.
	AmiLaunchIndex *int32

	// Any block device mapping entries for the instance.
	BlockDeviceMappings []InstanceBlockDeviceMapping

	// The CPU options for the instance.
	CpuOptions *CpuOptions

	// When the instance was created.
	CreatedAt *time.Time

	// The ID of the AMI used to launch the instance.
	ImageId *string

	// The ID of the instance.
	InstanceId *string

	// The instance type.
	InstanceType *string

	// The private IPv4 address assigned to the instance.
	PrivateIpAddress *string

	// The public IPv4 address assigned to the instance.
	PublicIpAddress *string

	// The device name of the root device volume (for example, /dev/sda1 ).
	RootDeviceName *string

	// The security groups for the instance.
	SecurityGroups []SecurityGroupIdentifier

	// The description of the current state of an instance.
	State *InstanceState

	// When the instance was last updated.
	UpdatedAt *time.Time

	noSmithyDocumentSerde
}

// The description of a block device mapping.
type InstanceBlockDeviceMapping struct {

	// The block device name.
	DeviceName *string

	// The parameters used to automatically set up Amazon Elastic Block Store (Amazon
	// EBS) volumes when the instance is launched.
	Ebs *EbsInstanceBlockDevice

	noSmithyDocumentSerde
}

// The description of the current state of an instance.
type InstanceState struct {

	// The state of the instance as a 16-bit unsigned integer.
	//
	// The high byte is all of the bits between 2^8 and (2^16)-1, which equals decimal
	// values between 256 and 65,535. These numerical values are used for internal
	// purposes and should be ignored.
	//
	// The low byte is all of the bits between 2^0 and (2^8)-1, which equals decimal
	// values between 0 and 255.
	//
	// The valid values for the instance state code are all in the range of the low
	// byte. These values are:
	//
	//   - 0 : pending
	//
	//   - 16 : running
	//
	//   - 32 : shutting-down
	//
	//   - 48 : terminated
	//
	//   - 64 : stopping
	//
	//   - 80 : stopped
	//
	// You can ignore the high byte value by zeroing out all of the bits above 2^8 or
	// 256 in decimal.
	Code *int32

	// The current state of the instance.
	Name InstanceStateName

	noSmithyDocumentSerde
}

// The details about the instance.
type InstanceSummary struct {

	// A structure containing details about the instance.
	Instance *Instance

	// When the instance summary was last updated.
	LastUpdatedAt *time.Time

	noSmithyDocumentSerde
}

// The details about the physical network interface for the device.
type PhysicalNetworkInterface struct {

	// The default gateway of the device.
	DefaultGateway *string

	// The IP address of the device.
	IpAddress *string

	// A value that describes whether the IP address is dynamic or persistent.
	IpAddressAssignment IpAddressAssignment

	// The MAC address of the device.
	MacAddress *string

	// The netmask used to divide the IP address into subnets.
	Netmask *string

	// The physical connector type.
	PhysicalConnectorType PhysicalConnectorType

	// The physical network interface ID.
	PhysicalNetworkInterfaceId *string

	noSmithyDocumentSerde
}

// A structure used to reboot the device.
type Reboot struct {
	noSmithyDocumentSerde
}

// A summary of a resource available on the device.
type ResourceSummary struct {

	// The resource type.
	//
	// This member is required.
	ResourceType *string

	// The Amazon Resource Name (ARN) of the resource.
	Arn *string

	// The ID of the resource.
	Id *string

	noSmithyDocumentSerde
}

// Information about the device's security group.
type SecurityGroupIdentifier struct {

	// The security group ID.
	GroupId *string

	// The security group name.
	GroupName *string

	noSmithyDocumentSerde
}

// Information about the software on the device.
type SoftwareInformation struct {

	// The state of the software that is installed or that is being installed on the
	// device.
	InstallState *string

	// The version of the software currently installed on the device.
	InstalledVersion *string

	// The version of the software being installed on the device.
	InstallingVersion *string

	noSmithyDocumentSerde
}

// Information about the task assigned to one or many devices.
type TaskSummary struct {

	// The task ID.
	//
	// This member is required.
	TaskId *string

	// The state of the task assigned to one or many devices.
	State TaskState

	// Optional metadata that you assign to a resource. You can use tags to categorize
	// a resource in different ways, such as by purpose, owner, or environment.
	Tags map[string]string

	// The Amazon Resource Name (ARN) of the task.
	TaskArn *string

	noSmithyDocumentSerde
}

// A structure used to unlock a device.
type Unlock struct {
	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) isCommand() {}