moved PluginVersion from collector instance to context for each trigger()

This commit is contained in:
Anton Yalyshev
2019-01-15 10:41:28 +03:00
parent 124ab5a896
commit 23b0f27f3b
3 changed files with 7 additions and 27 deletions
@@ -3238,7 +3238,6 @@
<statistics.applicationUsagesCollector implementation="org.jetbrains.kotlin.statistics.KotlinTargetTrigger"/>
<statistics.applicationUsagesCollector implementation="org.jetbrains.kotlin.statistics.KotlinIdeRefactoringTrigger"/>
<statistics.applicationUsagesCollector implementation="org.jetbrains.kotlin.statistics.KotlinIdeNewFileTemplateTrigger"/>
<statistics.applicationUsagesCollector implementation="org.jetbrains.kotlin.statistics.KotlinPluginVersionCollector"/>
</extensions>
</idea-plugin>
@@ -6,27 +6,24 @@
package org.jetbrains.kotlin.statistics
import com.intellij.ide.plugins.PluginManager
import com.intellij.internal.statistic.beans.UsageDescriptor
import com.intellij.internal.statistic.service.fus.collectors.ApplicationUsageTriggerCollector
import com.intellij.internal.statistic.service.fus.collectors.ApplicationUsagesCollector
import com.intellij.internal.statistic.service.fus.collectors.FUSApplicationUsageTrigger
import com.intellij.internal.statistic.service.fus.collectors.FUSUsageContext
import com.intellij.openapi.extensions.PluginId
import java.util.HashSet
open class KotlinStatisticsTrigger(private val groupIdSufix: String) : ApplicationUsageTriggerCollector() {
override fun getGroupId() = "statistics.kotlin.$groupIdSufix"
companion object {
public fun trigger(clazz: Class<out KotlinStatisticsTrigger>, event: String) {
FUSApplicationUsageTrigger.getInstance().trigger(clazz, event)
val plugin = PluginManager.getPlugin(PluginId.getId("org.jetbrains.kotlin"))
val version = plugin?.version ?: "undefined"
FUSApplicationUsageTrigger.getInstance().trigger(clazz, event, FUSUsageContext.create(version))
}
}
}
abstract class KotlinStatisticsStateCollector(private val groupIdSufix: String) : ApplicationUsagesCollector() {
override fun getGroupId(): String = "statistics.kotlin.$groupIdSufix"
}
open class KotlinIdeStatisticsTrigger(groupIdSufix: String) : KotlinStatisticsTrigger("ide.$groupIdSufix")
open class KotlinGradlePluginStatisticsTrigger(groupIdSufix: String) : KotlinStatisticsTrigger("gradle.$groupIdSufix")
@@ -41,16 +38,4 @@ open class KotlinIdeActionTrigger(groupIdSufix: String? = null) : KotlinIdeStati
class KotlinIdeRefactoringTrigger : KotlinIdeActionTrigger("refactoring")
class KotlinIdeNewFileTemplateTrigger : KotlinIdeStatisticsTrigger("newFileTempl")
class KotlinPluginVersionCollector : KotlinStatisticsStateCollector("pluginVersion") {
override fun getUsages(): MutableSet<UsageDescriptor> {
val usagesSet = HashSet<UsageDescriptor>()
val plugin = PluginManager.getPlugin(PluginId.getId("org.jetbrains.kotlin"))
val version = plugin?.version ?: "undefined"
usagesSet.add(UsageDescriptor(version, 1))
return usagesSet
}
}
class KotlinIdeNewFileTemplateTrigger : KotlinIdeStatisticsTrigger("newFileTempl")
@@ -13,8 +13,6 @@ open class KotlinStatisticsTrigger(private val groupIdSufix: String) {
}
}
abstract class KotlinStatisticsStateCollector(private val groupIdSufix: String)
open class KotlinIdeStatisticsTrigger(groupIdSufix: String) : KotlinStatisticsTrigger("ide.$groupIdSufix")
open class KotlinGradlePluginStatisticsTrigger(groupIdSufix: String) : KotlinStatisticsTrigger("gradle.$groupIdSufix")
@@ -29,6 +27,4 @@ open class KotlinIdeActionTrigger(groupIdSufix: String? = null) : KotlinIdeStati
class KotlinIdeRefactoringTrigger : KotlinIdeActionTrigger("refactoring")
class KotlinIdeNewFileTemplateTrigger : KotlinIdeStatisticsTrigger("newFileTempl")
class KotlinPluginVersionCollector : KotlinStatisticsStateCollector("pluginVersion")
class KotlinIdeNewFileTemplateTrigger : KotlinIdeStatisticsTrigger("newFileTempl")