package org.jactr.eclipse.runtime.debug.handlers;
/*
* default logging
*/
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.commonreality.net.session.ISessionInfo;
import org.eclipse.debug.core.DebugEvent;
import org.jactr.eclipse.runtime.launching.norm.ACTRSession;
import org.jactr.tools.async.message.event.state.RuntimeStateEvent;
public class RuntimeStateMessageHandler extends
org.jactr.tools.async.shadow.handlers.RuntimeStateMessageHandler
{
/**
* Logger definition
*/
static private final transient Log LOGGER = LogFactory
.getLog(RuntimeStateMessageHandler.class);
// @Override
// public void handleMessage(IoSession session, IRuntimeStateEvent message)
// throws Exception
// {
// super.handleMessage(session, message);
//
// switch (message.getState())
// {
// case STARTED:
// break;
// }
// }
@Override
public void accept(ISessionInfo session, RuntimeStateEvent message)
{
super.accept(session, message);
/**
* other than start, the actual state of the runtime is determined by all of
* the ModelState messages that we get.
*/
switch (message.getState())
{
case STARTED:
ACTRSession actrSession = (ACTRSession) session
.getAttribute("actrSession");
/*
* lets fire a BS break point message
*/
if (actrSession != null && actrSession.isDebugSession())
actrSession.getACTRDebugTarget().fireSuspendEvent(
DebugEvent.BREAKPOINT);
break;
// case STOPPED : controller.stopped(); break;
// case SUSPENDED : controller.suspended(); break;
// case RESUMED : controller.resumed(); break;
}
}
}