summaryrefslogtreecommitdiff
path: root/src/dir.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/dir.h')
-rw-r--r--src/dir.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/dir.h b/src/dir.h
index 74afde3..7174976 100644
--- a/src/dir.h
+++ b/src/dir.h
@@ -6,17 +6,22 @@
namespace GitFS {
using namespace NetFS;
+ class Repo;
class Directory : public DirectoryV2 {
public:
- Directory(const GitFS::Git::TreePtr & r, const std::string &);
+ Directory(const Repo * r, const std::string &);
void close(const ::Ice::Current& current) override;
NameList readdir(const ::Ice::Current& current) override;
DirectoryContents listdir(const ::Ice::Current& current) override;
private:
- Git::TreePtr tree;
+ Git::TreePtr getSubtree() const;
+ const Repo * repo;
const std::string path;
+
+ mutable Git::TreePtr subTreeCache;
+ mutable git_oid subTreeCacheRootId;
};
}