@Override
public void dispose() {
model.removePropertyChangeListener(modelListener);
DebugService svc = model.getDebugService();
synchronized (svc) {
svc.removeListener(debugServiceListener);
DebugSession session = svc.getCurrentSession();
if (session != null) {
session.removeListener(sessionListener);
}
}