code: def transport_closed(self, **kwargs):
          
          msg = 'unknown cause'
          self.logger.warning('transport to %s closed : %s' %
                              (self._host, kwargs.get('msg', msg)))
          self._close_info = {
              'reply_code': kwargs.get('reply_code', 0),
              'reply_text': kwargs.get('msg', msg),
              'class_id': kwargs.get('class_id', 0),
              'method_id': kwargs.get('method_id', 0)
          }
  
          # We're not connected any more, but we're not closed without an
          # explicit close call.
          self._connected = False
          self._transport = None
  
          # Call back to a user-provided close function
          self._callback_close()
docs: Called by Transports when they close unexpectedly, not as a result of
          Connection.disconnect().
  
          TODO: document args