[libgames-support] Handle errors inside Importer
- From: Michael Catanzaro <mcatanzaro src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [libgames-support] Handle errors inside Importer
- Date: Sun, 14 Feb 2016 22:00:51 +0000 (UTC)
commit 6a20d928ced041fb0a1c8864bea6dc250dd4976f
Author: Michael Catanzaro <mcatanzaro igalia com>
Date: Sun Feb 14 15:07:13 2016 -0600
Handle errors inside Importer
games/scores/context.vala | 11 ++---------
games/scores/directory-importer.vala | 2 +-
games/scores/importer.vala | 15 +++++++++++----
3 files changed, 14 insertions(+), 14 deletions(-)
---
diff --git a/games/scores/context.vala b/games/scores/context.vala
index 584cd2c..13864f7 100644
--- a/games/scores/context.vala
+++ b/games/scores/context.vala
@@ -103,15 +103,8 @@ public class Context : Object
user_score_dir = Path.build_filename (Environment.get_user_data_dir (), app_name, "scores", null);
- try
- {
- if (importer != null)
- importer.run (user_score_dir);
- }
- catch (Error e)
- {
- warning ("Score importer failed: %s", e.message);
- }
+ if (importer != null)
+ importer.run (this, user_score_dir);
try
{
diff --git a/games/scores/directory-importer.vala b/games/scores/directory-importer.vala
index 7034df4..272e2e2 100644
--- a/games/scores/directory-importer.vala
+++ b/games/scores/directory-importer.vala
@@ -61,7 +61,7 @@ public class DirectoryImporter : Importer
* from /var/games, since it's been several years since scores were removed
* from there and most players will have lost them by now anyway.
*/
- protected override void importOldScores (File new_scores_dir) throws Error
+ protected override void importOldScores (Context context, File new_scores_dir) throws Error
{
var original_scores_dir = new_scores_dir.get_parent ();
assert (original_scores_dir != null);
diff --git a/games/scores/importer.vala b/games/scores/importer.vala
index cf55326..6e559f8 100644
--- a/games/scores/importer.vala
+++ b/games/scores/importer.vala
@@ -65,16 +65,23 @@ namespace Scores {
public abstract class Importer : Object
{
- protected abstract void importOldScores (File new_scores_dir) throws Error;
+ protected abstract void importOldScores (Context context, File new_scores_dir) throws Error;
- internal void run (string new_scores_dir) throws Error
+ internal void run (Context context, string new_scores_dir)
{
var new_dir = File.new_for_path (new_scores_dir);
if (new_dir.query_exists ())
return;
- new_dir.make_directory ();
- importOldScores (new_dir);
+ try
+ {
+ new_dir.make_directory ();
+ importOldScores (context, new_dir);
+ }
+ catch (Error e)
+ {
+ warning ("Failed to import scores: %s", e.message);
+ }
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]