fa95d733ca
Add short tests and Tidy internal directories * complete the tasks
44 lines
872 B
Go
44 lines
872 B
Go
package collector
|
|
|
|
import (
|
|
"context"
|
|
"queryorchestration/internal/database"
|
|
|
|
"github.com/google/uuid"
|
|
)
|
|
|
|
type Collector struct {
|
|
ID uuid.UUID
|
|
MinCleanVersion int32
|
|
MinTextVersion int32
|
|
db *database.Connection
|
|
}
|
|
|
|
func NewByJobId(ctx context.Context, db *database.Connection, jobID uuid.UUID) (*Collector, error) {
|
|
collector := Collector{
|
|
db: db,
|
|
}
|
|
|
|
err := collector.getByJobID(ctx, jobID)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
return &collector, nil
|
|
}
|
|
|
|
func (c *Collector) getByJobID(ctx context.Context, jobID uuid.UUID) error {
|
|
dbJobID := database.MustToDBUUID(jobID)
|
|
|
|
dbCollector, err := c.db.Queries.GetCollectorFromJobID(ctx, dbJobID)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
c.ID = database.MustToUUID(dbCollector.ID)
|
|
c.MinCleanVersion = dbCollector.Mincleanversion
|
|
c.MinTextVersion = dbCollector.Mintextversion
|
|
|
|
return nil
|
|
}
|