first try
This commit is contained in:
46
handlers/diags.go
Normal file
46
handlers/diags.go
Normal 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
18
handlers/handlers.go
Normal 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,
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user