| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200 |
- package s3
- import (
- "github.com/ks3sdklib/aws-sdk-go/aws"
- )
- type PutBucketQosInput struct {
- // The name of the bucket.
- Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
- // Bucket flow control configuration container.
- BucketQosConfiguration *BucketQosConfiguration `locationName:"BucketQosConfiguration" type:"structure" required:"true"`
- // Set extend request headers. If the existing fields do not support setting the request header you need, you can set it through this field.
- ExtendHeaders map[string]*string `location:"extendHeaders" type:"map"`
- // Set extend query params. If the existing fields do not support setting the query param you need, you can set it through this field.
- ExtendQueryParams map[string]*string `location:"extendQueryParams" type:"map"`
- metadataPutBucketQosInput `json:"-" xml:"-"`
- }
- type metadataPutBucketQosInput struct {
- SDKShapeTraits bool `type:"structure" payload:"BucketQosConfiguration"`
- }
- type BucketQosConfiguration struct {
- // Set the bucket flow control quota.
- Quotas []*BucketQosQuota `locationName:"Quota" type:"list" flattened:"true" required:"true"`
- }
- type BucketQosQuota struct {
- // Specify the storage medium type that needs flow control. Options: Extreme/Normal (default)
- // Extreme: SSD type storage medium
- // Normal (default): HDD type storage medium
- StorageMedium *string `locationName:"StorageMedium" type:"string"`
- // External network upload bandwidth, in Gbps, the value must be a positive integer.
- ExtranetUploadBandwidth *int64 `locationName:"ExtranetUploadBandwidth" type:"integer"`
- // Intranet network upload bandwidth, in Gbps, the value must be a positive integer.
- IntranetUploadBandwidth *int64 `locationName:"IntranetUploadBandwidth" type:"integer"`
- // External network download bandwidth, in Gbps, the value must be a positive integer.
- ExtranetDownloadBandwidth *int64 `locationName:"ExtranetDownloadBandwidth" type:"integer"`
- // Intranet network download bandwidth, in Gbps, the value must be a positive integer.
- IntranetDownloadBandwidth *int64 `locationName:"IntranetDownloadBandwidth" type:"integer"`
- }
- type PutBucketQosOutput struct {
- // The HTTP headers of the response.
- Metadata map[string]*string `location:"headers" type:"map"`
- // The HTTP status code of the response.
- StatusCode *int64 `location:"statusCode" type:"integer"`
- }
- // PutBucketQosRequest generates a request for the PutBucketQos operation.
- func (c *S3) PutBucketQosRequest(input *PutBucketQosInput) (req *aws.Request, output *PutBucketQosOutput) {
- op := &aws.Operation{
- Name: "PutBucketQos",
- HTTPMethod: "PUT",
- HTTPPath: "/{Bucket}?bucketqos",
- }
- if input == nil {
- input = &PutBucketQosInput{}
- }
- req = c.newRequest(op, input, output)
- output = &PutBucketQosOutput{}
- req.Data = output
- return
- }
- // PutBucketQos sets bucket flow control configuration.
- func (c *S3) PutBucketQos(input *PutBucketQosInput) (*PutBucketQosOutput, error) {
- req, out := c.PutBucketQosRequest(input)
- err := req.Send()
- return out, err
- }
- func (c *S3) PutBucketQosWithContext(ctx aws.Context, input *PutBucketQosInput) (*PutBucketQosOutput, error) {
- req, out := c.PutBucketQosRequest(input)
- req.SetContext(ctx)
- err := req.Send()
- return out, err
- }
- type GetBucketQosInput struct {
- // The name of the bucket.
- Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
- // Set extend request headers. If the existing fields do not support setting the request header you need, you can set it through this field.
- ExtendHeaders map[string]*string `location:"extendHeaders" type:"map"`
- // Set extend query params. If the existing fields do not support setting the query param you need, you can set it through this field.
- ExtendQueryParams map[string]*string `location:"extendQueryParams" type:"map"`
- }
- type GetBucketQosOutput struct {
- // Bucket flow control configuration container.
- BucketQosConfiguration *BucketQosConfiguration `locationName:"BucketQosConfiguration" type:"structure"`
- // The HTTP headers of the response.
- Metadata map[string]*string `location:"headers" type:"map"`
- // The HTTP status code of the response.
- StatusCode *int64 `location:"statusCode" type:"integer"`
- metadataGetBucketQosOutput `json:"-" xml:"-"`
- }
- type metadataGetBucketQosOutput struct {
- SDKShapeTraits bool `type:"structure" payload:"BucketQosConfiguration"`
- }
- // GetBucketQosRequest generates a request for the GetBucketQos operation.
- func (c *S3) GetBucketQosRequest(input *GetBucketQosInput) (req *aws.Request, output *GetBucketQosOutput) {
- op := &aws.Operation{
- Name: "GetBucketQos",
- HTTPMethod: "GET",
- HTTPPath: "/{Bucket}?bucketqos",
- }
- if input == nil {
- input = &GetBucketQosInput{}
- }
- req = c.newRequest(op, input, output)
- output = &GetBucketQosOutput{}
- req.Data = output
- return
- }
- // GetBucketQos gets bucket flow control configuration.
- func (c *S3) GetBucketQos(input *GetBucketQosInput) (*GetBucketQosOutput, error) {
- req, out := c.GetBucketQosRequest(input)
- err := req.Send()
- return out, err
- }
- func (c *S3) GetBucketQosWithContext(ctx aws.Context, input *GetBucketQosInput) (*GetBucketQosOutput, error) {
- req, out := c.GetBucketQosRequest(input)
- req.SetContext(ctx)
- err := req.Send()
- return out, err
- }
- type DeleteBucketQosInput struct {
- // The name of the bucket.
- Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
- // Set extend request headers. If the existing fields do not support setting the request header you need, you can set it through this field.
- ExtendHeaders map[string]*string `location:"extendHeaders" type:"map"`
- // Set extend query params. If the existing fields do not support setting the query param you need, you can set it through this field.
- ExtendQueryParams map[string]*string `location:"extendQueryParams" type:"map"`
- }
- type DeleteBucketQosOutput struct {
- // The HTTP headers of the response.
- Metadata map[string]*string `location:"headers" type:"map"`
- // The HTTP status code of the response.
- StatusCode *int64 `location:"statusCode" type:"integer"`
- }
- // DeleteBucketQosRequest generates a request for the DeleteBucketQos operation.
- func (c *S3) DeleteBucketQosRequest(input *DeleteBucketQosInput) (req *aws.Request, output *DeleteBucketQosOutput) {
- op := &aws.Operation{
- Name: "DeleteBucketQos",
- HTTPMethod: "DELETE",
- HTTPPath: "/{Bucket}?bucketqos",
- }
- if input == nil {
- input = &DeleteBucketQosInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DeleteBucketQosOutput{}
- req.Data = output
- return
- }
- // DeleteBucketQos deletes bucket flow control configuration.
- func (c *S3) DeleteBucketQos(input *DeleteBucketQosInput) (*DeleteBucketQosOutput, error) {
- req, out := c.DeleteBucketQosRequest(input)
- err := req.Send()
- return out, err
- }
- func (c *S3) DeleteBucketQosWithContext(ctx aws.Context, input *DeleteBucketQosInput) (*DeleteBucketQosOutput, error) {
- req, out := c.DeleteBucketQosRequest(input)
- req.SetContext(ctx)
- err := req.Send()
- return out, err
- }
|