Documentation ¶
Overview ¶
Package objects contains functionality for working with Object Storage object resources. An object is a resource that represents and contains data - such as documents, images, and so on. You can also store custom metadata with an object.
Index ¶
- func ExtractNames(page pagination.Page) ([]string, error)
- func List(c *gophercloud.ServiceClient, containerName string, opts ListOptsBuilder) pagination.Pager
- type CopyOpts
- type CopyOptsBuilder
- type CopyResult
- type CreateOpts
- type CreateOptsBuilder
- type CreateResult
- type DeleteOpts
- type DeleteOptsBuilder
- type DeleteResult
- type DownloadOpts
- type DownloadOptsBuilder
- type DownloadResult
- type GetOpts
- type GetOptsBuilder
- type GetResult
- type ListOpts
- type ListOptsBuilder
- type Object
- type ObjectPage
- type UpdateOpts
- type UpdateOptsBuilder
- type UpdateResult
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ExtractNames ¶
func ExtractNames(page pagination.Page) ([]string, error)
ExtractNames is a function that takes a page of objects and returns only their names.
func List ¶
func List(c *gophercloud.ServiceClient, containerName string, opts ListOptsBuilder) pagination.Pager
List is a function that retrieves all objects in a container. It also returns the details for the container. To extract only the object information or names, pass the ListResult response to the ExtractInfo or ExtractNames function, respectively.
Types ¶
type CopyOpts ¶
type CopyOpts struct { Metadata map[string]string ContentDisposition string `h:"Content-Disposition"` ContentEncoding string `h:"Content-Encoding"` ContentType string `h:"Content-Type"` Destination string `h:"Destination,required"` }
CopyOpts is a structure that holds parameters for copying one object to another.
type CopyOptsBuilder ¶
CopyOptsBuilder allows extensions to add additional parameters to the Copy request.
type CopyResult ¶
type CopyResult struct {
gophercloud.HeaderResult
}
CopyResult represents the result of a copy operation.
func Copy ¶
func Copy(c *gophercloud.ServiceClient, containerName, objectName string, opts CopyOptsBuilder) CopyResult
Copy is a function that copies one object to another.
type CreateOpts ¶
type CreateOpts struct { Metadata map[string]string ContentDisposition string `h:"Content-Disposition"` ContentEncoding string `h:"Content-Encoding"` ContentLength int64 `h:"Content-Length"` ContentType string `h:"Content-Type"` CopyFrom string `h:"X-Copy-From"` DeleteAfter int `h:"X-Delete-After"` DeleteAt int `h:"X-Delete-At"` DetectContentType string `h:"X-Detect-Content-Type"` ETag string `h:"ETag"` IfNoneMatch string `h:"If-None-Match"` ObjectManifest string `h:"X-Object-Manifest"` TransferEncoding string `h:"Transfer-Encoding"` Expires string `q:"expires"` MultipartManifest string `q:"multiple-manifest"` Signature string `q:"signature"` }
CreateOpts is a structure that holds parameters for creating an object.
func (CreateOpts) ToObjectCreateParams ¶
func (opts CreateOpts) ToObjectCreateParams() (map[string]string, string, error)
ToObjectCreateParams formats a CreateOpts into a query string and map of headers.
type CreateOptsBuilder ¶
CreateOptsBuilder allows extensions to add additional parameters to the Create request.
type CreateResult ¶
type CreateResult struct {
gophercloud.HeaderResult
}
CreateResult represents the result of a create operation.
func Create ¶
func Create(c *gophercloud.ServiceClient, containerName, objectName string, content io.Reader, opts CreateOptsBuilder) CreateResult
Create is a function that creates a new object or replaces an existing object.
type DeleteOpts ¶
type DeleteOpts struct {
MultipartManifest string `q:"multipart-manifest"`
}
DeleteOpts is a structure that holds parameters for deleting an object.
func (DeleteOpts) ToObjectDeleteQuery ¶
func (opts DeleteOpts) ToObjectDeleteQuery() (string, error)
ToObjectDeleteQuery formats a DeleteOpts into a query string.
type DeleteOptsBuilder ¶
DeleteOptsBuilder allows extensions to add additional parameters to the Delete request.
type DeleteResult ¶
type DeleteResult struct {
gophercloud.HeaderResult
}
DeleteResult represents the result of a delete operation.
func Delete ¶
func Delete(c *gophercloud.ServiceClient, containerName, objectName string, opts DeleteOptsBuilder) DeleteResult
Delete is a function that deletes an object.
type DownloadOpts ¶
type DownloadOpts struct { IfMatch string `h:"If-Match"` IfModifiedSince time.Time `h:"If-Modified-Since"` IfNoneMatch string `h:"If-None-Match"` IfUnmodifiedSince time.Time `h:"If-Unmodified-Since"` Range string `h:"Range"` Expires string `q:"expires"` MultipartManifest string `q:"multipart-manifest"` Signature string `q:"signature"` }
DownloadOpts is a structure that holds parameters for downloading an object.
func (DownloadOpts) ToObjectDownloadParams ¶
func (opts DownloadOpts) ToObjectDownloadParams() (map[string]string, string, error)
ToObjectDownloadParams formats a DownloadOpts into a query string and map of headers.
type DownloadOptsBuilder ¶
DownloadOptsBuilder allows extensions to add additional parameters to the Download request.
type DownloadResult ¶
type DownloadResult struct { gophercloud.HeaderResult Body io.ReadCloser }
DownloadResult is a *http.Response that is returned from a call to the Download function.
func Download ¶
func Download(c *gophercloud.ServiceClient, containerName, objectName string, opts DownloadOptsBuilder) DownloadResult
Download is a function that retrieves the content and metadata for an object. To extract just the content, pass the DownloadResult response to the ExtractContent function.
func (DownloadResult) ExtractContent ¶
func (dr DownloadResult) ExtractContent() ([]byte, error)
ExtractContent is a function that takes a DownloadResult's io.Reader body and reads all available data into a slice of bytes. Please be aware that due the nature of io.Reader is forward-only - meaning that it can only be read once and not rewound. You can recreate a reader from the output of this function by using bytes.NewReader(downloadBytes)
type GetOpts ¶
GetOpts is a structure that holds parameters for getting an object's metadata.
func (GetOpts) ToObjectGetQuery ¶
ToObjectGetQuery formats a GetOpts into a query string.
type GetOptsBuilder ¶
GetOptsBuilder allows extensions to add additional parameters to the Get request.
type GetResult ¶
type GetResult struct {
gophercloud.HeaderResult
}
GetResult is a *http.Response that is returned from a call to the Get function.
func Get ¶
func Get(c *gophercloud.ServiceClient, containerName, objectName string, opts GetOptsBuilder) GetResult
Get is a function that retrieves the metadata of an object. To extract just the custom metadata, pass the GetResult response to the ExtractMetadata function.
type ListOpts ¶
type ListOpts struct { // Full is a true/false value that represents the amount of object information // returned. If Full is set to true, then the content-type, number of bytes, hash // date last modified, and name are returned. If set to false or not set, then // only the object names are returned. Full bool Limit int `q:"limit"` Marker string `q:"marker"` EndMarker string `q:"end_marker"` Format string `q:"format"` Prefix string `q:"prefix"` Delimiter string `q:"delimiter"` Path string `q:"path"` }
ListOpts is a structure that holds parameters for listing objects.
type ListOptsBuilder ¶
ListOptsBuilder allows extensions to add additional parameters to the List request.
type Object ¶
type Object struct { // Bytes is the total number of bytes that comprise the object. Bytes int64 `json:"bytes" mapstructure:"bytes"` // ContentType is the content type of the object. ContentType string `json:"content_type" mapstructure:"content_type"` // Hash represents the MD5 checksum value of the object's content. Hash string `json:"hash" mapstructure:"hash"` // LastModified is the RFC3339Milli time the object was last modified, represented // as a string. For any given object (obj), this value may be parsed to a time.Time: // lastModified, err := time.Parse(gophercloud.RFC3339Milli, obj.LastModified) LastModified string `json:"last_modified" mapstructure:"last_modified"` // Name is the unique name for the object. Name string `json:"name" mapstructure:"name"` }
Object is a structure that holds information related to a storage object.
func ExtractInfo ¶
func ExtractInfo(page pagination.Page) ([]Object, error)
ExtractInfo is a function that takes a page of objects and returns their full information.
type ObjectPage ¶
type ObjectPage struct {
pagination.MarkerPageBase
}
ObjectPage is a single page of objects that is returned from a call to the List function.
func (ObjectPage) IsEmpty ¶
func (r ObjectPage) IsEmpty() (bool, error)
IsEmpty returns true if a ListResult contains no object names.
func (ObjectPage) LastMarker ¶
func (r ObjectPage) LastMarker() (string, error)
LastMarker returns the last object name in a ListResult.
type UpdateOpts ¶
type UpdateOpts struct { Metadata map[string]string ContentDisposition string `h:"Content-Disposition"` ContentEncoding string `h:"Content-Encoding"` ContentType string `h:"Content-Type"` DeleteAfter int `h:"X-Delete-After"` DeleteAt int `h:"X-Delete-At"` DetectContentType bool `h:"X-Detect-Content-Type"` }
UpdateOpts is a structure that holds parameters for updating, creating, or deleting an object's metadata.
func (UpdateOpts) ToObjectUpdateMap ¶
func (opts UpdateOpts) ToObjectUpdateMap() (map[string]string, error)
ToObjectUpdateMap formats a UpdateOpts into a map of headers.
type UpdateOptsBuilder ¶
UpdateOptsBuilder allows extensions to add additional parameters to the Update request.
type UpdateResult ¶
type UpdateResult struct {
gophercloud.HeaderResult
}
UpdateResult represents the result of an update operation.
func Update ¶
func Update(c *gophercloud.ServiceClient, containerName, objectName string, opts UpdateOptsBuilder) UpdateResult
Update is a function that creates, updates, or deletes an object's metadata.