Skip to content

Commit b10e5d8

Browse files
refactor: extract method.
1 parent 6b90188 commit b10e5d8

2 files changed

Lines changed: 11 additions & 12 deletions

File tree

src/main/kotlin/com/autonomousapps/internal/analyzer/DependencyAnalyzer.kt

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ package com.autonomousapps.internal.analyzer
66

77
import com.autonomousapps.internal.OutputPaths
88
import com.autonomousapps.internal.artifactsFor
9+
import com.autonomousapps.internal.opaqueComponentArtifacts
910
import com.autonomousapps.internal.utils.project.buildPath
1011
import com.autonomousapps.model.DuplicateClass
1112
import com.autonomousapps.model.source.SourceKind
@@ -217,12 +218,7 @@ internal abstract class AbstractDependencyAnalyzer(
217218
c.artifactsFor(attributeValueJar)
218219
}
219220
t.setOpaqueConfiguration(project.configurations.named(compileConfigurationName)) { c ->
220-
// We want "opaque" artifacts so we can capture the gradle version catalog (and maybe eventually other things)
221-
c.incoming.artifactView { view ->
222-
view
223-
.componentFilter { id -> id is OpaqueComponentArtifactIdentifier }
224-
.lenient(true)
225-
}.artifacts
221+
c.opaqueComponentArtifacts()
226222
}
227223
t.buildPath.set(project.buildPath(compileConfigurationName))
228224

@@ -237,12 +233,7 @@ internal abstract class AbstractDependencyAnalyzer(
237233
c.artifactsFor(attributeValueJar)
238234
}
239235
t.setOpaqueConfiguration(project.configurations.named(runtimeConfigurationName)) { c ->
240-
// We want "opaque" artifacts so we can capture the gradle version catalog (and maybe eventually other things)
241-
c.incoming.artifactView { view ->
242-
view
243-
.componentFilter { id -> id is OpaqueComponentArtifactIdentifier }
244-
.lenient(true)
245-
}.artifacts
236+
c.opaqueComponentArtifacts()
246237
}
247238
t.buildPath.set(project.buildPath(runtimeConfigurationName))
248239

src/main/kotlin/com/autonomousapps/internal/artifactViews.kt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import org.gradle.api.artifacts.component.ModuleComponentIdentifier
99
import org.gradle.api.artifacts.result.ResolvedDependencyResult
1010
import org.gradle.api.attributes.Attribute
1111
import org.gradle.api.attributes.Category
12+
import org.gradle.internal.component.local.model.OpaqueComponentArtifactIdentifier
1213

1314
/**
1415
* This is different than [org.gradle.api.attributes.Category.CATEGORY_ATTRIBUTE], which has type
@@ -20,6 +21,13 @@ private val attributeKey = Attribute.of("artifactType", String::class.java)
2021

2122
internal fun Configuration.artifactsFor(attrValue: String): ArtifactCollection = artifactViewFor(attrValue).artifacts
2223

24+
/** Captures things like the Gradle version catalog and Gradle API jar. */
25+
internal fun Configuration.opaqueComponentArtifacts(): ArtifactCollection = incoming.artifactView { view ->
26+
view
27+
.componentFilter { id -> id is OpaqueComponentArtifactIdentifier }
28+
.lenient(true)
29+
}.artifacts
30+
2331
private fun Configuration.artifactViewFor(attrValue: String): ArtifactView = incoming.artifactView {
2432
it.attributes.attribute(attributeKey, attrValue)
2533
it.lenient(true)

0 commit comments

Comments
 (0)