diff options
author | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2015-04-09T09·55+0200 |
---|---|---|
committer | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2015-04-09T09·55+0200 |
commit | c1f04fae350acf9d72c56ef4f83037b479f25ab0 (patch) | |
tree | a6f257952e49bf4077efc0a81adf5e21cfef41ac /src/libstore | |
parent | 60340ce3e2f793caf1704997a4d7a5a066e9ef24 (diff) |
Implement a TTL on cached fetchurl/fetchTarball results
This is because we don't want to do HTTP requests on every evaluation, even though we can prevent a full redownload via the cached ETag. The default is one hour.
Diffstat (limited to 'src/libstore')
-rw-r--r-- | src/libstore/globals.cc | 8 | ||||
-rw-r--r-- | src/libstore/globals.hh | 2 |
2 files changed, 10 insertions, 0 deletions
diff --git a/src/libstore/globals.cc b/src/libstore/globals.cc index e382b3aac03a..f900fb290bdb 100644 --- a/src/libstore/globals.cc +++ b/src/libstore/globals.cc @@ -143,6 +143,14 @@ bool Settings::get(const string & name, bool def) } +int Settings::get(const string & name, int def) +{ + int res = def; + _get(res, name); + return res; +} + + void Settings::update() { _get(tryFallback, "build-fallback"); diff --git a/src/libstore/globals.hh b/src/libstore/globals.hh index 0230a540e655..0a1072e36999 100644 --- a/src/libstore/globals.hh +++ b/src/libstore/globals.hh @@ -27,6 +27,8 @@ struct Settings { bool get(const string & name, bool def); + int get(const string & name, int def); + void update(); string pack(); |