Documentation
¶
Overview ¶
Package db implements model.db interface. It contains everything that needed by API to interact with database.
Index ¶
- type Config
- type Handler
- func (h *Handler) EditAd(ad *model.AdItem) (int64, error)
- func (h *Handler) EditUser(user *model.User) (int64, error)
- func (h *Handler) GetAd(adID int64) (*model.AdItem, error)
- func (h *Handler) GetAds(sp *model.SearchParams) ([]*model.AdItem, error)
- func (h *Handler) GetAdsOfUser(userID int64) ([]*model.AdItem, error)
- func (h *Handler) GetUserWithEmail(email string) (*model.User, error)
- func (h *Handler) GetUserWithID(userID int64) (*model.User, error)
- func (h *Handler) NewAd(ad *model.AdItem) (int64, error)
- func (h *Handler) NewUser(user *model.User) (int64, error)
- func (h *Handler) RemoveAd(adID int64) (int64, error)
- func (h *Handler) RemoveUser(userID int64) (int64, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct { DBAddress string `json:"DBAddress,"` MaxOpenConns int `json:"MaxOpenConns,int"` }
Config is stuct for database configuration.
type Handler ¶
type Handler struct { DB *sqlx.DB CreateUser *sqlx.NamedStmt CreateAd *sqlx.NamedStmt UpdateUser *sqlx.NamedStmt UpdateAd *sqlx.NamedStmt ReadAds *sqlx.NamedStmt SearchAds *sqlx.NamedStmt ReadAdsOfUser *sqlx.Stmt ReadAd *sqlx.Stmt ReadUserWithID *sqlx.Stmt ReadUserWithEmail *sqlx.Stmt DeleteUser *sqlx.Stmt DeleteAd *sqlx.Stmt }
Handler is used to store database connection and implements database interface needed by API.
func InitConnDB ¶
InitConnDB initiates connection to database and prepare statements for interaction with database.
func (*Handler) EditAd ¶
EditAd updates information about ad with ID provided from function argument.
func (*Handler) GetAds ¶
GetAds returns slice of model.AdItem from database based on incoming filters.
func (*Handler) GetAdsOfUser ¶
GetAdsOfUser returns slice of model.AdItem with such user from database.
func (*Handler) GetUserWithEmail ¶
GetUserWithEmail returns model.User struct with such email.
func (*Handler) GetUserWithID ¶
GetUserWithID returns model.User struct with such ID.