/** * Called from {@link CloudDebugRunConfiguration}, it finds any serialized state for that named * run config and if the project name matches, it initializes and returns it. * * @param runConfig the runconfig for which state is queried for * @param projectName the GCP project name associated with this runconfig * @return deserialized state that may have been cached in workspace.xml */ public CloudDebugProcessState getState(@NotNull String runConfig, @NotNull String projectName) { CloudDebugProcessState state = stateMap.get(runConfig); if (state != null && state.getProjectName() != null && state.getProjectName().equals(projectName)) { state.setProject(project); return state; } return null; }
public void setInputState(@Nullable CloudDebugProcessState inputState) { this.inputState = inputState; if (this.inputState != null && !Strings.isNullOrEmpty(this.inputState.getProjectName()) && !Strings.isNullOrEmpty(this.inputState.getUserEmail())) { Long projectNumber = null; if (!Strings.isNullOrEmpty(this.inputState.getProjectNumber())) { projectNumber = Long.parseLong(this.inputState.getProjectNumber()); } projectSelector.setSelectedProject( CloudProject.create( this.inputState.getProjectName(), // TODO(ivanporty) add separate project name/ID this.inputState.getProjectName(), projectNumber, this.inputState.getUserEmail())); // update the state here as well refreshDebugTargetList(projectSelector.getSelectedProject()); } }
public void testSerialization() throws IOException { CloudDebugProcessState state = new CloudDebugProcessState("emailUser", "debuggeeId", "projectName", "projectNumber", null); Element element = XmlSerializer.serialize(state); state = XmlSerializer.deserialize(element, CloudDebugProcessState.class); assertNotNull(state); assertTrue("debuggeeId".equals(state.getDebuggeeId())); assertTrue("emailUser".equals(state.getUserEmail())); assertTrue("projectName".equals(state.getProjectName())); assertTrue("projectNumber".equals(state.getProjectNumber())); }
String message = StackdriverDebuggerBundle.getString( "clouddebug.balloonnotification.message", state.getProjectName()); UsageTrackerService.getInstance() .trackEvent(GctTracking.CLOUD_DEBUGGER_NOTIFY_BREAKPOINT_LIST_CHANGE)