Files
query-orchestration/internal/result/service.go
T
Michael McGuinness 5ca36b0502 Merged in feature/listtypes (pull request #23)
Feature/listtypes

* started

* cleanuplist

* someunittestfixes

* removemostflakiness
2025-01-15 12:19:49 +00:00

47 lines
985 B
Go

package result
import (
"context"
"queryorchestration/internal/database"
"queryorchestration/internal/database/repository"
"github.com/google/uuid"
)
type Result struct {
ID uuid.UUID
QueryID uuid.UUID
QueryVersion int32
}
type Value interface {
GetValue(ctx context.Context) (string, error)
}
type ResultStore struct {
QueryID uuid.UUID
DocumentID uuid.UUID
Value string
CleanVersion int32
TextVersion int32
QueryVersion int32
}
func Store(ctx context.Context, dbQueries *repository.Queries, res *ResultStore) (uuid.UUID, error) {
dbId, err := dbQueries.SetResult(ctx, &repository.SetResultParams{
Queryid: database.MustToDBUUID(res.QueryID),
Documentid: database.MustToDBUUID(res.DocumentID),
Value: res.Value,
Cleanversion: res.CleanVersion,
Textversion: res.TextVersion,
Queryversion: res.QueryVersion,
})
if err != nil {
return uuid.Nil, err
}
id := database.MustToUUID(dbId)
return id, nil
}