report stats for pullUp/pushDown refactorings

tmp
This commit is contained in:
Vadim Brilyantov
2018-12-05 17:27:52 +03:00
parent 37239cbcd7
commit df5ec5c218
4 changed files with 31 additions and 3 deletions
@@ -16,11 +16,14 @@
package org.jetbrains.kotlin.idea.refactoring.pullUp
import com.intellij.internal.statistic.service.fus.collectors.FUSApplicationUsageTrigger
import com.intellij.openapi.actionSystem.DataContext
import com.intellij.openapi.application.ApplicationManager
import com.intellij.openapi.editor.Editor
import com.intellij.openapi.project.Project
import com.intellij.psi.PsiClass
import com.intellij.psi.PsiElement
import com.intellij.psi.PsiFile
import com.intellij.psi.PsiNamedElement
import com.intellij.refactoring.HelpID
import com.intellij.refactoring.RefactoringBundle
@@ -37,6 +40,7 @@ import org.jetbrains.kotlin.psi.KtClass
import org.jetbrains.kotlin.psi.KtClassOrObject
import org.jetbrains.kotlin.psi.KtNamedDeclaration
import org.jetbrains.kotlin.psi.psiUtil.getStrictParentOfType
import org.jetbrains.kotlin.statistics.KotlinIdeRefactoringTrigger
import org.jetbrains.kotlin.types.typeUtil.supertypes
class KotlinPullUpHandler : AbstractPullPushMembersHandler(
@@ -111,6 +115,16 @@ class KotlinPullUpHandler : AbstractPullPushMembersHandler(
KotlinPullUpDialog(project, classOrObject, superClasses, memberInfoStorage).show()
}
}
override fun invoke(project: Project, elements: Array<out PsiElement>, dataContext: DataContext?) {
super.invoke(project, elements, dataContext)
FUSApplicationUsageTrigger.getInstance().trigger(KotlinIdeRefactoringTrigger::class.java, this::class.java.name)
}
override fun invoke(project: Project, editor: Editor, file: PsiFile, dataContext: DataContext?) {
super.invoke(project, editor, file, dataContext)
FUSApplicationUsageTrigger.getInstance().trigger(KotlinIdeRefactoringTrigger::class.java, this::class.java.name)
}
}
val PULL_MEMBERS_UP = "Pull Members Up"
@@ -16,10 +16,13 @@
package org.jetbrains.kotlin.idea.refactoring.pushDown
import com.intellij.internal.statistic.service.fus.collectors.FUSApplicationUsageTrigger
import com.intellij.openapi.actionSystem.DataContext
import com.intellij.openapi.application.ApplicationManager
import com.intellij.openapi.editor.Editor
import com.intellij.openapi.project.Project
import com.intellij.psi.PsiElement
import com.intellij.psi.PsiFile
import com.intellij.psi.PsiManager
import com.intellij.refactoring.HelpID
import com.intellij.refactoring.RefactoringBundle
@@ -34,6 +37,7 @@ import org.jetbrains.kotlin.psi.KtClass
import org.jetbrains.kotlin.psi.KtClassOrObject
import org.jetbrains.kotlin.psi.KtNamedDeclaration
import org.jetbrains.kotlin.psi.KtParameter
import org.jetbrains.kotlin.statistics.KotlinIdeRefactoringTrigger
val PUSH_MEMBERS_DOWN = "Push Members Down"
@@ -84,4 +88,14 @@ class KotlinPushDownHandler : AbstractPullPushMembersHandler(
KotlinPushDownDialog(project, members, classOrObject).show()
}
}
override fun invoke(project: Project, elements: Array<out PsiElement>, dataContext: DataContext?) {
super.invoke(project, elements, dataContext)
FUSApplicationUsageTrigger.getInstance().trigger(KotlinIdeRefactoringTrigger::class.java, this::class.java.name)
}
override fun invoke(project: Project, editor: Editor, file: PsiFile, dataContext: DataContext?) {
super.invoke(project, editor, file, dataContext)
FUSApplicationUsageTrigger.getInstance().trigger(KotlinIdeRefactoringTrigger::class.java, this::class.java.name)
}
}
@@ -33,10 +33,10 @@ class RenameKotlinImplicitLambdaParameter : KotlinVariableInplaceRenameHandler()
return nameExpression != null && isAutoCreatedItUsage(nameExpression)
}
override fun invoke(project: Project, editor: Editor, file: PsiFile, dataContext: DataContext?) {
override fun invoke(project: Project, editor: Editor?, file: PsiFile?, dataContext: DataContext?) {
val intention = ReplaceItWithExplicitFunctionLiteralParamIntention()
project.executeWriteCommand("Convert 'it' to explicit lambda parameter") {
intention.invoke(project, editor, file)
if (file != null) intention.invoke(project, editor, file)
}
}
@@ -72,6 +72,6 @@ public class KotlinVersion(val major: Int, val minor: Int, val patch: Int) : Com
* Returns the current version of the Kotlin standard library.
*/
@kotlin.jvm.JvmField
public val CURRENT: KotlinVersion = KotlinVersion(1, 3, 0) // value is written here automatically during build
public val CURRENT: KotlinVersion = KotlinVersion(1, 3, 111) // value is written here automatically during build
}
}