summaryrefslogtreecommitdiffstats
path: root/doc/mapper spec.md
blob: f9b28fe949b8fae3539dca80c2cd1def0ba7f7b2 (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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
itemmapper

find(int $feedId, $userId)



findAll()

request: get just starred items of a user 
	SELECT * FROM items 
		WHERE user_id = ? AND status = ?
		(AND id < ? LIMIT ?)
		(AND items.lastmodified >= ?)

request: get all items of a user (unread and read) 
	SELECT * FROM items 
		WHERE user_id = ? AND status = ?
		(AND id < ? LIMIT ?) 
		(AND items.lastmodified >= ?)

request: get all items of a folder of a user (unread and read)
	SELECT * FROM items 
		JOIN feeds
			ON feed.id = feed_id
		WHERE user_id = ? AND status = ? AND feed.folder_id = ?
		(AND id < ? LIMIT ?)
		(AND items.lastmodified >= ?)


request: get all items of a feed of a user (unread and read)
	SELECT * FROM items 
		WHERE user_id = ? AND status = ? AND feed_id = ?
		(AND id < ? LIMIT ?)
		(AND items.lastmodified >= ?)


all requests: can be specified using an (offset (id), limit) or (updatedSince (timestamp))

foldermapper

find($feedId, $userId)
findAllFromUser($userId)

feedmapper

find($feedId, $userId)
findAll()
findAllFromUser($userId)
getStarredCount($userId)