this repo has no description
1package db 2 3type Repo struct { 4 Did string 5 Name string 6 Knot string 7 Created *int64 8} 9 10func (d *DB) GetAllReposByDid(did string) ([]Repo, error) { 11 var repos []Repo 12 13 rows, err := d.db.Query(`select did, name, knot, created from repos where did = ?`, did) 14 if err != nil { 15 return nil, err 16 } 17 defer rows.Close() 18 19 for rows.Next() { 20 var repo Repo 21 var createdAt *int64 22 if err := rows.Scan(&repo.Did, &repo.Name, &repo.Knot, &createdAt); err != nil { 23 return nil, err 24 } 25 repo.Created = createdAt 26 repos = append(repos, repo) 27 } 28 29 if err := rows.Err(); err != nil { 30 return nil, err 31 } 32 33 return repos, nil 34} 35 36func (d *DB) GetRepo(did, name string) (*Repo, error) { 37 var repo Repo 38 39 row := d.db.QueryRow(`select did, name, knot, created from repos where did = ? and name = ?`, did, name) 40 var createdAt *int64 41 if err := row.Scan(&repo.Did, &repo.Name, &repo.Knot, &createdAt); err != nil { 42 return nil, err 43 } 44 repo.Created = createdAt 45 46 return &repo, nil 47} 48 49func (d *DB) AddRepo(repo *Repo) error { 50 _, err := d.db.Exec(`insert into repos (did, name, knot) values (?, ?, ?)`, repo.Did, repo.Name, repo.Knot) 51 return err 52} 53 54func (d *DB) RemoveRepo(did, name, knot string) error { 55 _, err := d.db.Exec(`delete from repos where did = ? and name = ? and knot = ?`, did, name, knot) 56 return err 57}