Documentation
¶
Index ¶
- type PostgresWrapper
- func (p *PostgresWrapper) AddSegmentInUsersHistory(ctx context.Context, tx *sql.Tx, userID int, segments []models.SegmentAddDB, ...) error
- func (p *PostgresWrapper) AddSegmentsRemoveDateInUserHistory(ctx context.Context, tx *sql.Tx, userID int, segments []models.SegmentDeleteDB, ...) error
- func (p *PostgresWrapper) AddSegmentsToUser(ctx context.Context, tx *sql.Tx, userID int, segments []models.SegmentAddDB) (err error)
- func (p *PostgresWrapper) ChangeUsersSegments(ctx context.Context, us models.UserSegmentsDB) error
- func (p *PostgresWrapper) DeleteSegment(ctx context.Context, slug string) error
- func (p *PostgresWrapper) DeleteUserSegments(ctx context.Context, tx *sql.Tx, userID int, segments []models.SegmentDeleteDB) error
- func (p *PostgresWrapper) GetUsersHistory(ctx context.Context, userID int, from, to time.Time) (models.UserSegmentsHistoryDB, error)
- func (p *PostgresWrapper) GetUsersSegments(ctx context.Context, userID int) (models.SegmentsDB, error)
- func (p *PostgresWrapper) InsertSegment(ctx context.Context, slug string) error
- func (p *PostgresWrapper) IsSegmentDeleted(ctx context.Context, slug string) (bool, error)
- func (p *PostgresWrapper) IsSegmentExists(ctx context.Context, slug string) (bool, error)
- func (p *PostgresWrapper) SelectSegmentBySlug(ctx context.Context, slug string) (models.SegmentDB, error)
- func (p *PostgresWrapper) SelectSegments(ctx context.Context) (models.SegmentsDB, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type PostgresWrapper ¶
type PostgresWrapper struct {
// contains filtered or unexported fields
}
PostgresWrapper is a wrapper for the database
func (*PostgresWrapper) AddSegmentInUsersHistory ¶
func (p *PostgresWrapper) AddSegmentInUsersHistory(ctx context.Context, tx *sql.Tx, userID int, segments []models.SegmentAddDB, time time.Time) error
AddSegmentInUsersHistory adds segments to user history using transaction tx
func (*PostgresWrapper) AddSegmentsRemoveDateInUserHistory ¶
func (p *PostgresWrapper) AddSegmentsRemoveDateInUserHistory(ctx context.Context, tx *sql.Tx, userID int, segments []models.SegmentDeleteDB, time time.Time) error
AddSegmentsRemoveDateInUserHistory sets date_removed to time for segments in user history using transaction tx
func (*PostgresWrapper) AddSegmentsToUser ¶
func (p *PostgresWrapper) AddSegmentsToUser(ctx context.Context, tx *sql.Tx, userID int, segments []models.SegmentAddDB) (err error)
AddSegmentsToUser add segments to user using transaction tx
func (*PostgresWrapper) ChangeUsersSegments ¶
func (p *PostgresWrapper) ChangeUsersSegments(ctx context.Context, us models.UserSegmentsDB) error
ChangeUsersSegments changes the segments of a user It calls addSegmentsToUser and deleteUserSegments and stores the segments addition and deletion history in one transaction
func (*PostgresWrapper) DeleteSegment ¶
func (p *PostgresWrapper) DeleteSegment(ctx context.Context, slug string) error
DeleteSegment deletes segment with given slug from the database
func (*PostgresWrapper) DeleteUserSegments ¶
func (p *PostgresWrapper) DeleteUserSegments(ctx context.Context, tx *sql.Tx, userID int, segments []models.SegmentDeleteDB) error
DeleteUserSegments deletes segments from user using transaction tx
func (*PostgresWrapper) GetUsersHistory ¶
func (p *PostgresWrapper) GetUsersHistory(ctx context.Context, userID int, from, to time.Time) (models.UserSegmentsHistoryDB, error)
GetUsersHistory returns user history for given period
func (*PostgresWrapper) GetUsersSegments ¶
func (p *PostgresWrapper) GetUsersSegments(ctx context.Context, userID int) (models.SegmentsDB, error)
GetUsersSegments returns a list of all not expired segments of a user from the database
func (*PostgresWrapper) InsertSegment ¶
func (p *PostgresWrapper) InsertSegment(ctx context.Context, slug string) error
InsertSegment inserts segment with given slug into the database
func (*PostgresWrapper) IsSegmentDeleted ¶
IsSegmentDeleted checks if segment with given slug is deleted
func (*PostgresWrapper) IsSegmentExists ¶
IsSegmentExists checks if segment with given slug exists in the database Returns true if segment exists, false otherwise
func (*PostgresWrapper) SelectSegmentBySlug ¶
func (p *PostgresWrapper) SelectSegmentBySlug(ctx context.Context, slug string) (models.SegmentDB, error)
SelectSegmentBySlug returns a segment with given slug from the database
func (*PostgresWrapper) SelectSegments ¶
func (p *PostgresWrapper) SelectSegments(ctx context.Context) (models.SegmentsDB, error)
SelectSegments returns a list of all segments from the database