diff options
author | Matias Linares <matias.linares@comprandoengrupo.net> | 2024-10-04 18:30:17 -0300 |
---|---|---|
committer | Matias Linares <matias.linares@comprandoengrupo.net> | 2024-10-04 18:30:17 -0300 |
commit | e9c7736ff83b9003eba960edebd2653bd5a4021f (patch) | |
tree | 81c2da8c4d1c79f465e6eb1e35f22ec597acd2ef /kodereviewer/network_manager.py | |
parent | 332828d03ae455c9a3ada0f57a08bf0942082824 (diff) | |
download | kodereviewer-e9c7736ff83b9003eba960edebd2653bd5a4021f.tar.gz |
Fix a lot of warnings and add file view
Diffstat (limited to 'kodereviewer/network_manager.py')
-rw-r--r-- | kodereviewer/network_manager.py | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/kodereviewer/network_manager.py b/kodereviewer/network_manager.py index 62b6047..ebc2797 100644 --- a/kodereviewer/network_manager.py +++ b/kodereviewer/network_manager.py @@ -5,6 +5,7 @@ from PySide6.QtCore import QObject, QSettings, Signal, Slot, Property, qDebug from PySide6.QtNetwork import QHttpHeaders, QNetworkAccessManager, QNetworkReply, QNetworkRequestFactory from PySide6.QtQml import QmlElement +from kodereviewer.data import PullRequest from kodereviewer.project import Project QML_IMPORT_NAME = "org.deprecated.kodereviewer" @@ -12,6 +13,7 @@ QML_IMPORT_MAJOR_VERSION = 1 PULL_REQUEST_LIST_URL = re.compile(r'/pulls$') COMMENT_LIST_URL = re.compile(r'/issues/(\d+)/comments') +FILE_LIST_URL = re.compile(r'/pulls/(\d+)/files') @QmlElement @@ -69,6 +71,11 @@ class NetworkManager(QObject): pull_request = self._project.find_pull_request(pull_request_number) if pull_request is not None: pull_request.load_comments(response_body) + elif (match := FILE_LIST_URL.search(reply.url().toString())): + pull_request_number = int(match.groups()[0]) + pull_request: Optional[PullRequest] = self._project.find_pull_request(pull_request_number) + if pull_request is not None: + pull_request.load_files(response_body) else: print(f"Can't handle {reply.url()}") @@ -79,3 +86,7 @@ class NetworkManager(QObject): @Slot(int) def getPullRequestComments(self, number: int) -> None: self._manager.get(self._request_factory.createRequest(f'/issues/{number}/comments')) + + @Slot(int) + def getFiles(self, pull_request_number) -> None: + self._manager.get(self._request_factory.createRequest(f'/pulls/{pull_request_number}/files')) |