1package db
2
3func (d *DB) AddDid(did string) error {
4 _, err := d.Exec(`insert or ignore into known_dids (did) values (?)`, did)
5 return err
6}
7
8func (d *DB) RemoveDid(did string) error {
9 _, err := d.Exec(`delete from known_dids where did = ?`, did)
10 return err
11}
12
13func (d *DB) GetAllDids() ([]string, error) {
14 var dids []string
15
16 rows, err := d.Query(`select did from known_dids`)
17 if err != nil {
18 return nil, err
19 }
20 defer rows.Close()
21
22 for rows.Next() {
23 var did string
24 if err := rows.Scan(&did); err != nil {
25 return nil, err
26 }
27 dids = append(dids, did)
28 }
29
30 if err := rows.Err(); err != nil {
31 return nil, err
32 }
33
34 return dids, nil
35}
36
37func (d *DB) HasKnownDids() bool {
38 var count int
39 err := d.QueryRow(`select count(*) from known_dids`).Scan(&count)
40 if err != nil {
41 return false
42 }
43 return count > 0
44}