def http_list(self, path, query_data={}, as_list=None, **kwargs):
<EOL>as_list = True if as_list is None else as_list<EOL>get_all = kwargs.pop('<STR_LIT:all>', False)<EOL>url = self._build_url(path)<EOL>if get_all is True:<EOL><INDENT>return list(GitlabList(self, url, query_data, **kwargs))<EOL><DEDENT>if '<STR_LIT>' in kwargs or as_list is True:<EOL><INDENT>return list(GitlabList(self, url, query_data, get_next=False,<EOL>**kwargs))<EOL><DEDENT>return GitlabList(self, url, query_data, **kwargs)<EOL>
Make a GET request to the Gitlab server for list-oriented queries.

        Args:
            path (str): Path or full URL to query ('/projects' or
                        'http://whatever/v4/api/projecs')
            query_data (dict): Data to send as query parameters
            **kwargs: Extra options to send to the server (e.g. sudo, page,
                      per_page)

        Returns:
            list: A list of the objects returned by the server. If `as_list` is
            False and no pagination-related arguments (`page`, `per_page`,
            `all`) are defined then a GitlabList object (generator) is returned
            instead. This object will make API calls when needed to fetch the
            next items from the server.

        Raises:
            GitlabHttpError: When the return code is not 2xx
            GitlabParsingError: If the json data could not be parsed