[Gd-chatter] r11093 - trunk/libraries/network/koala/sources/examples/buddha
hannes at gwydiondylan.org
hannes at gwydiondylan.org
Thu Dec 21 02:38:04 CET 2006
Author: hannes
Date: Thu Dec 21 02:38:02 2006
New Revision: 11093
Modified:
trunk/libraries/network/koala/sources/examples/buddha/buddha.dylan
trunk/libraries/network/koala/sources/examples/buddha/vlan.dylan
Log:
Bug: 7257
*csv-export for arien
Modified: trunk/libraries/network/koala/sources/examples/buddha/buddha.dylan
==============================================================================
--- trunk/libraries/network/koala/sources/examples/buddha/buddha.dylan (original)
+++ trunk/libraries/network/koala/sources/examples/buddha/buddha.dylan Thu Dec 21 02:38:02 2006
@@ -125,6 +125,8 @@
respond-to-get(#"tinydns", request, response);
end;
+define page export end;
+
define responder root ("/")
(request, response)
moved-permanently-redirect(location: "/vlan",
@@ -427,6 +429,14 @@
print-tinydns-zone-file(zone, output-stream(response));
end;
+define method respond-to-get
+ (page == #"export",
+ request :: <request>,
+ response :: <response>,
+ #key errors)
+ set-content-type(response, "text/plain");
+ do(curry(print-export-summary, output-stream(response)), sort(storage(<vlan>)));
+end;
define method respond-to-post
(page,
Modified: trunk/libraries/network/koala/sources/examples/buddha/vlan.dylan
==============================================================================
--- trunk/libraries/network/koala/sources/examples/buddha/vlan.dylan (original)
+++ trunk/libraries/network/koala/sources/examples/buddha/vlan.dylan Thu Dec 21 02:38:02 2006
@@ -21,3 +21,17 @@
=> (res :: <boolean>)
a.number < b.number
end;
+
+define function print-export-summary (stream :: <stream>, dvlan :: <vlan>)
+ let subs = map(curry(as, <string>),
+ choose(method(x)
+ x.vlan = dvlan
+ end, storage(<subnet>)));
+ format(stream, "%s,%s,%s,%s\n",
+ dvlan.name, dvlan.number, dvlan.description,
+ if (subs.size > 0)
+ reduce1(method(a, b) concatenate(a, ",", b) end, subs)
+ else
+ ""
+ end)
+end;
More information about the chatter
mailing list