this repo has no description
1package db 2 3import "time" 4 5func (d *DB) AddPublicKey(did, name, key string) error { 6 query := `insert into public_keys (did, name, key) values (?, ?, ?)` 7 _, err := d.db.Exec(query, did, name, key) 8 return err 9} 10 11func (d *DB) RemovePublicKey(did string) error { 12 query := `delete from public_keys where did = ?` 13 _, err := d.db.Exec(query, did) 14 return err 15} 16 17type PublicKey struct { 18 Key string 19 Name string 20 DID string 21 Created time.Time 22} 23 24func (d *DB) GetAllPublicKeys() ([]PublicKey, error) { 25 var keys []PublicKey 26 27 rows, err := d.db.Query(`select key, name, did, created from public_keys`) 28 if err != nil { 29 return nil, err 30 } 31 defer rows.Close() 32 33 for rows.Next() { 34 var publicKey PublicKey 35 var createdAt *int64 36 if err := rows.Scan(&publicKey.Key, &publicKey.Name, &publicKey.DID, &createdAt); err != nil { 37 return nil, err 38 } 39 publicKey.Created = time.Unix(*createdAt, 0) 40 keys = append(keys, publicKey) 41 } 42 43 if err := rows.Err(); err != nil { 44 return nil, err 45 } 46 47 return keys, nil 48} 49 50func (d *DB) GetPublicKeys(did string) ([]PublicKey, error) { 51 var keys []PublicKey 52 53 rows, err := d.db.Query(`select did, key, name, created from public_keys where did = ?`, did) 54 if err != nil { 55 return nil, err 56 } 57 defer rows.Close() 58 59 for rows.Next() { 60 var publicKey PublicKey 61 var createdAt *int64 62 if err := rows.Scan(&publicKey.DID, &publicKey.Key, &publicKey.Name, &createdAt); err != nil { 63 return nil, err 64 } 65 publicKey.Created = time.Unix(*createdAt, 0) 66 keys = append(keys, publicKey) 67 } 68 69 if err := rows.Err(); err != nil { 70 return nil, err 71 } 72 73 return keys, nil 74}