Skip to content

Commit 0eb05e0

Browse files
authored
Merge pull request #2508 from digma-ai/posthog-event-in-reload-jcef
posthog-event-in-reload-jcef Closes #2507
2 parents 2a3607e + 9cf2f3d commit 0eb05e0

File tree

4 files changed

+22
-8
lines changed

4 files changed

+22
-8
lines changed

ide-common/src/main/kotlin/org/digma/intellij/plugin/reload/ReloadAction.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import org.digma.intellij.plugin.errorreporting.ErrorReporter
1010
class ReloadAction : AnAction() {
1111
override fun actionPerformed(p0: AnActionEvent) {
1212
try {
13-
service<ReloadService>().reloadAllProjects()
13+
service<ReloadService>().reloadAllProjects(ReloadSource.RELOAD_ACTION)
1414
} catch (e: Throwable) {
1515
ErrorReporter.getInstance().reportError("ReloadAction.actionPerformed", e)
1616
}

ide-common/src/main/kotlin/org/digma/intellij/plugin/reload/ReloadObserver.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ class ReloadObserver(cs: CoroutineScope) {
157157
)
158158
componentDetails.graphicsDeviceList = currentGraphicsDeviceList
159159

160-
service<ReloadService>().reload(project)
160+
service<ReloadService>().reload(project, ReloadSource.RELOAD_OBSERVER)
161161
} else {
162162
Log.log(
163163
logger::trace,
@@ -179,7 +179,7 @@ class ReloadObserver(cs: CoroutineScope) {
179179
)
180180
componentDetails.displayMode = currentDisplayMode
181181

182-
service<ReloadService>().reload(project)
182+
service<ReloadService>().reload(project, ReloadSource.RELOAD_OBSERVER)
183183
} else {
184184
Log.log(logger::trace, "no graphics changes for component {} in project {}", componentName, project.name)
185185
}

ide-common/src/main/kotlin/org/digma/intellij/plugin/reload/ReloadService.kt

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,13 @@ import com.intellij.openapi.project.ProjectManager
99
import com.intellij.openapi.util.Disposer
1010
import kotlinx.datetime.Clock
1111
import kotlinx.datetime.Instant
12+
import org.apache.commons.codec.digest.DigestUtils
1213
import org.digma.intellij.plugin.common.DisposableAdaptor
1314
import org.digma.intellij.plugin.common.EDT
1415
import org.digma.intellij.plugin.common.isProjectValid
1516
import org.digma.intellij.plugin.errorreporting.ErrorReporter
1617
import org.digma.intellij.plugin.log.Log
18+
import org.digma.intellij.plugin.posthog.ActivityMonitor
1719
import org.digma.intellij.plugin.recentactivity.RecentActivityToolWindowShower
1820
import org.digma.intellij.plugin.ui.MainToolWindowCardsController
1921
import org.digma.intellij.plugin.ui.ToolWindowShower
@@ -45,11 +47,11 @@ class ReloadService : DisposableAdaptor {
4547
}
4648

4749

48-
fun reloadAllProjects() {
50+
fun reloadAllProjects(source: ReloadSource) {
4951
ProjectManager.getInstance().openProjects.forEach {
5052
try {
5153
if (isProjectValid(it)) {
52-
reload(it)
54+
reload(it, source)
5355
}
5456
} catch (e: Throwable) {
5557
Log.warnWithException(logger, it, e, "error in reload for project {}", it)
@@ -58,7 +60,7 @@ class ReloadService : DisposableAdaptor {
5860
}
5961
}
6062

61-
fun reload(project: Project) {
63+
fun reload(project: Project, source: ReloadSource) {
6264

6365
Log.log(logger::trace, "Reload for project {} called", project.name)
6466

@@ -83,17 +85,24 @@ class ReloadService : DisposableAdaptor {
8385
//run the whole project reload on EDT, it may cause a short freeze, but we are aware of that.
8486
//it is necessary for finding the selected editor
8587
EDT.ensureEDT {
86-
reloadImpl(project)
88+
reloadImpl(project, source)
8789
}
8890
}
8991
}
9092

91-
private fun reloadImpl(project: Project) {
93+
private fun reloadImpl(project: Project, source: ReloadSource) {
9294

9395
if (!isProjectValid(project)) {
9496
return
9597
}
9698

99+
ActivityMonitor.getInstance(project).registerCustomEvent(
100+
"ReloadJcef", mapOf(
101+
"source" to source.toString(),
102+
"project.hash" to DigestUtils.md2Hex(project.name)
103+
)
104+
)
105+
97106
Log.log(logger::trace, "Reloading jcef for project {}", project.name)
98107

99108
EDT.ensureEDT {
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
package org.digma.intellij.plugin.reload
2+
3+
enum class ReloadSource {
4+
RELOAD_ACTION,RELOAD_OBSERVER
5+
}

0 commit comments

Comments
 (0)