summaryrefslogtreecommitdiff
path: root/golang/pkg/database/agents.go
blob: cd9e0a23d647acfe9f43d4cfe84aa7874c39458e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
package database

import (
	"encoding/json"
	"fmt"

	"git.adyxax.org/adyxax/spacetraders/golang/pkg/model"
)

func (db *DB) SaveAgent(agent *model.Agent) error {
	data, err := json.Marshal(agent)
	if err != nil {
		return fmt.Errorf("failed to marshal agent: %w", err)
	}
	if _, err := db.Exec(`INSERT INTO agents SET data = (json(?));`, data); err != nil {
		return fmt.Errorf("failed to insert agent data: %w", err)
	}
	return nil
}