@Override
 public Response processAddSession(SessionInfo info) throws Exception {
   // Avoid replaying dup commands
   if (!state.getSessionIds().contains(info.getSessionId())) {
     protocolManager.addSession(this, info);
     try {
       state.addSession(info);
     } catch (IllegalStateException e) {
       e.printStackTrace();
       protocolManager.removeSession(context, info);
     }
   }
   return null;
 }