fn session_socket_ready(
        &mut self, 
        session_id: u32, 
        event_loop: &mut EventLoop<Self>, 
        event_set: EventSet) -> SocketEventResult {
        let res = match self.get_session_context_mut(session_id) {
            Some(ctx) => ctx.socket_ready(event_loop, event_set),
            None      => Ok(Some(0))
        };
        
        match res {
            Err(err) => {
                log_warn!(self.logger, "service connection error (session ID: {:08x}): {}", session_id, err.description());
                self.flush_session(session_id, event_loop);
                self.send_hup_message(session_id, 2, event_loop);
                self.remove_session_context(session_id, event_loop);
            },
            Ok(None) => {
                log_info!(self.logger, "service connection closed (session ID: {:08x})", session_id);
                self.flush_session(session_id, event_loop);
                self.send_hup_message(session_id, 0, event_loop);
                self.remove_session_context(session_id, event_loop);
            },
            Ok(Some(size)) if size > 0 => {
                self.stream.enable_socket_events(true, true, event_loop);
            },
            _ => ()
        }
        
        Ok(None)
    }
/// Process all notifications for a given remote session socket.
Process all notifications for a given remote session socket.
Process all notifications for a given remote session socket .
fn session_socket_ready(
        &mut self, 
        session_id: u32, 
        event_loop: &mut EventLoop<Self>, 
        event_set: EventSet) -> SocketEventResult {
        let res = match self.get_session_context_mut(session_id) {
            Some(ctx) => ctx.socket_ready(event_loop, event_set),
            None      => Ok(Some(0))
        };
        match res {
            Err(err) => {
                log_warn!(self.logger, "service connection error (session ID: {:08x}): {}", session_id, err.description());
                self.flush_session(session_id, event_loop);
                self.send_hup_message(session_id, 2, event_loop);
                self.remove_session_context(session_id, event_loop);
            },
            Ok(None) => {
                log_info!(self.logger, "service connection closed (session ID: {:08x})", session_id);
                self.flush_session(session_id, event_loop);
                self.send_hup_message(session_id, 0, event_loop);
                self.remove_session_context(session_id, event_loop);
            },
            Ok(Some(size)) if size > 0 => {
                self.stream.enable_socket_events(true, true, event_loop);
            },
            _ => ()
        }
        Ok(None)
    }
fn session_socket_ready ( & mut self , session_id : u32 , event_loop : & mut EventLoop < Self > , event_set : EventSet ) -> SocketEventResult { let res = match self . get_session_context_mut ( session_id ) { Some ( ctx ) => ctx . socket_ready ( event_loop , event_set ) , None => Ok ( Some ( 0 ) ) } ; match res { Err ( err ) => { log_warn ! ( self logger " " session_id err description ( ) ) ; self . flush_session ( session_id , event_loop ) ; self . send_hup_message ( session_id , 2 , event_loop ) ; self . remove_session_context ( session_id , event_loop ) ; } , Ok ( None ) => { log_info ! ( self logger " " session_id ) ; self . flush_session ( session_id , event_loop ) ; self . send_hup_message ( session_id , 0 , event_loop ) ; self . remove_session_context ( session_id , event_loop ) ; } , Ok ( Some ( size ) ) if size > 0 => { self . stream . enable_socket_events ( true , true , event_loop ) ; } , _ => ( ) } Ok ( None ) }
Process all notifications for a given remote session socket.
Process all notifications for a given remote session socket .
&mut self
session_id
u32
event_loop
&mut EventLoop<Self>
event_set
EventSet
&mut self
session_id
u32
event_loop
&mut EventLoop<Self>
event_set
EventSet