summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/prserv/serv.py
diff options
context:
space:
mode:
Diffstat (limited to 'bitbake/lib/prserv/serv.py')
-rw-r--r--bitbake/lib/prserv/serv.py28
1 files changed, 28 insertions, 0 deletions
diff --git a/bitbake/lib/prserv/serv.py b/bitbake/lib/prserv/serv.py
index efb2e0cf93..86bd3bb75f 100644
--- a/bitbake/lib/prserv/serv.py
+++ b/bitbake/lib/prserv/serv.py
@@ -26,6 +26,9 @@ class PRServerClient(bb.asyncrpc.AsyncServerConnection):
26 26
27 self.handlers.update({ 27 self.handlers.update({
28 "get-pr": self.handle_get_pr, 28 "get-pr": self.handle_get_pr,
29 "test-pr": self.handle_test_pr,
30 "test-package": self.handle_test_package,
31 "max-package-pr": self.handle_max_package_pr,
29 "import-one": self.handle_import_one, 32 "import-one": self.handle_import_one,
30 "export": self.handle_export, 33 "export": self.handle_export,
31 "is-readonly": self.handle_is_readonly, 34 "is-readonly": self.handle_is_readonly,
@@ -43,6 +46,31 @@ class PRServerClient(bb.asyncrpc.AsyncServerConnection):
43 else: 46 else:
44 self.server.table.sync_if_dirty() 47 self.server.table.sync_if_dirty()
45 48
49 async def handle_test_pr(self, request):
50 '''Finds the PR value corresponding to the request. If not found, returns None and doesn't insert a new value'''
51 version = request["version"]
52 pkgarch = request["pkgarch"]
53 checksum = request["checksum"]
54
55 value = self.server.table.find_value(version, pkgarch, checksum)
56 return {"value": value}
57
58 async def handle_test_package(self, request):
59 '''Tells whether there are entries for (version, pkgarch) in the db. Returns True or False'''
60 version = request["version"]
61 pkgarch = request["pkgarch"]
62
63 value = self.server.table.test_package(version, pkgarch)
64 return {"value": value}
65
66 async def handle_max_package_pr(self, request):
67 '''Finds the greatest PR value for (version, pkgarch) in the db. Returns None if no entry was found'''
68 version = request["version"]
69 pkgarch = request["pkgarch"]
70
71 value = self.server.table.find_max_value(version, pkgarch)
72 return {"value": value}
73
46 async def handle_get_pr(self, request): 74 async def handle_get_pr(self, request):
47 version = request["version"] 75 version = request["version"]
48 pkgarch = request["pkgarch"] 76 pkgarch = request["pkgarch"]