[gjs] [examples] Add a cat example using gio



commit ed78cf159ac4d053f74a05a3c3cb2807190c0430
Author: Johan Dahlin <johan gnome org>
Date:   Wed Feb 17 09:13:02 2010 -0200

    [examples] Add a cat example using gio

 Makefile-examples.am |    1 +
 examples/gio-cat.js  |   26 ++++++++++++++++++++++++++
 2 files changed, 27 insertions(+), 0 deletions(-)
---
diff --git a/Makefile-examples.am b/Makefile-examples.am
index dd6f464..70d59a0 100644
--- a/Makefile-examples.am
+++ b/Makefile-examples.am
@@ -1,5 +1,6 @@
 EXTRA_DIST +=			        \
 	examples/clutter.js		\
+	examples/gio-cat.js                 \
 	examples/gtk.js                 \
 	examples/http-server.js		\
         examples/test.jpg
diff --git a/examples/gio-cat.js b/examples/gio-cat.js
new file mode 100644
index 0000000..c2c3bfe
--- /dev/null
+++ b/examples/gio-cat.js
@@ -0,0 +1,26 @@
+const Gio = imports.gi.Gio;
+const Mainloop = imports.mainloop;
+
+function cat(filename) {
+    let f = Gio.file_new_for_path(filename);
+    f.load_contents_async(null, function(f, res) {
+        let contents;
+        try {
+            contents = f.load_contents_finish(res)[1];
+        } catch (e) {
+            log("*** ERROR: " + e.message);
+            Mainloop.quit('');
+            return;
+        }
+        print(contents);
+        Mainloop.quit('');
+    }, null);
+
+    Mainloop.run('');
+}
+
+if (ARGV.length != 1) {
+    printerr("Usage: gio-cat.js filename");
+} else {
+    cat(ARGV[0]);
+}



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