java

package
v1.16.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 4, 2026 License: Apache-2.0 Imports: 24 Imported by: 0

Documentation

Index

Constants

View Source
const MavenCentral = "https://repo.maven.apache.org/maven2"

Variables

Functions

func NewMavenRegistryAPIClient

func NewMavenRegistryAPIClient(url string) (extractor.DepFile, error)

func ParseGradleLock

func ParseGradleLock(pathToLockfile string) ([]extractor.PackageDetails, error)

func ParseGradleVerificationMetadata

func ParseGradleVerificationMetadata(pathToLockfile string) ([]extractor.PackageDetails, error)

func ParseJarPomProperties

func ParseJarPomProperties(pathToLockfile string) ([]extractor.PackageDetails, error)

ParseJarPomProperties is a convenience function for extracting Maven artifacts from a JAR file's embedded pom.properties.

func ParseMavenInstall

func ParseMavenInstall(pathToLockfile string) ([]extractor.PackageDetails, error)

func ParseMavenLock

func ParseMavenLock(pathToLockfile string) ([]extractor.PackageDetails, error)

Types

type BuildGradleMatcher

type BuildGradleMatcher struct{}

func (BuildGradleMatcher) GetSourceFile

func (m BuildGradleMatcher) GetSourceFile(sourceFile extractor.DepFile) (extractor.DepFile, error)

func (BuildGradleMatcher) Match

func (m BuildGradleMatcher) Match(sourceFile extractor.DepFile, packages []extractor.PackageDetails, context extractor.ScanContext) error

type GradleLockExtractor

type GradleLockExtractor struct {
	extractor.WithMatcher
}

func (GradleLockExtractor) Extract

func (GradleLockExtractor) IsOfficiallySupported

func (e GradleLockExtractor) IsOfficiallySupported() bool

func (GradleLockExtractor) PackageManager

func (e GradleLockExtractor) PackageManager() models.PackageManager

func (GradleLockExtractor) ShouldExtract

func (e GradleLockExtractor) ShouldExtract(path string) bool

type GradleVerificationMetadataExtractor

type GradleVerificationMetadataExtractor struct {
	extractor.WithMatcher
}

func (GradleVerificationMetadataExtractor) Extract

func (GradleVerificationMetadataExtractor) IsOfficiallySupported

func (e GradleVerificationMetadataExtractor) IsOfficiallySupported() bool

func (GradleVerificationMetadataExtractor) PackageManager

func (GradleVerificationMetadataExtractor) ShouldExtract

func (e GradleVerificationMetadataExtractor) ShouldExtract(path string) bool

type GradleVerificationMetadataFile

type GradleVerificationMetadataFile struct {
	XMLName    xml.Name `xml:"verification-metadata"`
	Components []struct {
		Group   string `xml:"group,attr"`
		Name    string `xml:"name,attr"`
		Version string `xml:"version,attr"`
	} `xml:"components>component"`
}

type JarPomPropertiesExtractor

type JarPomPropertiesExtractor struct{}

JarPomPropertiesExtractor extracts Maven artifact information from pom.properties files embedded inside JAR (ZIP) archives.

func (JarPomPropertiesExtractor) Extract

func (JarPomPropertiesExtractor) IsOfficiallySupported

func (e JarPomPropertiesExtractor) IsOfficiallySupported() bool

func (JarPomPropertiesExtractor) PackageManager

func (e JarPomPropertiesExtractor) PackageManager() models.PackageManager

func (JarPomPropertiesExtractor) ShouldExtract

func (e JarPomPropertiesExtractor) ShouldExtract(path string) bool

type MavenInstallExtractor

type MavenInstallExtractor struct{}

func (MavenInstallExtractor) Extract

IsDirect is not set. For v1/v2 lockfiles, determining which artifacts are direct requires cross-referencing WORKSPACE/MODULE.bazel declarations. For v3, direct deps could be derived from the per-artifact __INPUT_ARTIFACTS_HASH dict (its non-"repositories" keys), but this is left as a future improvement.

func (MavenInstallExtractor) IsOfficiallySupported

func (e MavenInstallExtractor) IsOfficiallySupported() bool

