reorganized component and repository code into separate modules
[matrix.git] / matrix / cache.py
index 4d11299..df1052d 100644 (file)
@@ -39,7 +39,7 @@ def contains(c):
 
        hash, flagstring = match.groups()
 
-       if hash != get_component_hash(c):
+       if hash != get_hash(c):
                if config.debug:
                        print 'New changes in', c.repo.path
                return False
@@ -66,7 +66,7 @@ def update(c):
        file = open(path, 'w')
        done = False
        try:
-               print >>file, get_component_hash(c), ','.join(c.flags)
+               print >>file, get_hash(c), ','.join(c.flags)
                done = True
        finally:
                file.close()
@@ -81,11 +81,5 @@ def remove(c):
 def get_path(c):
        return os.path.join(config.cache_dir, c.name)
 
-def get_component_hash(c):
-       return '%s+%s' % (get_repository_hash(c.repo),
-                         get_repository_hash(c.meta))
-
-def get_repository_hash(repo):
-       if repo.active_hash is None:
-               repo.active_hash = git.rev_parse(repo.path, 'HEAD')
-       return repo.active_hash
+def get_hash(c):
+       return '%s+%s' % (c.repo.get_hash(), c.meta.get_hash())