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