in oss/client_presign.go [93:138]
func (c *Client) marshalPresignInput(request any, input *OperationInput) error {
switch t := request.(type) {
case *GetObjectRequest:
input.OpName = "GetObject"
input.Method = "GET"
input.Bucket = t.Bucket
input.Key = t.Key
case *PutObjectRequest:
input.OpName = "PutObject"
input.Method = "PUT"
input.Bucket = t.Bucket
input.Key = t.Key
case *HeadObjectRequest:
input.OpName = "HeadObject"
input.Method = "HEAD"
input.Bucket = t.Bucket
input.Key = t.Key
case *InitiateMultipartUploadRequest:
input.OpName = "InitiateMultipartUpload"
input.Method = "POST"
input.Bucket = t.Bucket
input.Key = t.Key
input.Parameters = map[string]string{
"uploads": "",
}
case *UploadPartRequest:
input.OpName = "UploadPart"
input.Method = "PUT"
input.Bucket = t.Bucket
input.Key = t.Key
case *CompleteMultipartUploadRequest:
input.OpName = "CompleteMultipartUpload"
input.Method = "POST"
input.Bucket = t.Bucket
input.Key = t.Key
case *AbortMultipartUploadRequest:
input.OpName = "AbortMultipartUpload"
input.Method = "DELETE"
input.Bucket = t.Bucket
input.Key = t.Key
default:
return NewErrParamInvalid(fmt.Sprintf("request %v", reflect.ValueOf(request).Type().String()))
}
return c.marshalInput(request, input)
}