public void removeListener(@NotNull CloudBreakpointListener listener) { getStateController().removeListener(listener); }
public void addListener(@NotNull CloudBreakpointListener listener) { getStateController().addListener(listener); }
public void fireBreakpointsChanged() { getStateController().fireBreakpointsChanged(); }
/** Called when the user deletes a snapshot from the snapshot list. */ public void deleteBreakpoint(@NotNull Breakpoint serverBreakpoint) { if (!Boolean.TRUE.equals(serverBreakpoint.getIsFinalState())) { setStateToDisabled(serverBreakpoint); } process.getStateController().deleteBreakpointAsync(serverBreakpoint.getId()); }
@Override public void run(@NotNull ProgressIndicator indicator) { indicator.setIndeterminate(true); getStateController().initialize(CloudDebugProcess.this.processState); getRepositoryValidator().hardRefresh(); } }.queue();
/** * Initializes the current state, synchronously checks for the latest set of changes and kicks off * the background job to poll for changes. */ public void initialize(@NotNull CloudDebugProcessState processState) { this.processState = processState; currentSnapshot = null; new Task.Modal( getXDebugSession().getProject(), StackdriverDebuggerBundle.getString("clouddebug.attachingtext"), false) { @Override public void run(@NotNull ProgressIndicator indicator) { indicator.setIndeterminate(true); getStateController().initialize(CloudDebugProcess.this.processState); getRepositoryValidator().hardRefresh(); } }.queue(); // Start breakpoints refresh job on first use. getStateController().addListener(this); getStateController().startBackgroundListening(); SwingUtilities.invokeLater( new Runnable() { @Override public void run() { getBreakpointHandler().createIdeRepresentationsIfNecessary(getCurrentBreakpointList()); } }); }
getStateController() .resolveBreakpointAsync( id,
@Override public void unregisterBreakpoint( @NotNull XLineBreakpoint<CloudLineBreakpointProperties> ideBreakpoint, boolean temporary) { // If the state was set to disabled as a result of a server update, // then we do not need to update the server side. if (!ideBreakpoint.getProperties().isDisabledByServer()) { String breakpointId = ideBreakpoint.getUserData(CLOUD_ID); if (!Strings.isNullOrEmpty(breakpointId)) { process.getStateController().deleteBreakpointAsync(breakpointId); } else { LOG.warn("could not delete breakpoint because it was not added through the cloud handler."); } } // reset this flag: either it has been disabled by the server or the client has deleted it, in // both cases we need to add it again, if it is re-enabled ideBreakpoint.getProperties().setAddedOnServer(false); } }
eq(xLineBreakpointImpl), any(Icon.class), eq(breakPointErrorMessage)); process.getStateController().stopBackgroundListening();
when(process.getStateController()).thenReturn(stateController);
}); process.getStateController().stopBackgroundListening();
@Override public void stop() { getStateController().stopBackgroundListening(); RunProfile profile = getXDebugSession().getRunProfile(); if (profile instanceof CloudDebugRunConfiguration) { ((CloudDebugRunConfiguration) profile).setProcessState(processState); } getRepositoryValidator().restoreToOriginalState(getXDebugSession().getProject()); XBreakpointManager breakpointManager = XDebuggerManager.getInstance(getXDebugSession().getProject()).getBreakpointManager(); for (XBreakpoint bp : breakpointManager.getAllBreakpoints()) { com.intellij.debugger.ui.breakpoints.Breakpoint cloudBreakpoint = BreakpointManager.getJavaBreakpoint(bp); if (!(cloudBreakpoint instanceof CloudLineBreakpointType.CloudLineBreakpoint)) { continue; } CloudLineBreakpointType.CloudLineBreakpoint cloudLineBreakpoint = (CloudLineBreakpointType.CloudLineBreakpoint) cloudBreakpoint; cloudLineBreakpoint.setVerified(false); cloudLineBreakpoint.setErrorMessage(null); updateBreakpointPresentation(cloudLineBreakpoint); } }
.getStateController() .setBreakpointAsync( serverNewBreakpoint,