s3

package
v0.0.0-...-e6fd437 Latest Latest
Warning

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

Go to latest
Published: Feb 4, 2024 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const DELIMITER = "/"

Variables

This section is empty.

Functions

func DeleteVolCors

func DeleteVolCors(c *gin.Context)

func DownloadSignedUrl

func DownloadSignedUrl(c *gin.Context)

func GetExpire

func GetExpire(expire int64) time.Duration

func GetS3Client

func GetS3Client(c *gin.Context, owner, volName string) (*s3.S3, bool)

func GetVolCors

func GetVolCors(c *gin.Context)

func ListFile

func ListFile(c *gin.Context)

func MakeDir

func MakeDir(c *gin.Context)

func MultiUploadComplete

func MultiUploadComplete(c *gin.Context)

func MultiUploadSignedUrl

func MultiUploadSignedUrl(c *gin.Context)

func NewClient

func NewClient(cluster *model.Cluster, owner *user.InfoOutput) *s3.S3

func PutVolCors

func PutVolCors(c *gin.Context)

func UploadSignedUrl

func UploadSignedUrl(c *gin.Context)

Types

type DeleteVolCorsInput

type DeleteVolCorsInput struct {
	Vol  string `form:"vol" binding:"required"`
	User string `form:"user" binding:"required"`
}

type DownloadSignedUrlInput

type DownloadSignedUrlInput struct {
	Vol      string `form:"vol" binding:"required"`
	User     string `form:"user"`
	FileName string `form:"file_name" binding:"required"`
	Prefix   string `form:"prefix"`
}

type DownloadSignedUrlOutput

type DownloadSignedUrlOutput struct {
	SignedUrl string `json:"signed_url"`
	Expire    int64  `json:"expire"`
}

type FileV2

type FileV2 struct {
	Name     string             `json:"name"`
	Hash     *string            `json:"hash"`
	Path     string             `json:"path"`
	MimeType *string            `json:"mime_type"`
	Endpoint string             `json:"endpoint"`
	Bucket   string             `json:"bucket"`
	FileSize *int64             `json:"file_size"`
	PutTime  int64              `json:"put_time"`
	Meta     map[string]*string `json:"x-amz-meta,omitempty"`
}

type GetVolCorsInput

type GetVolCorsInput struct {
	Vol  string `form:"vol" binding:"required"`
	User string `form:"user" binding:"required"`
}

type ListFileInput

type ListFileInput struct {
	Vol       string `form:"vol" binding:"required"`
	User      string `form:"user"`
	Prefix    string `form:"prefix"`
	Delimiter string `form:"delimiter"`
	Marker    string `form:"marker"`
	Limit     int64  `form:"limit"`
}

type ListFileOutput

type ListFileOutput struct {
	Marker    string    `json:"marker,omitempty"`
	Contents  []*FileV2 `json:"contents"`
	Prefixes  []string  `json:"common_prefixes"`
	Directory *FileV2   `json:"directory"`
}

type MakeDirInput

type MakeDirInput struct {
	Vol     string `json:"vol" binding:"required"`
	User    string `json:"user"`
	DirName string `json:"dir_name" binding:"required"`
	Prefix  string `json:"prefix"`
}

type MultiUploadCompleteInput

type MultiUploadCompleteInput struct {
	Vol      string `json:"vol" binding:"required"`
	User     string `json:"user"`
	FileName string `json:"file_name" binding:"required"`
	Prefix   string `json:"prefix"`
	UploadId string `json:"upload_id"`
}

type MultiUploadPart

type MultiUploadPart struct {
	UploadId   string `json:"upload_id"`
	PartNumber int64  `json:"part_number"`
	Url        string `json:"url"`
	Expire     int64  `json:"expire"`
}

type MultiUploadSignedUrlInput

type MultiUploadSignedUrlInput struct {
	Vol         string `form:"vol" binding:"required"`
	User        string `form:"user"`
	FileName    string `form:"file_name" binding:"required"`
	Prefix      string `form:"prefix"`
	ContentType string `form:"content_type"`
	PartNumber  int64  `form:"part_number"`
}

type PutVolCorsInput

type PutVolCorsInput struct {
	Vol   string         `json:"vol" binding:"required"`
	User  string         `json:"user" binding:"required"`
	Rules []*s3.CORSRule `json:"rules" binding:"required,gte=1"`
}

Jump to

Keyboard shortcuts

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