INNER CODE UNIT · Kotlin
GitlabQualityOutputReport
ProtonVPN/android-app · detekt-gitlab-output-plugin/src/main/kotlin/outputreport/GitlabQualityOutputReport.kt:31
class GitlabQualityOutputReport : OutputReport() {
private val json = Json { prettyPrint = true }
override val ending: String = "json"
override fun render(detektion: Detektion): String {
val findings = detektion.findings.values.flatten()
val reports = findings.map {
val location = with(it.location) {
GitlabQualityReport.Location(
GitlabQualityReport.Location.Lines(source.line, source.line),
(filePath.relativePath ?: filePath.absolutePath).toString()
)
}
val fingerprintSignature = if (isFilePosition(it.signature, it.location))
with(it.location) { getTextContext(filePath.absolutePath.toString(), text.start, text.end) }
else