6648cdf1cb
Client External ID * normalizeexternalid * cleanopenapi * cleanopenapi * changingpublic * noprecommit * testing * precommit * processtest * nodb * tests * tests
48 lines
1.2 KiB
Go
48 lines
1.2 KiB
Go
package collector
|
|
|
|
import (
|
|
"context"
|
|
|
|
"queryorchestration/internal/database"
|
|
resultprocessor "queryorchestration/internal/query/result/processor"
|
|
|
|
"github.com/google/uuid"
|
|
)
|
|
|
|
func (s *Service) GetByClientExternalID(ctx context.Context, clientID string) (*Collector, error) {
|
|
dbColl, err := s.cfg.GetDBQueries().GetCollectorByClientExternalID(ctx, clientID)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
return parseDBCollector(dbColl)
|
|
}
|
|
|
|
func (s *Service) GetByClientID(ctx context.Context, clientID uuid.UUID) (*Collector, error) {
|
|
dbColl, err := s.cfg.GetDBQueries().GetCollectorByClientID(ctx, database.MustToDBUUID(clientID))
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
return parseDBCollector(dbColl)
|
|
}
|
|
|
|
func (s *Service) ListQueries(ctx context.Context, id uuid.UUID) ([]*resultprocessor.Query, error) {
|
|
queries, err := s.cfg.GetDBQueries().ListCollectorQueries(ctx, database.MustToDBUUID(id))
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
cleanQueries := make([]*resultprocessor.Query, len(queries))
|
|
for index, dbQuery := range queries {
|
|
cleanQuery, err := resultprocessor.ParseDBCollectorQuery(dbQuery)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
cleanQueries[index] = cleanQuery
|
|
}
|
|
|
|
return cleanQueries, nil
|
|
}
|