]> git.decadent.org.uk Git - dak.git/blobdiff - dakweb/queries/madison.py
Not nice, but some doc
[dak.git] / dakweb / queries / madison.py
index d27d4784864caa1fbf9b2696dfbf1bcbe6d93eba..9678a36ebeb021fd818ab68401bf6c445b544809 100644 (file)
@@ -6,6 +6,16 @@ from dakweb.webregister import QueryRegister
 
 @bottle.route('/madison')
 def madison():
+    """
+    Display information about packages.
+
+    b=TYPE      only show info for binary TYPE
+    c=COMPONENT only show info for COMPONENT(s)
+    s=SUITE     only show info for this suite
+    S=true      show info for the binary children of source pkgs
+    f=json      output json format
+    """
+
     r = bottle.request
 
     packages = r.query.get('package', '').split()
@@ -24,12 +34,19 @@ def madison():
         kwargs['source_and_binary'] = True
     #if 'r' in r.query:
     #    kwargs['regex'] = True
+    format = r.query.get('f', None)
+    if format is not None:
+        kwargs['format'] = 'python'
 
     result = list_packages(packages, **kwargs)
 
-    bottle.response.content_type = 'text/plain'
-    for row in result:
-        yield row
-        yield "\n"
+    if format is None:
+        bottle.response.content_type = 'text/plain'
+        for row in result:
+            yield row
+            yield "\n"
+    else:
+        yield json.dumps(list(result))
+
 
 QueryRegister().register_path('/madison', madison)