[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[dak/master] dakweb: add rmadison query (still incomplete)



---
 dakweb/dakwebserver.py    |    1 +
 dakweb/queries/madison.py |   31 +++++++++++++++++++++++++++++++
 2 files changed, 32 insertions(+)
 create mode 100644 dakweb/queries/madison.py

diff --git a/dakweb/dakwebserver.py b/dakweb/dakwebserver.py
index 24c729c..6102f84 100755
--- a/dakweb/dakwebserver.py
+++ b/dakweb/dakwebserver.py
@@ -33,6 +33,7 @@ QueryRegister().register_path('/path_help', list_paths)
 
 # Import our other methods
 from queries.archive import *
+from queries.madison import *
 from queries.source import *
 from queries.suite import *
 
diff --git a/dakweb/queries/madison.py b/dakweb/queries/madison.py
new file mode 100644
index 0000000..469f9c8
--- /dev/null
+++ b/dakweb/queries/madison.py
@@ -0,0 +1,31 @@
+import bottle
+import json
+
+from daklib.ls import list_packages
+from dakweb.webregister import QueryRegister
+
+@bottle.route('/madison')
+def madison():
+    r = bottle.request
+
+    packages = r.query.get('package', '').split()
+    kwargs = dict()
+
+    binary_type = r.query.get('b', None)
+    if binary_type is not None:
+        kwargs['binary_types'] = [binary_type]
+    component = r.query.get('c', None)
+    if component is not None:
+        kwargs['components'] = component.split(",")
+    suite = r.query.get('s', None)
+    if suite is not None:
+        kwargs['suites'] = suite.split(",")
+    if 'S' in r.query:
+        kwargs['source_and_binary'] = True
+    #if 'r' in r.query:
+    #    kwargs['regex'] = True
+
+    result = list_packages(packages, **kwargs)
+    return "\n".join(result) + "\n"
+
+QueryRegister().register_path('/madison', madison)
-- 
1.7.10.4


Reply to: