aboutsummaryrefslogtreecommitdiff
path: root/store.go
blob: d09460e85d357c9db822fc4427e82b92c4648d59 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
package sws

type Store interface {
	SiteStore
	UserStore
	HitSaver
	HitCursor(func(*Hit) error) error
}
type HitSaver interface {
	SaveHit(*Hit) error
}
type SiteStore interface {
	SiteGetter
	GetHits(Site, map[string]interface{}) ([]*Hit, error)
	GetSites() ([]*Site, error)
	SaveSite(*Site) error
}
type SiteGetter interface {
	GetSiteByID(int) (*Site, error)
}
type HitStore interface {
	HitSaver
	GetHits(Site, map[string]interface{}) ([]*Hit, error)
	HitCursor(func(*Hit) error) error
}
type CounterStore interface {
	SiteGetter
	HitSaver
}
type UserStore interface {
	GetUserByID(int) (*User, error)
	GetUserByEmail(string) (*User, error)
	SaveUser(*User) error
}