mirror of
https://github.com/anchore/syft.git
synced 2026-11-04 00:16:38 +01:00
Perf: skip license scanner injection (#3796)
* (perf): allow library users to skip default scanner injection Signed-off-by: Adam McClenaghan <adam@mcclenaghan.co.uk> * (perf): remove prints Signed-off-by: Adam McClenaghan <adam@mcclenaghan.co.uk> * perf: move to cataloging licenses.go Signed-off-by: adammcclenaghan <adam.mcclenaghan@upwind.io> * perf: Simplify to expose a SetContextLicenseScanner func Signed-off-by: adammcclenaghan <adam.mcclenaghan@upwind.io> --------- Signed-off-by: Adam McClenaghan <adam@mcclenaghan.co.uk> Signed-off-by: adammcclenaghan <adam.mcclenaghan@upwind.io>
This commit is contained in:
@@ -6,12 +6,19 @@ import (
|
||||
|
||||
type licenseScannerKey struct{}
|
||||
|
||||
var ctxKey = licenseScannerKey{}
|
||||
|
||||
func SetContextLicenseScanner(ctx context.Context, s Scanner) context.Context {
|
||||
return context.WithValue(ctx, licenseScannerKey{}, s)
|
||||
return context.WithValue(ctx, ctxKey, s)
|
||||
}
|
||||
|
||||
func IsContextLicenseScannerSet(ctx context.Context) bool {
|
||||
_, ok := ctx.Value(ctxKey).(Scanner)
|
||||
return ok
|
||||
}
|
||||
|
||||
func ContextLicenseScanner(ctx context.Context) (Scanner, error) {
|
||||
if s, ok := ctx.Value(licenseScannerKey{}).(Scanner); ok {
|
||||
if s, ok := ctx.Value(ctxKey).(Scanner); ok {
|
||||
return s, nil
|
||||
}
|
||||
return NewDefaultScanner()
|
||||
|
||||
Reference in New Issue
Block a user