repositories

package
v0.0.0-...-b2ed402 Latest Latest
Warning

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

Go to latest
Published: Apr 26, 2026 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

DI for database

Functions

func NewPool

func NewPool(lc fx.Lifecycle, cfg *server.Config) (*pgxpool.Pool, error)

DI constructor for PG connection pool

Types

type CreateTrackParams

type CreateTrackParams struct {
	Artist            string
	Title             string
	OriginalFilename  string
	OriginalObjectKey string
	OriginalSize      int64
	Status            TrackStatus
}

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 MarkTrackReadyParams

type MarkTrackReadyParams struct {
	ID             pgtype.UUID
	HlsPlaylistKey pgtype.Text
}

type NullTrackStatus

type NullTrackStatus struct {
	TrackStatus TrackStatus
	Valid       bool // Valid is true if TrackStatus is not NULL
}

func (*NullTrackStatus) Scan

func (ns *NullTrackStatus) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullTrackStatus) Value

func (ns NullTrackStatus) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type Queries

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

func New

func New(db DBTX) *Queries

func NewQueries

func NewQueries(db DBTX) *Queries

DI constructor for Queries (database interactor)

func (*Queries) CreateTrack

func (q *Queries) CreateTrack(ctx context.Context, arg CreateTrackParams) (Track, error)

func (*Queries) DeleteTrackByID

func (q *Queries) DeleteTrackByID(ctx context.Context, id pgtype.UUID) error

func (*Queries) GetTrackByID

func (q *Queries) GetTrackByID(ctx context.Context, id pgtype.UUID) (Track, error)

func (*Queries) ListReadyTracks

func (q *Queries) ListReadyTracks(ctx context.Context) ([]Track, error)

func (*Queries) ListTracks

func (q *Queries) ListTracks(ctx context.Context) ([]Track, error)

func (*Queries) ListTracksByStatus

func (q *Queries) ListTracksByStatus(ctx context.Context, dollar_1 TrackStatus) ([]Track, error)

func (*Queries) MarkTrackFailed

func (q *Queries) MarkTrackFailed(ctx context.Context, id pgtype.UUID) (Track, error)

func (*Queries) MarkTrackProcessing

func (q *Queries) MarkTrackProcessing(ctx context.Context, id pgtype.UUID) (Track, error)

func (*Queries) MarkTrackReady

func (q *Queries) MarkTrackReady(ctx context.Context, arg MarkTrackReadyParams) (Track, error)

func (*Queries) WithTx

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

type Track

type Track struct {
	ID                pgtype.UUID
	Artist            string
	Title             string
	OriginalFilename  string
	OriginalObjectKey string
	OriginalSize      int64
	Status            TrackStatus
	UploadedAt        pgtype.Timestamptz
	UpdatedAt         pgtype.Timestamptz
	HlsPlaylistKey    pgtype.Text
}

type TrackStatus

type TrackStatus string
const (
	TrackStatusPending    TrackStatus = "pending"
	TrackStatusProcessing TrackStatus = "processing"
	TrackStatusReady      TrackStatus = "ready"
	TrackStatusFailed     TrackStatus = "failed"
)

func (*TrackStatus) Scan

func (e *TrackStatus) Scan(src interface{}) error

Jump to

Keyboard shortcuts

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