first try

This commit is contained in:
2024-11-20 14:31:46 +01:00
parent c74114fe66
commit 2936cca8ca
17 changed files with 1887 additions and 3 deletions

46
handlers/diags.go Normal file
View File

@@ -0,0 +1,46 @@
package handlers
import (
"time"
"git.coopgo.io/coopgo-platform/diags/storage"
"github.com/google/uuid"
)
func (h DiagsHandler) CreateDiag(diag storage.Diag) (*storage.Diag, error) {
if diag.ID == "" {
diag.ID = uuid.NewString()
}
if err := h.storage.CreateDiag(diag); err != nil {
return nil, err
}
return &diag, nil
}
func (h DiagsHandler) GetDiag(id string) (diag *storage.Diag, err error) {
diag, err = h.storage.GetDiag(id)
return
}
func (h DiagsHandler) GetDiags(namespaces []string, mindate *time.Time, maxdate *time.Time) (results []storage.Diag, err error) {
results = []storage.Diag{}
diags, err := h.storage.GetDiags(namespaces)
if err == nil {
for _, diag := range diags {
results = append(results, diag)
}
}
return
}
func (h DiagsHandler) UpdateDiag(diag storage.Diag) (*storage.Diag, error) {
// Store the account
if err := h.storage.UpdateDiag(diag); err != nil {
return nil, err
}
return &diag, nil
}

18
handlers/handlers.go Normal file
View File

@@ -0,0 +1,18 @@
package handlers
import (
"git.coopgo.io/coopgo-platform/diags/storage"
"github.com/spf13/viper"
)
type DiagsHandler struct {
config *viper.Viper
storage storage.Storage
}
func NewHandler(cfg *viper.Viper, storage storage.Storage) DiagsHandler {
return DiagsHandler{
config: cfg,
storage: storage,
}
}