arango

package
v1.0.2 Latest Latest
Warning

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

Go to latest
Published: Apr 19, 2021 License: MIT Imports: 15 Imported by: 0

Documentation

Index

Constants

View Source
const CONTEXT_EXPIRED_TIME = 30

Variables

This section is empty.

Functions

func DeleteAccessKey

func DeleteAccessKey(key, bid, uid string) error

func GenerateRfToken

func GenerateRfToken(uid string) error

func GetFile

func GetFile(bid string, path, name string, callback func(reader io.Reader, metadata *FileMetadata) error) error

func GetFileByFid

func GetFileByFid(fid string, callback func(reader io.Reader, metadata *FileMetadata) error) error

func GetFileByFidIgnoreQueryMetadata

func GetFileByFidIgnoreQueryMetadata(fid string, callback func(reader io.Reader) error) error

func InitArangoDb

func InitArangoDb() error

func OTPConfirm

func OTPConfirm(uname string, otp string) error

func RemoveBucket

func RemoveBucket(uid string, bid string) error

func RemoveKeyPair

func RemoveKeyPair(public, bid, uid string) error

func RemoveOTP

func RemoveOTP(username string) error

func RemoveUser

func RemoveUser(uid string) error

func UpdateActive

func UpdateActive(uname string, isActive bool) error

func UpdateToken

func UpdateToken(uid string) (*string, *string, error)

Types

type AccessKey

type AccessKey struct {
	Key         string    `json:"key"`
	BucketId    string    `json:"bucket_id"`
	ExpiredDate time.Time `json:"expired_date"`
	Permissions []string  `json:"permissions"`
	Uid         string    `json:"uid"`
}

func FindAccessKeyByKey

func FindAccessKeyByKey(key string) (*AccessKey, error)

func FindAccessKeyByUidBid

func FindAccessKeyByUidBid(uid string, bid string, limit, offset int) ([]AccessKey, error)

func GenerateAccessKey

func GenerateAccessKey(bId string, uid string,
	perms []string, expiredDate time.Time) (*AccessKey, error)

type Bucket

type Bucket struct {
	Id     string `json:"id"`
	Uid    string `json:"uid"`
	Name   string `json:"name" binding:"required"`
	Region string `json:"region" binding:"required"`
	// DB Info
	CreatedAt time.Time `json:"created_at"`
}

func FindBucketById

func FindBucketById(bid string) (*Bucket, error)

func FindBucketByName

func FindBucketByName(bname string) (*Bucket, error)

func FindBucketByUid

func FindBucketByUid(uid string, limit int64, offset int64) ([]Bucket, error)

func InsertBucket

func InsertBucket(uid string, name string, region string) (*Bucket, error)

type Child

type Child struct {
	Id       string `json:"id"`
	Name     string `json:"name"`
	Type     string `json:"type"`
	IsHidden bool   `json:"is_hidden"`
}

type FileMetadata

type FileMetadata struct {
	Id       string `json:"id"`
	FileId   string `json:"-"`
	BucketId string `json:"bucket_id"`
	Path     string `json:"path"`
	Name     string `json:"name"`

	ContentType string `json:"content_type"`
	Size        int64  `json:"size"`
	IsHidden    bool   `json:"is_hidden"`

	IsDeleted   bool      `json:"-"`
	DeletedDate time.Time `json:"-"`

	UploadedDate time.Time `json:"-"`
	ExpiredDate  time.Time `json:"expired_date"`
}

func FindMetadataByBid

func FindMetadataByBid(bid string, limit int64, offset int64, showHidden bool) ([]FileMetadata, error)

func FindMetadataByFid

func FindMetadataByFid(fid string) (*FileMetadata, error)

func FindMetadataByFilename

func FindMetadataByFilename(path string, name string, bid string) (*FileMetadata, error)

func FindMetadataById

func FindMetadataById(fid string) (*FileMetadata, error)

func SaveFile

func SaveFile(reader io.Reader, bid string,
	path string, name string, isHidden bool,
	contentType string, size int64, ttl time.Duration) (*FileMetadata, error)

func ToggleHidden

func ToggleHidden(fullpath string, isHidden bool) (*FileMetadata, error)

type Folder

type Folder struct {
	Id       string  `json:"-"`
	OwnerId  string  `json:"owner_id"`
	Name     string  `json:"name"`
	Fullpath string  `json:"fullpath"`
	Children []Child `json:"children"`
}

func AppendChildToFolderById

func AppendChildToFolderById(toId string, child Child) (*Folder, error)

func AppendChildToFolderByPath

func AppendChildToFolderByPath(toPath string, child Child) (*Folder, error)

