code: def _list(self, uri, obj_class=None, list_all=False):
          
          resp, resp_body = self._retry_get(uri)
          if obj_class is None:
              obj_class = self.resource_class
  
          data = resp_body[self.plural_response_key]
          ret = [obj_class(self, res, loaded=False)
                  for res in data if res]
          self._reset_paging("domain", resp_body)
          if list_all:
              dom_paging = self._paging.get("domain", {})
              while dom_paging.get("next_uri"):
                  next_uri = dom_paging.get("next_uri")
                  ret.extend(self._list(uri=next_uri, obj_class=obj_class,
                          list_all=False))
          return ret
docs: Handles the communication with the API when getting
          a full listing of the resources managed by this class.