github.com/chnsz/golangsdk@v0.0.0-20240506093406-85a3fbfa605b/openstack/dis/v3/streams/requests.go (about)

     1  package streams
     2  
     3  import (
     4  	"github.com/chnsz/golangsdk"
     5  )
     6  
     7  type UpdateOpts struct {
     8  	StreamName                 string `json:"stream_name" required:"true"`
     9  	DataDuration               *int   `json:"data_duration,omitempty"`
    10  	DataType                   string `json:"data_type,omitempty"`
    11  	DataSchema                 string `json:"data_schema,omitempty"`
    12  	AutoScaleEnabled           *bool  `json:"auto_scale_enabled,omitempty"`
    13  	AutoScaleMinPartitionCount *int   `json:"auto_scale_min_partition_count,omitempty"`
    14  	AutoScaleMaxPartitionCount *int   `json:"auto_scale_max_partition_count,omitempty"`
    15  }
    16  
    17  func Update(c *golangsdk.ServiceClient, name string, opts UpdateOpts) (*golangsdk.Result, error) {
    18  	b, err := golangsdk.BuildRequestBody(opts, "")
    19  	if err != nil {
    20  		return nil, err
    21  	}
    22  
    23  	var r golangsdk.Result
    24  	_, err = c.Put(UpdateURL(c, name), b, &r.Body, &golangsdk.RequestOpts{
    25  		MoreHeaders: map[string]string{
    26  			"Content-Type": "application/json",
    27  			"region":       c.AKSKAuthOptions.Region,
    28  		},
    29  	})
    30  	return &r, err
    31  }