code: public void updateTrafficControl(T session) {
          try {
              setInterestedInRead(session, !session.isReadSuspended());
          } catch (Exception e) {
              IoFilterChain filterChain = session.getFilterChain();
              filterChain.fireExceptionCaught(e);
          }
          
          try {
              setInterestedInWrite(session, 
                  !session.getWriteRequestQueue().isEmpty(session) && 
                  !session.isWriteSuspended());
          } catch (Exception e) {
              IoFilterChain filterChain = session.getFilterChain();
              filterChain.fireExceptionCaught(e);
          }
      }
docs: {@inheritDoc}