[gitg/commit] Override repository lookup using generics



commit 09b094d6c8319dc7a1de8c93e2d7d18c91d2a99e
Author: Jesse van den Kieboom <jessevdk gmail com>
Date:   Sat Jun 29 19:27:58 2013 +0200

    Override repository lookup using generics

 libgitg/gitg-commit-model.vala |    2 +-
 libgitg/gitg-repository.vala   |    7 ++++++-
 2 files changed, 7 insertions(+), 2 deletions(-)
---
diff --git a/libgitg/gitg-commit-model.vala b/libgitg/gitg-commit-model.vala
index 2d0fef7..5d342be 100644
--- a/libgitg/gitg-commit-model.vala
+++ b/libgitg/gitg-commit-model.vala
@@ -320,7 +320,7 @@ namespace Gitg
                                                        break;
                                                }
 
-                                               commit = d_repository.lookup(id, typeof(Commit)) as Commit;
+                                               commit = d_repository.lookup<Commit>(id);
                                        } catch { break; }
 
                                        // Add the id
diff --git a/libgitg/gitg-repository.vala b/libgitg/gitg-repository.vala
index f46d3c1..11a1f32 100644
--- a/libgitg/gitg-repository.vala
+++ b/libgitg/gitg-repository.vala
@@ -101,7 +101,7 @@ public class Repository : Ggit.Repository
                                // a ref to the underlying commit the tag points to
                                try
                                {
-                                       var tag = lookup(id, typeof(Ggit.Tag)) as Ggit.Tag;
+                                       var tag = lookup<Ggit.Tag>(id);
 
                                        // get the target id
                                        id = tag.get_target_id();
@@ -125,6 +125,11 @@ public class Repository : Ggit.Repository
                return d_refs.lookup(id);
        }
 
+       public new T? lookup<T>(Ggit.OId id) throws Error
+       {
+               return (T?)base.lookup(id, typeof(T));
+       }
+
        // Wrappers for Gitg.Ref
        public new Ref lookup_reference(string name) throws Error
        {


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