mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
Record statistics of terminal usage
This commit is contained in:
@@ -11,6 +11,8 @@
|
||||
|
||||
<applicationService serviceImplementation="org.jetbrains.plugins.terminal.TerminalOptionsProvider"/>
|
||||
<projectService serviceImplementation="org.jetbrains.plugins.terminal.TerminalProjectOptionsProvider"/>
|
||||
|
||||
<statistics.projectUsagesCollector implementation="org.jetbrains.plugins.terminal.TerminalUsageTriggerCollector"/>
|
||||
</extensions>
|
||||
|
||||
<project-components>
|
||||
|
||||
@@ -21,6 +21,7 @@ import com.intellij.execution.process.ProcessAdapter;
|
||||
import com.intellij.execution.process.ProcessEvent;
|
||||
import com.intellij.execution.process.ProcessHandler;
|
||||
import com.intellij.execution.process.ProcessWaitFor;
|
||||
import com.intellij.internal.statistic.service.fus.collectors.FUSUsageContext;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.util.SystemInfo;
|
||||
@@ -145,6 +146,7 @@ public class LocalTerminalDirectRunner extends AbstractTerminalRunner<PtyProcess
|
||||
}
|
||||
|
||||
try {
|
||||
TerminalUsageTriggerCollector.Companion.trigger(myProject, "local.exec", FUSUsageContext.create(FUSUsageContext.getOSNameContextData(), SystemInfo.getOsNameAndVersion(), getShellName(command[0])));
|
||||
return PtyProcess.exec(command, envs, directory != null
|
||||
? directory
|
||||
: TerminalProjectOptionsProvider.Companion.getInstance(myProject).getStartingDirectory());
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
package org.jetbrains.plugins.terminal
|
||||
|
||||
import com.intellij.internal.statistic.service.fus.collectors.FUSProjectUsageTrigger
|
||||
import com.intellij.internal.statistic.service.fus.collectors.FUSUsageContext
|
||||
import com.intellij.internal.statistic.service.fus.collectors.ProjectUsageTriggerCollector
|
||||
import com.intellij.openapi.project.Project
|
||||
|
||||
class TerminalUsageTriggerCollector : ProjectUsageTriggerCollector() {
|
||||
override fun getGroupId(): String = "statistics.terminal"
|
||||
|
||||
companion object {
|
||||
fun trigger(project: Project, featureId: String, context: FUSUsageContext) {
|
||||
FUSProjectUsageTrigger.getInstance(project).trigger(TerminalUsageTriggerCollector::class.java, featureId, context)
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user