func (MavenInstallExtractor) PackageManager

func (e MavenInstallExtractor) PackageManager() models.PackageManager

func (MavenInstallExtractor) ShouldExtract

func (e MavenInstallExtractor) ShouldExtract(path string) bool

type MavenLockDependency

type MavenLockDependency struct {
	XMLName    xml.Name                  `xml:"dependency"`
	GroupID    models.StringWithPosition `xml:"groupId"`
	ArtifactID models.StringWithPosition `xml:"artifactId"`
	Version    models.StringWithPosition `xml:"version"`
	Scope      string                    `xml:"scope"`
	Exclusions []MavenLockExclusion      `xml:"exclusions>exclusion"`
	SourceFile string
	models.FilePosition
}

func (MavenLockDependency) ResolveArtifactID

func (mld MavenLockDependency) ResolveArtifactID(lockfile MavenLockFile, context extractor.ScanContext) (string, models.FilePosition)

func (MavenLockDependency) ResolveGroupID

func (mld MavenLockDependency) ResolveGroupID(lockfile MavenLockFile, context extractor.ScanContext) (string, models.FilePosition)

func (MavenLockDependency) ResolveVersion

func (mld MavenLockDependency) ResolveVersion(lockfile MavenLockFile, context extractor.ScanContext) (string, models.FilePosition)

type MavenLockDependencyHolder

type MavenLockDependencyHolder struct {
	Dependencies []MavenLockDependency `xml:"dependency"`
}

func (*MavenLockDependencyHolder) UnmarshalXML

func (dependencyHolder *MavenLockDependencyHolder) UnmarshalXML(decoder *xml.Decoder, start xml.StartElement) error

type MavenLockExclusion

type MavenLockExclusion struct {
	XMLName    xml.Name                  `xml:"exclusion"`
	GroupID    models.StringWithPosition `xml:"groupId"`
	ArtifactID models.StringWithPosition `xml:"artifactId"`
}

type MavenLockExtractor

type MavenLockExtractor struct {
	extractor.ArtifactExtractor
}

func (MavenLockExtractor) Extract

func (MavenLockExtractor) GetArtifact

func (MavenLockExtractor) IsOfficiallySupported

func (e MavenLockExtractor) IsOfficiallySupported() bool

func (MavenLockExtractor) PackageManager

func (e MavenLockExtractor) PackageManager() models.PackageManager

func (MavenLockExtractor) ShouldExtract

func (e MavenLockExtractor) ShouldExtract(path string) bool

type MavenLockFile

type MavenLockFile struct {
	XMLName                  xml.Name                  `xml:"project"`
	Parent                   MavenLockParent           `xml:"parent"`
	Version                  models.StringWithPosition `xml:"version"`
	ModelVersion             models.StringWithPosition `xml:"modelVersion"`
	GroupID                  models.StringWithPosition `xml:"groupId"`
	ArtifactID               models.StringWithPosition `xml:"artifactId"`
	Properties               MavenLockProperties       `xml:"properties"`
	Dependencies             MavenLockDependencyHolder `xml:"dependencies"`
	ManagedDependencies      MavenLockDependencyHolder `xml:"dependencyManagement>dependencies"`
	MainSourceFile           string
	ProjectVersionSourceFile string
}

type MavenLockParent

type MavenLockParent struct {
	XMLName      xml.Name `xml:"parent"`
	RelativePath string   `xml:"relativePath"`
	GroupID      string   `xml:"groupId"`
	ArtifactID   string   `xml:"artifactId"`
	Version      string   `xml:"version"`
}

type MavenLockProperties

type MavenLockProperties struct {
	// contains filtered or unexported fields
}

func (*MavenLockProperties) UnmarshalXML

func (p *MavenLockProperties) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error

type MavenLockProperty

type MavenLockProperty struct {
	Property   models.StringWithPosition
	SourceFile string
}

type MavenRegistryProject

type MavenRegistryProject struct {
	io.ReadCloser
	// contains filtered or unexported fields
}

func (*MavenRegistryProject) Open

func (*MavenRegistryProject) Path

func (m *MavenRegistryProject) Path() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL