replication

package
v7.0.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 28, 2020 License: Apache-2.0 Imports: 7 Imported by: 46

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type And

type And struct {
	XMLName xml.Name `xml:"And,omitempty" json:"-"`
	Prefix  string   `xml:"Prefix,omitempty" json:"Prefix,omitempty"`
	Tags    []Tag    `xml:"Tag,omitempty" json:"Tag,omitempty"`
}

And - a tag to combine a prefix and multiple tags for replication configuration rule.

type Config

type Config struct {
	XMLName xml.Name `xml:"ReplicationConfiguration" json:"-"`
	Rules   []Rule   `xml:"Rule" json:"Rules"`
	Role    string   `xml:"Role" json:"Role"`
}

Config - replication configuration specified in https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html

func (*Config) AddRule added in v7.0.3

func (c *Config) AddRule(opts Options) error

AddRule adds a new rule to existing replication config. If a rule exists with the same ID, then the rule is replaced.

func (*Config) EditRule added in v7.0.5

func (c *Config) EditRule(opts Options) error

EditRule modifies an existing rule in replication config

func (*Config) Empty

func (c *Config) Empty() bool

Empty returns true if config is not set

func (*Config) RemoveRule added in v7.0.3

func (c *Config) RemoveRule(opts Options) error

RemoveRule removes a rule from replication config.

type DeleteMarkerReplication

type DeleteMarkerReplication struct {
	Status Status `xml:"Status" json:"Status"` // should be set to "Disabled" by default
}

DeleteMarkerReplication - whether delete markers are replicated - https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html

func (DeleteMarkerReplication) IsEmpty

func (d DeleteMarkerReplication) IsEmpty() bool

IsEmpty returns true if DeleteMarkerReplication is not set

type DeleteReplication added in v7.0.6

type DeleteReplication struct {
	Status Status `xml:"Status" json:"Status"` // should be set to "Disabled" by default
}

DeleteReplication - whether versioned deletes are replicated - this is a MinIO specific extension

func (DeleteReplication) IsEmpty added in v7.0.6

func (d DeleteReplication) IsEmpty() bool

IsEmpty returns true if DeleteReplication is not set

type Destination

type Destination struct {
	XMLName      xml.Name `xml:"Destination" json:"-"`
	Bucket       string   `xml:"Bucket" json:"Bucket"`
	StorageClass string   `xml:"StorageClass,omitempty" json:"StorageClass,omitempty"`
}

Destination - destination in ReplicationConfiguration.

type Filter

type Filter struct {
	XMLName xml.Name `xml:"Filter" json:"-"`
	Prefix  string   `json:"Prefix,omitempty"`
	And     And      `xml:"And,omitempty" json:"And,omitempty"`
	Tag     Tag      `xml:"Tag,omitempty" json:"Tag,omitempty"`
}

Filter - a filter for a replication configuration Rule.

func (Filter) Validate added in v7.0.3

func (f Filter) Validate() error

Validate - validates the filter element

type OptionType added in v7.0.3

type OptionType string

OptionType specifies operation to be performed on config

const (
	// AddOption specifies addition of rule to config
	AddOption OptionType = "Add"
	// SetOption specifies modification of existing rule to config
	SetOption OptionType = "Set"

	// RemoveOption specifies rule options are for removing a rule
	RemoveOption OptionType = "Remove"
	// ImportOption is for getting current config
	ImportOption OptionType = "Import"
)

type Options added in v7.0.3

type Options struct {
	Op                     OptionType
	ID                     string
	Prefix                 string
	RuleStatus             string
	Priority               string
	TagString              string
	StorageClass           string
	RoleArn                string
	DestBucket             string
	IsTagSet               bool
	IsSCSet                bool
	ReplicateDeletes       string // replicate versioned deletes
	ReplicateDeleteMarkers string // replicate soft deletes
}

Options represents options to set a replication configuration rule

func (Options) Tags added in v7.0.3

func (opts Options) Tags() ([]Tag, error)

Tags returns a slice of tags for a rule

type Rule

type Rule struct {
	XMLName                 xml.Name                `xml:"Rule" json:"-"`
	ID                      string                  `xml:"ID,omitempty"`
	Status                  Status                  `xml:"Status"`
	Priority                int                     `xml:"Priority"`
	DeleteMarkerReplication DeleteMarkerReplication `xml:"DeleteMarkerReplication"`
	DeleteReplication       DeleteReplication       `xml:"DeleteReplication"`
	Destination             Destination             `xml:"Destination"`
	Filter                  Filter                  `xml:"Filter" json:"Filter"`
}

Rule - a rule for replication configuration.

func (Rule) Prefix added in v7.0.3

func (r Rule) Prefix() string

Prefix - a rule can either have prefix under <filter></filter> or under <filter><and></and></filter>. This method returns the prefix from the location where it is available

func (Rule) Tags added in v7.0.3

func (r Rule) Tags() string

Tags - a rule can either have tag under <filter></filter> or under <filter><and></and></filter>. This method returns all the tags from the rule in the format tag1=value1&tag2=value2

func (Rule) Validate added in v7.0.3

func (r Rule) Validate() error

Validate validates the rule for correctness

type Status

type Status string

Status represents Enabled/Disabled status

const (
	Enabled  Status = "Enabled"
	Disabled Status = "Disabled"
)

Supported status types

type Tag

type Tag struct {
	XMLName xml.Name `json:"-"`
	Key     string   `xml:"Key,omitempty" json:"Key,omitempty"`
	Value   string   `xml:"Value,omitempty" json:"Value,omitempty"`
}

Tag - a tag for a replication configuration Rule filter.

func (Tag) IsEmpty added in v7.0.3

func (tag Tag) IsEmpty() bool

IsEmpty returns whether this tag is empty or not.

func (Tag) String added in v7.0.3

func (tag Tag) String() string

func (Tag) Validate added in v7.0.3

func (tag Tag) Validate() error

Validate checks this tag.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL