MmiDetailedSessionListener implements DetailedSessionListener { @Override public void sessionEvent(final Session session, final JVoiceXMLEvent event) { final DataModel model = ((JVoiceXmlSession) session).getDataModel(); final Mmi mmi = convertJVoiceXMLEvent(model, event); try { final Object channel = context.getChannel(); adapter.sendMMIEvent(channel, mmi); } catch (IOException e) { LOGGER.error(e.getMessage(), e); } } MmiDetailedSessionListener(final ETLProtocolAdapter protocolAdapter,
            final MMIContext ctx,
            final ExtensionNotificationDataConverter conv); @Override void sessionStarted(final Session session); @Override void sessionEvent(final Session session,
            final JVoiceXMLEvent event); @Override void sessionEnded(final Session session);  }
@Test public void testSessionEventQueueEMpty() throws Exception { final MMIContext context = new MMIContext(UUID.randomUUID().toString()); final XmlExtensionNotificationDataConverter converter = new XmlExtensionNotificationDataConverter(); final MockETLProtocolAdapter adapter = new MockETLProtocolAdapter(); final MmiDetailedSessionListener listener = new MmiDetailedSessionListener( adapter, context, converter); final QueueEmptyEvent empty = new QueueEmptyEvent(null, null); listener.sessionEvent(null, empty); System.out.println(adapter.getMmiAsString()); }