org.jetbrains.kotlin.jps.statistic.JpsCompileStatisticsData.kt Maven / Gradle / Ivy
/*
* Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors.
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/
package org.jetbrains.kotlin.jps.statistic
import org.jetbrains.kotlin.build.report.metrics.BuildAttribute
import org.jetbrains.kotlin.build.report.metrics.JpsBuildPerformanceMetric
import org.jetbrains.kotlin.build.report.metrics.JpsBuildTime
import org.jetbrains.kotlin.build.report.statistics.CompileStatisticsData
import org.jetbrains.kotlin.build.report.statistics.StatTag
class JpsCompileStatisticsData(
private val projectName: String?,
private val label: String?,
private val taskName: String,
private val taskResult: String?,
private val startTimeMs: Long,
private val durationMs: Long,
private val tags: Set,
private val changes: List,
private val buildUuid: String = "Unset",
private val kotlinVersion: String,
private val kotlinLanguageVersion: String?,
private val hostName: String? = "Unset",
private val finishTime: Long,
private val compilerArguments: List,
private val nonIncrementalAttributes: Set,
private val buildTimesMetrics: Map,
private val performanceMetrics: Map,
private val gcTimeMetrics: Map?,
private val gcCountMetrics: Map?,
private val type: String,
private val fromKotlinPlugin: Boolean?,
private val compiledSources: List = emptyList(),
private val skipMessage: String?,
private val icLogLines: List,
) : CompileStatisticsData {
override fun getProjectName(): String? = projectName
override fun getLabel(): String? = label
override fun getTaskName(): String = taskName
override fun getTaskResult(): String? = taskResult
override fun getStartTimeMs(): Long = startTimeMs
override fun getDurationMs(): Long = durationMs
override fun getTags(): Set = tags
override fun getChanges(): List = changes
override fun getKotlinVersion(): String = kotlinVersion
override fun getKotlinLanguageVersion(): String? = kotlinLanguageVersion
override fun getFinishTime(): Long = finishTime
override fun getCompilerArguments(): List = compilerArguments
override fun getNonIncrementalAttributes(): Set = nonIncrementalAttributes
override fun getBuildTimesMetrics(): Map = buildTimesMetrics
override fun getPerformanceMetrics(): Map = performanceMetrics
override fun getGcTimeMetrics(): Map? = gcTimeMetrics
override fun getGcCountMetrics(): Map? = gcCountMetrics
override fun getFromKotlinPlugin(): Boolean? = fromKotlinPlugin
override fun getSkipMessage(): String? = skipMessage
override fun getIcLogLines(): List = icLogLines
}