func FindFolderByFullpath

func FindFolderByFullpath(fullpath string) (*Folder, error)

func FindFolderById

func FindFolderById(id string) (*Folder, error)

func FindFolderByOwnerId

func FindFolderByOwnerId(oid string, limit int64, offset int64) ([]Folder, error)

func InsertBucketFolder

func InsertBucketFolder(bucketName string) (*Folder, error)

func InsertFile

func InsertFile(fid, fname, parentId string, isHidden bool) (*Folder, error)

func InsertFileByPath

func InsertFileByPath(fid, fname, parentPath string) (*Folder, error)

func InsertFolder

func InsertFolder(name, parentId, ownerId string) (*Folder, error)

func MoveFolderById

func MoveFolderById(targetId string, toId string) (*Folder, error)

func RemoveChildOfFolder

func RemoveChildOfFolder(id string, child Child) (*Folder, error)

func RemoveChildOfFolderByPath

func RemoveChildOfFolderByPath(path string, child Child) (*Folder, error)

func UpdateFullPath

func UpdateFullPath(id, newParentPath string) (*Folder, error)

func UpdateHiddenStatusOfFolderChild

func UpdateHiddenStatusOfFolderChild(path, fid, name string, hiddenStatus bool) (*Folder, error)

type KeyPair

type KeyPair struct {
	Public       string    `json:"public"`
	Private      string    `json:"private"`
	BucketId     string    `json:"bucket_id"`
	GeneratorUid string    `json:"generator_uid"`
	ExpiredDate  time.Time `json:"expired_date"`
	Permissions  []string  `json:"permissions"`
}

func FindKeyByUidBid

func FindKeyByUidBid(uid, bid string, limit, offset int) ([]KeyPair, error)

func FindKeyPairByPublic

func FindKeyPairByPublic(key string) (*KeyPair, error)

func GenerateKeyPair

func GenerateKeyPair(bid, uid string, exp time.Time, perms []string) (*KeyPair, error)

type Otp

type Otp struct {
	Username    string    `json:"username" binding:"required"`
	Otp         string    `json:"otp" binding:"required"`
	Email       string    `json:"email"`
	LastUpdated time.Time `json:"lastUpdated"`
	ExpiredTime time.Time `json:"expiredTime"`
	//DB Info
	CreatedAt time.Time `json:"created_at"`
}

func FindOTPByUsername

func FindOTPByUsername(uname string) (*Otp, error)

func GenerateOTP

func GenerateOTP(username string, email string) (*Otp, error)

type Permission

type Permission int
const (
	GetFileList Permission = iota
	GetFileListHidden
	Download
	DownloadHidden
	Upload
	MarkHidden
	DeleteFile
	RecoverFile
)

func (Permission) String

func (perm Permission) String() string

type RefreshToken

type RefreshToken struct {
	Uid         string    `json:"uid"`
	RfToken     string    `json:"rfToken"`
	ExpiredTime time.Time `json:"expiredTime"`
	//DB Info
	CreatedAt time.Time `json:"created_at"`
}

func FindRfTokenByUid

func FindRfTokenByUid(uid string) (*RefreshToken, error)

type User

type User struct {
	Id        string    `json:"id"`
	Firstname string    `json:"firstname" binding:"required"`
	Lastname  string    `json:"lastname" binding:"required"`
	Username  string    `json:"username" binding:"required"`
	Pass      string    `json:"password" binding:"required"`
	Email     string    `json:"email" binding:"required"`
	Dob       time.Time `json:"dob" binding:"required"`
	Company   string    `json:"company" binding:"required"`
	Gender    bool      `json:"gender" binding:"required"`
	IsActive  bool      `json:"is_active"`
	IsBanned  bool      `json:"is_banned"`
	// DB Info
	CreatedAt time.Time `json:"created_at"`
	UpdatedAt time.Time `json:"updated_at"`
}

func FindUserByEmail

func FindUserByEmail(mail string) (*User, error)

func FindUserById

func FindUserById(uid string) (*User, error)

func FindUserByUsername

func FindUserByUsername(uname string) (*User, error)

func SaveUser

func SaveUser(
	firstname string,
	lastname string,
	username string,
	password string,
	email string,
	dob time.Time,
	company string,
	gender bool,
) (*User, error)

func UpdateBanStatus

func UpdateBanStatus(uid string, isBan bool) (*User, error)

func UpdateUserData

func UpdateUserData(
	uid string,
	firstname string,
	lastname string,
	dob time.Time,
	company string,
	gender bool) (*User, error)

func UpdateUserPassword

func UpdateUserPassword(uid string, password string) (*User, error)

Jump to

Keyboard shortcuts

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