Documentation ¶
Index ¶
- type BucketInfo
- type BucketInfoElement
- type Capability
- type CreateTopicResponse
- type GetTopicResponse
- type KeyClass
- type ListTopicsResponse
- type MetaDataFilter
- type NotificationConfiguration
- type Quota
- type Quotas
- type RGWClient
- func (rgw *RGWClient) AddCaps(uid, caps string) (*[]Capability, error)
- func (rgw *RGWClient) AppendObjV2(bucketName, objKey string, position uint64, body io.ReadSeeker) (*http.Response, error)
- func (rgw *RGWClient) AppendObjV4(bucketName, objKey string, position uint64, body io.ReadSeeker) (*http.Response, error)
- func (rgw *RGWClient) CreateKey(userConf *UserConf) (*[]KeyClass, error)
- func (rgw *RGWClient) CreateNotification(topicArn, bucket, notificationId, prefix, suffix string, ...) (*http.Response, error)
- func (rgw *RGWClient) CreateTopic(topicName, pushEndpoint string) (string, error)
- func (rgw *RGWClient) CreateUser(userConf *UserConf) (*UserInfo, error)
- func (rgw *RGWClient) DeleteNotification(bucket, notificationId string) (*http.Response, error)
- func (rgw *RGWClient) DeleteTopic(topicArn string) (*http.Response, error)
- func (rgw *RGWClient) GetBucketInfo(uid, bucketName string) (*BucketInfo, error)
- func (rgw *RGWClient) GetNotification(bucket, notificationId string) (*NotificationConfiguration, error)
- func (rgw *RGWClient) GetTopic(topicArn string) (*GetTopicResponse, error)
- func (rgw *RGWClient) GetUserBucketQuota(uid string) (*Quota, error)
- func (rgw *RGWClient) GetUserInfo(uid, stats string) (*UserInfo, error)
- func (rgw *RGWClient) GetUserQuota(uid string) (*Quota, error)
- func (rgw *RGWClient) ListTopics() (*ListTopicsResponse, error)
- func (rgw *RGWClient) ModifyUser(userConf *UserConf) (*UserInfo, error)
- func (rgw *RGWClient) PutBucketQuota(uid, bucketName string, body io.ReadSeeker) (*http.Response, error)
- func (rgw *RGWClient) PutUserBucketQuota(uid string, body io.ReadSeeker) (*http.Response, error)
- func (rgw *RGWClient) PutUserQuota(uid string, body io.ReadSeeker) (*http.Response, error)
- func (rgw *RGWClient) RemoveCaps(uid, caps string) (*[]Capability, error)
- func (rgw *RGWClient) RemoveKey(userConf *UserConf) (*http.Response, error)
- func (rgw *RGWClient) RemoveUser(uid string) (*http.Response, error)
- type RGWMain
- type Stats
- type Subuser
- type TagFilter
- type Usage
- type UserConf
- type UserInfo
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BucketInfo ¶
type BucketInfo []BucketInfoElement
type BucketInfoElement ¶
type BucketInfoElement struct { Bucket string `json:"bucket"` NumShards int64 `json:"num_shards"` Tenant string `json:"tenant"` Zonegroup string `json:"zonegroup"` PlacementRule string `json:"placement_rule"` ID string `json:"id"` Marker string `json:"marker"` Owner string `json:"owner"` Ver string `json:"ver"` MasterVer string `json:"master_ver"` Mtime string `json:"mtime"` MaxMarker string `json:"max_marker"` Usage Usage `json:"usage"` BucketQuota Quota `json:"bucket_quota"` }
type Capability ¶
type CreateTopicResponse ¶
type CreateTopicResponse struct { XMLName xml.Name `xml:"CreateTopicResponse"` Text string `xml:",chardata"` Xmlns string `xml:"xmlns,attr"` CreateTopicResult struct { Text string `xml:",chardata"` TopicArn string `xml:"TopicArn"` } `xml:"CreateTopicResult"` ResponseMetadata struct { Text string `xml:",chardata"` RequestId string `xml:"RequestId"` } `xml:"ResponseMetadata"` }
type GetTopicResponse ¶
type GetTopicResponse struct { XMLName xml.Name `xml:"GetTopicResponse"` Text string `xml:",chardata"` GetTopicResult struct { Text string `xml:",chardata"` Topic struct { Text string `xml:",chardata"` User string `xml:"User"` Name string `xml:"Name"` EndPoint struct { Text string `xml:",chardata"` EndpointAddress string `xml:"EndpointAddress"` EndpointArgs string `xml:"EndpointArgs"` EndpointTopic string `xml:"EndpointTopic"` HasStoredSecret string `xml:"HasStoredSecret"` Persistent string `xml:"Persistent"` } `xml:"EndPoint"` TopicArn string `xml:"TopicArn"` OpaqueData string `xml:"OpaqueData"` } `xml:"Topic"` } `xml:"GetTopicResult"` ResponseMetadata struct { Text string `xml:",chardata"` RequestId string `xml:"RequestId"` } `xml:"ResponseMetadata"` }
type ListTopicsResponse ¶
type ListTopicsResponse struct { XMLName xml.Name `xml:"ListTopicsResponse"` Text string `xml:",chardata"` Xmlns string `xml:"xmlns,attr"` ListTopicsResult struct { Text string `xml:",chardata"` Topics struct { Text string `xml:",chardata"` Member []struct { Text string `xml:",chardata"` User string `xml:"User"` Name string `xml:"Name"` EndPoint struct { Text string `xml:",chardata"` EndpointAddress string `xml:"EndpointAddress"` EndpointArgs string `xml:"EndpointArgs"` EndpointTopic string `xml:"EndpointTopic"` } `xml:"EndPoint"` TopicArn string `xml:"TopicArn"` } `xml:"member"` } `xml:"Topics"` } `xml:"ListTopicsResult"` ResponseMetadata struct { Text string `xml:",chardata"` RequestId string `xml:"RequestId"` } `xml:"ResponseMetadata"` }
type MetaDataFilter ¶
type NotificationConfiguration ¶
type NotificationConfiguration struct { XMLName xml.Name `xml:"NotificationConfiguration"` Text string `xml:",chardata"` Xmlns string `xml:"xmlns,attr"` TopicConfiguration []struct { Text string `xml:",chardata"` ID string `xml:"Id"` Topic string `xml:"Topic"` Event []string `xml:"Event"` Filter struct { Text string `xml:",chardata"` S3Key struct { Text string `xml:",chardata"` FilterRule []struct { Text string `xml:",chardata"` Name string `xml:"Name"` Value string `xml:"Value"` } `xml:"FilterRule"` } `xml:"S3Key"` S3Metadata struct { Text string `xml:",chardata"` FilterRule []struct { Text string `xml:",chardata"` Name string `xml:"Name"` Value string `xml:"Value"` } `xml:"FilterRule"` } `xml:"S3Metadata"` S3Tags struct { Text string `xml:",chardata"` FilterRule []struct { Text string `xml:",chardata"` Name string `xml:"Name"` Value string `xml:"Value"` } `xml:"FilterRule"` } `xml:"S3Tags"` } `xml:"Filter"` } `xml:"TopicConfiguration"` }
type RGWClient ¶
type RGWClient struct {
// contains filtered or unexported fields
}
func (*RGWClient) AppendObjV2 ¶
func (*RGWClient) AppendObjV4 ¶
func (*RGWClient) CreateNotification ¶
func (rgw *RGWClient) CreateNotification(topicArn, bucket, notificationId, prefix, suffix string, metaData MetaDataFilter, events []string) (*http.Response, error)
CreateNotification TODO Support tag and regular expression filtering
func (*RGWClient) CreateTopic ¶
func (*RGWClient) CreateUser ¶
func (*RGWClient) DeleteNotification ¶
func (*RGWClient) DeleteTopic ¶
func (*RGWClient) GetBucketInfo ¶
func (rgw *RGWClient) GetBucketInfo(uid, bucketName string) (*BucketInfo, error)
GetBucketInfo aka GetBucketQuota/GetBucketStats
func (*RGWClient) GetNotification ¶
func (rgw *RGWClient) GetNotification(bucket, notificationId string) (*NotificationConfiguration, error)
GetNotification TODO define a struct to hold response for easier use by the client
func (*RGWClient) GetTopic ¶
func (rgw *RGWClient) GetTopic(topicArn string) (*GetTopicResponse, error)
func (*RGWClient) GetUserBucketQuota ¶
func (*RGWClient) GetUserInfo ¶
GetUserInfo stats should be "True" or "False"
func (*RGWClient) ListTopics ¶
func (rgw *RGWClient) ListTopics() (*ListTopicsResponse, error)
func (*RGWClient) ModifyUser ¶
func (*RGWClient) PutBucketQuota ¶
func (*RGWClient) PutUserBucketQuota ¶
func (*RGWClient) PutUserQuota ¶
func (*RGWClient) RemoveCaps ¶
func (rgw *RGWClient) RemoveCaps(uid, caps string) (*[]Capability, error)
type UserConf ¶
type UserConf struct { Uid string `url:"uid,omitempty"` DisplayName string `url:"display-name,omitempty"` Email string `url:"email,omitempty"` KeyType string `url:"key-type,omitempty"` AccessKey string `url:"access-key,omitempty"` SecretKey string `url:"secret-key,omitempty"` UserCaps string `url:"user-caps,omitempty"` GenerateKey bool `url:"generate-key,omitempty"` Suspended int64 `url:"suspended,omitempty"` MaxBuckets int64 `url:"max-buckets,omitempty"` Tenant string `url:"tenant,omitempty"` System bool `url:"system,omitempty"` OpMask string `url:"op-mask,omitempty"` }
type UserInfo ¶
type UserInfo struct { Tenant string `json:"tenant"` UserID string `json:"user_id"` DisplayName string `json:"display_name"` Email string `json:"email"` Suspended int64 `json:"suspended"` MaxBuckets int64 `json:"max_buckets"` Subusers []Subuser `json:"subusers"` Keys []KeyClass `json:"keys"` SwiftKeys []KeyClass `json:"swift_keys"` Caps []Capability `json:"caps"` OpMask string `json:"op_mask"` System string `json:"system"` Admin string `json:"admin"` BucketQuota Quota `json:"bucket_quota"` UserQuota Quota `json:"user_quota"` TempURLKeys []string `json:"temp_url_keys"` Type string `json:"type"` MfaIDS []string `json:"mfa_ids"` Stats Stats `json:"stats"` }
Click to show internal directories.
Click to hide internal directories.