Add GetPkg endpoint to API
This commit is contained in:
@@ -2,6 +2,7 @@ package db
|
||||
|
||||
import (
|
||||
"github.com/genjidb/genji"
|
||||
"github.com/genjidb/genji/document"
|
||||
"github.com/genjidb/genji/types"
|
||||
)
|
||||
|
||||
@@ -81,6 +82,18 @@ func GetPkgs(db *genji.DB, where string, args ...any) (*genji.Result, error) {
|
||||
return stream, nil
|
||||
}
|
||||
|
||||
// GetPkg returns a single package that match the where conditions
|
||||
func GetPkg(db *genji.DB, where string, args ...any) (*Package, error) {
|
||||
doc, err := db.QueryDocument("SELECT * FROM pkgs WHERE "+where+"LIMIT 1", args...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
out := &Package{}
|
||||
err = document.ScanDocument(doc, out)
|
||||
return out, err
|
||||
}
|
||||
|
||||
// DeletePkgs deletes all packages matching the where conditions
|
||||
func DeletePkgs(db *genji.DB, where string, args ...any) error {
|
||||
return db.Exec("DELETE FROM pkgs WHERE "+where, args...)
|
||||
|
||||
Reference in New Issue
Block a user