database

package
v0.0.0-...-92dca13 Latest Latest
Warning

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

Go to latest
Published: Sep 7, 2024 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DBTX

type DBTX interface {
	Exec(context.Context, string, ...interface{}) (pgconn.CommandTag, error)
	Query(context.Context, string, ...interface{}) (pgx.Rows, error)
	QueryRow(context.Context, string, ...interface{}) pgx.Row
}

type File

type File struct {
	ID          string         `json:"id"`
	Name        string         `json:"name"`
	Path        string         `json:"path"`
	Url         sql.NullString `json:"url"`
	Size        int64          `json:"size"`
	ContentType sql.NullString `json:"content_type"`
	OwnerID     string         `json:"owner_id"`
	CreatedAt   time.Time      `json:"created_at"`
	UpdatedAt   time.Time      `json:"updated_at"`
}

type Permission

type Permission struct {
	ID        string       `json:"id"`
	FileID    string       `json:"file_id"`
	UserID    string       `json:"user_id"`
	CanRead   sql.NullBool `json:"can_read"`
	CanWrite  sql.NullBool `json:"can_write"`
	CanDelete sql.NullBool `json:"can_delete"`
	CreatedAt time.Time    `json:"created_at"`
	UpdatedAt time.Time    `json:"updated_at"`
}

type Queries

type Queries struct {
	// contains filtered or unexported fields
}

func New

func New(db DBTX) *Queries

func (*Queries) CreateFile

func (q *Queries) CreateFile(ctx context.Context) error

func (*Queries) CreatePermission

func (q *Queries) CreatePermission(ctx context.Context) error

func (*Queries) CreateUser

func (q *Queries) CreateUser(ctx context.Context) error

func (*Queries) DeleteFile

func (q *Queries) DeleteFile(ctx context.Context) error

func (*Queries) DeletePermission

func (q *Queries) DeletePermission(ctx context.Context) error

func (*Queries) DeleteUser

func (q *Queries) DeleteUser(ctx context.Context) error

func (*Queries) GetFileByID

func (q *Queries) GetFileByID(ctx context.Context) (File, error)

func (*Queries) GetPermissionsByFileID

func (q *Queries) GetPermissionsByFileID(ctx context.Context) ([]Permission, error)

func (*Queries) GetUserByEmail

func (q *Queries) GetUserByEmail(ctx context.Context) (User, error)

func (*Queries) GetUserByID

func (q *Queries) GetUserByID(ctx context.Context) (User, error)

func (*Queries) GetUserByUsername

func (q *Queries) GetUserByUsername(ctx context.Context) (User, error)

func (*Queries) ListFilesByOwner

func (q *Queries) ListFilesByOwner(ctx context.Context) ([]File, error)

func (*Queries) UpdateFile

func (q *Queries) UpdateFile(ctx context.Context) error

func (*Queries) UpdatePermission

func (q *Queries) UpdatePermission(ctx context.Context) error

func (*Queries) UpdateUser

func (q *Queries) UpdateUser(ctx context.Context) error

func (*Queries) WithTx

func (q *Queries) WithTx(tx pgx.Tx) *Queries

type User

type User struct {
	ID           string    `json:"id"`
	Username     string    `json:"username"`
	Email        string    `json:"email"`
	PasswordHash string    `json:"password_hash"`
	CreatedAt    time.Time `json:"created_at"`
	UpdatedAt    time.Time `json:"updated_at"`
}

Jump to

Keyboard shortcuts

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