github.com/kastenhq/syft@v0.0.0-20230821225854-0710af25cdbe/syft/pkg/cataloger/config.go (about)

     1  package cataloger
     2  
     3  import (
     4  	"github.com/kastenhq/syft/syft/pkg/cataloger/golang"
     5  	"github.com/kastenhq/syft/syft/pkg/cataloger/java"
     6  	"github.com/kastenhq/syft/syft/pkg/cataloger/kernel"
     7  	"github.com/kastenhq/syft/syft/pkg/cataloger/python"
     8  )
     9  
    10  // TODO: these field naming vs helper function naming schemes are inconsistent.
    11  type Config struct {
    12  	Search                          SearchConfig
    13  	Golang                          golang.GoCatalogerOpts
    14  	LinuxKernel                     kernel.LinuxCatalogerConfig
    15  	Python                          python.CatalogerConfig
    16  	Catalogers                      []string
    17  	Parallelism                     int
    18  	ExcludeBinaryOverlapByOwnership bool
    19  }
    20  
    21  func DefaultConfig() Config {
    22  	return Config{
    23  		Search:      DefaultSearchConfig(),
    24  		Parallelism: 1,
    25  		LinuxKernel: kernel.DefaultLinuxCatalogerConfig(),
    26  		Python:      python.DefaultCatalogerConfig(),
    27  	}
    28  }
    29  
    30  func (c Config) Java() java.Config {
    31  	return java.Config{
    32  		SearchUnindexedArchives: c.Search.IncludeUnindexedArchives,
    33  		SearchIndexedArchives:   c.Search.IncludeIndexedArchives,
    34  	}
    35  }