| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190 |
- package s3
- import "github.com/ks3sdklib/aws-sdk-go/aws"
- // PutBucketReplicationRequest generates a request for the PutBucketReplication operation.
- func (c *S3) PutBucketReplicationRequest(input *PutBucketReplicationInput) (req *aws.Request, output *PutBucketReplicationOutput) {
- op := &aws.Operation{
- Name: "PutBucketReplication",
- HTTPMethod: "PUT",
- HTTPPath: "/{Bucket}?crr",
- }
- if input == nil {
- input = &PutBucketReplicationInput{}
- }
- input.AutoFillMD5 = true
- req = c.newRequest(op, input, output)
- output = &PutBucketReplicationOutput{}
- req.Data = output
- return
- }
- // PutBucketReplication creates a new replication configuration.
- func (c *S3) PutBucketReplication(input *PutBucketReplicationInput) (*PutBucketReplicationOutput, error) {
- req, out := c.PutBucketReplicationRequest(input)
- err := req.Send()
- return out, err
- }
- func (c *S3) PutBucketReplicationWithContext(ctx aws.Context, input *PutBucketReplicationInput) (*PutBucketReplicationOutput, error) {
- req, out := c.PutBucketReplicationRequest(input)
- req.SetContext(ctx)
- err := req.Send()
- return out, err
- }
- type PutBucketReplicationInput struct {
- Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
- ReplicationConfiguration *ReplicationConfiguration `locationName:"Replication" type:"structure" required:"true" xmlURI:"http://s3.amazonaws.com/doc/2006-03-01/"`
- ContentType *string `location:"header" locationName:"Content-Type" type:"string"`
- // 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"`
- metadataPutBucketReplicationInput `json:"-" xml:"-"`
- }
- type metadataPutBucketReplicationInput struct {
- SDKShapeTraits bool `type:"structure" payload:"ReplicationConfiguration"`
- AutoFillMD5 bool
- }
- type PutBucketReplicationOutput struct {
- Metadata map[string]*string `location:"headers" type:"map"`
- StatusCode *int64 `location:"statusCode" type:"integer"`
- }
- type ReplicationConfiguration struct {
- // Prefix matching, only objects that match prefix rules will be copied. Each copying rule
- // can add up to 10 prefix matching rules, and prefixes cannot overlap with each other.
- Prefix []*string `locationName:"prefix" type:"list" flattened:"true"`
- // Indicate whether to enable delete replication. If set to Enabled, it means enabled; if set to
- // Disabled or not, it means disabled. If set to delete replication, when the source bucket deletes
- // an object, the replica of that object in the target bucket will also be deleted.
- DeleteMarkerStatus *string `locationName:"DeleteMarkerStatus" type:"string" required:"true"`
- // Target bucket for copying rules.
- TargetBucket *string `locationName:"targetBucket" type:"string" required:"true"`
- // Specify whether to copy historical data. Whether to copy the data from the source bucket
- // to the target bucket before enabling data replication.
- // Enabled: Copy historical data to the target bucket (default value)
- // Disabled: Do not copy historical data, only copy new data after enabling the rule to the target bucket.
- HistoricalObjectReplication *string `locationName:"HistoricalObjectReplication" type:"string"`
- // Region of the target bucket.
- Region *string `locationName:"region" type:"string"`
- }
- // GetBucketReplicationRequest generates a request for the GetBucketReplication operation.
- func (c *S3) GetBucketReplicationRequest(input *GetBucketReplicationInput) (req *aws.Request, output *GetBucketReplicationOutput) {
- op := &aws.Operation{
- Name: "GetBucketReplication",
- HTTPMethod: "GET",
- HTTPPath: "/{Bucket}?crr",
- }
- if input == nil {
- input = &GetBucketReplicationInput{}
- }
- req = c.newRequest(op, input, output)
- output = &GetBucketReplicationOutput{}
- req.Data = output
- return
- }
- // GetBucketReplication gets the replication configuration for the bucket.
- func (c *S3) GetBucketReplication(input *GetBucketReplicationInput) (*GetBucketReplicationOutput, error) {
- req, out := c.GetBucketReplicationRequest(input)
- err := req.Send()
- return out, err
- }
- func (c *S3) GetBucketReplicationWithContext(ctx aws.Context, input *GetBucketReplicationInput) (*GetBucketReplicationOutput, error) {
- req, out := c.GetBucketReplicationRequest(input)
- req.SetContext(ctx)
- err := req.Send()
- return out, err
- }
- type GetBucketReplicationInput struct {
- 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 GetBucketReplicationOutput struct {
- ReplicationConfiguration *ReplicationConfiguration `locationName:"Replication" type:"structure"`
- Metadata map[string]*string `location:"headers" type:"map"`
- StatusCode *int64 `location:"statusCode" type:"integer"`
- metadataGetBucketReplicationOutput `json:"-" xml:"-"`
- }
- type metadataGetBucketReplicationOutput struct {
- SDKShapeTraits bool `type:"structure" payload:"ReplicationConfiguration"`
- }
- // DeleteBucketReplicationRequest generates a request for the DeleteBucketReplication operation.
- func (c *S3) DeleteBucketReplicationRequest(input *DeleteBucketReplicationInput) (req *aws.Request, output *DeleteBucketReplicationOutput) {
- op := &aws.Operation{
- Name: "DeleteBucketReplication",
- HTTPMethod: "DELETE",
- HTTPPath: "/{Bucket}?crr",
- }
- if input == nil {
- input = &DeleteBucketReplicationInput{}
- }
- req = c.newRequest(op, input, output)
- output = &DeleteBucketReplicationOutput{}
- req.Data = output
- return
- }
- // DeleteBucketReplication deletes the replication configuration for the bucket.
- func (c *S3) DeleteBucketReplication(input *DeleteBucketReplicationInput) (*DeleteBucketReplicationOutput, error) {
- req, out := c.DeleteBucketReplicationRequest(input)
- err := req.Send()
- return out, err
- }
- func (c *S3) DeleteBucketReplicationWithContext(ctx aws.Context, input *DeleteBucketReplicationInput) (*DeleteBucketReplicationOutput, error) {
- req, out := c.DeleteBucketReplicationRequest(input)
- req.SetContext(ctx)
- err := req.Send()
- return out, err
- }
- type DeleteBucketReplicationInput struct {
- 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 DeleteBucketReplicationOutput struct {
- Metadata map[string]*string `location:"headers" type:"map"`
- StatusCode *int64 `location:"statusCode" type:"integer"`
- }
|