Documentation
¶
Index ¶
- Constants
- func Migrate(db *pgxpool.Pool) error
- func New(user, pass, host, port, dbName, sslMode string, minConns, maxConns int32) (*pgxpool.Pool, error)
- type History
- func (h History) All() (model.Histories, error)
- func (h History) ByShortURLID(ID uuid.UUID) (model.Histories, error)
- func (h History) ByShortURLIDAndDates(ID uuid.UUID, from, to int64) (model.Histories, error)
- func (h History) Create(m *model.History) error
- func (h History) Histories(rows pgx.Rows) (model.Histories, error)
- type Permission
- type ShortURL
- func (s ShortURL) All(limit, offset int) (model.ShortURLs, error)
- func (s ShortURL) ByShort(short string) (model.ShortURL, error)
- func (s ShortURL) Create(m *model.ShortURL) error
- func (s ShortURL) Delete(ID uuid.UUID) error
- func (s ShortURL) IncrementTimes(ID uuid.UUID) error
- func (s ShortURL) Update(m *model.ShortURL) error
- type User
Constants ¶
View Source
const ( MinConns = 3 MaxConns = 100 )
View Source
const ( InitialPassword = "secret" UserID = "e35c3d88-d5b5-4f64-81a1-275a8e560f82" )
View Source
const (
AppName = "go-short-url"
)
Variables ¶
This section is empty.
Functions ¶
Types ¶
type History ¶
type History struct {
// contains filtered or unexported fields
}
func NewHistory ¶
func (History) ByShortURLIDAndDates ¶
type Permission ¶
type Permission struct {
// contains filtered or unexported fields
}
func NewPermission ¶
func NewPermission(db *pgxpool.Pool) Permission
func (Permission) All ¶
func (p Permission) All() (model.Permissions, error)
func (Permission) ByUserID ¶
func (p Permission) ByUserID(ID uuid.UUID) (model.Permission, error)
func (Permission) Create ¶
func (p Permission) Create(m *model.Permission) error
func (Permission) Update ¶
func (p Permission) Update(m *model.Permission) error
type ShortURL ¶
type ShortURL struct {
// contains filtered or unexported fields
}
func NewShortURL ¶
func (ShortURL) IncrementTimes ¶
IncrementTimes never will have a race condition b/c postgres has a `READ COMMITTED` isolation level by default. @see https://www.postgresql.org/docs/current/transaction-iso.html#XACT-READ-COMMITTED
Click to show internal directories.
Click to hide internal directories.