in intellij/src/main/kotlin/motif/intellij/MotifService.kt [105:130]
override fun run(indicator: ProgressIndicator) {
ApplicationManager.getApplication().runReadAction {
try {
val updatedGraph: ResolvedGraph = graphFactory.compute()
onGraphUpdated(updatedGraph)
val eventName: String =
if (updatedGraph.errors.isNotEmpty()) {
MotifAnalyticsActions.GRAPH_UPDATE_ERROR
} else {
MotifAnalyticsActions.GRAPH_UPDATE_SUCCESS
}
project.getService(AnalyticsService::class.java).logEvent(eventName)
} catch (t: Throwable) {
val emptyGraph: ResolvedGraph = ResolvedGraph.create(emptyList())
onGraphUpdated(emptyGraph)
project
.getService(AnalyticsService::class.java)
.logEvent(MotifAnalyticsActions.GRAPH_COMPUTATION_ERROR)
PluginManager.getLogger().error(LABEL_GRAPH_COMPUTATION_ERROR, t)
} finally {
isRefreshing = false
}
}
}