Search in sources :

Example 1 with CDebugEventNotifier

use of com.google.security.zynamics.binnavi.Gui.Debug.Notifier.CDebugEventNotifier in project binnavi by google.

the class CDebugPerspectiveModel method setActiveDebugger.

/**
 * Sets the active debugger.
 *
 * @param debugger The new debugger.
 */
public void setActiveDebugger(final IDebugger debugger) {
    if (m_activeDebugger == debugger) {
        return;
    }
    if ((debugger != null) && !m_eventLoggerMap.containsKey(debugger)) {
        m_notifierMap.put(debugger, new CDebugEventNotifier(m_model.getParent(), debugger, m_model.getDebuggerProvider().getDebugTarget(), m_model.getViewContainer()));
        m_eventLoggerMap.put(debugger, new TraceLogger(m_model.getViewContainer().getTraceProvider(), debugger));
    }
    final IDebugger oldDebugger = m_activeDebugger;
    m_activeDebugger = debugger;
    for (final IDebugPerspectiveModelListener listener : m_listeners) {
        // ESCA-JAVA0166: Calling a listener
        try {
            listener.changedActiveDebugger(oldDebugger, m_activeDebugger);
        } catch (final Exception exception) {
            CUtilityFunctions.logException(exception);
        }
    }
}
Also used : TraceLogger(com.google.security.zynamics.binnavi.debug.models.trace.TraceLogger) CDebugEventNotifier(com.google.security.zynamics.binnavi.Gui.Debug.Notifier.CDebugEventNotifier) IDebugger(com.google.security.zynamics.binnavi.debug.debugger.interfaces.IDebugger)

Aggregations

CDebugEventNotifier (com.google.security.zynamics.binnavi.Gui.Debug.Notifier.CDebugEventNotifier)1 IDebugger (com.google.security.zynamics.binnavi.debug.debugger.interfaces.IDebugger)1 TraceLogger (com.google.security.zynamics.binnavi.debug.models.trace.TraceLogger)1