1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. 2 3package kinesisvideo 4 5import ( 6 "fmt" 7 "time" 8 9 "github.com/aws/aws-sdk-go/aws" 10 "github.com/aws/aws-sdk-go/aws/awsutil" 11 "github.com/aws/aws-sdk-go/aws/request" 12 "github.com/aws/aws-sdk-go/private/protocol" 13 "github.com/aws/aws-sdk-go/private/protocol/restjson" 14) 15 16const opCreateSignalingChannel = "CreateSignalingChannel" 17 18// CreateSignalingChannelRequest generates a "aws/request.Request" representing the 19// client's request for the CreateSignalingChannel operation. The "output" return 20// value will be populated with the request's response once the request completes 21// successfully. 22// 23// Use "Send" method on the returned Request to send the API call to the service. 24// the "output" return value is not valid until after Send returns without error. 25// 26// See CreateSignalingChannel for more information on using the CreateSignalingChannel 27// API call, and error handling. 28// 29// This method is useful when you want to inject custom logic or configuration 30// into the SDK's request lifecycle. Such as custom headers, or retry logic. 31// 32// 33// // Example sending a request using the CreateSignalingChannelRequest method. 34// req, resp := client.CreateSignalingChannelRequest(params) 35// 36// err := req.Send() 37// if err == nil { // resp is now filled 38// fmt.Println(resp) 39// } 40// 41// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/CreateSignalingChannel 42func (c *KinesisVideo) CreateSignalingChannelRequest(input *CreateSignalingChannelInput) (req *request.Request, output *CreateSignalingChannelOutput) { 43 op := &request.Operation{ 44 Name: opCreateSignalingChannel, 45 HTTPMethod: "POST", 46 HTTPPath: "/createSignalingChannel", 47 } 48 49 if input == nil { 50 input = &CreateSignalingChannelInput{} 51 } 52 53 output = &CreateSignalingChannelOutput{} 54 req = c.newRequest(op, input, output) 55 return 56} 57 58// CreateSignalingChannel API operation for Amazon Kinesis Video Streams. 59// 60// Creates a signaling channel. 61// 62// CreateSignalingChannel is an asynchronous operation. 63// 64// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 65// with awserr.Error's Code and Message methods to get detailed information about 66// the error. 67// 68// See the AWS API reference guide for Amazon Kinesis Video Streams's 69// API operation CreateSignalingChannel for usage and error information. 70// 71// Returned Error Types: 72// * InvalidArgumentException 73// The value for this input parameter is invalid. 74// 75// * ClientLimitExceededException 76// Kinesis Video Streams has throttled the request because you have exceeded 77// the limit of allowed client calls. Try making the call later. 78// 79// * AccountChannelLimitExceededException 80// You have reached the maximum limit of active signaling channels for this 81// AWS account in this region. 82// 83// * ResourceInUseException 84// The signaling channel is currently not available for this operation. 85// 86// * AccessDeniedException 87// You do not have required permissions to perform this operation. 88// 89// * TagsPerResourceExceededLimitException 90// You have exceeded the limit of tags that you can associate with the resource. 91// Kinesis video streams support up to 50 tags. 92// 93// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/CreateSignalingChannel 94func (c *KinesisVideo) CreateSignalingChannel(input *CreateSignalingChannelInput) (*CreateSignalingChannelOutput, error) { 95 req, out := c.CreateSignalingChannelRequest(input) 96 return out, req.Send() 97} 98 99// CreateSignalingChannelWithContext is the same as CreateSignalingChannel with the addition of 100// the ability to pass a context and additional request options. 101// 102// See CreateSignalingChannel for details on how to use this API operation. 103// 104// The context must be non-nil and will be used for request cancellation. If 105// the context is nil a panic will occur. In the future the SDK may create 106// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 107// for more information on using Contexts. 108func (c *KinesisVideo) CreateSignalingChannelWithContext(ctx aws.Context, input *CreateSignalingChannelInput, opts ...request.Option) (*CreateSignalingChannelOutput, error) { 109 req, out := c.CreateSignalingChannelRequest(input) 110 req.SetContext(ctx) 111 req.ApplyOptions(opts...) 112 return out, req.Send() 113} 114 115const opCreateStream = "CreateStream" 116 117// CreateStreamRequest generates a "aws/request.Request" representing the 118// client's request for the CreateStream operation. The "output" return 119// value will be populated with the request's response once the request completes 120// successfully. 121// 122// Use "Send" method on the returned Request to send the API call to the service. 123// the "output" return value is not valid until after Send returns without error. 124// 125// See CreateStream for more information on using the CreateStream 126// API call, and error handling. 127// 128// This method is useful when you want to inject custom logic or configuration 129// into the SDK's request lifecycle. Such as custom headers, or retry logic. 130// 131// 132// // Example sending a request using the CreateStreamRequest method. 133// req, resp := client.CreateStreamRequest(params) 134// 135// err := req.Send() 136// if err == nil { // resp is now filled 137// fmt.Println(resp) 138// } 139// 140// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/CreateStream 141func (c *KinesisVideo) CreateStreamRequest(input *CreateStreamInput) (req *request.Request, output *CreateStreamOutput) { 142 op := &request.Operation{ 143 Name: opCreateStream, 144 HTTPMethod: "POST", 145 HTTPPath: "/createStream", 146 } 147 148 if input == nil { 149 input = &CreateStreamInput{} 150 } 151 152 output = &CreateStreamOutput{} 153 req = c.newRequest(op, input, output) 154 return 155} 156 157// CreateStream API operation for Amazon Kinesis Video Streams. 158// 159// Creates a new Kinesis video stream. 160// 161// When you create a new stream, Kinesis Video Streams assigns it a version 162// number. When you change the stream's metadata, Kinesis Video Streams updates 163// the version. 164// 165// CreateStream is an asynchronous operation. 166// 167// For information about how the service works, see How it Works (https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/how-it-works.html). 168// 169// You must have permissions for the KinesisVideo:CreateStream action. 170// 171// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 172// with awserr.Error's Code and Message methods to get detailed information about 173// the error. 174// 175// See the AWS API reference guide for Amazon Kinesis Video Streams's 176// API operation CreateStream for usage and error information. 177// 178// Returned Error Types: 179// * AccountStreamLimitExceededException 180// The number of streams created for the account is too high. 181// 182// * DeviceStreamLimitExceededException 183// Not implemented. 184// 185// * ResourceInUseException 186// The signaling channel is currently not available for this operation. 187// 188// * InvalidDeviceException 189// Not implemented. 190// 191// * InvalidArgumentException 192// The value for this input parameter is invalid. 193// 194// * ClientLimitExceededException 195// Kinesis Video Streams has throttled the request because you have exceeded 196// the limit of allowed client calls. Try making the call later. 197// 198// * TagsPerResourceExceededLimitException 199// You have exceeded the limit of tags that you can associate with the resource. 200// Kinesis video streams support up to 50 tags. 201// 202// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/CreateStream 203func (c *KinesisVideo) CreateStream(input *CreateStreamInput) (*CreateStreamOutput, error) { 204 req, out := c.CreateStreamRequest(input) 205 return out, req.Send() 206} 207 208// CreateStreamWithContext is the same as CreateStream with the addition of 209// the ability to pass a context and additional request options. 210// 211// See CreateStream for details on how to use this API operation. 212// 213// The context must be non-nil and will be used for request cancellation. If 214// the context is nil a panic will occur. In the future the SDK may create 215// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 216// for more information on using Contexts. 217func (c *KinesisVideo) CreateStreamWithContext(ctx aws.Context, input *CreateStreamInput, opts ...request.Option) (*CreateStreamOutput, error) { 218 req, out := c.CreateStreamRequest(input) 219 req.SetContext(ctx) 220 req.ApplyOptions(opts...) 221 return out, req.Send() 222} 223 224const opDeleteSignalingChannel = "DeleteSignalingChannel" 225 226// DeleteSignalingChannelRequest generates a "aws/request.Request" representing the 227// client's request for the DeleteSignalingChannel operation. The "output" return 228// value will be populated with the request's response once the request completes 229// successfully. 230// 231// Use "Send" method on the returned Request to send the API call to the service. 232// the "output" return value is not valid until after Send returns without error. 233// 234// See DeleteSignalingChannel for more information on using the DeleteSignalingChannel 235// API call, and error handling. 236// 237// This method is useful when you want to inject custom logic or configuration 238// into the SDK's request lifecycle. Such as custom headers, or retry logic. 239// 240// 241// // Example sending a request using the DeleteSignalingChannelRequest method. 242// req, resp := client.DeleteSignalingChannelRequest(params) 243// 244// err := req.Send() 245// if err == nil { // resp is now filled 246// fmt.Println(resp) 247// } 248// 249// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/DeleteSignalingChannel 250func (c *KinesisVideo) DeleteSignalingChannelRequest(input *DeleteSignalingChannelInput) (req *request.Request, output *DeleteSignalingChannelOutput) { 251 op := &request.Operation{ 252 Name: opDeleteSignalingChannel, 253 HTTPMethod: "POST", 254 HTTPPath: "/deleteSignalingChannel", 255 } 256 257 if input == nil { 258 input = &DeleteSignalingChannelInput{} 259 } 260 261 output = &DeleteSignalingChannelOutput{} 262 req = c.newRequest(op, input, output) 263 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 264 return 265} 266 267// DeleteSignalingChannel API operation for Amazon Kinesis Video Streams. 268// 269// Deletes a specified signaling channel. DeleteSignalingChannel is an asynchronous 270// operation. If you don't specify the channel's current version, the most recent 271// version is deleted. 272// 273// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 274// with awserr.Error's Code and Message methods to get detailed information about 275// the error. 276// 277// See the AWS API reference guide for Amazon Kinesis Video Streams's 278// API operation DeleteSignalingChannel for usage and error information. 279// 280// Returned Error Types: 281// * InvalidArgumentException 282// The value for this input parameter is invalid. 283// 284// * ClientLimitExceededException 285// Kinesis Video Streams has throttled the request because you have exceeded 286// the limit of allowed client calls. Try making the call later. 287// 288// * ResourceNotFoundException 289// Amazon Kinesis Video Streams can't find the stream that you specified. 290// 291// * AccessDeniedException 292// You do not have required permissions to perform this operation. 293// 294// * VersionMismatchException 295// The stream version that you specified is not the latest version. To get the 296// latest version, use the DescribeStream (https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/API_DescribeStream.html) 297// API. 298// 299// * ResourceInUseException 300// The signaling channel is currently not available for this operation. 301// 302// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/DeleteSignalingChannel 303func (c *KinesisVideo) DeleteSignalingChannel(input *DeleteSignalingChannelInput) (*DeleteSignalingChannelOutput, error) { 304 req, out := c.DeleteSignalingChannelRequest(input) 305 return out, req.Send() 306} 307 308// DeleteSignalingChannelWithContext is the same as DeleteSignalingChannel with the addition of 309// the ability to pass a context and additional request options. 310// 311// See DeleteSignalingChannel for details on how to use this API operation. 312// 313// The context must be non-nil and will be used for request cancellation. If 314// the context is nil a panic will occur. In the future the SDK may create 315// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 316// for more information on using Contexts. 317func (c *KinesisVideo) DeleteSignalingChannelWithContext(ctx aws.Context, input *DeleteSignalingChannelInput, opts ...request.Option) (*DeleteSignalingChannelOutput, error) { 318 req, out := c.DeleteSignalingChannelRequest(input) 319 req.SetContext(ctx) 320 req.ApplyOptions(opts...) 321 return out, req.Send() 322} 323 324const opDeleteStream = "DeleteStream" 325 326// DeleteStreamRequest generates a "aws/request.Request" representing the 327// client's request for the DeleteStream operation. The "output" return 328// value will be populated with the request's response once the request completes 329// successfully. 330// 331// Use "Send" method on the returned Request to send the API call to the service. 332// the "output" return value is not valid until after Send returns without error. 333// 334// See DeleteStream for more information on using the DeleteStream 335// API call, and error handling. 336// 337// This method is useful when you want to inject custom logic or configuration 338// into the SDK's request lifecycle. Such as custom headers, or retry logic. 339// 340// 341// // Example sending a request using the DeleteStreamRequest method. 342// req, resp := client.DeleteStreamRequest(params) 343// 344// err := req.Send() 345// if err == nil { // resp is now filled 346// fmt.Println(resp) 347// } 348// 349// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/DeleteStream 350func (c *KinesisVideo) DeleteStreamRequest(input *DeleteStreamInput) (req *request.Request, output *DeleteStreamOutput) { 351 op := &request.Operation{ 352 Name: opDeleteStream, 353 HTTPMethod: "POST", 354 HTTPPath: "/deleteStream", 355 } 356 357 if input == nil { 358 input = &DeleteStreamInput{} 359 } 360 361 output = &DeleteStreamOutput{} 362 req = c.newRequest(op, input, output) 363 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 364 return 365} 366 367// DeleteStream API operation for Amazon Kinesis Video Streams. 368// 369// Deletes a Kinesis video stream and the data contained in the stream. 370// 371// This method marks the stream for deletion, and makes the data in the stream 372// inaccessible immediately. 373// 374// To ensure that you have the latest version of the stream before deleting 375// it, you can specify the stream version. Kinesis Video Streams assigns a version 376// to each stream. When you update a stream, Kinesis Video Streams assigns a 377// new version number. To get the latest stream version, use the DescribeStream 378// API. 379// 380// This operation requires permission for the KinesisVideo:DeleteStream action. 381// 382// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 383// with awserr.Error's Code and Message methods to get detailed information about 384// the error. 385// 386// See the AWS API reference guide for Amazon Kinesis Video Streams's 387// API operation DeleteStream for usage and error information. 388// 389// Returned Error Types: 390// * ClientLimitExceededException 391// Kinesis Video Streams has throttled the request because you have exceeded 392// the limit of allowed client calls. Try making the call later. 393// 394// * InvalidArgumentException 395// The value for this input parameter is invalid. 396// 397// * ResourceNotFoundException 398// Amazon Kinesis Video Streams can't find the stream that you specified. 399// 400// * NotAuthorizedException 401// The caller is not authorized to perform this operation. 402// 403// * VersionMismatchException 404// The stream version that you specified is not the latest version. To get the 405// latest version, use the DescribeStream (https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/API_DescribeStream.html) 406// API. 407// 408// * ResourceInUseException 409// The signaling channel is currently not available for this operation. 410// 411// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/DeleteStream 412func (c *KinesisVideo) DeleteStream(input *DeleteStreamInput) (*DeleteStreamOutput, error) { 413 req, out := c.DeleteStreamRequest(input) 414 return out, req.Send() 415} 416 417// DeleteStreamWithContext is the same as DeleteStream with the addition of 418// the ability to pass a context and additional request options. 419// 420// See DeleteStream for details on how to use this API operation. 421// 422// The context must be non-nil and will be used for request cancellation. If 423// the context is nil a panic will occur. In the future the SDK may create 424// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 425// for more information on using Contexts. 426func (c *KinesisVideo) DeleteStreamWithContext(ctx aws.Context, input *DeleteStreamInput, opts ...request.Option) (*DeleteStreamOutput, error) { 427 req, out := c.DeleteStreamRequest(input) 428 req.SetContext(ctx) 429 req.ApplyOptions(opts...) 430 return out, req.Send() 431} 432 433const opDescribeSignalingChannel = "DescribeSignalingChannel" 434 435// DescribeSignalingChannelRequest generates a "aws/request.Request" representing the 436// client's request for the DescribeSignalingChannel operation. The "output" return 437// value will be populated with the request's response once the request completes 438// successfully. 439// 440// Use "Send" method on the returned Request to send the API call to the service. 441// the "output" return value is not valid until after Send returns without error. 442// 443// See DescribeSignalingChannel for more information on using the DescribeSignalingChannel 444// API call, and error handling. 445// 446// This method is useful when you want to inject custom logic or configuration 447// into the SDK's request lifecycle. Such as custom headers, or retry logic. 448// 449// 450// // Example sending a request using the DescribeSignalingChannelRequest method. 451// req, resp := client.DescribeSignalingChannelRequest(params) 452// 453// err := req.Send() 454// if err == nil { // resp is now filled 455// fmt.Println(resp) 456// } 457// 458// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/DescribeSignalingChannel 459func (c *KinesisVideo) DescribeSignalingChannelRequest(input *DescribeSignalingChannelInput) (req *request.Request, output *DescribeSignalingChannelOutput) { 460 op := &request.Operation{ 461 Name: opDescribeSignalingChannel, 462 HTTPMethod: "POST", 463 HTTPPath: "/describeSignalingChannel", 464 } 465 466 if input == nil { 467 input = &DescribeSignalingChannelInput{} 468 } 469 470 output = &DescribeSignalingChannelOutput{} 471 req = c.newRequest(op, input, output) 472 return 473} 474 475// DescribeSignalingChannel API operation for Amazon Kinesis Video Streams. 476// 477// Returns the most current information about the signaling channel. You must 478// specify either the name or the Amazon Resource Name (ARN) of the channel 479// that you want to describe. 480// 481// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 482// with awserr.Error's Code and Message methods to get detailed information about 483// the error. 484// 485// See the AWS API reference guide for Amazon Kinesis Video Streams's 486// API operation DescribeSignalingChannel for usage and error information. 487// 488// Returned Error Types: 489// * InvalidArgumentException 490// The value for this input parameter is invalid. 491// 492// * ClientLimitExceededException 493// Kinesis Video Streams has throttled the request because you have exceeded 494// the limit of allowed client calls. Try making the call later. 495// 496// * ResourceNotFoundException 497// Amazon Kinesis Video Streams can't find the stream that you specified. 498// 499// * AccessDeniedException 500// You do not have required permissions to perform this operation. 501// 502// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/DescribeSignalingChannel 503func (c *KinesisVideo) DescribeSignalingChannel(input *DescribeSignalingChannelInput) (*DescribeSignalingChannelOutput, error) { 504 req, out := c.DescribeSignalingChannelRequest(input) 505 return out, req.Send() 506} 507 508// DescribeSignalingChannelWithContext is the same as DescribeSignalingChannel with the addition of 509// the ability to pass a context and additional request options. 510// 511// See DescribeSignalingChannel for details on how to use this API operation. 512// 513// The context must be non-nil and will be used for request cancellation. If 514// the context is nil a panic will occur. In the future the SDK may create 515// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 516// for more information on using Contexts. 517func (c *KinesisVideo) DescribeSignalingChannelWithContext(ctx aws.Context, input *DescribeSignalingChannelInput, opts ...request.Option) (*DescribeSignalingChannelOutput, error) { 518 req, out := c.DescribeSignalingChannelRequest(input) 519 req.SetContext(ctx) 520 req.ApplyOptions(opts...) 521 return out, req.Send() 522} 523 524const opDescribeStream = "DescribeStream" 525 526// DescribeStreamRequest generates a "aws/request.Request" representing the 527// client's request for the DescribeStream operation. The "output" return 528// value will be populated with the request's response once the request completes 529// successfully. 530// 531// Use "Send" method on the returned Request to send the API call to the service. 532// the "output" return value is not valid until after Send returns without error. 533// 534// See DescribeStream for more information on using the DescribeStream 535// API call, and error handling. 536// 537// This method is useful when you want to inject custom logic or configuration 538// into the SDK's request lifecycle. Such as custom headers, or retry logic. 539// 540// 541// // Example sending a request using the DescribeStreamRequest method. 542// req, resp := client.DescribeStreamRequest(params) 543// 544// err := req.Send() 545// if err == nil { // resp is now filled 546// fmt.Println(resp) 547// } 548// 549// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/DescribeStream 550func (c *KinesisVideo) DescribeStreamRequest(input *DescribeStreamInput) (req *request.Request, output *DescribeStreamOutput) { 551 op := &request.Operation{ 552 Name: opDescribeStream, 553 HTTPMethod: "POST", 554 HTTPPath: "/describeStream", 555 } 556 557 if input == nil { 558 input = &DescribeStreamInput{} 559 } 560 561 output = &DescribeStreamOutput{} 562 req = c.newRequest(op, input, output) 563 return 564} 565 566// DescribeStream API operation for Amazon Kinesis Video Streams. 567// 568// Returns the most current information about the specified stream. You must 569// specify either the StreamName or the StreamARN. 570// 571// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 572// with awserr.Error's Code and Message methods to get detailed information about 573// the error. 574// 575// See the AWS API reference guide for Amazon Kinesis Video Streams's 576// API operation DescribeStream for usage and error information. 577// 578// Returned Error Types: 579// * InvalidArgumentException 580// The value for this input parameter is invalid. 581// 582// * ResourceNotFoundException 583// Amazon Kinesis Video Streams can't find the stream that you specified. 584// 585// * ClientLimitExceededException 586// Kinesis Video Streams has throttled the request because you have exceeded 587// the limit of allowed client calls. Try making the call later. 588// 589// * NotAuthorizedException 590// The caller is not authorized to perform this operation. 591// 592// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/DescribeStream 593func (c *KinesisVideo) DescribeStream(input *DescribeStreamInput) (*DescribeStreamOutput, error) { 594 req, out := c.DescribeStreamRequest(input) 595 return out, req.Send() 596} 597 598// DescribeStreamWithContext is the same as DescribeStream with the addition of 599// the ability to pass a context and additional request options. 600// 601// See DescribeStream for details on how to use this API operation. 602// 603// The context must be non-nil and will be used for request cancellation. If 604// the context is nil a panic will occur. In the future the SDK may create 605// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 606// for more information on using Contexts. 607func (c *KinesisVideo) DescribeStreamWithContext(ctx aws.Context, input *DescribeStreamInput, opts ...request.Option) (*DescribeStreamOutput, error) { 608 req, out := c.DescribeStreamRequest(input) 609 req.SetContext(ctx) 610 req.ApplyOptions(opts...) 611 return out, req.Send() 612} 613 614const opGetDataEndpoint = "GetDataEndpoint" 615 616// GetDataEndpointRequest generates a "aws/request.Request" representing the 617// client's request for the GetDataEndpoint operation. The "output" return 618// value will be populated with the request's response once the request completes 619// successfully. 620// 621// Use "Send" method on the returned Request to send the API call to the service. 622// the "output" return value is not valid until after Send returns without error. 623// 624// See GetDataEndpoint for more information on using the GetDataEndpoint 625// API call, and error handling. 626// 627// This method is useful when you want to inject custom logic or configuration 628// into the SDK's request lifecycle. Such as custom headers, or retry logic. 629// 630// 631// // Example sending a request using the GetDataEndpointRequest method. 632// req, resp := client.GetDataEndpointRequest(params) 633// 634// err := req.Send() 635// if err == nil { // resp is now filled 636// fmt.Println(resp) 637// } 638// 639// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/GetDataEndpoint 640func (c *KinesisVideo) GetDataEndpointRequest(input *GetDataEndpointInput) (req *request.Request, output *GetDataEndpointOutput) { 641 op := &request.Operation{ 642 Name: opGetDataEndpoint, 643 HTTPMethod: "POST", 644 HTTPPath: "/getDataEndpoint", 645 } 646 647 if input == nil { 648 input = &GetDataEndpointInput{} 649 } 650 651 output = &GetDataEndpointOutput{} 652 req = c.newRequest(op, input, output) 653 return 654} 655 656// GetDataEndpoint API operation for Amazon Kinesis Video Streams. 657// 658// Gets an endpoint for a specified stream for either reading or writing. Use 659// this endpoint in your application to read from the specified stream (using 660// the GetMedia or GetMediaForFragmentList operations) or write to it (using 661// the PutMedia operation). 662// 663// The returned endpoint does not have the API name appended. The client needs 664// to add the API name to the returned endpoint. 665// 666// In the request, specify the stream either by StreamName or StreamARN. 667// 668// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 669// with awserr.Error's Code and Message methods to get detailed information about 670// the error. 671// 672// See the AWS API reference guide for Amazon Kinesis Video Streams's 673// API operation GetDataEndpoint for usage and error information. 674// 675// Returned Error Types: 676// * InvalidArgumentException 677// The value for this input parameter is invalid. 678// 679// * ResourceNotFoundException 680// Amazon Kinesis Video Streams can't find the stream that you specified. 681// 682// * ClientLimitExceededException 683// Kinesis Video Streams has throttled the request because you have exceeded 684// the limit of allowed client calls. Try making the call later. 685// 686// * NotAuthorizedException 687// The caller is not authorized to perform this operation. 688// 689// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/GetDataEndpoint 690func (c *KinesisVideo) GetDataEndpoint(input *GetDataEndpointInput) (*GetDataEndpointOutput, error) { 691 req, out := c.GetDataEndpointRequest(input) 692 return out, req.Send() 693} 694 695// GetDataEndpointWithContext is the same as GetDataEndpoint with the addition of 696// the ability to pass a context and additional request options. 697// 698// See GetDataEndpoint for details on how to use this API operation. 699// 700// The context must be non-nil and will be used for request cancellation. If 701// the context is nil a panic will occur. In the future the SDK may create 702// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 703// for more information on using Contexts. 704func (c *KinesisVideo) GetDataEndpointWithContext(ctx aws.Context, input *GetDataEndpointInput, opts ...request.Option) (*GetDataEndpointOutput, error) { 705 req, out := c.GetDataEndpointRequest(input) 706 req.SetContext(ctx) 707 req.ApplyOptions(opts...) 708 return out, req.Send() 709} 710 711const opGetSignalingChannelEndpoint = "GetSignalingChannelEndpoint" 712 713// GetSignalingChannelEndpointRequest generates a "aws/request.Request" representing the 714// client's request for the GetSignalingChannelEndpoint operation. The "output" return 715// value will be populated with the request's response once the request completes 716// successfully. 717// 718// Use "Send" method on the returned Request to send the API call to the service. 719// the "output" return value is not valid until after Send returns without error. 720// 721// See GetSignalingChannelEndpoint for more information on using the GetSignalingChannelEndpoint 722// API call, and error handling. 723// 724// This method is useful when you want to inject custom logic or configuration 725// into the SDK's request lifecycle. Such as custom headers, or retry logic. 726// 727// 728// // Example sending a request using the GetSignalingChannelEndpointRequest method. 729// req, resp := client.GetSignalingChannelEndpointRequest(params) 730// 731// err := req.Send() 732// if err == nil { // resp is now filled 733// fmt.Println(resp) 734// } 735// 736// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/GetSignalingChannelEndpoint 737func (c *KinesisVideo) GetSignalingChannelEndpointRequest(input *GetSignalingChannelEndpointInput) (req *request.Request, output *GetSignalingChannelEndpointOutput) { 738 op := &request.Operation{ 739 Name: opGetSignalingChannelEndpoint, 740 HTTPMethod: "POST", 741 HTTPPath: "/getSignalingChannelEndpoint", 742 } 743 744 if input == nil { 745 input = &GetSignalingChannelEndpointInput{} 746 } 747 748 output = &GetSignalingChannelEndpointOutput{} 749 req = c.newRequest(op, input, output) 750 return 751} 752 753// GetSignalingChannelEndpoint API operation for Amazon Kinesis Video Streams. 754// 755// Provides an endpoint for the specified signaling channel to send and receive 756// messages. This API uses the SingleMasterChannelEndpointConfiguration input 757// parameter, which consists of the Protocols and Role properties. 758// 759// Protocols is used to determine the communication mechanism. For example, 760// if you specify WSS as the protocol, this API produces a secure websocket 761// endpoint. If you specify HTTPS as the protocol, this API generates an HTTPS 762// endpoint. 763// 764// Role determines the messaging permissions. A MASTER role results in this 765// API generating an endpoint that a client can use to communicate with any 766// of the viewers on the channel. A VIEWER role results in this API generating 767// an endpoint that a client can use to communicate only with a MASTER. 768// 769// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 770// with awserr.Error's Code and Message methods to get detailed information about 771// the error. 772// 773// See the AWS API reference guide for Amazon Kinesis Video Streams's 774// API operation GetSignalingChannelEndpoint for usage and error information. 775// 776// Returned Error Types: 777// * InvalidArgumentException 778// The value for this input parameter is invalid. 779// 780// * ClientLimitExceededException 781// Kinesis Video Streams has throttled the request because you have exceeded 782// the limit of allowed client calls. Try making the call later. 783// 784// * ResourceNotFoundException 785// Amazon Kinesis Video Streams can't find the stream that you specified. 786// 787// * ResourceInUseException 788// The signaling channel is currently not available for this operation. 789// 790// * AccessDeniedException 791// You do not have required permissions to perform this operation. 792// 793// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/GetSignalingChannelEndpoint 794func (c *KinesisVideo) GetSignalingChannelEndpoint(input *GetSignalingChannelEndpointInput) (*GetSignalingChannelEndpointOutput, error) { 795 req, out := c.GetSignalingChannelEndpointRequest(input) 796 return out, req.Send() 797} 798 799// GetSignalingChannelEndpointWithContext is the same as GetSignalingChannelEndpoint with the addition of 800// the ability to pass a context and additional request options. 801// 802// See GetSignalingChannelEndpoint for details on how to use this API operation. 803// 804// The context must be non-nil and will be used for request cancellation. If 805// the context is nil a panic will occur. In the future the SDK may create 806// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 807// for more information on using Contexts. 808func (c *KinesisVideo) GetSignalingChannelEndpointWithContext(ctx aws.Context, input *GetSignalingChannelEndpointInput, opts ...request.Option) (*GetSignalingChannelEndpointOutput, error) { 809 req, out := c.GetSignalingChannelEndpointRequest(input) 810 req.SetContext(ctx) 811 req.ApplyOptions(opts...) 812 return out, req.Send() 813} 814 815const opListSignalingChannels = "ListSignalingChannels" 816 817// ListSignalingChannelsRequest generates a "aws/request.Request" representing the 818// client's request for the ListSignalingChannels operation. The "output" return 819// value will be populated with the request's response once the request completes 820// successfully. 821// 822// Use "Send" method on the returned Request to send the API call to the service. 823// the "output" return value is not valid until after Send returns without error. 824// 825// See ListSignalingChannels for more information on using the ListSignalingChannels 826// API call, and error handling. 827// 828// This method is useful when you want to inject custom logic or configuration 829// into the SDK's request lifecycle. Such as custom headers, or retry logic. 830// 831// 832// // Example sending a request using the ListSignalingChannelsRequest method. 833// req, resp := client.ListSignalingChannelsRequest(params) 834// 835// err := req.Send() 836// if err == nil { // resp is now filled 837// fmt.Println(resp) 838// } 839// 840// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/ListSignalingChannels 841func (c *KinesisVideo) ListSignalingChannelsRequest(input *ListSignalingChannelsInput) (req *request.Request, output *ListSignalingChannelsOutput) { 842 op := &request.Operation{ 843 Name: opListSignalingChannels, 844 HTTPMethod: "POST", 845 HTTPPath: "/listSignalingChannels", 846 Paginator: &request.Paginator{ 847 InputTokens: []string{"NextToken"}, 848 OutputTokens: []string{"NextToken"}, 849 LimitToken: "MaxResults", 850 TruncationToken: "", 851 }, 852 } 853 854 if input == nil { 855 input = &ListSignalingChannelsInput{} 856 } 857 858 output = &ListSignalingChannelsOutput{} 859 req = c.newRequest(op, input, output) 860 return 861} 862 863// ListSignalingChannels API operation for Amazon Kinesis Video Streams. 864// 865// Returns an array of ChannelInfo objects. Each object describes a signaling 866// channel. To retrieve only those channels that satisfy a specific condition, 867// you can specify a ChannelNameCondition. 868// 869// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 870// with awserr.Error's Code and Message methods to get detailed information about 871// the error. 872// 873// See the AWS API reference guide for Amazon Kinesis Video Streams's 874// API operation ListSignalingChannels for usage and error information. 875// 876// Returned Error Types: 877// * InvalidArgumentException 878// The value for this input parameter is invalid. 879// 880// * ClientLimitExceededException 881// Kinesis Video Streams has throttled the request because you have exceeded 882// the limit of allowed client calls. Try making the call later. 883// 884// * AccessDeniedException 885// You do not have required permissions to perform this operation. 886// 887// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/ListSignalingChannels 888func (c *KinesisVideo) ListSignalingChannels(input *ListSignalingChannelsInput) (*ListSignalingChannelsOutput, error) { 889 req, out := c.ListSignalingChannelsRequest(input) 890 return out, req.Send() 891} 892 893// ListSignalingChannelsWithContext is the same as ListSignalingChannels with the addition of 894// the ability to pass a context and additional request options. 895// 896// See ListSignalingChannels for details on how to use this API operation. 897// 898// The context must be non-nil and will be used for request cancellation. If 899// the context is nil a panic will occur. In the future the SDK may create 900// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 901// for more information on using Contexts. 902func (c *KinesisVideo) ListSignalingChannelsWithContext(ctx aws.Context, input *ListSignalingChannelsInput, opts ...request.Option) (*ListSignalingChannelsOutput, error) { 903 req, out := c.ListSignalingChannelsRequest(input) 904 req.SetContext(ctx) 905 req.ApplyOptions(opts...) 906 return out, req.Send() 907} 908 909// ListSignalingChannelsPages iterates over the pages of a ListSignalingChannels operation, 910// calling the "fn" function with the response data for each page. To stop 911// iterating, return false from the fn function. 912// 913// See ListSignalingChannels method for more information on how to use this operation. 914// 915// Note: This operation can generate multiple requests to a service. 916// 917// // Example iterating over at most 3 pages of a ListSignalingChannels operation. 918// pageNum := 0 919// err := client.ListSignalingChannelsPages(params, 920// func(page *kinesisvideo.ListSignalingChannelsOutput, lastPage bool) bool { 921// pageNum++ 922// fmt.Println(page) 923// return pageNum <= 3 924// }) 925// 926func (c *KinesisVideo) ListSignalingChannelsPages(input *ListSignalingChannelsInput, fn func(*ListSignalingChannelsOutput, bool) bool) error { 927 return c.ListSignalingChannelsPagesWithContext(aws.BackgroundContext(), input, fn) 928} 929 930// ListSignalingChannelsPagesWithContext same as ListSignalingChannelsPages except 931// it takes a Context and allows setting request options on the pages. 932// 933// The context must be non-nil and will be used for request cancellation. If 934// the context is nil a panic will occur. In the future the SDK may create 935// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 936// for more information on using Contexts. 937func (c *KinesisVideo) ListSignalingChannelsPagesWithContext(ctx aws.Context, input *ListSignalingChannelsInput, fn func(*ListSignalingChannelsOutput, bool) bool, opts ...request.Option) error { 938 p := request.Pagination{ 939 NewRequest: func() (*request.Request, error) { 940 var inCpy *ListSignalingChannelsInput 941 if input != nil { 942 tmp := *input 943 inCpy = &tmp 944 } 945 req, _ := c.ListSignalingChannelsRequest(inCpy) 946 req.SetContext(ctx) 947 req.ApplyOptions(opts...) 948 return req, nil 949 }, 950 } 951 952 for p.Next() { 953 if !fn(p.Page().(*ListSignalingChannelsOutput), !p.HasNextPage()) { 954 break 955 } 956 } 957 958 return p.Err() 959} 960 961const opListStreams = "ListStreams" 962 963// ListStreamsRequest generates a "aws/request.Request" representing the 964// client's request for the ListStreams operation. The "output" return 965// value will be populated with the request's response once the request completes 966// successfully. 967// 968// Use "Send" method on the returned Request to send the API call to the service. 969// the "output" return value is not valid until after Send returns without error. 970// 971// See ListStreams for more information on using the ListStreams 972// API call, and error handling. 973// 974// This method is useful when you want to inject custom logic or configuration 975// into the SDK's request lifecycle. Such as custom headers, or retry logic. 976// 977// 978// // Example sending a request using the ListStreamsRequest method. 979// req, resp := client.ListStreamsRequest(params) 980// 981// err := req.Send() 982// if err == nil { // resp is now filled 983// fmt.Println(resp) 984// } 985// 986// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/ListStreams 987func (c *KinesisVideo) ListStreamsRequest(input *ListStreamsInput) (req *request.Request, output *ListStreamsOutput) { 988 op := &request.Operation{ 989 Name: opListStreams, 990 HTTPMethod: "POST", 991 HTTPPath: "/listStreams", 992 Paginator: &request.Paginator{ 993 InputTokens: []string{"NextToken"}, 994 OutputTokens: []string{"NextToken"}, 995 LimitToken: "MaxResults", 996 TruncationToken: "", 997 }, 998 } 999 1000 if input == nil { 1001 input = &ListStreamsInput{} 1002 } 1003 1004 output = &ListStreamsOutput{} 1005 req = c.newRequest(op, input, output) 1006 return 1007} 1008 1009// ListStreams API operation for Amazon Kinesis Video Streams. 1010// 1011// Returns an array of StreamInfo objects. Each object describes a stream. To 1012// retrieve only streams that satisfy a specific condition, you can specify 1013// a StreamNameCondition. 1014// 1015// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1016// with awserr.Error's Code and Message methods to get detailed information about 1017// the error. 1018// 1019// See the AWS API reference guide for Amazon Kinesis Video Streams's 1020// API operation ListStreams for usage and error information. 1021// 1022// Returned Error Types: 1023// * ClientLimitExceededException 1024// Kinesis Video Streams has throttled the request because you have exceeded 1025// the limit of allowed client calls. Try making the call later. 1026// 1027// * InvalidArgumentException 1028// The value for this input parameter is invalid. 1029// 1030// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/ListStreams 1031func (c *KinesisVideo) ListStreams(input *ListStreamsInput) (*ListStreamsOutput, error) { 1032 req, out := c.ListStreamsRequest(input) 1033 return out, req.Send() 1034} 1035 1036// ListStreamsWithContext is the same as ListStreams with the addition of 1037// the ability to pass a context and additional request options. 1038// 1039// See ListStreams for details on how to use this API operation. 1040// 1041// The context must be non-nil and will be used for request cancellation. If 1042// the context is nil a panic will occur. In the future the SDK may create 1043// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1044// for more information on using Contexts. 1045func (c *KinesisVideo) ListStreamsWithContext(ctx aws.Context, input *ListStreamsInput, opts ...request.Option) (*ListStreamsOutput, error) { 1046 req, out := c.ListStreamsRequest(input) 1047 req.SetContext(ctx) 1048 req.ApplyOptions(opts...) 1049 return out, req.Send() 1050} 1051 1052// ListStreamsPages iterates over the pages of a ListStreams operation, 1053// calling the "fn" function with the response data for each page. To stop 1054// iterating, return false from the fn function. 1055// 1056// See ListStreams method for more information on how to use this operation. 1057// 1058// Note: This operation can generate multiple requests to a service. 1059// 1060// // Example iterating over at most 3 pages of a ListStreams operation. 1061// pageNum := 0 1062// err := client.ListStreamsPages(params, 1063// func(page *kinesisvideo.ListStreamsOutput, lastPage bool) bool { 1064// pageNum++ 1065// fmt.Println(page) 1066// return pageNum <= 3 1067// }) 1068// 1069func (c *KinesisVideo) ListStreamsPages(input *ListStreamsInput, fn func(*ListStreamsOutput, bool) bool) error { 1070 return c.ListStreamsPagesWithContext(aws.BackgroundContext(), input, fn) 1071} 1072 1073// ListStreamsPagesWithContext same as ListStreamsPages except 1074// it takes a Context and allows setting request options on the pages. 1075// 1076// The context must be non-nil and will be used for request cancellation. If 1077// the context is nil a panic will occur. In the future the SDK may create 1078// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1079// for more information on using Contexts. 1080func (c *KinesisVideo) ListStreamsPagesWithContext(ctx aws.Context, input *ListStreamsInput, fn func(*ListStreamsOutput, bool) bool, opts ...request.Option) error { 1081 p := request.Pagination{ 1082 NewRequest: func() (*request.Request, error) { 1083 var inCpy *ListStreamsInput 1084 if input != nil { 1085 tmp := *input 1086 inCpy = &tmp 1087 } 1088 req, _ := c.ListStreamsRequest(inCpy) 1089 req.SetContext(ctx) 1090 req.ApplyOptions(opts...) 1091 return req, nil 1092 }, 1093 } 1094 1095 for p.Next() { 1096 if !fn(p.Page().(*ListStreamsOutput), !p.HasNextPage()) { 1097 break 1098 } 1099 } 1100 1101 return p.Err() 1102} 1103 1104const opListTagsForResource = "ListTagsForResource" 1105 1106// ListTagsForResourceRequest generates a "aws/request.Request" representing the 1107// client's request for the ListTagsForResource operation. The "output" return 1108// value will be populated with the request's response once the request completes 1109// successfully. 1110// 1111// Use "Send" method on the returned Request to send the API call to the service. 1112// the "output" return value is not valid until after Send returns without error. 1113// 1114// See ListTagsForResource for more information on using the ListTagsForResource 1115// API call, and error handling. 1116// 1117// This method is useful when you want to inject custom logic or configuration 1118// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1119// 1120// 1121// // Example sending a request using the ListTagsForResourceRequest method. 1122// req, resp := client.ListTagsForResourceRequest(params) 1123// 1124// err := req.Send() 1125// if err == nil { // resp is now filled 1126// fmt.Println(resp) 1127// } 1128// 1129// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/ListTagsForResource 1130func (c *KinesisVideo) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { 1131 op := &request.Operation{ 1132 Name: opListTagsForResource, 1133 HTTPMethod: "POST", 1134 HTTPPath: "/ListTagsForResource", 1135 } 1136 1137 if input == nil { 1138 input = &ListTagsForResourceInput{} 1139 } 1140 1141 output = &ListTagsForResourceOutput{} 1142 req = c.newRequest(op, input, output) 1143 return 1144} 1145 1146// ListTagsForResource API operation for Amazon Kinesis Video Streams. 1147// 1148// Returns a list of tags associated with the specified signaling channel. 1149// 1150// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1151// with awserr.Error's Code and Message methods to get detailed information about 1152// the error. 1153// 1154// See the AWS API reference guide for Amazon Kinesis Video Streams's 1155// API operation ListTagsForResource for usage and error information. 1156// 1157// Returned Error Types: 1158// * InvalidArgumentException 1159// The value for this input parameter is invalid. 1160// 1161// * ClientLimitExceededException 1162// Kinesis Video Streams has throttled the request because you have exceeded 1163// the limit of allowed client calls. Try making the call later. 1164// 1165// * ResourceNotFoundException 1166// Amazon Kinesis Video Streams can't find the stream that you specified. 1167// 1168// * AccessDeniedException 1169// You do not have required permissions to perform this operation. 1170// 1171// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/ListTagsForResource 1172func (c *KinesisVideo) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { 1173 req, out := c.ListTagsForResourceRequest(input) 1174 return out, req.Send() 1175} 1176 1177// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of 1178// the ability to pass a context and additional request options. 1179// 1180// See ListTagsForResource for details on how to use this API operation. 1181// 1182// The context must be non-nil and will be used for request cancellation. If 1183// the context is nil a panic will occur. In the future the SDK may create 1184// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1185// for more information on using Contexts. 1186func (c *KinesisVideo) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { 1187 req, out := c.ListTagsForResourceRequest(input) 1188 req.SetContext(ctx) 1189 req.ApplyOptions(opts...) 1190 return out, req.Send() 1191} 1192 1193const opListTagsForStream = "ListTagsForStream" 1194 1195// ListTagsForStreamRequest generates a "aws/request.Request" representing the 1196// client's request for the ListTagsForStream operation. The "output" return 1197// value will be populated with the request's response once the request completes 1198// successfully. 1199// 1200// Use "Send" method on the returned Request to send the API call to the service. 1201// the "output" return value is not valid until after Send returns without error. 1202// 1203// See ListTagsForStream for more information on using the ListTagsForStream 1204// API call, and error handling. 1205// 1206// This method is useful when you want to inject custom logic or configuration 1207// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1208// 1209// 1210// // Example sending a request using the ListTagsForStreamRequest method. 1211// req, resp := client.ListTagsForStreamRequest(params) 1212// 1213// err := req.Send() 1214// if err == nil { // resp is now filled 1215// fmt.Println(resp) 1216// } 1217// 1218// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/ListTagsForStream 1219func (c *KinesisVideo) ListTagsForStreamRequest(input *ListTagsForStreamInput) (req *request.Request, output *ListTagsForStreamOutput) { 1220 op := &request.Operation{ 1221 Name: opListTagsForStream, 1222 HTTPMethod: "POST", 1223 HTTPPath: "/listTagsForStream", 1224 } 1225 1226 if input == nil { 1227 input = &ListTagsForStreamInput{} 1228 } 1229 1230 output = &ListTagsForStreamOutput{} 1231 req = c.newRequest(op, input, output) 1232 return 1233} 1234 1235// ListTagsForStream API operation for Amazon Kinesis Video Streams. 1236// 1237// Returns a list of tags associated with the specified stream. 1238// 1239// In the request, you must specify either the StreamName or the StreamARN. 1240// 1241// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1242// with awserr.Error's Code and Message methods to get detailed information about 1243// the error. 1244// 1245// See the AWS API reference guide for Amazon Kinesis Video Streams's 1246// API operation ListTagsForStream for usage and error information. 1247// 1248// Returned Error Types: 1249// * ClientLimitExceededException 1250// Kinesis Video Streams has throttled the request because you have exceeded 1251// the limit of allowed client calls. Try making the call later. 1252// 1253// * InvalidArgumentException 1254// The value for this input parameter is invalid. 1255// 1256// * ResourceNotFoundException 1257// Amazon Kinesis Video Streams can't find the stream that you specified. 1258// 1259// * NotAuthorizedException 1260// The caller is not authorized to perform this operation. 1261// 1262// * InvalidResourceFormatException 1263// The format of the StreamARN is invalid. 1264// 1265// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/ListTagsForStream 1266func (c *KinesisVideo) ListTagsForStream(input *ListTagsForStreamInput) (*ListTagsForStreamOutput, error) { 1267 req, out := c.ListTagsForStreamRequest(input) 1268 return out, req.Send() 1269} 1270 1271// ListTagsForStreamWithContext is the same as ListTagsForStream with the addition of 1272// the ability to pass a context and additional request options. 1273// 1274// See ListTagsForStream for details on how to use this API operation. 1275// 1276// The context must be non-nil and will be used for request cancellation. If 1277// the context is nil a panic will occur. In the future the SDK may create 1278// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1279// for more information on using Contexts. 1280func (c *KinesisVideo) ListTagsForStreamWithContext(ctx aws.Context, input *ListTagsForStreamInput, opts ...request.Option) (*ListTagsForStreamOutput, error) { 1281 req, out := c.ListTagsForStreamRequest(input) 1282 req.SetContext(ctx) 1283 req.ApplyOptions(opts...) 1284 return out, req.Send() 1285} 1286 1287const opTagResource = "TagResource" 1288 1289// TagResourceRequest generates a "aws/request.Request" representing the 1290// client's request for the TagResource operation. The "output" return 1291// value will be populated with the request's response once the request completes 1292// successfully. 1293// 1294// Use "Send" method on the returned Request to send the API call to the service. 1295// the "output" return value is not valid until after Send returns without error. 1296// 1297// See TagResource for more information on using the TagResource 1298// API call, and error handling. 1299// 1300// This method is useful when you want to inject custom logic or configuration 1301// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1302// 1303// 1304// // Example sending a request using the TagResourceRequest method. 1305// req, resp := client.TagResourceRequest(params) 1306// 1307// err := req.Send() 1308// if err == nil { // resp is now filled 1309// fmt.Println(resp) 1310// } 1311// 1312// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/TagResource 1313func (c *KinesisVideo) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { 1314 op := &request.Operation{ 1315 Name: opTagResource, 1316 HTTPMethod: "POST", 1317 HTTPPath: "/TagResource", 1318 } 1319 1320 if input == nil { 1321 input = &TagResourceInput{} 1322 } 1323 1324 output = &TagResourceOutput{} 1325 req = c.newRequest(op, input, output) 1326 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 1327 return 1328} 1329 1330// TagResource API operation for Amazon Kinesis Video Streams. 1331// 1332// Adds one or more tags to a signaling channel. A tag is a key-value pair (the 1333// value is optional) that you can define and assign to AWS resources. If you 1334// specify a tag that already exists, the tag value is replaced with the value 1335// that you specify in the request. For more information, see Using Cost Allocation 1336// Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html) 1337// in the AWS Billing and Cost Management User Guide. 1338// 1339// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1340// with awserr.Error's Code and Message methods to get detailed information about 1341// the error. 1342// 1343// See the AWS API reference guide for Amazon Kinesis Video Streams's 1344// API operation TagResource for usage and error information. 1345// 1346// Returned Error Types: 1347// * InvalidArgumentException 1348// The value for this input parameter is invalid. 1349// 1350// * ClientLimitExceededException 1351// Kinesis Video Streams has throttled the request because you have exceeded 1352// the limit of allowed client calls. Try making the call later. 1353// 1354// * ResourceNotFoundException 1355// Amazon Kinesis Video Streams can't find the stream that you specified. 1356// 1357// * AccessDeniedException 1358// You do not have required permissions to perform this operation. 1359// 1360// * TagsPerResourceExceededLimitException 1361// You have exceeded the limit of tags that you can associate with the resource. 1362// Kinesis video streams support up to 50 tags. 1363// 1364// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/TagResource 1365func (c *KinesisVideo) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { 1366 req, out := c.TagResourceRequest(input) 1367 return out, req.Send() 1368} 1369 1370// TagResourceWithContext is the same as TagResource with the addition of 1371// the ability to pass a context and additional request options. 1372// 1373// See TagResource for details on how to use this API operation. 1374// 1375// The context must be non-nil and will be used for request cancellation. If 1376// the context is nil a panic will occur. In the future the SDK may create 1377// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1378// for more information on using Contexts. 1379func (c *KinesisVideo) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { 1380 req, out := c.TagResourceRequest(input) 1381 req.SetContext(ctx) 1382 req.ApplyOptions(opts...) 1383 return out, req.Send() 1384} 1385 1386const opTagStream = "TagStream" 1387 1388// TagStreamRequest generates a "aws/request.Request" representing the 1389// client's request for the TagStream operation. The "output" return 1390// value will be populated with the request's response once the request completes 1391// successfully. 1392// 1393// Use "Send" method on the returned Request to send the API call to the service. 1394// the "output" return value is not valid until after Send returns without error. 1395// 1396// See TagStream for more information on using the TagStream 1397// API call, and error handling. 1398// 1399// This method is useful when you want to inject custom logic or configuration 1400// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1401// 1402// 1403// // Example sending a request using the TagStreamRequest method. 1404// req, resp := client.TagStreamRequest(params) 1405// 1406// err := req.Send() 1407// if err == nil { // resp is now filled 1408// fmt.Println(resp) 1409// } 1410// 1411// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/TagStream 1412func (c *KinesisVideo) TagStreamRequest(input *TagStreamInput) (req *request.Request, output *TagStreamOutput) { 1413 op := &request.Operation{ 1414 Name: opTagStream, 1415 HTTPMethod: "POST", 1416 HTTPPath: "/tagStream", 1417 } 1418 1419 if input == nil { 1420 input = &TagStreamInput{} 1421 } 1422 1423 output = &TagStreamOutput{} 1424 req = c.newRequest(op, input, output) 1425 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 1426 return 1427} 1428 1429// TagStream API operation for Amazon Kinesis Video Streams. 1430// 1431// Adds one or more tags to a stream. A tag is a key-value pair (the value is 1432// optional) that you can define and assign to AWS resources. If you specify 1433// a tag that already exists, the tag value is replaced with the value that 1434// you specify in the request. For more information, see Using Cost Allocation 1435// Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html) 1436// in the AWS Billing and Cost Management User Guide. 1437// 1438// You must provide either the StreamName or the StreamARN. 1439// 1440// This operation requires permission for the KinesisVideo:TagStream action. 1441// 1442// Kinesis video streams support up to 50 tags. 1443// 1444// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1445// with awserr.Error's Code and Message methods to get detailed information about 1446// the error. 1447// 1448// See the AWS API reference guide for Amazon Kinesis Video Streams's 1449// API operation TagStream for usage and error information. 1450// 1451// Returned Error Types: 1452// * ClientLimitExceededException 1453// Kinesis Video Streams has throttled the request because you have exceeded 1454// the limit of allowed client calls. Try making the call later. 1455// 1456// * InvalidArgumentException 1457// The value for this input parameter is invalid. 1458// 1459// * ResourceNotFoundException 1460// Amazon Kinesis Video Streams can't find the stream that you specified. 1461// 1462// * NotAuthorizedException 1463// The caller is not authorized to perform this operation. 1464// 1465// * InvalidResourceFormatException 1466// The format of the StreamARN is invalid. 1467// 1468// * TagsPerResourceExceededLimitException 1469// You have exceeded the limit of tags that you can associate with the resource. 1470// Kinesis video streams support up to 50 tags. 1471// 1472// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/TagStream 1473func (c *KinesisVideo) TagStream(input *TagStreamInput) (*TagStreamOutput, error) { 1474 req, out := c.TagStreamRequest(input) 1475 return out, req.Send() 1476} 1477 1478// TagStreamWithContext is the same as TagStream with the addition of 1479// the ability to pass a context and additional request options. 1480// 1481// See TagStream for details on how to use this API operation. 1482// 1483// The context must be non-nil and will be used for request cancellation. If 1484// the context is nil a panic will occur. In the future the SDK may create 1485// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1486// for more information on using Contexts. 1487func (c *KinesisVideo) TagStreamWithContext(ctx aws.Context, input *TagStreamInput, opts ...request.Option) (*TagStreamOutput, error) { 1488 req, out := c.TagStreamRequest(input) 1489 req.SetContext(ctx) 1490 req.ApplyOptions(opts...) 1491 return out, req.Send() 1492} 1493 1494const opUntagResource = "UntagResource" 1495 1496// UntagResourceRequest generates a "aws/request.Request" representing the 1497// client's request for the UntagResource operation. The "output" return 1498// value will be populated with the request's response once the request completes 1499// successfully. 1500// 1501// Use "Send" method on the returned Request to send the API call to the service. 1502// the "output" return value is not valid until after Send returns without error. 1503// 1504// See UntagResource for more information on using the UntagResource 1505// API call, and error handling. 1506// 1507// This method is useful when you want to inject custom logic or configuration 1508// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1509// 1510// 1511// // Example sending a request using the UntagResourceRequest method. 1512// req, resp := client.UntagResourceRequest(params) 1513// 1514// err := req.Send() 1515// if err == nil { // resp is now filled 1516// fmt.Println(resp) 1517// } 1518// 1519// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/UntagResource 1520func (c *KinesisVideo) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { 1521 op := &request.Operation{ 1522 Name: opUntagResource, 1523 HTTPMethod: "POST", 1524 HTTPPath: "/UntagResource", 1525 } 1526 1527 if input == nil { 1528 input = &UntagResourceInput{} 1529 } 1530 1531 output = &UntagResourceOutput{} 1532 req = c.newRequest(op, input, output) 1533 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 1534 return 1535} 1536 1537// UntagResource API operation for Amazon Kinesis Video Streams. 1538// 1539// Removes one or more tags from a signaling channel. In the request, specify 1540// only a tag key or keys; don't specify the value. If you specify a tag key 1541// that does not exist, it's ignored. 1542// 1543// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1544// with awserr.Error's Code and Message methods to get detailed information about 1545// the error. 1546// 1547// See the AWS API reference guide for Amazon Kinesis Video Streams's 1548// API operation UntagResource for usage and error information. 1549// 1550// Returned Error Types: 1551// * InvalidArgumentException 1552// The value for this input parameter is invalid. 1553// 1554// * ClientLimitExceededException 1555// Kinesis Video Streams has throttled the request because you have exceeded 1556// the limit of allowed client calls. Try making the call later. 1557// 1558// * ResourceNotFoundException 1559// Amazon Kinesis Video Streams can't find the stream that you specified. 1560// 1561// * AccessDeniedException 1562// You do not have required permissions to perform this operation. 1563// 1564// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/UntagResource 1565func (c *KinesisVideo) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { 1566 req, out := c.UntagResourceRequest(input) 1567 return out, req.Send() 1568} 1569 1570// UntagResourceWithContext is the same as UntagResource with the addition of 1571// the ability to pass a context and additional request options. 1572// 1573// See UntagResource for details on how to use this API operation. 1574// 1575// The context must be non-nil and will be used for request cancellation. If 1576// the context is nil a panic will occur. In the future the SDK may create 1577// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1578// for more information on using Contexts. 1579func (c *KinesisVideo) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { 1580 req, out := c.UntagResourceRequest(input) 1581 req.SetContext(ctx) 1582 req.ApplyOptions(opts...) 1583 return out, req.Send() 1584} 1585 1586const opUntagStream = "UntagStream" 1587 1588// UntagStreamRequest generates a "aws/request.Request" representing the 1589// client's request for the UntagStream operation. The "output" return 1590// value will be populated with the request's response once the request completes 1591// successfully. 1592// 1593// Use "Send" method on the returned Request to send the API call to the service. 1594// the "output" return value is not valid until after Send returns without error. 1595// 1596// See UntagStream for more information on using the UntagStream 1597// API call, and error handling. 1598// 1599// This method is useful when you want to inject custom logic or configuration 1600// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1601// 1602// 1603// // Example sending a request using the UntagStreamRequest method. 1604// req, resp := client.UntagStreamRequest(params) 1605// 1606// err := req.Send() 1607// if err == nil { // resp is now filled 1608// fmt.Println(resp) 1609// } 1610// 1611// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/UntagStream 1612func (c *KinesisVideo) UntagStreamRequest(input *UntagStreamInput) (req *request.Request, output *UntagStreamOutput) { 1613 op := &request.Operation{ 1614 Name: opUntagStream, 1615 HTTPMethod: "POST", 1616 HTTPPath: "/untagStream", 1617 } 1618 1619 if input == nil { 1620 input = &UntagStreamInput{} 1621 } 1622 1623 output = &UntagStreamOutput{} 1624 req = c.newRequest(op, input, output) 1625 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 1626 return 1627} 1628 1629// UntagStream API operation for Amazon Kinesis Video Streams. 1630// 1631// Removes one or more tags from a stream. In the request, specify only a tag 1632// key or keys; don't specify the value. If you specify a tag key that does 1633// not exist, it's ignored. 1634// 1635// In the request, you must provide the StreamName or StreamARN. 1636// 1637// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1638// with awserr.Error's Code and Message methods to get detailed information about 1639// the error. 1640// 1641// See the AWS API reference guide for Amazon Kinesis Video Streams's 1642// API operation UntagStream for usage and error information. 1643// 1644// Returned Error Types: 1645// * ClientLimitExceededException 1646// Kinesis Video Streams has throttled the request because you have exceeded 1647// the limit of allowed client calls. Try making the call later. 1648// 1649// * InvalidArgumentException 1650// The value for this input parameter is invalid. 1651// 1652// * ResourceNotFoundException 1653// Amazon Kinesis Video Streams can't find the stream that you specified. 1654// 1655// * NotAuthorizedException 1656// The caller is not authorized to perform this operation. 1657// 1658// * InvalidResourceFormatException 1659// The format of the StreamARN is invalid. 1660// 1661// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/UntagStream 1662func (c *KinesisVideo) UntagStream(input *UntagStreamInput) (*UntagStreamOutput, error) { 1663 req, out := c.UntagStreamRequest(input) 1664 return out, req.Send() 1665} 1666 1667// UntagStreamWithContext is the same as UntagStream with the addition of 1668// the ability to pass a context and additional request options. 1669// 1670// See UntagStream for details on how to use this API operation. 1671// 1672// The context must be non-nil and will be used for request cancellation. If 1673// the context is nil a panic will occur. In the future the SDK may create 1674// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1675// for more information on using Contexts. 1676func (c *KinesisVideo) UntagStreamWithContext(ctx aws.Context, input *UntagStreamInput, opts ...request.Option) (*UntagStreamOutput, error) { 1677 req, out := c.UntagStreamRequest(input) 1678 req.SetContext(ctx) 1679 req.ApplyOptions(opts...) 1680 return out, req.Send() 1681} 1682 1683const opUpdateDataRetention = "UpdateDataRetention" 1684 1685// UpdateDataRetentionRequest generates a "aws/request.Request" representing the 1686// client's request for the UpdateDataRetention operation. The "output" return 1687// value will be populated with the request's response once the request completes 1688// successfully. 1689// 1690// Use "Send" method on the returned Request to send the API call to the service. 1691// the "output" return value is not valid until after Send returns without error. 1692// 1693// See UpdateDataRetention for more information on using the UpdateDataRetention 1694// API call, and error handling. 1695// 1696// This method is useful when you want to inject custom logic or configuration 1697// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1698// 1699// 1700// // Example sending a request using the UpdateDataRetentionRequest method. 1701// req, resp := client.UpdateDataRetentionRequest(params) 1702// 1703// err := req.Send() 1704// if err == nil { // resp is now filled 1705// fmt.Println(resp) 1706// } 1707// 1708// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/UpdateDataRetention 1709func (c *KinesisVideo) UpdateDataRetentionRequest(input *UpdateDataRetentionInput) (req *request.Request, output *UpdateDataRetentionOutput) { 1710 op := &request.Operation{ 1711 Name: opUpdateDataRetention, 1712 HTTPMethod: "POST", 1713 HTTPPath: "/updateDataRetention", 1714 } 1715 1716 if input == nil { 1717 input = &UpdateDataRetentionInput{} 1718 } 1719 1720 output = &UpdateDataRetentionOutput{} 1721 req = c.newRequest(op, input, output) 1722 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 1723 return 1724} 1725 1726// UpdateDataRetention API operation for Amazon Kinesis Video Streams. 1727// 1728// Increases or decreases the stream's data retention period by the value that 1729// you specify. To indicate whether you want to increase or decrease the data 1730// retention period, specify the Operation parameter in the request body. In 1731// the request, you must specify either the StreamName or the StreamARN. 1732// 1733// The retention period that you specify replaces the current value. 1734// 1735// This operation requires permission for the KinesisVideo:UpdateDataRetention 1736// action. 1737// 1738// Changing the data retention period affects the data in the stream as follows: 1739// 1740// * If the data retention period is increased, existing data is retained 1741// for the new retention period. For example, if the data retention period 1742// is increased from one hour to seven hours, all existing data is retained 1743// for seven hours. 1744// 1745// * If the data retention period is decreased, existing data is retained 1746// for the new retention period. For example, if the data retention period 1747// is decreased from seven hours to one hour, all existing data is retained 1748// for one hour, and any data older than one hour is deleted immediately. 1749// 1750// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1751// with awserr.Error's Code and Message methods to get detailed information about 1752// the error. 1753// 1754// See the AWS API reference guide for Amazon Kinesis Video Streams's 1755// API operation UpdateDataRetention for usage and error information. 1756// 1757// Returned Error Types: 1758// * ClientLimitExceededException 1759// Kinesis Video Streams has throttled the request because you have exceeded 1760// the limit of allowed client calls. Try making the call later. 1761// 1762// * InvalidArgumentException 1763// The value for this input parameter is invalid. 1764// 1765// * ResourceNotFoundException 1766// Amazon Kinesis Video Streams can't find the stream that you specified. 1767// 1768// * ResourceInUseException 1769// The signaling channel is currently not available for this operation. 1770// 1771// * NotAuthorizedException 1772// The caller is not authorized to perform this operation. 1773// 1774// * VersionMismatchException 1775// The stream version that you specified is not the latest version. To get the 1776// latest version, use the DescribeStream (https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/API_DescribeStream.html) 1777// API. 1778// 1779// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/UpdateDataRetention 1780func (c *KinesisVideo) UpdateDataRetention(input *UpdateDataRetentionInput) (*UpdateDataRetentionOutput, error) { 1781 req, out := c.UpdateDataRetentionRequest(input) 1782 return out, req.Send() 1783} 1784 1785// UpdateDataRetentionWithContext is the same as UpdateDataRetention with the addition of 1786// the ability to pass a context and additional request options. 1787// 1788// See UpdateDataRetention for details on how to use this API operation. 1789// 1790// The context must be non-nil and will be used for request cancellation. If 1791// the context is nil a panic will occur. In the future the SDK may create 1792// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1793// for more information on using Contexts. 1794func (c *KinesisVideo) UpdateDataRetentionWithContext(ctx aws.Context, input *UpdateDataRetentionInput, opts ...request.Option) (*UpdateDataRetentionOutput, error) { 1795 req, out := c.UpdateDataRetentionRequest(input) 1796 req.SetContext(ctx) 1797 req.ApplyOptions(opts...) 1798 return out, req.Send() 1799} 1800 1801const opUpdateSignalingChannel = "UpdateSignalingChannel" 1802 1803// UpdateSignalingChannelRequest generates a "aws/request.Request" representing the 1804// client's request for the UpdateSignalingChannel operation. The "output" return 1805// value will be populated with the request's response once the request completes 1806// successfully. 1807// 1808// Use "Send" method on the returned Request to send the API call to the service. 1809// the "output" return value is not valid until after Send returns without error. 1810// 1811// See UpdateSignalingChannel for more information on using the UpdateSignalingChannel 1812// API call, and error handling. 1813// 1814// This method is useful when you want to inject custom logic or configuration 1815// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1816// 1817// 1818// // Example sending a request using the UpdateSignalingChannelRequest method. 1819// req, resp := client.UpdateSignalingChannelRequest(params) 1820// 1821// err := req.Send() 1822// if err == nil { // resp is now filled 1823// fmt.Println(resp) 1824// } 1825// 1826// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/UpdateSignalingChannel 1827func (c *KinesisVideo) UpdateSignalingChannelRequest(input *UpdateSignalingChannelInput) (req *request.Request, output *UpdateSignalingChannelOutput) { 1828 op := &request.Operation{ 1829 Name: opUpdateSignalingChannel, 1830 HTTPMethod: "POST", 1831 HTTPPath: "/updateSignalingChannel", 1832 } 1833 1834 if input == nil { 1835 input = &UpdateSignalingChannelInput{} 1836 } 1837 1838 output = &UpdateSignalingChannelOutput{} 1839 req = c.newRequest(op, input, output) 1840 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 1841 return 1842} 1843 1844// UpdateSignalingChannel API operation for Amazon Kinesis Video Streams. 1845// 1846// Updates the existing signaling channel. This is an asynchronous operation 1847// and takes time to complete. 1848// 1849// If the MessageTtlSeconds value is updated (either increased or reduced), 1850// it only applies to new messages sent via this channel after it's been updated. 1851// Existing messages are still expired as per the previous MessageTtlSeconds 1852// value. 1853// 1854// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1855// with awserr.Error's Code and Message methods to get detailed information about 1856// the error. 1857// 1858// See the AWS API reference guide for Amazon Kinesis Video Streams's 1859// API operation UpdateSignalingChannel for usage and error information. 1860// 1861// Returned Error Types: 1862// * InvalidArgumentException 1863// The value for this input parameter is invalid. 1864// 1865// * ClientLimitExceededException 1866// Kinesis Video Streams has throttled the request because you have exceeded 1867// the limit of allowed client calls. Try making the call later. 1868// 1869// * ResourceNotFoundException 1870// Amazon Kinesis Video Streams can't find the stream that you specified. 1871// 1872// * ResourceInUseException 1873// The signaling channel is currently not available for this operation. 1874// 1875// * AccessDeniedException 1876// You do not have required permissions to perform this operation. 1877// 1878// * VersionMismatchException 1879// The stream version that you specified is not the latest version. To get the 1880// latest version, use the DescribeStream (https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/API_DescribeStream.html) 1881// API. 1882// 1883// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/UpdateSignalingChannel 1884func (c *KinesisVideo) UpdateSignalingChannel(input *UpdateSignalingChannelInput) (*UpdateSignalingChannelOutput, error) { 1885 req, out := c.UpdateSignalingChannelRequest(input) 1886 return out, req.Send() 1887} 1888 1889// UpdateSignalingChannelWithContext is the same as UpdateSignalingChannel with the addition of 1890// the ability to pass a context and additional request options. 1891// 1892// See UpdateSignalingChannel for details on how to use this API operation. 1893// 1894// The context must be non-nil and will be used for request cancellation. If 1895// the context is nil a panic will occur. In the future the SDK may create 1896// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1897// for more information on using Contexts. 1898func (c *KinesisVideo) UpdateSignalingChannelWithContext(ctx aws.Context, input *UpdateSignalingChannelInput, opts ...request.Option) (*UpdateSignalingChannelOutput, error) { 1899 req, out := c.UpdateSignalingChannelRequest(input) 1900 req.SetContext(ctx) 1901 req.ApplyOptions(opts...) 1902 return out, req.Send() 1903} 1904 1905const opUpdateStream = "UpdateStream" 1906 1907// UpdateStreamRequest generates a "aws/request.Request" representing the 1908// client's request for the UpdateStream operation. The "output" return 1909// value will be populated with the request's response once the request completes 1910// successfully. 1911// 1912// Use "Send" method on the returned Request to send the API call to the service. 1913// the "output" return value is not valid until after Send returns without error. 1914// 1915// See UpdateStream for more information on using the UpdateStream 1916// API call, and error handling. 1917// 1918// This method is useful when you want to inject custom logic or configuration 1919// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1920// 1921// 1922// // Example sending a request using the UpdateStreamRequest method. 1923// req, resp := client.UpdateStreamRequest(params) 1924// 1925// err := req.Send() 1926// if err == nil { // resp is now filled 1927// fmt.Println(resp) 1928// } 1929// 1930// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/UpdateStream 1931func (c *KinesisVideo) UpdateStreamRequest(input *UpdateStreamInput) (req *request.Request, output *UpdateStreamOutput) { 1932 op := &request.Operation{ 1933 Name: opUpdateStream, 1934 HTTPMethod: "POST", 1935 HTTPPath: "/updateStream", 1936 } 1937 1938 if input == nil { 1939 input = &UpdateStreamInput{} 1940 } 1941 1942 output = &UpdateStreamOutput{} 1943 req = c.newRequest(op, input, output) 1944 req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) 1945 return 1946} 1947 1948// UpdateStream API operation for Amazon Kinesis Video Streams. 1949// 1950// Updates stream metadata, such as the device name and media type. 1951// 1952// You must provide the stream name or the Amazon Resource Name (ARN) of the 1953// stream. 1954// 1955// To make sure that you have the latest version of the stream before updating 1956// it, you can specify the stream version. Kinesis Video Streams assigns a version 1957// to each stream. When you update a stream, Kinesis Video Streams assigns a 1958// new version number. To get the latest stream version, use the DescribeStream 1959// API. 1960// 1961// UpdateStream is an asynchronous operation, and takes time to complete. 1962// 1963// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1964// with awserr.Error's Code and Message methods to get detailed information about 1965// the error. 1966// 1967// See the AWS API reference guide for Amazon Kinesis Video Streams's 1968// API operation UpdateStream for usage and error information. 1969// 1970// Returned Error Types: 1971// * ClientLimitExceededException 1972// Kinesis Video Streams has throttled the request because you have exceeded 1973// the limit of allowed client calls. Try making the call later. 1974// 1975// * InvalidArgumentException 1976// The value for this input parameter is invalid. 1977// 1978// * ResourceNotFoundException 1979// Amazon Kinesis Video Streams can't find the stream that you specified. 1980// 1981// * ResourceInUseException 1982// The signaling channel is currently not available for this operation. 1983// 1984// * NotAuthorizedException 1985// The caller is not authorized to perform this operation. 1986// 1987// * VersionMismatchException 1988// The stream version that you specified is not the latest version. To get the 1989// latest version, use the DescribeStream (https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/API_DescribeStream.html) 1990// API. 1991// 1992// See also, https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/UpdateStream 1993func (c *KinesisVideo) UpdateStream(input *UpdateStreamInput) (*UpdateStreamOutput, error) { 1994 req, out := c.UpdateStreamRequest(input) 1995 return out, req.Send() 1996} 1997 1998// UpdateStreamWithContext is the same as UpdateStream with the addition of 1999// the ability to pass a context and additional request options. 2000// 2001// See UpdateStream for details on how to use this API operation. 2002// 2003// The context must be non-nil and will be used for request cancellation. If 2004// the context is nil a panic will occur. In the future the SDK may create 2005// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2006// for more information on using Contexts. 2007func (c *KinesisVideo) UpdateStreamWithContext(ctx aws.Context, input *UpdateStreamInput, opts ...request.Option) (*UpdateStreamOutput, error) { 2008 req, out := c.UpdateStreamRequest(input) 2009 req.SetContext(ctx) 2010 req.ApplyOptions(opts...) 2011 return out, req.Send() 2012} 2013 2014// You do not have required permissions to perform this operation. 2015type AccessDeniedException struct { 2016 _ struct{} `type:"structure"` 2017 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 2018 2019 Message_ *string `locationName:"Message" type:"string"` 2020} 2021 2022// String returns the string representation 2023func (s AccessDeniedException) String() string { 2024 return awsutil.Prettify(s) 2025} 2026 2027// GoString returns the string representation 2028func (s AccessDeniedException) GoString() string { 2029 return s.String() 2030} 2031 2032func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { 2033 return &AccessDeniedException{ 2034 RespMetadata: v, 2035 } 2036} 2037 2038// Code returns the exception type name. 2039func (s *AccessDeniedException) Code() string { 2040 return "AccessDeniedException" 2041} 2042 2043// Message returns the exception's message. 2044func (s *AccessDeniedException) Message() string { 2045 if s.Message_ != nil { 2046 return *s.Message_ 2047 } 2048 return "" 2049} 2050 2051// OrigErr always returns nil, satisfies awserr.Error interface. 2052func (s *AccessDeniedException) OrigErr() error { 2053 return nil 2054} 2055 2056func (s *AccessDeniedException) Error() string { 2057 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 2058} 2059 2060// Status code returns the HTTP status code for the request's response error. 2061func (s *AccessDeniedException) StatusCode() int { 2062 return s.RespMetadata.StatusCode 2063} 2064 2065// RequestID returns the service's response RequestID for request. 2066func (s *AccessDeniedException) RequestID() string { 2067 return s.RespMetadata.RequestID 2068} 2069 2070// You have reached the maximum limit of active signaling channels for this 2071// AWS account in this region. 2072type AccountChannelLimitExceededException struct { 2073 _ struct{} `type:"structure"` 2074 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 2075 2076 Message_ *string `locationName:"Message" type:"string"` 2077} 2078 2079// String returns the string representation 2080func (s AccountChannelLimitExceededException) String() string { 2081 return awsutil.Prettify(s) 2082} 2083 2084// GoString returns the string representation 2085func (s AccountChannelLimitExceededException) GoString() string { 2086 return s.String() 2087} 2088 2089func newErrorAccountChannelLimitExceededException(v protocol.ResponseMetadata) error { 2090 return &AccountChannelLimitExceededException{ 2091 RespMetadata: v, 2092 } 2093} 2094 2095// Code returns the exception type name. 2096func (s *AccountChannelLimitExceededException) Code() string { 2097 return "AccountChannelLimitExceededException" 2098} 2099 2100// Message returns the exception's message. 2101func (s *AccountChannelLimitExceededException) Message() string { 2102 if s.Message_ != nil { 2103 return *s.Message_ 2104 } 2105 return "" 2106} 2107 2108// OrigErr always returns nil, satisfies awserr.Error interface. 2109func (s *AccountChannelLimitExceededException) OrigErr() error { 2110 return nil 2111} 2112 2113func (s *AccountChannelLimitExceededException) Error() string { 2114 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 2115} 2116 2117// Status code returns the HTTP status code for the request's response error. 2118func (s *AccountChannelLimitExceededException) StatusCode() int { 2119 return s.RespMetadata.StatusCode 2120} 2121 2122// RequestID returns the service's response RequestID for request. 2123func (s *AccountChannelLimitExceededException) RequestID() string { 2124 return s.RespMetadata.RequestID 2125} 2126 2127// The number of streams created for the account is too high. 2128type AccountStreamLimitExceededException struct { 2129 _ struct{} `type:"structure"` 2130 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 2131 2132 Message_ *string `locationName:"Message" type:"string"` 2133} 2134 2135// String returns the string representation 2136func (s AccountStreamLimitExceededException) String() string { 2137 return awsutil.Prettify(s) 2138} 2139 2140// GoString returns the string representation 2141func (s AccountStreamLimitExceededException) GoString() string { 2142 return s.String() 2143} 2144 2145func newErrorAccountStreamLimitExceededException(v protocol.ResponseMetadata) error { 2146 return &AccountStreamLimitExceededException{ 2147 RespMetadata: v, 2148 } 2149} 2150 2151// Code returns the exception type name. 2152func (s *AccountStreamLimitExceededException) Code() string { 2153 return "AccountStreamLimitExceededException" 2154} 2155 2156// Message returns the exception's message. 2157func (s *AccountStreamLimitExceededException) Message() string { 2158 if s.Message_ != nil { 2159 return *s.Message_ 2160 } 2161 return "" 2162} 2163 2164// OrigErr always returns nil, satisfies awserr.Error interface. 2165func (s *AccountStreamLimitExceededException) OrigErr() error { 2166 return nil 2167} 2168 2169func (s *AccountStreamLimitExceededException) Error() string { 2170 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 2171} 2172 2173// Status code returns the HTTP status code for the request's response error. 2174func (s *AccountStreamLimitExceededException) StatusCode() int { 2175 return s.RespMetadata.StatusCode 2176} 2177 2178// RequestID returns the service's response RequestID for request. 2179func (s *AccountStreamLimitExceededException) RequestID() string { 2180 return s.RespMetadata.RequestID 2181} 2182 2183// A structure that encapsulates a signaling channel's metadata and properties. 2184type ChannelInfo struct { 2185 _ struct{} `type:"structure"` 2186 2187 // The Amazon Resource Name (ARN) of the signaling channel. 2188 ChannelARN *string `min:"1" type:"string"` 2189 2190 // The name of the signaling channel. 2191 ChannelName *string `min:"1" type:"string"` 2192 2193 // Current status of the signaling channel. 2194 ChannelStatus *string `type:"string" enum:"Status"` 2195 2196 // The type of the signaling channel. 2197 ChannelType *string `type:"string" enum:"ChannelType"` 2198 2199 // The time at which the signaling channel was created. 2200 CreationTime *time.Time `type:"timestamp"` 2201 2202 // A structure that contains the configuration for the SINGLE_MASTER channel 2203 // type. 2204 SingleMasterConfiguration *SingleMasterConfiguration `type:"structure"` 2205 2206 // The current version of the signaling channel. 2207 Version *string `min:"1" type:"string"` 2208} 2209 2210// String returns the string representation 2211func (s ChannelInfo) String() string { 2212 return awsutil.Prettify(s) 2213} 2214 2215// GoString returns the string representation 2216func (s ChannelInfo) GoString() string { 2217 return s.String() 2218} 2219 2220// SetChannelARN sets the ChannelARN field's value. 2221func (s *ChannelInfo) SetChannelARN(v string) *ChannelInfo { 2222 s.ChannelARN = &v 2223 return s 2224} 2225 2226// SetChannelName sets the ChannelName field's value. 2227func (s *ChannelInfo) SetChannelName(v string) *ChannelInfo { 2228 s.ChannelName = &v 2229 return s 2230} 2231 2232// SetChannelStatus sets the ChannelStatus field's value. 2233func (s *ChannelInfo) SetChannelStatus(v string) *ChannelInfo { 2234 s.ChannelStatus = &v 2235 return s 2236} 2237 2238// SetChannelType sets the ChannelType field's value. 2239func (s *ChannelInfo) SetChannelType(v string) *ChannelInfo { 2240 s.ChannelType = &v 2241 return s 2242} 2243 2244// SetCreationTime sets the CreationTime field's value. 2245func (s *ChannelInfo) SetCreationTime(v time.Time) *ChannelInfo { 2246 s.CreationTime = &v 2247 return s 2248} 2249 2250// SetSingleMasterConfiguration sets the SingleMasterConfiguration field's value. 2251func (s *ChannelInfo) SetSingleMasterConfiguration(v *SingleMasterConfiguration) *ChannelInfo { 2252 s.SingleMasterConfiguration = v 2253 return s 2254} 2255 2256// SetVersion sets the Version field's value. 2257func (s *ChannelInfo) SetVersion(v string) *ChannelInfo { 2258 s.Version = &v 2259 return s 2260} 2261 2262// An optional input parameter for the ListSignalingChannels API. When this 2263// parameter is specified while invoking ListSignalingChannels, the API returns 2264// only the channels that satisfy a condition specified in ChannelNameCondition. 2265type ChannelNameCondition struct { 2266 _ struct{} `type:"structure"` 2267 2268 // A comparison operator. Currently, you can only specify the BEGINS_WITH operator, 2269 // which finds signaling channels whose names begin with a given prefix. 2270 ComparisonOperator *string `type:"string" enum:"ComparisonOperator"` 2271 2272 // A value to compare. 2273 ComparisonValue *string `min:"1" type:"string"` 2274} 2275 2276// String returns the string representation 2277func (s ChannelNameCondition) String() string { 2278 return awsutil.Prettify(s) 2279} 2280 2281// GoString returns the string representation 2282func (s ChannelNameCondition) GoString() string { 2283 return s.String() 2284} 2285 2286// Validate inspects the fields of the type to determine if they are valid. 2287func (s *ChannelNameCondition) Validate() error { 2288 invalidParams := request.ErrInvalidParams{Context: "ChannelNameCondition"} 2289 if s.ComparisonValue != nil && len(*s.ComparisonValue) < 1 { 2290 invalidParams.Add(request.NewErrParamMinLen("ComparisonValue", 1)) 2291 } 2292 2293 if invalidParams.Len() > 0 { 2294 return invalidParams 2295 } 2296 return nil 2297} 2298 2299// SetComparisonOperator sets the ComparisonOperator field's value. 2300func (s *ChannelNameCondition) SetComparisonOperator(v string) *ChannelNameCondition { 2301 s.ComparisonOperator = &v 2302 return s 2303} 2304 2305// SetComparisonValue sets the ComparisonValue field's value. 2306func (s *ChannelNameCondition) SetComparisonValue(v string) *ChannelNameCondition { 2307 s.ComparisonValue = &v 2308 return s 2309} 2310 2311// Kinesis Video Streams has throttled the request because you have exceeded 2312// the limit of allowed client calls. Try making the call later. 2313type ClientLimitExceededException struct { 2314 _ struct{} `type:"structure"` 2315 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 2316 2317 Message_ *string `locationName:"Message" type:"string"` 2318} 2319 2320// String returns the string representation 2321func (s ClientLimitExceededException) String() string { 2322 return awsutil.Prettify(s) 2323} 2324 2325// GoString returns the string representation 2326func (s ClientLimitExceededException) GoString() string { 2327 return s.String() 2328} 2329 2330func newErrorClientLimitExceededException(v protocol.ResponseMetadata) error { 2331 return &ClientLimitExceededException{ 2332 RespMetadata: v, 2333 } 2334} 2335 2336// Code returns the exception type name. 2337func (s *ClientLimitExceededException) Code() string { 2338 return "ClientLimitExceededException" 2339} 2340 2341// Message returns the exception's message. 2342func (s *ClientLimitExceededException) Message() string { 2343 if s.Message_ != nil { 2344 return *s.Message_ 2345 } 2346 return "" 2347} 2348 2349// OrigErr always returns nil, satisfies awserr.Error interface. 2350func (s *ClientLimitExceededException) OrigErr() error { 2351 return nil 2352} 2353 2354func (s *ClientLimitExceededException) Error() string { 2355 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 2356} 2357 2358// Status code returns the HTTP status code for the request's response error. 2359func (s *ClientLimitExceededException) StatusCode() int { 2360 return s.RespMetadata.StatusCode 2361} 2362 2363// RequestID returns the service's response RequestID for request. 2364func (s *ClientLimitExceededException) RequestID() string { 2365 return s.RespMetadata.RequestID 2366} 2367 2368type CreateSignalingChannelInput struct { 2369 _ struct{} `type:"structure"` 2370 2371 // A name for the signaling channel that you are creating. It must be unique 2372 // for each AWS account and AWS Region. 2373 // 2374 // ChannelName is a required field 2375 ChannelName *string `min:"1" type:"string" required:"true"` 2376 2377 // A type of the signaling channel that you are creating. Currently, SINGLE_MASTER 2378 // is the only supported channel type. 2379 ChannelType *string `type:"string" enum:"ChannelType"` 2380 2381 // A structure containing the configuration for the SINGLE_MASTER channel type. 2382 SingleMasterConfiguration *SingleMasterConfiguration `type:"structure"` 2383 2384 // A set of tags (key-value pairs) that you want to associate with this channel. 2385 Tags []*Tag `type:"list"` 2386} 2387 2388// String returns the string representation 2389func (s CreateSignalingChannelInput) String() string { 2390 return awsutil.Prettify(s) 2391} 2392 2393// GoString returns the string representation 2394func (s CreateSignalingChannelInput) GoString() string { 2395 return s.String() 2396} 2397 2398// Validate inspects the fields of the type to determine if they are valid. 2399func (s *CreateSignalingChannelInput) Validate() error { 2400 invalidParams := request.ErrInvalidParams{Context: "CreateSignalingChannelInput"} 2401 if s.ChannelName == nil { 2402 invalidParams.Add(request.NewErrParamRequired("ChannelName")) 2403 } 2404 if s.ChannelName != nil && len(*s.ChannelName) < 1 { 2405 invalidParams.Add(request.NewErrParamMinLen("ChannelName", 1)) 2406 } 2407 if s.SingleMasterConfiguration != nil { 2408 if err := s.SingleMasterConfiguration.Validate(); err != nil { 2409 invalidParams.AddNested("SingleMasterConfiguration", err.(request.ErrInvalidParams)) 2410 } 2411 } 2412 if s.Tags != nil { 2413 for i, v := range s.Tags { 2414 if v == nil { 2415 continue 2416 } 2417 if err := v.Validate(); err != nil { 2418 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 2419 } 2420 } 2421 } 2422 2423 if invalidParams.Len() > 0 { 2424 return invalidParams 2425 } 2426 return nil 2427} 2428 2429// SetChannelName sets the ChannelName field's value. 2430func (s *CreateSignalingChannelInput) SetChannelName(v string) *CreateSignalingChannelInput { 2431 s.ChannelName = &v 2432 return s 2433} 2434 2435// SetChannelType sets the ChannelType field's value. 2436func (s *CreateSignalingChannelInput) SetChannelType(v string) *CreateSignalingChannelInput { 2437 s.ChannelType = &v 2438 return s 2439} 2440 2441// SetSingleMasterConfiguration sets the SingleMasterConfiguration field's value. 2442func (s *CreateSignalingChannelInput) SetSingleMasterConfiguration(v *SingleMasterConfiguration) *CreateSignalingChannelInput { 2443 s.SingleMasterConfiguration = v 2444 return s 2445} 2446 2447// SetTags sets the Tags field's value. 2448func (s *CreateSignalingChannelInput) SetTags(v []*Tag) *CreateSignalingChannelInput { 2449 s.Tags = v 2450 return s 2451} 2452 2453type CreateSignalingChannelOutput struct { 2454 _ struct{} `type:"structure"` 2455 2456 // The Amazon Resource Name (ARN) of the created channel. 2457 ChannelARN *string `min:"1" type:"string"` 2458} 2459 2460// String returns the string representation 2461func (s CreateSignalingChannelOutput) String() string { 2462 return awsutil.Prettify(s) 2463} 2464 2465// GoString returns the string representation 2466func (s CreateSignalingChannelOutput) GoString() string { 2467 return s.String() 2468} 2469 2470// SetChannelARN sets the ChannelARN field's value. 2471func (s *CreateSignalingChannelOutput) SetChannelARN(v string) *CreateSignalingChannelOutput { 2472 s.ChannelARN = &v 2473 return s 2474} 2475 2476type CreateStreamInput struct { 2477 _ struct{} `type:"structure"` 2478 2479 // The number of hours that you want to retain the data in the stream. Kinesis 2480 // Video Streams retains the data in a data store that is associated with the 2481 // stream. 2482 // 2483 // The default value is 0, indicating that the stream does not persist data. 2484 // 2485 // When the DataRetentionInHours value is 0, consumers can still consume the 2486 // fragments that remain in the service host buffer, which has a retention time 2487 // limit of 5 minutes and a retention memory limit of 200 MB. Fragments are 2488 // removed from the buffer when either limit is reached. 2489 DataRetentionInHours *int64 `type:"integer"` 2490 2491 // The name of the device that is writing to the stream. 2492 // 2493 // In the current implementation, Kinesis Video Streams does not use this name. 2494 DeviceName *string `min:"1" type:"string"` 2495 2496 // The ID of the AWS Key Management Service (AWS KMS) key that you want Kinesis 2497 // Video Streams to use to encrypt stream data. 2498 // 2499 // If no key ID is specified, the default, Kinesis Video-managed key (aws/kinesisvideo) 2500 // is used. 2501 // 2502 // For more information, see DescribeKey (https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters). 2503 KmsKeyId *string `min:"1" type:"string"` 2504 2505 // The media type of the stream. Consumers of the stream can use this information 2506 // when processing the stream. For more information about media types, see Media 2507 // Types (http://www.iana.org/assignments/media-types/media-types.xhtml). If 2508 // you choose to specify the MediaType, see Naming Requirements (https://tools.ietf.org/html/rfc6838#section-4.2) 2509 // for guidelines. 2510 // 2511 // Example valid values include "video/h264" and "video/h264,audio/aac". 2512 // 2513 // This parameter is optional; the default value is null (or empty in JSON). 2514 MediaType *string `min:"1" type:"string"` 2515 2516 // A name for the stream that you are creating. 2517 // 2518 // The stream name is an identifier for the stream, and must be unique for each 2519 // account and region. 2520 // 2521 // StreamName is a required field 2522 StreamName *string `min:"1" type:"string" required:"true"` 2523 2524 // A list of tags to associate with the specified stream. Each tag is a key-value 2525 // pair (the value is optional). 2526 Tags map[string]*string `min:"1" type:"map"` 2527} 2528 2529// String returns the string representation 2530func (s CreateStreamInput) String() string { 2531 return awsutil.Prettify(s) 2532} 2533 2534// GoString returns the string representation 2535func (s CreateStreamInput) GoString() string { 2536 return s.String() 2537} 2538 2539// Validate inspects the fields of the type to determine if they are valid. 2540func (s *CreateStreamInput) Validate() error { 2541 invalidParams := request.ErrInvalidParams{Context: "CreateStreamInput"} 2542 if s.DeviceName != nil && len(*s.DeviceName) < 1 { 2543 invalidParams.Add(request.NewErrParamMinLen("DeviceName", 1)) 2544 } 2545 if s.KmsKeyId != nil && len(*s.KmsKeyId) < 1 { 2546 invalidParams.Add(request.NewErrParamMinLen("KmsKeyId", 1)) 2547 } 2548 if s.MediaType != nil && len(*s.MediaType) < 1 { 2549 invalidParams.Add(request.NewErrParamMinLen("MediaType", 1)) 2550 } 2551 if s.StreamName == nil { 2552 invalidParams.Add(request.NewErrParamRequired("StreamName")) 2553 } 2554 if s.StreamName != nil && len(*s.StreamName) < 1 { 2555 invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) 2556 } 2557 if s.Tags != nil && len(s.Tags) < 1 { 2558 invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) 2559 } 2560 2561 if invalidParams.Len() > 0 { 2562 return invalidParams 2563 } 2564 return nil 2565} 2566 2567// SetDataRetentionInHours sets the DataRetentionInHours field's value. 2568func (s *CreateStreamInput) SetDataRetentionInHours(v int64) *CreateStreamInput { 2569 s.DataRetentionInHours = &v 2570 return s 2571} 2572 2573// SetDeviceName sets the DeviceName field's value. 2574func (s *CreateStreamInput) SetDeviceName(v string) *CreateStreamInput { 2575 s.DeviceName = &v 2576 return s 2577} 2578 2579// SetKmsKeyId sets the KmsKeyId field's value. 2580func (s *CreateStreamInput) SetKmsKeyId(v string) *CreateStreamInput { 2581 s.KmsKeyId = &v 2582 return s 2583} 2584 2585// SetMediaType sets the MediaType field's value. 2586func (s *CreateStreamInput) SetMediaType(v string) *CreateStreamInput { 2587 s.MediaType = &v 2588 return s 2589} 2590 2591// SetStreamName sets the StreamName field's value. 2592func (s *CreateStreamInput) SetStreamName(v string) *CreateStreamInput { 2593 s.StreamName = &v 2594 return s 2595} 2596 2597// SetTags sets the Tags field's value. 2598func (s *CreateStreamInput) SetTags(v map[string]*string) *CreateStreamInput { 2599 s.Tags = v 2600 return s 2601} 2602 2603type CreateStreamOutput struct { 2604 _ struct{} `type:"structure"` 2605 2606 // The Amazon Resource Name (ARN) of the stream. 2607 StreamARN *string `min:"1" type:"string"` 2608} 2609 2610// String returns the string representation 2611func (s CreateStreamOutput) String() string { 2612 return awsutil.Prettify(s) 2613} 2614 2615// GoString returns the string representation 2616func (s CreateStreamOutput) GoString() string { 2617 return s.String() 2618} 2619 2620// SetStreamARN sets the StreamARN field's value. 2621func (s *CreateStreamOutput) SetStreamARN(v string) *CreateStreamOutput { 2622 s.StreamARN = &v 2623 return s 2624} 2625 2626type DeleteSignalingChannelInput struct { 2627 _ struct{} `type:"structure"` 2628 2629 // The Amazon Resource Name (ARN) of the signaling channel that you want to 2630 // delete. 2631 // 2632 // ChannelARN is a required field 2633 ChannelARN *string `min:"1" type:"string" required:"true"` 2634 2635 // The current version of the signaling channel that you want to delete. You 2636 // can obtain the current version by invoking the DescribeSignalingChannel or 2637 // ListSignalingChannels API operations. 2638 CurrentVersion *string `min:"1" type:"string"` 2639} 2640 2641// String returns the string representation 2642func (s DeleteSignalingChannelInput) String() string { 2643 return awsutil.Prettify(s) 2644} 2645 2646// GoString returns the string representation 2647func (s DeleteSignalingChannelInput) GoString() string { 2648 return s.String() 2649} 2650 2651// Validate inspects the fields of the type to determine if they are valid. 2652func (s *DeleteSignalingChannelInput) Validate() error { 2653 invalidParams := request.ErrInvalidParams{Context: "DeleteSignalingChannelInput"} 2654 if s.ChannelARN == nil { 2655 invalidParams.Add(request.NewErrParamRequired("ChannelARN")) 2656 } 2657 if s.ChannelARN != nil && len(*s.ChannelARN) < 1 { 2658 invalidParams.Add(request.NewErrParamMinLen("ChannelARN", 1)) 2659 } 2660 if s.CurrentVersion != nil && len(*s.CurrentVersion) < 1 { 2661 invalidParams.Add(request.NewErrParamMinLen("CurrentVersion", 1)) 2662 } 2663 2664 if invalidParams.Len() > 0 { 2665 return invalidParams 2666 } 2667 return nil 2668} 2669 2670// SetChannelARN sets the ChannelARN field's value. 2671func (s *DeleteSignalingChannelInput) SetChannelARN(v string) *DeleteSignalingChannelInput { 2672 s.ChannelARN = &v 2673 return s 2674} 2675 2676// SetCurrentVersion sets the CurrentVersion field's value. 2677func (s *DeleteSignalingChannelInput) SetCurrentVersion(v string) *DeleteSignalingChannelInput { 2678 s.CurrentVersion = &v 2679 return s 2680} 2681 2682type DeleteSignalingChannelOutput struct { 2683 _ struct{} `type:"structure"` 2684} 2685 2686// String returns the string representation 2687func (s DeleteSignalingChannelOutput) String() string { 2688 return awsutil.Prettify(s) 2689} 2690 2691// GoString returns the string representation 2692func (s DeleteSignalingChannelOutput) GoString() string { 2693 return s.String() 2694} 2695 2696type DeleteStreamInput struct { 2697 _ struct{} `type:"structure"` 2698 2699 // Optional: The version of the stream that you want to delete. 2700 // 2701 // Specify the version as a safeguard to ensure that your are deleting the correct 2702 // stream. To get the stream version, use the DescribeStream API. 2703 // 2704 // If not specified, only the CreationTime is checked before deleting the stream. 2705 CurrentVersion *string `min:"1" type:"string"` 2706 2707 // The Amazon Resource Name (ARN) of the stream that you want to delete. 2708 // 2709 // StreamARN is a required field 2710 StreamARN *string `min:"1" type:"string" required:"true"` 2711} 2712 2713// String returns the string representation 2714func (s DeleteStreamInput) String() string { 2715 return awsutil.Prettify(s) 2716} 2717 2718// GoString returns the string representation 2719func (s DeleteStreamInput) GoString() string { 2720 return s.String() 2721} 2722 2723// Validate inspects the fields of the type to determine if they are valid. 2724func (s *DeleteStreamInput) Validate() error { 2725 invalidParams := request.ErrInvalidParams{Context: "DeleteStreamInput"} 2726 if s.CurrentVersion != nil && len(*s.CurrentVersion) < 1 { 2727 invalidParams.Add(request.NewErrParamMinLen("CurrentVersion", 1)) 2728 } 2729 if s.StreamARN == nil { 2730 invalidParams.Add(request.NewErrParamRequired("StreamARN")) 2731 } 2732 if s.StreamARN != nil && len(*s.StreamARN) < 1 { 2733 invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) 2734 } 2735 2736 if invalidParams.Len() > 0 { 2737 return invalidParams 2738 } 2739 return nil 2740} 2741 2742// SetCurrentVersion sets the CurrentVersion field's value. 2743func (s *DeleteStreamInput) SetCurrentVersion(v string) *DeleteStreamInput { 2744 s.CurrentVersion = &v 2745 return s 2746} 2747 2748// SetStreamARN sets the StreamARN field's value. 2749func (s *DeleteStreamInput) SetStreamARN(v string) *DeleteStreamInput { 2750 s.StreamARN = &v 2751 return s 2752} 2753 2754type DeleteStreamOutput struct { 2755 _ struct{} `type:"structure"` 2756} 2757 2758// String returns the string representation 2759func (s DeleteStreamOutput) String() string { 2760 return awsutil.Prettify(s) 2761} 2762 2763// GoString returns the string representation 2764func (s DeleteStreamOutput) GoString() string { 2765 return s.String() 2766} 2767 2768type DescribeSignalingChannelInput struct { 2769 _ struct{} `type:"structure"` 2770 2771 // The ARN of the signaling channel that you want to describe. 2772 ChannelARN *string `min:"1" type:"string"` 2773 2774 // The name of the signaling channel that you want to describe. 2775 ChannelName *string `min:"1" type:"string"` 2776} 2777 2778// String returns the string representation 2779func (s DescribeSignalingChannelInput) String() string { 2780 return awsutil.Prettify(s) 2781} 2782 2783// GoString returns the string representation 2784func (s DescribeSignalingChannelInput) GoString() string { 2785 return s.String() 2786} 2787 2788// Validate inspects the fields of the type to determine if they are valid. 2789func (s *DescribeSignalingChannelInput) Validate() error { 2790 invalidParams := request.ErrInvalidParams{Context: "DescribeSignalingChannelInput"} 2791 if s.ChannelARN != nil && len(*s.ChannelARN) < 1 { 2792 invalidParams.Add(request.NewErrParamMinLen("ChannelARN", 1)) 2793 } 2794 if s.ChannelName != nil && len(*s.ChannelName) < 1 { 2795 invalidParams.Add(request.NewErrParamMinLen("ChannelName", 1)) 2796 } 2797 2798 if invalidParams.Len() > 0 { 2799 return invalidParams 2800 } 2801 return nil 2802} 2803 2804// SetChannelARN sets the ChannelARN field's value. 2805func (s *DescribeSignalingChannelInput) SetChannelARN(v string) *DescribeSignalingChannelInput { 2806 s.ChannelARN = &v 2807 return s 2808} 2809 2810// SetChannelName sets the ChannelName field's value. 2811func (s *DescribeSignalingChannelInput) SetChannelName(v string) *DescribeSignalingChannelInput { 2812 s.ChannelName = &v 2813 return s 2814} 2815 2816type DescribeSignalingChannelOutput struct { 2817 _ struct{} `type:"structure"` 2818 2819 // A structure that encapsulates the specified signaling channel's metadata 2820 // and properties. 2821 ChannelInfo *ChannelInfo `type:"structure"` 2822} 2823 2824// String returns the string representation 2825func (s DescribeSignalingChannelOutput) String() string { 2826 return awsutil.Prettify(s) 2827} 2828 2829// GoString returns the string representation 2830func (s DescribeSignalingChannelOutput) GoString() string { 2831 return s.String() 2832} 2833 2834// SetChannelInfo sets the ChannelInfo field's value. 2835func (s *DescribeSignalingChannelOutput) SetChannelInfo(v *ChannelInfo) *DescribeSignalingChannelOutput { 2836 s.ChannelInfo = v 2837 return s 2838} 2839 2840type DescribeStreamInput struct { 2841 _ struct{} `type:"structure"` 2842 2843 // The Amazon Resource Name (ARN) of the stream. 2844 StreamARN *string `min:"1" type:"string"` 2845 2846 // The name of the stream. 2847 StreamName *string `min:"1" type:"string"` 2848} 2849 2850// String returns the string representation 2851func (s DescribeStreamInput) String() string { 2852 return awsutil.Prettify(s) 2853} 2854 2855// GoString returns the string representation 2856func (s DescribeStreamInput) GoString() string { 2857 return s.String() 2858} 2859 2860// Validate inspects the fields of the type to determine if they are valid. 2861func (s *DescribeStreamInput) Validate() error { 2862 invalidParams := request.ErrInvalidParams{Context: "DescribeStreamInput"} 2863 if s.StreamARN != nil && len(*s.StreamARN) < 1 { 2864 invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) 2865 } 2866 if s.StreamName != nil && len(*s.StreamName) < 1 { 2867 invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) 2868 } 2869 2870 if invalidParams.Len() > 0 { 2871 return invalidParams 2872 } 2873 return nil 2874} 2875 2876// SetStreamARN sets the StreamARN field's value. 2877func (s *DescribeStreamInput) SetStreamARN(v string) *DescribeStreamInput { 2878 s.StreamARN = &v 2879 return s 2880} 2881 2882// SetStreamName sets the StreamName field's value. 2883func (s *DescribeStreamInput) SetStreamName(v string) *DescribeStreamInput { 2884 s.StreamName = &v 2885 return s 2886} 2887 2888type DescribeStreamOutput struct { 2889 _ struct{} `type:"structure"` 2890 2891 // An object that describes the stream. 2892 StreamInfo *StreamInfo `type:"structure"` 2893} 2894 2895// String returns the string representation 2896func (s DescribeStreamOutput) String() string { 2897 return awsutil.Prettify(s) 2898} 2899 2900// GoString returns the string representation 2901func (s DescribeStreamOutput) GoString() string { 2902 return s.String() 2903} 2904 2905// SetStreamInfo sets the StreamInfo field's value. 2906func (s *DescribeStreamOutput) SetStreamInfo(v *StreamInfo) *DescribeStreamOutput { 2907 s.StreamInfo = v 2908 return s 2909} 2910 2911// Not implemented. 2912type DeviceStreamLimitExceededException struct { 2913 _ struct{} `type:"structure"` 2914 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 2915 2916 Message_ *string `locationName:"Message" type:"string"` 2917} 2918 2919// String returns the string representation 2920func (s DeviceStreamLimitExceededException) String() string { 2921 return awsutil.Prettify(s) 2922} 2923 2924// GoString returns the string representation 2925func (s DeviceStreamLimitExceededException) GoString() string { 2926 return s.String() 2927} 2928 2929func newErrorDeviceStreamLimitExceededException(v protocol.ResponseMetadata) error { 2930 return &DeviceStreamLimitExceededException{ 2931 RespMetadata: v, 2932 } 2933} 2934 2935// Code returns the exception type name. 2936func (s *DeviceStreamLimitExceededException) Code() string { 2937 return "DeviceStreamLimitExceededException" 2938} 2939 2940// Message returns the exception's message. 2941func (s *DeviceStreamLimitExceededException) Message() string { 2942 if s.Message_ != nil { 2943 return *s.Message_ 2944 } 2945 return "" 2946} 2947 2948// OrigErr always returns nil, satisfies awserr.Error interface. 2949func (s *DeviceStreamLimitExceededException) OrigErr() error { 2950 return nil 2951} 2952 2953func (s *DeviceStreamLimitExceededException) Error() string { 2954 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 2955} 2956 2957// Status code returns the HTTP status code for the request's response error. 2958func (s *DeviceStreamLimitExceededException) StatusCode() int { 2959 return s.RespMetadata.StatusCode 2960} 2961 2962// RequestID returns the service's response RequestID for request. 2963func (s *DeviceStreamLimitExceededException) RequestID() string { 2964 return s.RespMetadata.RequestID 2965} 2966 2967type GetDataEndpointInput struct { 2968 _ struct{} `type:"structure"` 2969 2970 // The name of the API action for which to get an endpoint. 2971 // 2972 // APIName is a required field 2973 APIName *string `type:"string" required:"true" enum:"APIName"` 2974 2975 // The Amazon Resource Name (ARN) of the stream that you want to get the endpoint 2976 // for. You must specify either this parameter or a StreamName in the request. 2977 StreamARN *string `min:"1" type:"string"` 2978 2979 // The name of the stream that you want to get the endpoint for. You must specify 2980 // either this parameter or a StreamARN in the request. 2981 StreamName *string `min:"1" type:"string"` 2982} 2983 2984// String returns the string representation 2985func (s GetDataEndpointInput) String() string { 2986 return awsutil.Prettify(s) 2987} 2988 2989// GoString returns the string representation 2990func (s GetDataEndpointInput) GoString() string { 2991 return s.String() 2992} 2993 2994// Validate inspects the fields of the type to determine if they are valid. 2995func (s *GetDataEndpointInput) Validate() error { 2996 invalidParams := request.ErrInvalidParams{Context: "GetDataEndpointInput"} 2997 if s.APIName == nil { 2998 invalidParams.Add(request.NewErrParamRequired("APIName")) 2999 } 3000 if s.StreamARN != nil && len(*s.StreamARN) < 1 { 3001 invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) 3002 } 3003 if s.StreamName != nil && len(*s.StreamName) < 1 { 3004 invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) 3005 } 3006 3007 if invalidParams.Len() > 0 { 3008 return invalidParams 3009 } 3010 return nil 3011} 3012 3013// SetAPIName sets the APIName field's value. 3014func (s *GetDataEndpointInput) SetAPIName(v string) *GetDataEndpointInput { 3015 s.APIName = &v 3016 return s 3017} 3018 3019// SetStreamARN sets the StreamARN field's value. 3020func (s *GetDataEndpointInput) SetStreamARN(v string) *GetDataEndpointInput { 3021 s.StreamARN = &v 3022 return s 3023} 3024 3025// SetStreamName sets the StreamName field's value. 3026func (s *GetDataEndpointInput) SetStreamName(v string) *GetDataEndpointInput { 3027 s.StreamName = &v 3028 return s 3029} 3030 3031type GetDataEndpointOutput struct { 3032 _ struct{} `type:"structure"` 3033 3034 // The endpoint value. To read data from the stream or to write data to it, 3035 // specify this endpoint in your application. 3036 DataEndpoint *string `type:"string"` 3037} 3038 3039// String returns the string representation 3040func (s GetDataEndpointOutput) String() string { 3041 return awsutil.Prettify(s) 3042} 3043 3044// GoString returns the string representation 3045func (s GetDataEndpointOutput) GoString() string { 3046 return s.String() 3047} 3048 3049// SetDataEndpoint sets the DataEndpoint field's value. 3050func (s *GetDataEndpointOutput) SetDataEndpoint(v string) *GetDataEndpointOutput { 3051 s.DataEndpoint = &v 3052 return s 3053} 3054 3055type GetSignalingChannelEndpointInput struct { 3056 _ struct{} `type:"structure"` 3057 3058 // The Amazon Resource Name (ARN) of the signalling channel for which you want 3059 // to get an endpoint. 3060 // 3061 // ChannelARN is a required field 3062 ChannelARN *string `min:"1" type:"string" required:"true"` 3063 3064 // A structure containing the endpoint configuration for the SINGLE_MASTER channel 3065 // type. 3066 SingleMasterChannelEndpointConfiguration *SingleMasterChannelEndpointConfiguration `type:"structure"` 3067} 3068 3069// String returns the string representation 3070func (s GetSignalingChannelEndpointInput) String() string { 3071 return awsutil.Prettify(s) 3072} 3073 3074// GoString returns the string representation 3075func (s GetSignalingChannelEndpointInput) GoString() string { 3076 return s.String() 3077} 3078 3079// Validate inspects the fields of the type to determine if they are valid. 3080func (s *GetSignalingChannelEndpointInput) Validate() error { 3081 invalidParams := request.ErrInvalidParams{Context: "GetSignalingChannelEndpointInput"} 3082 if s.ChannelARN == nil { 3083 invalidParams.Add(request.NewErrParamRequired("ChannelARN")) 3084 } 3085 if s.ChannelARN != nil && len(*s.ChannelARN) < 1 { 3086 invalidParams.Add(request.NewErrParamMinLen("ChannelARN", 1)) 3087 } 3088 if s.SingleMasterChannelEndpointConfiguration != nil { 3089 if err := s.SingleMasterChannelEndpointConfiguration.Validate(); err != nil { 3090 invalidParams.AddNested("SingleMasterChannelEndpointConfiguration", err.(request.ErrInvalidParams)) 3091 } 3092 } 3093 3094 if invalidParams.Len() > 0 { 3095 return invalidParams 3096 } 3097 return nil 3098} 3099 3100// SetChannelARN sets the ChannelARN field's value. 3101func (s *GetSignalingChannelEndpointInput) SetChannelARN(v string) *GetSignalingChannelEndpointInput { 3102 s.ChannelARN = &v 3103 return s 3104} 3105 3106// SetSingleMasterChannelEndpointConfiguration sets the SingleMasterChannelEndpointConfiguration field's value. 3107func (s *GetSignalingChannelEndpointInput) SetSingleMasterChannelEndpointConfiguration(v *SingleMasterChannelEndpointConfiguration) *GetSignalingChannelEndpointInput { 3108 s.SingleMasterChannelEndpointConfiguration = v 3109 return s 3110} 3111 3112type GetSignalingChannelEndpointOutput struct { 3113 _ struct{} `type:"structure"` 3114 3115 // A list of endpoints for the specified signaling channel. 3116 ResourceEndpointList []*ResourceEndpointListItem `type:"list"` 3117} 3118 3119// String returns the string representation 3120func (s GetSignalingChannelEndpointOutput) String() string { 3121 return awsutil.Prettify(s) 3122} 3123 3124// GoString returns the string representation 3125func (s GetSignalingChannelEndpointOutput) GoString() string { 3126 return s.String() 3127} 3128 3129// SetResourceEndpointList sets the ResourceEndpointList field's value. 3130func (s *GetSignalingChannelEndpointOutput) SetResourceEndpointList(v []*ResourceEndpointListItem) *GetSignalingChannelEndpointOutput { 3131 s.ResourceEndpointList = v 3132 return s 3133} 3134 3135// The value for this input parameter is invalid. 3136type InvalidArgumentException struct { 3137 _ struct{} `type:"structure"` 3138 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 3139 3140 Message_ *string `locationName:"Message" type:"string"` 3141} 3142 3143// String returns the string representation 3144func (s InvalidArgumentException) String() string { 3145 return awsutil.Prettify(s) 3146} 3147 3148// GoString returns the string representation 3149func (s InvalidArgumentException) GoString() string { 3150 return s.String() 3151} 3152 3153func newErrorInvalidArgumentException(v protocol.ResponseMetadata) error { 3154 return &InvalidArgumentException{ 3155 RespMetadata: v, 3156 } 3157} 3158 3159// Code returns the exception type name. 3160func (s *InvalidArgumentException) Code() string { 3161 return "InvalidArgumentException" 3162} 3163 3164// Message returns the exception's message. 3165func (s *InvalidArgumentException) Message() string { 3166 if s.Message_ != nil { 3167 return *s.Message_ 3168 } 3169 return "" 3170} 3171 3172// OrigErr always returns nil, satisfies awserr.Error interface. 3173func (s *InvalidArgumentException) OrigErr() error { 3174 return nil 3175} 3176 3177func (s *InvalidArgumentException) Error() string { 3178 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 3179} 3180 3181// Status code returns the HTTP status code for the request's response error. 3182func (s *InvalidArgumentException) StatusCode() int { 3183 return s.RespMetadata.StatusCode 3184} 3185 3186// RequestID returns the service's response RequestID for request. 3187func (s *InvalidArgumentException) RequestID() string { 3188 return s.RespMetadata.RequestID 3189} 3190 3191// Not implemented. 3192type InvalidDeviceException struct { 3193 _ struct{} `type:"structure"` 3194 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 3195 3196 Message_ *string `locationName:"Message" type:"string"` 3197} 3198 3199// String returns the string representation 3200func (s InvalidDeviceException) String() string { 3201 return awsutil.Prettify(s) 3202} 3203 3204// GoString returns the string representation 3205func (s InvalidDeviceException) GoString() string { 3206 return s.String() 3207} 3208 3209func newErrorInvalidDeviceException(v protocol.ResponseMetadata) error { 3210 return &InvalidDeviceException{ 3211 RespMetadata: v, 3212 } 3213} 3214 3215// Code returns the exception type name. 3216func (s *InvalidDeviceException) Code() string { 3217 return "InvalidDeviceException" 3218} 3219 3220// Message returns the exception's message. 3221func (s *InvalidDeviceException) Message() string { 3222 if s.Message_ != nil { 3223 return *s.Message_ 3224 } 3225 return "" 3226} 3227 3228// OrigErr always returns nil, satisfies awserr.Error interface. 3229func (s *InvalidDeviceException) OrigErr() error { 3230 return nil 3231} 3232 3233func (s *InvalidDeviceException) Error() string { 3234 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 3235} 3236 3237// Status code returns the HTTP status code for the request's response error. 3238func (s *InvalidDeviceException) StatusCode() int { 3239 return s.RespMetadata.StatusCode 3240} 3241 3242// RequestID returns the service's response RequestID for request. 3243func (s *InvalidDeviceException) RequestID() string { 3244 return s.RespMetadata.RequestID 3245} 3246 3247// The format of the StreamARN is invalid. 3248type InvalidResourceFormatException struct { 3249 _ struct{} `type:"structure"` 3250 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 3251 3252 Message_ *string `locationName:"Message" type:"string"` 3253} 3254 3255// String returns the string representation 3256func (s InvalidResourceFormatException) String() string { 3257 return awsutil.Prettify(s) 3258} 3259 3260// GoString returns the string representation 3261func (s InvalidResourceFormatException) GoString() string { 3262 return s.String() 3263} 3264 3265func newErrorInvalidResourceFormatException(v protocol.ResponseMetadata) error { 3266 return &InvalidResourceFormatException{ 3267 RespMetadata: v, 3268 } 3269} 3270 3271// Code returns the exception type name. 3272func (s *InvalidResourceFormatException) Code() string { 3273 return "InvalidResourceFormatException" 3274} 3275 3276// Message returns the exception's message. 3277func (s *InvalidResourceFormatException) Message() string { 3278 if s.Message_ != nil { 3279 return *s.Message_ 3280 } 3281 return "" 3282} 3283 3284// OrigErr always returns nil, satisfies awserr.Error interface. 3285func (s *InvalidResourceFormatException) OrigErr() error { 3286 return nil 3287} 3288 3289func (s *InvalidResourceFormatException) Error() string { 3290 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 3291} 3292 3293// Status code returns the HTTP status code for the request's response error. 3294func (s *InvalidResourceFormatException) StatusCode() int { 3295 return s.RespMetadata.StatusCode 3296} 3297 3298// RequestID returns the service's response RequestID for request. 3299func (s *InvalidResourceFormatException) RequestID() string { 3300 return s.RespMetadata.RequestID 3301} 3302 3303type ListSignalingChannelsInput struct { 3304 _ struct{} `type:"structure"` 3305 3306 // Optional: Returns only the channels that satisfy a specific condition. 3307 ChannelNameCondition *ChannelNameCondition `type:"structure"` 3308 3309 // The maximum number of channels to return in the response. The default is 3310 // 500. 3311 MaxResults *int64 `min:"1" type:"integer"` 3312 3313 // If you specify this parameter, when the result of a ListSignalingChannels 3314 // operation is truncated, the call returns the NextToken in the response. To 3315 // get another batch of channels, provide this token in your next request. 3316 NextToken *string `type:"string"` 3317} 3318 3319// String returns the string representation 3320func (s ListSignalingChannelsInput) String() string { 3321 return awsutil.Prettify(s) 3322} 3323 3324// GoString returns the string representation 3325func (s ListSignalingChannelsInput) GoString() string { 3326 return s.String() 3327} 3328 3329// Validate inspects the fields of the type to determine if they are valid. 3330func (s *ListSignalingChannelsInput) Validate() error { 3331 invalidParams := request.ErrInvalidParams{Context: "ListSignalingChannelsInput"} 3332 if s.MaxResults != nil && *s.MaxResults < 1 { 3333 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 3334 } 3335 if s.ChannelNameCondition != nil { 3336 if err := s.ChannelNameCondition.Validate(); err != nil { 3337 invalidParams.AddNested("ChannelNameCondition", err.(request.ErrInvalidParams)) 3338 } 3339 } 3340 3341 if invalidParams.Len() > 0 { 3342 return invalidParams 3343 } 3344 return nil 3345} 3346 3347// SetChannelNameCondition sets the ChannelNameCondition field's value. 3348func (s *ListSignalingChannelsInput) SetChannelNameCondition(v *ChannelNameCondition) *ListSignalingChannelsInput { 3349 s.ChannelNameCondition = v 3350 return s 3351} 3352 3353// SetMaxResults sets the MaxResults field's value. 3354func (s *ListSignalingChannelsInput) SetMaxResults(v int64) *ListSignalingChannelsInput { 3355 s.MaxResults = &v 3356 return s 3357} 3358 3359// SetNextToken sets the NextToken field's value. 3360func (s *ListSignalingChannelsInput) SetNextToken(v string) *ListSignalingChannelsInput { 3361 s.NextToken = &v 3362 return s 3363} 3364 3365type ListSignalingChannelsOutput struct { 3366 _ struct{} `type:"structure"` 3367 3368 // An array of ChannelInfo objects. 3369 ChannelInfoList []*ChannelInfo `type:"list"` 3370 3371 // If the response is truncated, the call returns this element with a token. 3372 // To get the next batch of streams, use this token in your next request. 3373 NextToken *string `type:"string"` 3374} 3375 3376// String returns the string representation 3377func (s ListSignalingChannelsOutput) String() string { 3378 return awsutil.Prettify(s) 3379} 3380 3381// GoString returns the string representation 3382func (s ListSignalingChannelsOutput) GoString() string { 3383 return s.String() 3384} 3385 3386// SetChannelInfoList sets the ChannelInfoList field's value. 3387func (s *ListSignalingChannelsOutput) SetChannelInfoList(v []*ChannelInfo) *ListSignalingChannelsOutput { 3388 s.ChannelInfoList = v 3389 return s 3390} 3391 3392// SetNextToken sets the NextToken field's value. 3393func (s *ListSignalingChannelsOutput) SetNextToken(v string) *ListSignalingChannelsOutput { 3394 s.NextToken = &v 3395 return s 3396} 3397 3398type ListStreamsInput struct { 3399 _ struct{} `type:"structure"` 3400 3401 // The maximum number of streams to return in the response. The default is 10,000. 3402 MaxResults *int64 `min:"1" type:"integer"` 3403 3404 // If you specify this parameter, when the result of a ListStreams operation 3405 // is truncated, the call returns the NextToken in the response. To get another 3406 // batch of streams, provide this token in your next request. 3407 NextToken *string `type:"string"` 3408 3409 // Optional: Returns only streams that satisfy a specific condition. Currently, 3410 // you can specify only the prefix of a stream name as a condition. 3411 StreamNameCondition *StreamNameCondition `type:"structure"` 3412} 3413 3414// String returns the string representation 3415func (s ListStreamsInput) String() string { 3416 return awsutil.Prettify(s) 3417} 3418 3419// GoString returns the string representation 3420func (s ListStreamsInput) GoString() string { 3421 return s.String() 3422} 3423 3424// Validate inspects the fields of the type to determine if they are valid. 3425func (s *ListStreamsInput) Validate() error { 3426 invalidParams := request.ErrInvalidParams{Context: "ListStreamsInput"} 3427 if s.MaxResults != nil && *s.MaxResults < 1 { 3428 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 3429 } 3430 if s.StreamNameCondition != nil { 3431 if err := s.StreamNameCondition.Validate(); err != nil { 3432 invalidParams.AddNested("StreamNameCondition", err.(request.ErrInvalidParams)) 3433 } 3434 } 3435 3436 if invalidParams.Len() > 0 { 3437 return invalidParams 3438 } 3439 return nil 3440} 3441 3442// SetMaxResults sets the MaxResults field's value. 3443func (s *ListStreamsInput) SetMaxResults(v int64) *ListStreamsInput { 3444 s.MaxResults = &v 3445 return s 3446} 3447 3448// SetNextToken sets the NextToken field's value. 3449func (s *ListStreamsInput) SetNextToken(v string) *ListStreamsInput { 3450 s.NextToken = &v 3451 return s 3452} 3453 3454// SetStreamNameCondition sets the StreamNameCondition field's value. 3455func (s *ListStreamsInput) SetStreamNameCondition(v *StreamNameCondition) *ListStreamsInput { 3456 s.StreamNameCondition = v 3457 return s 3458} 3459 3460type ListStreamsOutput struct { 3461 _ struct{} `type:"structure"` 3462 3463 // If the response is truncated, the call returns this element with a token. 3464 // To get the next batch of streams, use this token in your next request. 3465 NextToken *string `type:"string"` 3466 3467 // An array of StreamInfo objects. 3468 StreamInfoList []*StreamInfo `type:"list"` 3469} 3470 3471// String returns the string representation 3472func (s ListStreamsOutput) String() string { 3473 return awsutil.Prettify(s) 3474} 3475 3476// GoString returns the string representation 3477func (s ListStreamsOutput) GoString() string { 3478 return s.String() 3479} 3480 3481// SetNextToken sets the NextToken field's value. 3482func (s *ListStreamsOutput) SetNextToken(v string) *ListStreamsOutput { 3483 s.NextToken = &v 3484 return s 3485} 3486 3487// SetStreamInfoList sets the StreamInfoList field's value. 3488func (s *ListStreamsOutput) SetStreamInfoList(v []*StreamInfo) *ListStreamsOutput { 3489 s.StreamInfoList = v 3490 return s 3491} 3492 3493type ListTagsForResourceInput struct { 3494 _ struct{} `type:"structure"` 3495 3496 // If you specify this parameter and the result of a ListTagsForResource call 3497 // is truncated, the response includes a token that you can use in the next 3498 // request to fetch the next batch of tags. 3499 NextToken *string `type:"string"` 3500 3501 // The Amazon Resource Name (ARN) of the signaling channel for which you want 3502 // to list tags. 3503 // 3504 // ResourceARN is a required field 3505 ResourceARN *string `min:"1" type:"string" required:"true"` 3506} 3507 3508// String returns the string representation 3509func (s ListTagsForResourceInput) String() string { 3510 return awsutil.Prettify(s) 3511} 3512 3513// GoString returns the string representation 3514func (s ListTagsForResourceInput) GoString() string { 3515 return s.String() 3516} 3517 3518// Validate inspects the fields of the type to determine if they are valid. 3519func (s *ListTagsForResourceInput) Validate() error { 3520 invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} 3521 if s.ResourceARN == nil { 3522 invalidParams.Add(request.NewErrParamRequired("ResourceARN")) 3523 } 3524 if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { 3525 invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) 3526 } 3527 3528 if invalidParams.Len() > 0 { 3529 return invalidParams 3530 } 3531 return nil 3532} 3533 3534// SetNextToken sets the NextToken field's value. 3535func (s *ListTagsForResourceInput) SetNextToken(v string) *ListTagsForResourceInput { 3536 s.NextToken = &v 3537 return s 3538} 3539 3540// SetResourceARN sets the ResourceARN field's value. 3541func (s *ListTagsForResourceInput) SetResourceARN(v string) *ListTagsForResourceInput { 3542 s.ResourceARN = &v 3543 return s 3544} 3545 3546type ListTagsForResourceOutput struct { 3547 _ struct{} `type:"structure"` 3548 3549 // If you specify this parameter and the result of a ListTagsForResource call 3550 // is truncated, the response includes a token that you can use in the next 3551 // request to fetch the next set of tags. 3552 NextToken *string `type:"string"` 3553 3554 // A map of tag keys and values associated with the specified signaling channel. 3555 Tags map[string]*string `min:"1" type:"map"` 3556} 3557 3558// String returns the string representation 3559func (s ListTagsForResourceOutput) String() string { 3560 return awsutil.Prettify(s) 3561} 3562 3563// GoString returns the string representation 3564func (s ListTagsForResourceOutput) GoString() string { 3565 return s.String() 3566} 3567 3568// SetNextToken sets the NextToken field's value. 3569func (s *ListTagsForResourceOutput) SetNextToken(v string) *ListTagsForResourceOutput { 3570 s.NextToken = &v 3571 return s 3572} 3573 3574// SetTags sets the Tags field's value. 3575func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput { 3576 s.Tags = v 3577 return s 3578} 3579 3580type ListTagsForStreamInput struct { 3581 _ struct{} `type:"structure"` 3582 3583 // If you specify this parameter and the result of a ListTagsForStream call 3584 // is truncated, the response includes a token that you can use in the next 3585 // request to fetch the next batch of tags. 3586 NextToken *string `type:"string"` 3587 3588 // The Amazon Resource Name (ARN) of the stream that you want to list tags for. 3589 StreamARN *string `min:"1" type:"string"` 3590 3591 // The name of the stream that you want to list tags for. 3592 StreamName *string `min:"1" type:"string"` 3593} 3594 3595// String returns the string representation 3596func (s ListTagsForStreamInput) String() string { 3597 return awsutil.Prettify(s) 3598} 3599 3600// GoString returns the string representation 3601func (s ListTagsForStreamInput) GoString() string { 3602 return s.String() 3603} 3604 3605// Validate inspects the fields of the type to determine if they are valid. 3606func (s *ListTagsForStreamInput) Validate() error { 3607 invalidParams := request.ErrInvalidParams{Context: "ListTagsForStreamInput"} 3608 if s.StreamARN != nil && len(*s.StreamARN) < 1 { 3609 invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) 3610 } 3611 if s.StreamName != nil && len(*s.StreamName) < 1 { 3612 invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) 3613 } 3614 3615 if invalidParams.Len() > 0 { 3616 return invalidParams 3617 } 3618 return nil 3619} 3620 3621// SetNextToken sets the NextToken field's value. 3622func (s *ListTagsForStreamInput) SetNextToken(v string) *ListTagsForStreamInput { 3623 s.NextToken = &v 3624 return s 3625} 3626 3627// SetStreamARN sets the StreamARN field's value. 3628func (s *ListTagsForStreamInput) SetStreamARN(v string) *ListTagsForStreamInput { 3629 s.StreamARN = &v 3630 return s 3631} 3632 3633// SetStreamName sets the StreamName field's value. 3634func (s *ListTagsForStreamInput) SetStreamName(v string) *ListTagsForStreamInput { 3635 s.StreamName = &v 3636 return s 3637} 3638 3639type ListTagsForStreamOutput struct { 3640 _ struct{} `type:"structure"` 3641 3642 // If you specify this parameter and the result of a ListTags call is truncated, 3643 // the response includes a token that you can use in the next request to fetch 3644 // the next set of tags. 3645 NextToken *string `type:"string"` 3646 3647 // A map of tag keys and values associated with the specified stream. 3648 Tags map[string]*string `min:"1" type:"map"` 3649} 3650 3651// String returns the string representation 3652func (s ListTagsForStreamOutput) String() string { 3653 return awsutil.Prettify(s) 3654} 3655 3656// GoString returns the string representation 3657func (s ListTagsForStreamOutput) GoString() string { 3658 return s.String() 3659} 3660 3661// SetNextToken sets the NextToken field's value. 3662func (s *ListTagsForStreamOutput) SetNextToken(v string) *ListTagsForStreamOutput { 3663 s.NextToken = &v 3664 return s 3665} 3666 3667// SetTags sets the Tags field's value. 3668func (s *ListTagsForStreamOutput) SetTags(v map[string]*string) *ListTagsForStreamOutput { 3669 s.Tags = v 3670 return s 3671} 3672 3673// The caller is not authorized to perform this operation. 3674type NotAuthorizedException struct { 3675 _ struct{} `type:"structure"` 3676 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 3677 3678 Message_ *string `locationName:"Message" type:"string"` 3679} 3680 3681// String returns the string representation 3682func (s NotAuthorizedException) String() string { 3683 return awsutil.Prettify(s) 3684} 3685 3686// GoString returns the string representation 3687func (s NotAuthorizedException) GoString() string { 3688 return s.String() 3689} 3690 3691func newErrorNotAuthorizedException(v protocol.ResponseMetadata) error { 3692 return &NotAuthorizedException{ 3693 RespMetadata: v, 3694 } 3695} 3696 3697// Code returns the exception type name. 3698func (s *NotAuthorizedException) Code() string { 3699 return "NotAuthorizedException" 3700} 3701 3702// Message returns the exception's message. 3703func (s *NotAuthorizedException) Message() string { 3704 if s.Message_ != nil { 3705 return *s.Message_ 3706 } 3707 return "" 3708} 3709 3710// OrigErr always returns nil, satisfies awserr.Error interface. 3711func (s *NotAuthorizedException) OrigErr() error { 3712 return nil 3713} 3714 3715func (s *NotAuthorizedException) Error() string { 3716 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 3717} 3718 3719// Status code returns the HTTP status code for the request's response error. 3720func (s *NotAuthorizedException) StatusCode() int { 3721 return s.RespMetadata.StatusCode 3722} 3723 3724// RequestID returns the service's response RequestID for request. 3725func (s *NotAuthorizedException) RequestID() string { 3726 return s.RespMetadata.RequestID 3727} 3728 3729// An object that describes the endpoint of the signaling channel returned by 3730// the GetSignalingChannelEndpoint API. 3731type ResourceEndpointListItem struct { 3732 _ struct{} `type:"structure"` 3733 3734 // The protocol of the signaling channel returned by the GetSignalingChannelEndpoint 3735 // API. 3736 Protocol *string `type:"string" enum:"ChannelProtocol"` 3737 3738 // The endpoint of the signaling channel returned by the GetSignalingChannelEndpoint 3739 // API. 3740 ResourceEndpoint *string `type:"string"` 3741} 3742 3743// String returns the string representation 3744func (s ResourceEndpointListItem) String() string { 3745 return awsutil.Prettify(s) 3746} 3747 3748// GoString returns the string representation 3749func (s ResourceEndpointListItem) GoString() string { 3750 return s.String() 3751} 3752 3753// SetProtocol sets the Protocol field's value. 3754func (s *ResourceEndpointListItem) SetProtocol(v string) *ResourceEndpointListItem { 3755 s.Protocol = &v 3756 return s 3757} 3758 3759// SetResourceEndpoint sets the ResourceEndpoint field's value. 3760func (s *ResourceEndpointListItem) SetResourceEndpoint(v string) *ResourceEndpointListItem { 3761 s.ResourceEndpoint = &v 3762 return s 3763} 3764 3765// The signaling channel is currently not available for this operation. 3766type ResourceInUseException struct { 3767 _ struct{} `type:"structure"` 3768 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 3769 3770 Message_ *string `locationName:"Message" type:"string"` 3771} 3772 3773// String returns the string representation 3774func (s ResourceInUseException) String() string { 3775 return awsutil.Prettify(s) 3776} 3777 3778// GoString returns the string representation 3779func (s ResourceInUseException) GoString() string { 3780 return s.String() 3781} 3782 3783func newErrorResourceInUseException(v protocol.ResponseMetadata) error { 3784 return &ResourceInUseException{ 3785 RespMetadata: v, 3786 } 3787} 3788 3789// Code returns the exception type name. 3790func (s *ResourceInUseException) Code() string { 3791 return "ResourceInUseException" 3792} 3793 3794// Message returns the exception's message. 3795func (s *ResourceInUseException) Message() string { 3796 if s.Message_ != nil { 3797 return *s.Message_ 3798 } 3799 return "" 3800} 3801 3802// OrigErr always returns nil, satisfies awserr.Error interface. 3803func (s *ResourceInUseException) OrigErr() error { 3804 return nil 3805} 3806 3807func (s *ResourceInUseException) Error() string { 3808 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 3809} 3810 3811// Status code returns the HTTP status code for the request's response error. 3812func (s *ResourceInUseException) StatusCode() int { 3813 return s.RespMetadata.StatusCode 3814} 3815 3816// RequestID returns the service's response RequestID for request. 3817func (s *ResourceInUseException) RequestID() string { 3818 return s.RespMetadata.RequestID 3819} 3820 3821// Amazon Kinesis Video Streams can't find the stream that you specified. 3822type ResourceNotFoundException struct { 3823 _ struct{} `type:"structure"` 3824 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 3825 3826 Message_ *string `locationName:"Message" type:"string"` 3827} 3828 3829// String returns the string representation 3830func (s ResourceNotFoundException) String() string { 3831 return awsutil.Prettify(s) 3832} 3833 3834// GoString returns the string representation 3835func (s ResourceNotFoundException) GoString() string { 3836 return s.String() 3837} 3838 3839func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { 3840 return &ResourceNotFoundException{ 3841 RespMetadata: v, 3842 } 3843} 3844 3845// Code returns the exception type name. 3846func (s *ResourceNotFoundException) Code() string { 3847 return "ResourceNotFoundException" 3848} 3849 3850// Message returns the exception's message. 3851func (s *ResourceNotFoundException) Message() string { 3852 if s.Message_ != nil { 3853 return *s.Message_ 3854 } 3855 return "" 3856} 3857 3858// OrigErr always returns nil, satisfies awserr.Error interface. 3859func (s *ResourceNotFoundException) OrigErr() error { 3860 return nil 3861} 3862 3863func (s *ResourceNotFoundException) Error() string { 3864 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 3865} 3866 3867// Status code returns the HTTP status code for the request's response error. 3868func (s *ResourceNotFoundException) StatusCode() int { 3869 return s.RespMetadata.StatusCode 3870} 3871 3872// RequestID returns the service's response RequestID for request. 3873func (s *ResourceNotFoundException) RequestID() string { 3874 return s.RespMetadata.RequestID 3875} 3876 3877// An object that contains the endpoint configuration for the SINGLE_MASTER 3878// channel type. 3879type SingleMasterChannelEndpointConfiguration struct { 3880 _ struct{} `type:"structure"` 3881 3882 // This property is used to determine the nature of communication over this 3883 // SINGLE_MASTER signaling channel. If WSS is specified, this API returns a 3884 // websocket endpoint. If HTTPS is specified, this API returns an HTTPS endpoint. 3885 Protocols []*string `min:"1" type:"list"` 3886 3887 // This property is used to determine messaging permissions in this SINGLE_MASTER 3888 // signaling channel. If MASTER is specified, this API returns an endpoint that 3889 // a client can use to receive offers from and send answers to any of the viewers 3890 // on this signaling channel. If VIEWER is specified, this API returns an endpoint 3891 // that a client can use only to send offers to another MASTER client on this 3892 // signaling channel. 3893 Role *string `type:"string" enum:"ChannelRole"` 3894} 3895 3896// String returns the string representation 3897func (s SingleMasterChannelEndpointConfiguration) String() string { 3898 return awsutil.Prettify(s) 3899} 3900 3901// GoString returns the string representation 3902func (s SingleMasterChannelEndpointConfiguration) GoString() string { 3903 return s.String() 3904} 3905 3906// Validate inspects the fields of the type to determine if they are valid. 3907func (s *SingleMasterChannelEndpointConfiguration) Validate() error { 3908 invalidParams := request.ErrInvalidParams{Context: "SingleMasterChannelEndpointConfiguration"} 3909 if s.Protocols != nil && len(s.Protocols) < 1 { 3910 invalidParams.Add(request.NewErrParamMinLen("Protocols", 1)) 3911 } 3912 3913 if invalidParams.Len() > 0 { 3914 return invalidParams 3915 } 3916 return nil 3917} 3918 3919// SetProtocols sets the Protocols field's value. 3920func (s *SingleMasterChannelEndpointConfiguration) SetProtocols(v []*string) *SingleMasterChannelEndpointConfiguration { 3921 s.Protocols = v 3922 return s 3923} 3924 3925// SetRole sets the Role field's value. 3926func (s *SingleMasterChannelEndpointConfiguration) SetRole(v string) *SingleMasterChannelEndpointConfiguration { 3927 s.Role = &v 3928 return s 3929} 3930 3931// A structure that contains the configuration for the SINGLE_MASTER channel 3932// type. 3933type SingleMasterConfiguration struct { 3934 _ struct{} `type:"structure"` 3935 3936 // The period of time a signaling channel retains underlivered messages before 3937 // they are discarded. 3938 MessageTtlSeconds *int64 `min:"5" type:"integer"` 3939} 3940 3941// String returns the string representation 3942func (s SingleMasterConfiguration) String() string { 3943 return awsutil.Prettify(s) 3944} 3945 3946// GoString returns the string representation 3947func (s SingleMasterConfiguration) GoString() string { 3948 return s.String() 3949} 3950 3951// Validate inspects the fields of the type to determine if they are valid. 3952func (s *SingleMasterConfiguration) Validate() error { 3953 invalidParams := request.ErrInvalidParams{Context: "SingleMasterConfiguration"} 3954 if s.MessageTtlSeconds != nil && *s.MessageTtlSeconds < 5 { 3955 invalidParams.Add(request.NewErrParamMinValue("MessageTtlSeconds", 5)) 3956 } 3957 3958 if invalidParams.Len() > 0 { 3959 return invalidParams 3960 } 3961 return nil 3962} 3963 3964// SetMessageTtlSeconds sets the MessageTtlSeconds field's value. 3965func (s *SingleMasterConfiguration) SetMessageTtlSeconds(v int64) *SingleMasterConfiguration { 3966 s.MessageTtlSeconds = &v 3967 return s 3968} 3969 3970// An object describing a Kinesis video stream. 3971type StreamInfo struct { 3972 _ struct{} `type:"structure"` 3973 3974 // A time stamp that indicates when the stream was created. 3975 CreationTime *time.Time `type:"timestamp"` 3976 3977 // How long the stream retains data, in hours. 3978 DataRetentionInHours *int64 `type:"integer"` 3979 3980 // The name of the device that is associated with the stream. 3981 DeviceName *string `min:"1" type:"string"` 3982 3983 // The ID of the AWS Key Management Service (AWS KMS) key that Kinesis Video 3984 // Streams uses to encrypt data on the stream. 3985 KmsKeyId *string `min:"1" type:"string"` 3986 3987 // The MediaType of the stream. 3988 MediaType *string `min:"1" type:"string"` 3989 3990 // The status of the stream. 3991 Status *string `type:"string" enum:"Status"` 3992 3993 // The Amazon Resource Name (ARN) of the stream. 3994 StreamARN *string `min:"1" type:"string"` 3995 3996 // The name of the stream. 3997 StreamName *string `min:"1" type:"string"` 3998 3999 // The version of the stream. 4000 Version *string `min:"1" type:"string"` 4001} 4002 4003// String returns the string representation 4004func (s StreamInfo) String() string { 4005 return awsutil.Prettify(s) 4006} 4007 4008// GoString returns the string representation 4009func (s StreamInfo) GoString() string { 4010 return s.String() 4011} 4012 4013// SetCreationTime sets the CreationTime field's value. 4014func (s *StreamInfo) SetCreationTime(v time.Time) *StreamInfo { 4015 s.CreationTime = &v 4016 return s 4017} 4018 4019// SetDataRetentionInHours sets the DataRetentionInHours field's value. 4020func (s *StreamInfo) SetDataRetentionInHours(v int64) *StreamInfo { 4021 s.DataRetentionInHours = &v 4022 return s 4023} 4024 4025// SetDeviceName sets the DeviceName field's value. 4026func (s *StreamInfo) SetDeviceName(v string) *StreamInfo { 4027 s.DeviceName = &v 4028 return s 4029} 4030 4031// SetKmsKeyId sets the KmsKeyId field's value. 4032func (s *StreamInfo) SetKmsKeyId(v string) *StreamInfo { 4033 s.KmsKeyId = &v 4034 return s 4035} 4036 4037// SetMediaType sets the MediaType field's value. 4038func (s *StreamInfo) SetMediaType(v string) *StreamInfo { 4039 s.MediaType = &v 4040 return s 4041} 4042 4043// SetStatus sets the Status field's value. 4044func (s *StreamInfo) SetStatus(v string) *StreamInfo { 4045 s.Status = &v 4046 return s 4047} 4048 4049// SetStreamARN sets the StreamARN field's value. 4050func (s *StreamInfo) SetStreamARN(v string) *StreamInfo { 4051 s.StreamARN = &v 4052 return s 4053} 4054 4055// SetStreamName sets the StreamName field's value. 4056func (s *StreamInfo) SetStreamName(v string) *StreamInfo { 4057 s.StreamName = &v 4058 return s 4059} 4060 4061// SetVersion sets the Version field's value. 4062func (s *StreamInfo) SetVersion(v string) *StreamInfo { 4063 s.Version = &v 4064 return s 4065} 4066 4067// Specifies the condition that streams must satisfy to be returned when you 4068// list streams (see the ListStreams API). A condition has a comparison operation 4069// and a value. Currently, you can specify only the BEGINS_WITH operator, which 4070// finds streams whose names start with a given prefix. 4071type StreamNameCondition struct { 4072 _ struct{} `type:"structure"` 4073 4074 // A comparison operator. Currently, you can specify only the BEGINS_WITH operator, 4075 // which finds streams whose names start with a given prefix. 4076 ComparisonOperator *string `type:"string" enum:"ComparisonOperator"` 4077 4078 // A value to compare. 4079 ComparisonValue *string `min:"1" type:"string"` 4080} 4081 4082// String returns the string representation 4083func (s StreamNameCondition) String() string { 4084 return awsutil.Prettify(s) 4085} 4086 4087// GoString returns the string representation 4088func (s StreamNameCondition) GoString() string { 4089 return s.String() 4090} 4091 4092// Validate inspects the fields of the type to determine if they are valid. 4093func (s *StreamNameCondition) Validate() error { 4094 invalidParams := request.ErrInvalidParams{Context: "StreamNameCondition"} 4095 if s.ComparisonValue != nil && len(*s.ComparisonValue) < 1 { 4096 invalidParams.Add(request.NewErrParamMinLen("ComparisonValue", 1)) 4097 } 4098 4099 if invalidParams.Len() > 0 { 4100 return invalidParams 4101 } 4102 return nil 4103} 4104 4105// SetComparisonOperator sets the ComparisonOperator field's value. 4106func (s *StreamNameCondition) SetComparisonOperator(v string) *StreamNameCondition { 4107 s.ComparisonOperator = &v 4108 return s 4109} 4110 4111// SetComparisonValue sets the ComparisonValue field's value. 4112func (s *StreamNameCondition) SetComparisonValue(v string) *StreamNameCondition { 4113 s.ComparisonValue = &v 4114 return s 4115} 4116 4117// A key and value pair that is associated with the specified signaling channel. 4118type Tag struct { 4119 _ struct{} `type:"structure"` 4120 4121 // The key of the tag that is associated with the specified signaling channel. 4122 // 4123 // Key is a required field 4124 Key *string `min:"1" type:"string" required:"true"` 4125 4126 // The value of the tag that is associated with the specified signaling channel. 4127 // 4128 // Value is a required field 4129 Value *string `type:"string" required:"true"` 4130} 4131 4132// String returns the string representation 4133func (s Tag) String() string { 4134 return awsutil.Prettify(s) 4135} 4136 4137// GoString returns the string representation 4138func (s Tag) GoString() string { 4139 return s.String() 4140} 4141 4142// Validate inspects the fields of the type to determine if they are valid. 4143func (s *Tag) Validate() error { 4144 invalidParams := request.ErrInvalidParams{Context: "Tag"} 4145 if s.Key == nil { 4146 invalidParams.Add(request.NewErrParamRequired("Key")) 4147 } 4148 if s.Key != nil && len(*s.Key) < 1 { 4149 invalidParams.Add(request.NewErrParamMinLen("Key", 1)) 4150 } 4151 if s.Value == nil { 4152 invalidParams.Add(request.NewErrParamRequired("Value")) 4153 } 4154 4155 if invalidParams.Len() > 0 { 4156 return invalidParams 4157 } 4158 return nil 4159} 4160 4161// SetKey sets the Key field's value. 4162func (s *Tag) SetKey(v string) *Tag { 4163 s.Key = &v 4164 return s 4165} 4166 4167// SetValue sets the Value field's value. 4168func (s *Tag) SetValue(v string) *Tag { 4169 s.Value = &v 4170 return s 4171} 4172 4173type TagResourceInput struct { 4174 _ struct{} `type:"structure"` 4175 4176 // The Amazon Resource Name (ARN) of the signaling channel to which you want 4177 // to add tags. 4178 // 4179 // ResourceARN is a required field 4180 ResourceARN *string `min:"1" type:"string" required:"true"` 4181 4182 // A list of tags to associate with the specified signaling channel. Each tag 4183 // is a key-value pair. 4184 // 4185 // Tags is a required field 4186 Tags []*Tag `min:"1" type:"list" required:"true"` 4187} 4188 4189// String returns the string representation 4190func (s TagResourceInput) String() string { 4191 return awsutil.Prettify(s) 4192} 4193 4194// GoString returns the string representation 4195func (s TagResourceInput) GoString() string { 4196 return s.String() 4197} 4198 4199// Validate inspects the fields of the type to determine if they are valid. 4200func (s *TagResourceInput) Validate() error { 4201 invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} 4202 if s.ResourceARN == nil { 4203 invalidParams.Add(request.NewErrParamRequired("ResourceARN")) 4204 } 4205 if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { 4206 invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) 4207 } 4208 if s.Tags == nil { 4209 invalidParams.Add(request.NewErrParamRequired("Tags")) 4210 } 4211 if s.Tags != nil && len(s.Tags) < 1 { 4212 invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) 4213 } 4214 if s.Tags != nil { 4215 for i, v := range s.Tags { 4216 if v == nil { 4217 continue 4218 } 4219 if err := v.Validate(); err != nil { 4220 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 4221 } 4222 } 4223 } 4224 4225 if invalidParams.Len() > 0 { 4226 return invalidParams 4227 } 4228 return nil 4229} 4230 4231// SetResourceARN sets the ResourceARN field's value. 4232func (s *TagResourceInput) SetResourceARN(v string) *TagResourceInput { 4233 s.ResourceARN = &v 4234 return s 4235} 4236 4237// SetTags sets the Tags field's value. 4238func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { 4239 s.Tags = v 4240 return s 4241} 4242 4243type TagResourceOutput struct { 4244 _ struct{} `type:"structure"` 4245} 4246 4247// String returns the string representation 4248func (s TagResourceOutput) String() string { 4249 return awsutil.Prettify(s) 4250} 4251 4252// GoString returns the string representation 4253func (s TagResourceOutput) GoString() string { 4254 return s.String() 4255} 4256 4257type TagStreamInput struct { 4258 _ struct{} `type:"structure"` 4259 4260 // The Amazon Resource Name (ARN) of the resource that you want to add the tag 4261 // or tags to. 4262 StreamARN *string `min:"1" type:"string"` 4263 4264 // The name of the stream that you want to add the tag or tags to. 4265 StreamName *string `min:"1" type:"string"` 4266 4267 // A list of tags to associate with the specified stream. Each tag is a key-value 4268 // pair (the value is optional). 4269 // 4270 // Tags is a required field 4271 Tags map[string]*string `min:"1" type:"map" required:"true"` 4272} 4273 4274// String returns the string representation 4275func (s TagStreamInput) String() string { 4276 return awsutil.Prettify(s) 4277} 4278 4279// GoString returns the string representation 4280func (s TagStreamInput) GoString() string { 4281 return s.String() 4282} 4283 4284// Validate inspects the fields of the type to determine if they are valid. 4285func (s *TagStreamInput) Validate() error { 4286 invalidParams := request.ErrInvalidParams{Context: "TagStreamInput"} 4287 if s.StreamARN != nil && len(*s.StreamARN) < 1 { 4288 invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) 4289 } 4290 if s.StreamName != nil && len(*s.StreamName) < 1 { 4291 invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) 4292 } 4293 if s.Tags == nil { 4294 invalidParams.Add(request.NewErrParamRequired("Tags")) 4295 } 4296 if s.Tags != nil && len(s.Tags) < 1 { 4297 invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) 4298 } 4299 4300 if invalidParams.Len() > 0 { 4301 return invalidParams 4302 } 4303 return nil 4304} 4305 4306// SetStreamARN sets the StreamARN field's value. 4307func (s *TagStreamInput) SetStreamARN(v string) *TagStreamInput { 4308 s.StreamARN = &v 4309 return s 4310} 4311 4312// SetStreamName sets the StreamName field's value. 4313func (s *TagStreamInput) SetStreamName(v string) *TagStreamInput { 4314 s.StreamName = &v 4315 return s 4316} 4317 4318// SetTags sets the Tags field's value. 4319func (s *TagStreamInput) SetTags(v map[string]*string) *TagStreamInput { 4320 s.Tags = v 4321 return s 4322} 4323 4324type TagStreamOutput struct { 4325 _ struct{} `type:"structure"` 4326} 4327 4328// String returns the string representation 4329func (s TagStreamOutput) String() string { 4330 return awsutil.Prettify(s) 4331} 4332 4333// GoString returns the string representation 4334func (s TagStreamOutput) GoString() string { 4335 return s.String() 4336} 4337 4338// You have exceeded the limit of tags that you can associate with the resource. 4339// Kinesis video streams support up to 50 tags. 4340type TagsPerResourceExceededLimitException struct { 4341 _ struct{} `type:"structure"` 4342 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 4343 4344 Message_ *string `locationName:"Message" type:"string"` 4345} 4346 4347// String returns the string representation 4348func (s TagsPerResourceExceededLimitException) String() string { 4349 return awsutil.Prettify(s) 4350} 4351 4352// GoString returns the string representation 4353func (s TagsPerResourceExceededLimitException) GoString() string { 4354 return s.String() 4355} 4356 4357func newErrorTagsPerResourceExceededLimitException(v protocol.ResponseMetadata) error { 4358 return &TagsPerResourceExceededLimitException{ 4359 RespMetadata: v, 4360 } 4361} 4362 4363// Code returns the exception type name. 4364func (s *TagsPerResourceExceededLimitException) Code() string { 4365 return "TagsPerResourceExceededLimitException" 4366} 4367 4368// Message returns the exception's message. 4369func (s *TagsPerResourceExceededLimitException) Message() string { 4370 if s.Message_ != nil { 4371 return *s.Message_ 4372 } 4373 return "" 4374} 4375 4376// OrigErr always returns nil, satisfies awserr.Error interface. 4377func (s *TagsPerResourceExceededLimitException) OrigErr() error { 4378 return nil 4379} 4380 4381func (s *TagsPerResourceExceededLimitException) Error() string { 4382 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 4383} 4384 4385// Status code returns the HTTP status code for the request's response error. 4386func (s *TagsPerResourceExceededLimitException) StatusCode() int { 4387 return s.RespMetadata.StatusCode 4388} 4389 4390// RequestID returns the service's response RequestID for request. 4391func (s *TagsPerResourceExceededLimitException) RequestID() string { 4392 return s.RespMetadata.RequestID 4393} 4394 4395type UntagResourceInput struct { 4396 _ struct{} `type:"structure"` 4397 4398 // The Amazon Resource Name (ARN) of the signaling channel from which you want 4399 // to remove tags. 4400 // 4401 // ResourceARN is a required field 4402 ResourceARN *string `min:"1" type:"string" required:"true"` 4403 4404 // A list of the keys of the tags that you want to remove. 4405 // 4406 // TagKeyList is a required field 4407 TagKeyList []*string `min:"1" type:"list" required:"true"` 4408} 4409 4410// String returns the string representation 4411func (s UntagResourceInput) String() string { 4412 return awsutil.Prettify(s) 4413} 4414 4415// GoString returns the string representation 4416func (s UntagResourceInput) GoString() string { 4417 return s.String() 4418} 4419 4420// Validate inspects the fields of the type to determine if they are valid. 4421func (s *UntagResourceInput) Validate() error { 4422 invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} 4423 if s.ResourceARN == nil { 4424 invalidParams.Add(request.NewErrParamRequired("ResourceARN")) 4425 } 4426 if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { 4427 invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) 4428 } 4429 if s.TagKeyList == nil { 4430 invalidParams.Add(request.NewErrParamRequired("TagKeyList")) 4431 } 4432 if s.TagKeyList != nil && len(s.TagKeyList) < 1 { 4433 invalidParams.Add(request.NewErrParamMinLen("TagKeyList", 1)) 4434 } 4435 4436 if invalidParams.Len() > 0 { 4437 return invalidParams 4438 } 4439 return nil 4440} 4441 4442// SetResourceARN sets the ResourceARN field's value. 4443func (s *UntagResourceInput) SetResourceARN(v string) *UntagResourceInput { 4444 s.ResourceARN = &v 4445 return s 4446} 4447 4448// SetTagKeyList sets the TagKeyList field's value. 4449func (s *UntagResourceInput) SetTagKeyList(v []*string) *UntagResourceInput { 4450 s.TagKeyList = v 4451 return s 4452} 4453 4454type UntagResourceOutput struct { 4455 _ struct{} `type:"structure"` 4456} 4457 4458// String returns the string representation 4459func (s UntagResourceOutput) String() string { 4460 return awsutil.Prettify(s) 4461} 4462 4463// GoString returns the string representation 4464func (s UntagResourceOutput) GoString() string { 4465 return s.String() 4466} 4467 4468type UntagStreamInput struct { 4469 _ struct{} `type:"structure"` 4470 4471 // The Amazon Resource Name (ARN) of the stream that you want to remove tags 4472 // from. 4473 StreamARN *string `min:"1" type:"string"` 4474 4475 // The name of the stream that you want to remove tags from. 4476 StreamName *string `min:"1" type:"string"` 4477 4478 // A list of the keys of the tags that you want to remove. 4479 // 4480 // TagKeyList is a required field 4481 TagKeyList []*string `min:"1" type:"list" required:"true"` 4482} 4483 4484// String returns the string representation 4485func (s UntagStreamInput) String() string { 4486 return awsutil.Prettify(s) 4487} 4488 4489// GoString returns the string representation 4490func (s UntagStreamInput) GoString() string { 4491 return s.String() 4492} 4493 4494// Validate inspects the fields of the type to determine if they are valid. 4495func (s *UntagStreamInput) Validate() error { 4496 invalidParams := request.ErrInvalidParams{Context: "UntagStreamInput"} 4497 if s.StreamARN != nil && len(*s.StreamARN) < 1 { 4498 invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) 4499 } 4500 if s.StreamName != nil && len(*s.StreamName) < 1 { 4501 invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) 4502 } 4503 if s.TagKeyList == nil { 4504 invalidParams.Add(request.NewErrParamRequired("TagKeyList")) 4505 } 4506 if s.TagKeyList != nil && len(s.TagKeyList) < 1 { 4507 invalidParams.Add(request.NewErrParamMinLen("TagKeyList", 1)) 4508 } 4509 4510 if invalidParams.Len() > 0 { 4511 return invalidParams 4512 } 4513 return nil 4514} 4515 4516// SetStreamARN sets the StreamARN field's value. 4517func (s *UntagStreamInput) SetStreamARN(v string) *UntagStreamInput { 4518 s.StreamARN = &v 4519 return s 4520} 4521 4522// SetStreamName sets the StreamName field's value. 4523func (s *UntagStreamInput) SetStreamName(v string) *UntagStreamInput { 4524 s.StreamName = &v 4525 return s 4526} 4527 4528// SetTagKeyList sets the TagKeyList field's value. 4529func (s *UntagStreamInput) SetTagKeyList(v []*string) *UntagStreamInput { 4530 s.TagKeyList = v 4531 return s 4532} 4533 4534type UntagStreamOutput struct { 4535 _ struct{} `type:"structure"` 4536} 4537 4538// String returns the string representation 4539func (s UntagStreamOutput) String() string { 4540 return awsutil.Prettify(s) 4541} 4542 4543// GoString returns the string representation 4544func (s UntagStreamOutput) GoString() string { 4545 return s.String() 4546} 4547 4548type UpdateDataRetentionInput struct { 4549 _ struct{} `type:"structure"` 4550 4551 // The version of the stream whose retention period you want to change. To get 4552 // the version, call either the DescribeStream or the ListStreams API. 4553 // 4554 // CurrentVersion is a required field 4555 CurrentVersion *string `min:"1" type:"string" required:"true"` 4556 4557 // The retention period, in hours. The value you specify replaces the current 4558 // value. The maximum value for this parameter is 87600 (ten years). 4559 // 4560 // DataRetentionChangeInHours is a required field 4561 DataRetentionChangeInHours *int64 `min:"1" type:"integer" required:"true"` 4562 4563 // Indicates whether you want to increase or decrease the retention period. 4564 // 4565 // Operation is a required field 4566 Operation *string `type:"string" required:"true" enum:"UpdateDataRetentionOperation"` 4567 4568 // The Amazon Resource Name (ARN) of the stream whose retention period you want 4569 // to change. 4570 StreamARN *string `min:"1" type:"string"` 4571 4572 // The name of the stream whose retention period you want to change. 4573 StreamName *string `min:"1" type:"string"` 4574} 4575 4576// String returns the string representation 4577func (s UpdateDataRetentionInput) String() string { 4578 return awsutil.Prettify(s) 4579} 4580 4581// GoString returns the string representation 4582func (s UpdateDataRetentionInput) GoString() string { 4583 return s.String() 4584} 4585 4586// Validate inspects the fields of the type to determine if they are valid. 4587func (s *UpdateDataRetentionInput) Validate() error { 4588 invalidParams := request.ErrInvalidParams{Context: "UpdateDataRetentionInput"} 4589 if s.CurrentVersion == nil { 4590 invalidParams.Add(request.NewErrParamRequired("CurrentVersion")) 4591 } 4592 if s.CurrentVersion != nil && len(*s.CurrentVersion) < 1 { 4593 invalidParams.Add(request.NewErrParamMinLen("CurrentVersion", 1)) 4594 } 4595 if s.DataRetentionChangeInHours == nil { 4596 invalidParams.Add(request.NewErrParamRequired("DataRetentionChangeInHours")) 4597 } 4598 if s.DataRetentionChangeInHours != nil && *s.DataRetentionChangeInHours < 1 { 4599 invalidParams.Add(request.NewErrParamMinValue("DataRetentionChangeInHours", 1)) 4600 } 4601 if s.Operation == nil { 4602 invalidParams.Add(request.NewErrParamRequired("Operation")) 4603 } 4604 if s.StreamARN != nil && len(*s.StreamARN) < 1 { 4605 invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) 4606 } 4607 if s.StreamName != nil && len(*s.StreamName) < 1 { 4608 invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) 4609 } 4610 4611 if invalidParams.Len() > 0 { 4612 return invalidParams 4613 } 4614 return nil 4615} 4616 4617// SetCurrentVersion sets the CurrentVersion field's value. 4618func (s *UpdateDataRetentionInput) SetCurrentVersion(v string) *UpdateDataRetentionInput { 4619 s.CurrentVersion = &v 4620 return s 4621} 4622 4623// SetDataRetentionChangeInHours sets the DataRetentionChangeInHours field's value. 4624func (s *UpdateDataRetentionInput) SetDataRetentionChangeInHours(v int64) *UpdateDataRetentionInput { 4625 s.DataRetentionChangeInHours = &v 4626 return s 4627} 4628 4629// SetOperation sets the Operation field's value. 4630func (s *UpdateDataRetentionInput) SetOperation(v string) *UpdateDataRetentionInput { 4631 s.Operation = &v 4632 return s 4633} 4634 4635// SetStreamARN sets the StreamARN field's value. 4636func (s *UpdateDataRetentionInput) SetStreamARN(v string) *UpdateDataRetentionInput { 4637 s.StreamARN = &v 4638 return s 4639} 4640 4641// SetStreamName sets the StreamName field's value. 4642func (s *UpdateDataRetentionInput) SetStreamName(v string) *UpdateDataRetentionInput { 4643 s.StreamName = &v 4644 return s 4645} 4646 4647type UpdateDataRetentionOutput struct { 4648 _ struct{} `type:"structure"` 4649} 4650 4651// String returns the string representation 4652func (s UpdateDataRetentionOutput) String() string { 4653 return awsutil.Prettify(s) 4654} 4655 4656// GoString returns the string representation 4657func (s UpdateDataRetentionOutput) GoString() string { 4658 return s.String() 4659} 4660 4661type UpdateSignalingChannelInput struct { 4662 _ struct{} `type:"structure"` 4663 4664 // The Amazon Resource Name (ARN) of the signaling channel that you want to 4665 // update. 4666 // 4667 // ChannelARN is a required field 4668 ChannelARN *string `min:"1" type:"string" required:"true"` 4669 4670 // The current version of the signaling channel that you want to update. 4671 // 4672 // CurrentVersion is a required field 4673 CurrentVersion *string `min:"1" type:"string" required:"true"` 4674 4675 // The structure containing the configuration for the SINGLE_MASTER type of 4676 // the signaling channel that you want to update. 4677 SingleMasterConfiguration *SingleMasterConfiguration `type:"structure"` 4678} 4679 4680// String returns the string representation 4681func (s UpdateSignalingChannelInput) String() string { 4682 return awsutil.Prettify(s) 4683} 4684 4685// GoString returns the string representation 4686func (s UpdateSignalingChannelInput) GoString() string { 4687 return s.String() 4688} 4689 4690// Validate inspects the fields of the type to determine if they are valid. 4691func (s *UpdateSignalingChannelInput) Validate() error { 4692 invalidParams := request.ErrInvalidParams{Context: "UpdateSignalingChannelInput"} 4693 if s.ChannelARN == nil { 4694 invalidParams.Add(request.NewErrParamRequired("ChannelARN")) 4695 } 4696 if s.ChannelARN != nil && len(*s.ChannelARN) < 1 { 4697 invalidParams.Add(request.NewErrParamMinLen("ChannelARN", 1)) 4698 } 4699 if s.CurrentVersion == nil { 4700 invalidParams.Add(request.NewErrParamRequired("CurrentVersion")) 4701 } 4702 if s.CurrentVersion != nil && len(*s.CurrentVersion) < 1 { 4703 invalidParams.Add(request.NewErrParamMinLen("CurrentVersion", 1)) 4704 } 4705 if s.SingleMasterConfiguration != nil { 4706 if err := s.SingleMasterConfiguration.Validate(); err != nil { 4707 invalidParams.AddNested("SingleMasterConfiguration", err.(request.ErrInvalidParams)) 4708 } 4709 } 4710 4711 if invalidParams.Len() > 0 { 4712 return invalidParams 4713 } 4714 return nil 4715} 4716 4717// SetChannelARN sets the ChannelARN field's value. 4718func (s *UpdateSignalingChannelInput) SetChannelARN(v string) *UpdateSignalingChannelInput { 4719 s.ChannelARN = &v 4720 return s 4721} 4722 4723// SetCurrentVersion sets the CurrentVersion field's value. 4724func (s *UpdateSignalingChannelInput) SetCurrentVersion(v string) *UpdateSignalingChannelInput { 4725 s.CurrentVersion = &v 4726 return s 4727} 4728 4729// SetSingleMasterConfiguration sets the SingleMasterConfiguration field's value. 4730func (s *UpdateSignalingChannelInput) SetSingleMasterConfiguration(v *SingleMasterConfiguration) *UpdateSignalingChannelInput { 4731 s.SingleMasterConfiguration = v 4732 return s 4733} 4734 4735type UpdateSignalingChannelOutput struct { 4736 _ struct{} `type:"structure"` 4737} 4738 4739// String returns the string representation 4740func (s UpdateSignalingChannelOutput) String() string { 4741 return awsutil.Prettify(s) 4742} 4743 4744// GoString returns the string representation 4745func (s UpdateSignalingChannelOutput) GoString() string { 4746 return s.String() 4747} 4748 4749type UpdateStreamInput struct { 4750 _ struct{} `type:"structure"` 4751 4752 // The version of the stream whose metadata you want to update. 4753 // 4754 // CurrentVersion is a required field 4755 CurrentVersion *string `min:"1" type:"string" required:"true"` 4756 4757 // The name of the device that is writing to the stream. 4758 // 4759 // In the current implementation, Kinesis Video Streams does not use this name. 4760 DeviceName *string `min:"1" type:"string"` 4761 4762 // The stream's media type. Use MediaType to specify the type of content that 4763 // the stream contains to the consumers of the stream. For more information 4764 // about media types, see Media Types (http://www.iana.org/assignments/media-types/media-types.xhtml). 4765 // If you choose to specify the MediaType, see Naming Requirements (https://tools.ietf.org/html/rfc6838#section-4.2). 4766 // 4767 // To play video on the console, you must specify the correct video type. For 4768 // example, if the video in the stream is H.264, specify video/h264 as the MediaType. 4769 MediaType *string `min:"1" type:"string"` 4770 4771 // The ARN of the stream whose metadata you want to update. 4772 StreamARN *string `min:"1" type:"string"` 4773 4774 // The name of the stream whose metadata you want to update. 4775 // 4776 // The stream name is an identifier for the stream, and must be unique for each 4777 // account and region. 4778 StreamName *string `min:"1" type:"string"` 4779} 4780 4781// String returns the string representation 4782func (s UpdateStreamInput) String() string { 4783 return awsutil.Prettify(s) 4784} 4785 4786// GoString returns the string representation 4787func (s UpdateStreamInput) GoString() string { 4788 return s.String() 4789} 4790 4791// Validate inspects the fields of the type to determine if they are valid. 4792func (s *UpdateStreamInput) Validate() error { 4793 invalidParams := request.ErrInvalidParams{Context: "UpdateStreamInput"} 4794 if s.CurrentVersion == nil { 4795 invalidParams.Add(request.NewErrParamRequired("CurrentVersion")) 4796 } 4797 if s.CurrentVersion != nil && len(*s.CurrentVersion) < 1 { 4798 invalidParams.Add(request.NewErrParamMinLen("CurrentVersion", 1)) 4799 } 4800 if s.DeviceName != nil && len(*s.DeviceName) < 1 { 4801 invalidParams.Add(request.NewErrParamMinLen("DeviceName", 1)) 4802 } 4803 if s.MediaType != nil && len(*s.MediaType) < 1 { 4804 invalidParams.Add(request.NewErrParamMinLen("MediaType", 1)) 4805 } 4806 if s.StreamARN != nil && len(*s.StreamARN) < 1 { 4807 invalidParams.Add(request.NewErrParamMinLen("StreamARN", 1)) 4808 } 4809 if s.StreamName != nil && len(*s.StreamName) < 1 { 4810 invalidParams.Add(request.NewErrParamMinLen("StreamName", 1)) 4811 } 4812 4813 if invalidParams.Len() > 0 { 4814 return invalidParams 4815 } 4816 return nil 4817} 4818 4819// SetCurrentVersion sets the CurrentVersion field's value. 4820func (s *UpdateStreamInput) SetCurrentVersion(v string) *UpdateStreamInput { 4821 s.CurrentVersion = &v 4822 return s 4823} 4824 4825// SetDeviceName sets the DeviceName field's value. 4826func (s *UpdateStreamInput) SetDeviceName(v string) *UpdateStreamInput { 4827 s.DeviceName = &v 4828 return s 4829} 4830 4831// SetMediaType sets the MediaType field's value. 4832func (s *UpdateStreamInput) SetMediaType(v string) *UpdateStreamInput { 4833 s.MediaType = &v 4834 return s 4835} 4836 4837// SetStreamARN sets the StreamARN field's value. 4838func (s *UpdateStreamInput) SetStreamARN(v string) *UpdateStreamInput { 4839 s.StreamARN = &v 4840 return s 4841} 4842 4843// SetStreamName sets the StreamName field's value. 4844func (s *UpdateStreamInput) SetStreamName(v string) *UpdateStreamInput { 4845 s.StreamName = &v 4846 return s 4847} 4848 4849type UpdateStreamOutput struct { 4850 _ struct{} `type:"structure"` 4851} 4852 4853// String returns the string representation 4854func (s UpdateStreamOutput) String() string { 4855 return awsutil.Prettify(s) 4856} 4857 4858// GoString returns the string representation 4859func (s UpdateStreamOutput) GoString() string { 4860 return s.String() 4861} 4862 4863// The stream version that you specified is not the latest version. To get the 4864// latest version, use the DescribeStream (https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/API_DescribeStream.html) 4865// API. 4866type VersionMismatchException struct { 4867 _ struct{} `type:"structure"` 4868 RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` 4869 4870 Message_ *string `locationName:"Message" type:"string"` 4871} 4872 4873// String returns the string representation 4874func (s VersionMismatchException) String() string { 4875 return awsutil.Prettify(s) 4876} 4877 4878// GoString returns the string representation 4879func (s VersionMismatchException) GoString() string { 4880 return s.String() 4881} 4882 4883func newErrorVersionMismatchException(v protocol.ResponseMetadata) error { 4884 return &VersionMismatchException{ 4885 RespMetadata: v, 4886 } 4887} 4888 4889// Code returns the exception type name. 4890func (s *VersionMismatchException) Code() string { 4891 return "VersionMismatchException" 4892} 4893 4894// Message returns the exception's message. 4895func (s *VersionMismatchException) Message() string { 4896 if s.Message_ != nil { 4897 return *s.Message_ 4898 } 4899 return "" 4900} 4901 4902// OrigErr always returns nil, satisfies awserr.Error interface. 4903func (s *VersionMismatchException) OrigErr() error { 4904 return nil 4905} 4906 4907func (s *VersionMismatchException) Error() string { 4908 return fmt.Sprintf("%s: %s", s.Code(), s.Message()) 4909} 4910 4911// Status code returns the HTTP status code for the request's response error. 4912func (s *VersionMismatchException) StatusCode() int { 4913 return s.RespMetadata.StatusCode 4914} 4915 4916// RequestID returns the service's response RequestID for request. 4917func (s *VersionMismatchException) RequestID() string { 4918 return s.RespMetadata.RequestID 4919} 4920 4921const ( 4922 // APINamePutMedia is a APIName enum value 4923 APINamePutMedia = "PUT_MEDIA" 4924 4925 // APINameGetMedia is a APIName enum value 4926 APINameGetMedia = "GET_MEDIA" 4927 4928 // APINameListFragments is a APIName enum value 4929 APINameListFragments = "LIST_FRAGMENTS" 4930 4931 // APINameGetMediaForFragmentList is a APIName enum value 4932 APINameGetMediaForFragmentList = "GET_MEDIA_FOR_FRAGMENT_LIST" 4933 4934 // APINameGetHlsStreamingSessionUrl is a APIName enum value 4935 APINameGetHlsStreamingSessionUrl = "GET_HLS_STREAMING_SESSION_URL" 4936 4937 // APINameGetDashStreamingSessionUrl is a APIName enum value 4938 APINameGetDashStreamingSessionUrl = "GET_DASH_STREAMING_SESSION_URL" 4939 4940 // APINameGetClip is a APIName enum value 4941 APINameGetClip = "GET_CLIP" 4942) 4943 4944// APIName_Values returns all elements of the APIName enum 4945func APIName_Values() []string { 4946 return []string{ 4947 APINamePutMedia, 4948 APINameGetMedia, 4949 APINameListFragments, 4950 APINameGetMediaForFragmentList, 4951 APINameGetHlsStreamingSessionUrl, 4952 APINameGetDashStreamingSessionUrl, 4953 APINameGetClip, 4954 } 4955} 4956 4957const ( 4958 // ChannelProtocolWss is a ChannelProtocol enum value 4959 ChannelProtocolWss = "WSS" 4960 4961 // ChannelProtocolHttps is a ChannelProtocol enum value 4962 ChannelProtocolHttps = "HTTPS" 4963) 4964 4965// ChannelProtocol_Values returns all elements of the ChannelProtocol enum 4966func ChannelProtocol_Values() []string { 4967 return []string{ 4968 ChannelProtocolWss, 4969 ChannelProtocolHttps, 4970 } 4971} 4972 4973const ( 4974 // ChannelRoleMaster is a ChannelRole enum value 4975 ChannelRoleMaster = "MASTER" 4976 4977 // ChannelRoleViewer is a ChannelRole enum value 4978 ChannelRoleViewer = "VIEWER" 4979) 4980 4981// ChannelRole_Values returns all elements of the ChannelRole enum 4982func ChannelRole_Values() []string { 4983 return []string{ 4984 ChannelRoleMaster, 4985 ChannelRoleViewer, 4986 } 4987} 4988 4989const ( 4990 // ChannelTypeSingleMaster is a ChannelType enum value 4991 ChannelTypeSingleMaster = "SINGLE_MASTER" 4992) 4993 4994// ChannelType_Values returns all elements of the ChannelType enum 4995func ChannelType_Values() []string { 4996 return []string{ 4997 ChannelTypeSingleMaster, 4998 } 4999} 5000 5001const ( 5002 // ComparisonOperatorBeginsWith is a ComparisonOperator enum value 5003 ComparisonOperatorBeginsWith = "BEGINS_WITH" 5004) 5005 5006// ComparisonOperator_Values returns all elements of the ComparisonOperator enum 5007func ComparisonOperator_Values() []string { 5008 return []string{ 5009 ComparisonOperatorBeginsWith, 5010 } 5011} 5012 5013const ( 5014 // StatusCreating is a Status enum value 5015 StatusCreating = "CREATING" 5016 5017 // StatusActive is a Status enum value 5018 StatusActive = "ACTIVE" 5019 5020 // StatusUpdating is a Status enum value 5021 StatusUpdating = "UPDATING" 5022 5023 // StatusDeleting is a Status enum value 5024 StatusDeleting = "DELETING" 5025) 5026 5027// Status_Values returns all elements of the Status enum 5028func Status_Values() []string { 5029 return []string{ 5030 StatusCreating, 5031 StatusActive, 5032 StatusUpdating, 5033 StatusDeleting, 5034 } 5035} 5036 5037const ( 5038 // UpdateDataRetentionOperationIncreaseDataRetention is a UpdateDataRetentionOperation enum value 5039 UpdateDataRetentionOperationIncreaseDataRetention = "INCREASE_DATA_RETENTION" 5040 5041 // UpdateDataRetentionOperationDecreaseDataRetention is a UpdateDataRetentionOperation enum value 5042 UpdateDataRetentionOperationDecreaseDataRetention = "DECREASE_DATA_RETENTION" 5043) 5044 5045// UpdateDataRetentionOperation_Values returns all elements of the UpdateDataRetentionOperation enum 5046func UpdateDataRetentionOperation_Values() []string { 5047 return []string{ 5048 UpdateDataRetentionOperationIncreaseDataRetention, 5049 UpdateDataRetentionOperationDecreaseDataRetention, 5050 } 5051} 5052