Changed DeleteScannedAssets to work correct and added db tag

This commit is contained in:
David Allen 2024-09-18 14:46:52 -06:00 committed by David Allen
parent 04e1fb26c9
commit 7515307cce
Signed by: towk
GPG key ID: 0430CDBE22619155
2 changed files with 11 additions and 11 deletions

View file

@ -62,8 +62,8 @@ func InsertScannedAssets(path string, assets ...magellan.RemoteAsset) error {
return nil
}
func DeleteScannedAssets(path string, results ...magellan.RemoteAsset) error {
if results == nil {
func DeleteScannedAssets(path string, assets ...magellan.RemoteAsset) error {
if assets == nil {
return fmt.Errorf("no assets found")
}
db, err := sqlx.Open("sqlite3", path)
@ -71,11 +71,11 @@ func DeleteScannedAssets(path string, results ...magellan.RemoteAsset) error {
return fmt.Errorf("failed to open database: %v", err)
}
tx := db.MustBegin()
for _, state := range results {
sql := fmt.Sprintf(`DELETE FROM %s WHERE host = :host, port = :port;`, TABLE_NAME)
_, err := tx.NamedExec(sql, &state)
for _, asset := range assets {
sql := fmt.Sprintf(`DELETE FROM %s WHERE host=:host AND port=:port;`, TABLE_NAME)
_, err := tx.NamedExec(sql, &asset)
if err != nil {
fmt.Printf("failed to execute transaction: %v\n", err)
fmt.Printf("failed to execute DELETE transaction: %v\n", err)
}
}

View file

@ -16,11 +16,11 @@ import (
)
type RemoteAsset struct {
Host string `json:"host"`
Port int `json:"port"`
Protocol string `json:"protocol"`
State bool `json:"state"`
Timestamp time.Time `json:"timestamp"`
Host string `db:"host" json:"host"`
Port int `db:"port" json:"port"`
Protocol string `db:"protocol" json:"protocol"`
State bool `db:"state" json:"state"`
Timestamp time.Time `db:"timestamp" json:"timestamp"`
}
// ScanParams is a collection of commom parameters passed to the CLI