func (client *Client) SetObjectMetadataWithContext(ctx context.Context, request *SetObjectMetadataRequest) error {
	data, e := request.Metadata.serialize()
	if e != nil {
		return e
	}

	req := &clientRequest{
		BucketName:         request.BucketName,
		ObjectName:         request.ObjectName,
		Method:             HTTPPut,
		QueryHeaderOptions: request,
		Data:               bytes.NewReader(data),
	}

	resp, err := client.do(ctx, req)
	if err != nil {
		return err
	}
	defer resp.Body.Close()

	return err
}
// SetObjectMetadataWithContext sets metadata of object with context controlling
SetObjectMetadataWithContext sets metadata of object with context controlling
// SetObjectMetadataWithContext sets metadata of object with context controlling
func (client *Client) SetObjectMetadataWithContext(ctx context.Context, request *SetObjectMetadataRequest) error {
	data, e := request.Metadata.serialize()
	if e != nil {
		return e
	}
	req := &clientRequest{
		BucketName:         request.BucketName,
		ObjectName:         request.ObjectName,
		Method:             HTTPPut,
		QueryHeaderOptions: request,
		Data:               bytes.NewReader(data),
	}
	resp, err := client.do(ctx, req)
	if err != nil {
		return err
	}
	defer resp.Body.Close()
	return err
}
func ( client * Client ) SetObjectMetadataWithContext ( ctx context . Context , request * SetObjectMetadataRequest ) error { data , e := request . Metadata . serialize ( ) if e != nil { return e } req := & clientRequest { BucketName : request . BucketName , ObjectName : request . ObjectName , Method : HTTPPut , QueryHeaderOptions : request , Data : bytes . NewReader ( data ) , } resp , err := client . do ( ctx , req ) if err != nil { return err } defer resp . Body . Close ( ) return err }
SetObjectMetadataWithContext sets metadata of object with context controlling
SetObjectMetadataWithContext sets metadata of object with context controlling