|
27 | 27 | import org.digma.intellij.plugin.common.Backgroundable; |
28 | 28 | import org.digma.intellij.plugin.common.CommonUtils; |
29 | 29 | import org.digma.intellij.plugin.log.Log; |
30 | | -import org.digma.intellij.plugin.model.rest.recentactivity.*; |
| 30 | +import org.digma.intellij.plugin.model.rest.recentactivity.RecentActivityEntrySpanForTracePayload; |
| 31 | +import org.digma.intellij.plugin.model.rest.recentactivity.RecentActivityEntrySpanPayload; |
| 32 | +import org.digma.intellij.plugin.model.rest.recentactivity.RecentActivityGoToSpanRequest; |
| 33 | +import org.digma.intellij.plugin.model.rest.recentactivity.RecentActivityGoToTraceRequest; |
| 34 | +import org.digma.intellij.plugin.model.rest.recentactivity.RecentActivityResponseEntry; |
| 35 | +import org.digma.intellij.plugin.model.rest.recentactivity.RecentActivityResult; |
31 | 36 | import org.digma.intellij.plugin.psi.LanguageService; |
32 | 37 | import org.digma.intellij.plugin.service.EditorService; |
| 38 | +import org.digma.intellij.plugin.ui.model.environment.EnvironmentsSupplier; |
33 | 39 | import org.jetbrains.annotations.NotNull; |
34 | 40 |
|
35 | 41 | import javax.swing.*; |
36 | 42 | import java.awt.*; |
| 43 | +import java.util.ArrayList; |
| 44 | +import java.util.Collections; |
| 45 | +import java.util.Date; |
37 | 46 | import java.util.List; |
38 | | -import java.util.*; |
| 47 | +import java.util.Map; |
39 | 48 |
|
40 | | -import static org.digma.intellij.plugin.toolwindow.ToolWindowUtil.*; |
| 49 | +import static org.digma.intellij.plugin.toolwindow.ToolWindowUtil.RECENT_ACTIVITY_GET_DATA; |
| 50 | +import static org.digma.intellij.plugin.toolwindow.ToolWindowUtil.RECENT_ACTIVITY_GO_TO_SPAN; |
| 51 | +import static org.digma.intellij.plugin.toolwindow.ToolWindowUtil.RECENT_ACTIVITY_GO_TO_TRACE; |
| 52 | +import static org.digma.intellij.plugin.toolwindow.ToolWindowUtil.RECENT_ACTIVITY_SET_DATA; |
| 53 | +import static org.digma.intellij.plugin.toolwindow.ToolWindowUtil.REQUEST_MESSAGE_TYPE; |
41 | 54 | import static org.digma.intellij.plugin.ui.common.EnvironmentUtilKt.LOCAL_ENV; |
| 55 | +import static org.digma.intellij.plugin.ui.common.EnvironmentUtilKt.SUFFIX_OF_LOCAL; |
42 | 56 | import static org.digma.intellij.plugin.ui.common.EnvironmentUtilKt.getSortedEnvironments; |
43 | 57 | import static org.digma.intellij.plugin.ui.list.insights.JaegerUtilKt.openJaegerFromRecentActivity; |
44 | 58 |
|
@@ -157,6 +171,11 @@ private boolean processRecentActivityGoToSpanRequest(RecentActivityEntrySpanPayl |
157 | 171 | LanguageService languageService = LanguageService.findLanguageServiceByMethodCodeObjectId(project, methodCodeObjectId); |
158 | 172 | Map<String, Pair<String, Integer>> workspaceUrisForMethodCodeObjectIds = languageService.findWorkspaceUrisForMethodCodeObjectIds(Collections.singletonList(methodCodeObjectId)); |
159 | 173 | if (workspaceUrisForMethodCodeObjectIds.containsKey(methodCodeObjectId)) { |
| 174 | + // modifying the selected environment |
| 175 | + EnvironmentsSupplier environmentsSupplier = analyticsService.getEnvironment(); |
| 176 | + String actualEnvName = adjustBackEnvNameIfNeeded(payload.getEnvironment()); |
| 177 | + environmentsSupplier.setCurrent(actualEnvName); |
| 178 | + |
160 | 179 | Pair<String, Integer> result = workspaceUrisForMethodCodeObjectIds.get(methodCodeObjectId); |
161 | 180 | editorService.openWorkspaceFileInEditor(result.getFirst(), result.getSecond()); |
162 | 181 | ToolWindow digmaLeftToolWindow = ToolWindowManager.getInstance(project).getToolWindow(DIGMA_LEFT_TOOL_WINDOW_NAME); |
@@ -225,7 +244,14 @@ private List<RecentActivityResponseEntry> getEntriesWithAdjustedLocalEnvs(Recent |
225 | 244 | } |
226 | 245 |
|
227 | 246 | private String getAdjustedEnvName(String environment) { |
228 | | - return environment.toUpperCase().endsWith("["+ LOCAL_ENV + "]") ? LOCAL_ENV: environment; |
| 247 | + return environment.toUpperCase().endsWith(SUFFIX_OF_LOCAL) ? LOCAL_ENV: environment; |
| 248 | + } |
| 249 | + |
| 250 | + private String adjustBackEnvNameIfNeeded(String environment) { |
| 251 | + if (environment.equalsIgnoreCase(LOCAL_ENV)) { |
| 252 | + return (localHostname + SUFFIX_OF_LOCAL).toUpperCase(); |
| 253 | + } |
| 254 | + return environment; |
229 | 255 | } |
230 | 256 |
|
231 | 257 | private <T> T parseJsonToObject(String jsonString, Class<T> jcefMessageRequestClass) { |
|
0 commit comments