Struct: s3.UploadPartInput

import "../ibm-cos-sdk-go/service/s3"

Implemented Interfaces

s3crypto.Cipher, s3manager.ReadSeekerWriteTo, request.Validator, s3manager.WriterReadFrom

Structure Field Summary collapse

Service Operations collapse

Structure Field Details

Body io.ReadSeeker `type:"blob"`

Object data.

Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

The name of the bucket to which the multipart upload was initiated.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points (docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) in the Amazon S3 User Guide.

When you use this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When you use this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts access point ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see What is S3 on Outposts? (docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the Amazon S3 User Guide.

Bucket is a required field

ContentLength *int64 `location:"header" locationName:"Content-Length" type:"long"`

Size of the body in bytes. This parameter is useful when the size of the body cannot be determined automatically.

ContentMD5 *string `location:"header" locationName:"Content-MD5" type:"string"`

The base64-encoded 128-bit MD5 digest of the part data. This parameter is auto-populated when using the command from the CLI. This parameter is required if object lock parameters are specified.

ExpectedBucketOwner *string `location:"header" locationName:"x-amz-expected-bucket-owner" type:"string"`

Ignored by COS.

Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`

Object key for which the multipart upload was initiated.

Key is a required field

PartNumber *int64 `location:"querystring" locationName:"partNumber" type:"integer" required:"true"`

Part number of part being uploaded. This is a positive integer between 1 and 10,000.

PartNumber is a required field

RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`

Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. If either the source or destination Amazon S3 bucket has Requester Pays enabled, the requester will pay for corresponding charges to copy the object. For information about downloading objects from Requester Pays buckets, see Downloading Objects in Requester Pays Buckets (docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html) in the Amazon S3 User Guide.

SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`

Specifies the algorithm to use to when encrypting the object (for example, AES256).

SSECustomerKey *string `marshal-as:"blob" location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string" sensitive:"true"`

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data. This value is used to store the object and then it is discarded; Amazon S3 does not store the encryption key. The key must be appropriate for use with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm header. This must be the same encryption key specified in the initiate multipart upload request.

SSECustomerKey is a sensitive parameter and its value will be replaced with “sensitive” in string returned by UploadPartInput's String and GoString methods.

SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.

UploadId *string `location:"querystring" locationName:"uploadId" type:"string" required:"true"`

Upload ID identifying the multipart upload whose part is being uploaded.

UploadId is a required field

_ struct{} `locationName:"UploadPartRequest" type:"structure" payload:"Body"`

Method Details

func (s UploadPartInput) GoString() string

GoString returns the string representation.

API parameter values that are decorated as “sensitive” in the API will not be included in the string output. The member name will be present, but the value will be replaced with “sensitive”.



22805
22806
22807
// File 'service/s3/api.go', line 22805

func (s UploadPartInput) GoString() string { return s.String() }

func (s *UploadPartInput) SetBody(v io.ReadSeeker) *UploadPartInput

SetBody sets the Body field's value.



22838
22839
22840
22841
// File 'service/s3/api.go', line 22838

func (s *UploadPartInput) SetBody(v io.ReadSeeker) *UploadPartInput { s.Body = v return s }

func (s *UploadPartInput) SetBucket(v string) *UploadPartInput

SetBucket sets the Bucket field's value.



22844
22845
22846
22847
// File 'service/s3/api.go', line 22844

func (s *UploadPartInput) SetBucket(v string) *UploadPartInput { s.Bucket = &v return s }

func (s *UploadPartInput) SetContentLength(v int64) *UploadPartInput

SetContentLength sets the ContentLength field's value.



22857
22858
22859
22860
// File 'service/s3/api.go', line 22857

func (s *UploadPartInput) SetContentLength(v int64) *UploadPartInput { s.ContentLength = &v return s }

func (s *UploadPartInput) SetContentMD5(v string) *UploadPartInput

SetContentMD5 sets the ContentMD5 field's value.



22863
22864
22865
22866
// File 'service/s3/api.go', line 22863

func (s *UploadPartInput) SetContentMD5(v string) *UploadPartInput { s.ContentMD5 = &v return s }

func (s *UploadPartInput) SetExpectedBucketOwner(v string) *UploadPartInput

SetExpectedBucketOwner sets the ExpectedBucketOwner field's value.



22869
22870
22871
22872
// File 'service/s3/api.go', line 22869

func (s *UploadPartInput) SetExpectedBucketOwner(v string) *UploadPartInput { s.ExpectedBucketOwner = &v return s }

func (s *UploadPartInput) SetKey(v string) *UploadPartInput

SetKey sets the Key field's value.



22875
22876
22877
22878
// File 'service/s3/api.go', line 22875

func (s *UploadPartInput) SetKey(v string) *UploadPartInput { s.Key = &v return s }

func (s *UploadPartInput) SetPartNumber(v int64) *UploadPartInput

SetPartNumber sets the PartNumber field's value.



22881
22882
22883
22884
// File 'service/s3/api.go', line 22881

func (s *UploadPartInput) SetPartNumber(v int64) *UploadPartInput { s.PartNumber = &v return s }

func (s *UploadPartInput) SetRequestPayer(v string) *UploadPartInput

SetRequestPayer sets the RequestPayer field's value.



22887
22888
22889
22890
// File 'service/s3/api.go', line 22887

func (s *UploadPartInput) SetRequestPayer(v string) *UploadPartInput { s.RequestPayer = &v return s }

func (s *UploadPartInput) SetSSECustomerAlgorithm(v string) *UploadPartInput

SetSSECustomerAlgorithm sets the SSECustomerAlgorithm field's value.



22893
22894
22895
22896
// File 'service/s3/api.go', line 22893

func (s *UploadPartInput) SetSSECustomerAlgorithm(v string) *UploadPartInput { s.SSECustomerAlgorithm = &v return s }

func (s *UploadPartInput) SetSSECustomerKey(v string) *UploadPartInput

SetSSECustomerKey sets the SSECustomerKey field's value.



22899
22900
22901
22902
// File 'service/s3/api.go', line 22899

func (s *UploadPartInput) SetSSECustomerKey(v string) *UploadPartInput { s.SSECustomerKey = &v return s }

func (s *UploadPartInput) SetSSECustomerKeyMD5(v string) *UploadPartInput

SetSSECustomerKeyMD5 sets the SSECustomerKeyMD5 field's value.



22912
22913
22914
22915
// File 'service/s3/api.go', line 22912

func (s *UploadPartInput) SetSSECustomerKeyMD5(v string) *UploadPartInput { s.SSECustomerKeyMD5 = &v return s }

func (s *UploadPartInput) SetUploadId(v string) *UploadPartInput

SetUploadId sets the UploadId field's value.



22918
22919
22920
22921
// File 'service/s3/api.go', line 22918

func (s *UploadPartInput) SetUploadId(v string) *UploadPartInput { s.UploadId = &v return s }

func (s UploadPartInput) String() string

String returns the string representation.

API parameter values that are decorated as “sensitive” in the API will not be included in the string output. The member name will be present, but the value will be replaced with “sensitive”.



22796
22797
22798
// File 'service/s3/api.go', line 22796

func (s UploadPartInput) String() string { return awsutil.Prettify(s) }

func (s *UploadPartInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.



22810
22811
22812
22813
22814
22815
22816
22817
22818
22819
22820
22821
22822
22823
22824
22825
22826
22827
22828
22829
22830
22831
22832
22833
22834
22835
// File 'service/s3/api.go', line 22810

func (s *UploadPartInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UploadPartInput"} if s.Bucket == nil { invalidParams.Add(request.NewErrParamRequired("Bucket")) } if s.Bucket != nil && len(*s.Bucket) < 1 { invalidParams.Add(request.NewErrParamMinLen("Bucket", 1)) } if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if s.PartNumber == nil { invalidParams.Add(request.NewErrParamRequired("PartNumber")) } if s.UploadId == nil { invalidParams.Add(request.NewErrParamRequired("UploadId")) } if invalidParams.Len() > 0 { return invalidParams } return nil }