summaryrefslogtreecommitdiff
path: root/netfs/fuse/fuseApp.h
diff options
context:
space:
mode:
Diffstat (limited to 'netfs/fuse/fuseApp.h')
-rw-r--r--netfs/fuse/fuseApp.h21
1 files changed, 7 insertions, 14 deletions
diff --git a/netfs/fuse/fuseApp.h b/netfs/fuse/fuseApp.h
index df342b6..5b5a8fa 100644
--- a/netfs/fuse/fuseApp.h
+++ b/netfs/fuse/fuseApp.h
@@ -16,7 +16,7 @@
#include <boost/icl/interval_map.hpp>
namespace NetFS {
- class DLL_PUBLIC FuseApp : public FuseAppBase {
+ class DLL_PUBLIC FuseApp : public FuseAppBaseT<FuseApp> {
private:
class OpenDir {
public:
@@ -49,15 +49,12 @@ namespace NetFS {
typedef std::map<int, OpenFilePtr> OpenFiles;
public:
- FuseApp(Ice::StringSeq);
+ FuseApp(Ice::StringSeq &&);
~FuseApp();
- private:
- void * init (struct fuse_conn_info * info) override;
- int opt_parse(void *, const char * arg, int key, struct fuse_args *) override;
-
+ protected:
void connectSession();
- void connectToService();
+ virtual void connectToService();
void connectToVolume();
void connectHandles();
void verifyConnection();
@@ -100,13 +97,10 @@ namespace NetFS {
virtual struct fuse_context * fuse_get_context() = 0;
protected:
- typedef std::function<Client::ResourcePtr()> Configurator;
- Configurator configurator;
- virtual NetFS::Client::ConfigurationPtr ReadConfiguration(const std::filesystem::path &) const;
- virtual NetFS::Client::ResourcePtr configureFromFile(const std::string &, const std::string &) const;
- virtual NetFS::Client::ResourcePtr configureFromUri(const std::string &) const;
+ NetFS::Client::ResourcePtr configureFromFile(const std::filesystem::path &, const std::string &) const;
+ NetFS::Client::ResourcePtr configureFromUri(const std::string &) const;
- private:
+ protected:
template<typename Handle, typename ... Params>
void setProxy(uint64_t & fh, const Params & ...);
template<typename Handle>
@@ -121,7 +115,6 @@ namespace NetFS {
ReqEnv reqEnv();
- Ice::StringSeq iceArgs;
Ice::CommunicatorPtr ic;
Client::ResourcePtr fcr;
mutable std::shared_mutex _proxymaplock;