Skip to content

Commit 7dec2e8

Browse files
anderruizclaude
andauthored
Set IsDirect=true on JAR pom.properties parser output (#128)
JARs are scanned directly, not resolved from a dependency tree, so all packages found via pom.properties should be marked as direct dependencies. Mirrors the existing behavior of the pom.xml parser. Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 7614305 commit 7dec2e8

3 files changed

Lines changed: 8 additions & 0 deletions

File tree

cmd/datadog-sbom-generator/__snapshots__/main_test.snap

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -221,6 +221,10 @@ unsupported output format "unknown" - must be one of: json, cyclonedx-1-5
221221
"version": "1.0.0",
222222
"purl": "pkg:maven/com.example/my-lib@1.0.0",
223223
"properties": [
224+
{
225+
"name": "datadog:is-direct",
226+
"value": "true"
227+
},
224228
{
225229
"name": "datadog:opaque",
226230
"value": "true"

pkg/lockfile/java/parse-jar-pom-properties.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@ func (e JarPomPropertiesExtractor) Extract(f lockfile.DepFile, context lockfile.
8282
PackageManager: jarPomPropertiesPackageManager,
8383
Ecosystem: models.EcosystemMaven,
8484
Opaque: true,
85+
IsDirect: true,
8586
})
8687
}
8788

pkg/lockfile/java/parse-jar-pom-properties_test.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,7 @@ func TestParseJarPomProperties_OnePackage(t *testing.T) {
159159
PackageManager: models.Maven,
160160
Ecosystem: models.EcosystemMaven,
161161
Opaque: true,
162+
IsDirect: true,
162163
},
163164
})
164165
}
@@ -184,13 +185,15 @@ func TestParseJarPomProperties_MultiplePackages(t *testing.T) {
184185
PackageManager: models.Maven,
185186
Ecosystem: models.EcosystemMaven,
186187
Opaque: true,
188+
IsDirect: true,
187189
},
188190
{
189191
Name: "org.other:lib-b",
190192
Version: "3.1.0",
191193
PackageManager: models.Maven,
192194
Ecosystem: models.EcosystemMaven,
193195
Opaque: true,
196+
IsDirect: true,
194197
},
195198
})
196199
}

0 commit comments

Comments
 (0)