private CreateSessionResponse processCreateSession( CreateSessionQuery query ) throws JMSException
{
// Note : acknowledgeMode is forced to CLIENT_ACKNOWLEDGE because we need the autoacknowledge feature
// to happen on the remote side
LocalSession localSession = (LocalSession)getLocalConnection().createSession(query.getSessionId(),
query.isTransacted(),
Session.CLIENT_ACKNOWLEDGE
/*query.getAcknowledgeMode()*/);
// Unregister client inactivity watchdog
if (!hasCreatedASession)
{
hasCreatedASession = true;
ActivityWatchdog.getInstance().unregister(this);
}
// Use an internal hook to bridge the local session to the remote peer
localSession.setNotificationProxy(new RemoteNotificationProxy(localSession.getId(),transport));
return new CreateSessionResponse();
}