vet/pkg/code/readerRepository.go
Omkar Phansopkar 89a6233e76
Integrated depsusage data prepared by code analysis and report unused deps in summary (#336)
* Integrated depsusage data and report with summary

Signed-off-by: Omkar Phansopkar <omkarphansopkar@gmail.com>

* Verified enricher contracts

Signed-off-by: Omkar Phansopkar <omkarphansopkar@gmail.com>

* Updated scan command flags & summary reporter

Signed-off-by: Omkar Phansopkar <omkarphansopkar@gmail.com>

---------

Signed-off-by: Omkar Phansopkar <omkarphansopkar@gmail.com>
2025-02-04 13:23:47 +05:30

32 lines
761 B
Go

package code
import (
"context"
"fmt"
"github.com/safedep/vet/ent"
"github.com/safedep/vet/ent/depsusageevidence"
)
type readerRepositoryImpl struct {
client *ent.Client
}
var _ ReaderRepository = (*readerRepositoryImpl)(nil)
func NewReaderRepository(client *ent.Client) (ReaderRepository, error) {
return &readerRepositoryImpl{
client: client,
}, nil
}
func (r *readerRepositoryImpl) GetDependencyUsageEvidencesByPackageName(ctx context.Context, packageName string) ([]*ent.DepsUsageEvidence, error) {
evidences, err := r.client.DepsUsageEvidence.Query().
Where(depsusageevidence.PackageHint(packageName)).
All(ctx)
if err != nil {
return nil, fmt.Errorf("failed to fetch dependency usage evidence: %w", err)
}
return evidences, nil
}