projects
/
gitlive
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
GitRepo.vala
[gitlive]
/
GitRepo.vala
diff --git
a/GitRepo.vala
b/GitRepo.vala
index
048bc47
..
6954437
100644
(file)
--- a/
GitRepo.vala
+++ b/
GitRepo.vala
@@
-29,6
+29,7
@@
public class GitRepo : Object
public Gee.HashMap<string,GitBranch> branches; // accessed in GitBranch..
public RooTicket? activeTicket;
public Gee.HashMap<string,GitRepo> cache;
public Gee.HashMap<string,GitBranch> branches; // accessed in GitBranch..
public RooTicket? activeTicket;
public Gee.HashMap<string,GitRepo> cache;
+ public Gee.HashMap<string,string> config_cache;
@@
-155,7
+156,8
@@
public class GitRepo : Object
*
*/
*
*/
- private GitRepo(string path) {
+ private GitRepo(string path)
+ {
// cal parent?
this.name = File.new_for_path(path).get_basename();
this.ignore_files = new Gee.HashMap<string,bool>();
// cal parent?
this.name = File.new_for_path(path).get_basename();
this.ignore_files = new Gee.HashMap<string,bool>();
@@
-191,6
+193,7
@@
public class GitRepo : Object
}
public void init_config()
{
}
public void init_config()
{
+ this.config_cache = new Gee.HashMap<string,string>();
// managed =
if (this.get_config("managed") == "") {
this.set_config("managed", this.host == "git.roojs.com" ? "1" : "0");
// managed =
if (this.get_config("managed") == "") {
this.set_config("managed", this.host == "git.roojs.com" ? "1" : "0");
@@
-201,20
+204,32
@@
public class GitRepo : Object
if (this.get_config("autopush") == "") {
this.set_config("autopush", this.host == "git.roojs.com" ? "1" : "0");
}
if (this.get_config("autopush") == "") {
this.set_config("autopush", this.host == "git.roojs.com" ? "1" : "0");
}
+
}
public string get_config(string key) {
}
public string get_config(string key) {
+
+ if (this.config_cache.has_key(key)) {
+ //GLib.debug("get_config %s = '%s'", key, this.config_cache.get(key));
+ return this.config_cache.get(key);
+ }
try {
try {
- return this.git({ "config" , "gitlive." + key });
+ var ret = this.git({ "config" , "gitlive." + key }).strip();
+ this.config_cache.set(key, ret);
+ //GLib.debug("get_config %s = '%s'", key, ret);
+ return ret;
} catch (Error e) {
} catch (Error e) {
+ this.config_cache.set(key, "");
+ //GLib.debug("get_config (fail) %s = '%s'", key, "");
return ""; // happens when there is nothing set...
}
}
public void set_config(string key, string value) {
this.git({ "config" , "gitlive." + key, value });
return ""; // happens when there is nothing set...
}
}
public void set_config(string key, string value) {
this.git({ "config" , "gitlive." + key, value });
+ this.config_cache.set(key,value);
}
public bool is_managed()
}
public bool is_managed()
@@
-872,7
+887,7
@@
public class GitRepo : Object
}
repo.update_async(updateAllCallback);
}
}
repo.update_async(updateAllCallback);
}
- GLib.debug("calls total = %d", update_all_total);
+ GLib.debug("calls total = %d",
(int)
update_all_total);
}
public static void updateAllCallback(GitRepo repo, int err, string res)
{
}
public static void updateAllCallback(GitRepo repo, int err, string res)
{
@@
-880,16
+895,19
@@
public class GitRepo : Object
repo.loadStatus();
update_all_total--;
repo.loadStatus();
update_all_total--;
- GLib.debug("calls remaining = %d",
update_all_total);
+ GLib.debug("calls remaining = %d",
(int)update_all_total);
if (update_all_total > 0 ) {
return;
}
if (update_all_total > 0 ) {
return;
}
+ GLib.debug("call after load = %s", update_all_after);
+
switch (update_all_after) {
case "show_clones":
Clones.singleton().show();
break;
default:
switch (update_all_after) {
case "show_clones":
Clones.singleton().show();
break;
default:
+ GLib.debug("Unkown call after load = %s", update_all_after);
break;
}
return;
break;
}
return;