'The underlying connection object.
Warning:
This instance is transport specific, so do not
depend on the interface of this object.'

@property
def connection(self):

    if (not self._closed):
        if (not self.connected):
            self.declared_entities.clear()
            self._default_channel = None
            self._connection = self._establish_connection()
            self._closed = False
        return self._connection
