[rygel] core: port schema creation to new database class



commit 2d82626475a196bf35bd0d135211c95895fa3bf5
Author: Jens Georg <mail jensge org>
Date:   Wed Sep 30 13:09:28 2009 +0200

    core: port schema creation to new database class

 src/rygel/rygel-media-db.vala |   41 +++++++++--------------------------------
 1 files changed, 9 insertions(+), 32 deletions(-)
---
diff --git a/src/rygel/rygel-media-db.vala b/src/rygel/rygel-media-db.vala
index 43e4a19..b71295a 100644
--- a/src/rygel/rygel-media-db.vala
+++ b/src/rygel/rygel-media-db.vala
@@ -499,39 +499,16 @@ public class Rygel.MediaDB : Object {
      * @returns: true on success, false on failure
      */
     private bool create_schema () {
-        var rc = db.exec ("BEGIN");
-        if (rc == Sqlite.OK) {
-            rc = db.exec (SCHEMA_STRING);
-            if (rc == Sqlite.OK) {
-                debug ("succeeded in schema creation");
-                rc = db.exec (CREATE_TRIGGER_STRING);
-                if (rc == Sqlite.OK) {
-                    debug ("succeeded in trigger creation");
-                    rc = db.exec ("COMMIT");
-                    if (rc == Sqlite.OK) {
-                        return true;
-                    } else {
-                        warning ("Failed to commit schema: %d %s",
-                                 rc,
-                                 db.errmsg ());
-                    }
-                } else {
-                    warning ("Failed to create triggers: %d %s",
-                             rc,
-                             db.errmsg ());
-                }
-            } else {
-                warning ("Failed to create tables: %d %s",
-                         rc,
-                         db.errmsg ());
-            }
-        } else {
-            warning ("Failed to start transaction: %d %s",
-                     rc,
-                     db.errmsg ());
+        try {
+            db.begin ();
+            db.exec (SCHEMA_STRING);
+            db.exec (CREATE_TRIGGER_STRING);
+            db.commit ();
+            return true;
+        } catch (Error err) {
+            warning ("Failed to create schema: %s", err.message);
+            db.rollback ();
         }
-
-        db.exec ("ROLLBACK");
         return false;
 
    }



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