From 4c25da8a7ba7437657c3e2da592145113d3532f4 Mon Sep 17 00:00:00 2001 From: Dan Goodliffe Date: Sat, 20 Jul 2019 10:53:14 +0100 Subject: Initial commit Not a lot of stuff, hard coded paths, tests against /usr/portage --- src/blob.h | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 src/blob.h (limited to 'src/blob.h') diff --git a/src/blob.h b/src/blob.h new file mode 100644 index 0000000..0a2a77d --- /dev/null +++ b/src/blob.h @@ -0,0 +1,27 @@ +#ifndef GITFS_BLOB_H +#define GITFS_BLOB_H + +#include +#include "git.h" + +namespace GitFS { + using namespace NetFS; + class Blob : public File { + public: + Blob(const GitFS::Git::RepositoryPtr & r, const Git::TreeEntryPtr &); + + void close(const ::Ice::Current& current) override; + Attr fgetattr(ReqEnv env, const ::Ice::Current& current) override; + Buffer read(long long int offset, long long int size, const ::Ice::Current& current) override; + void ftruncate(ReqEnv env, long long int size, const ::Ice::Current& current) override; + void write(long long int offset, long long int size, Buffer data, const ::Ice::Current& current) override; + + private: + Git::BlobPtr blob; + const decltype(git_blob_rawsize({})) blobSize; + const char * const blobContent; + }; +} + +#endif + -- cgit v1.2.3