sapling/eden/fs/fuse
Adam Simpkins c5f4ea6f8b update FuseChannel::initialize() to return the completion future
Summary:
Remove the `FuseChannel::getSessionCompleteFuture()` method and instead have
`initialize()` and `initializeFromTakeover()` return the `Future` that can be
used to wait on session completion.

This makes it explicit from an API perspective that this session completion
future will only be invoked if initialization is successful.  It also
eliminates the possibility of anyone calling getSessionCompleteFuture() more
than once.

I also changed the session completion future to use a folly::SemiFuture rather
than a folly::Future, to make it explicit that callers generally should not
execute their callback inline in the same thread where the SemiFuture is
fulfilled.

Reviewed By: chadaustin

Differential Revision: D7297835

fbshipit-source-id: 3a1157951f0738f1692833ed5e875c3e9c6d6d69
2018-03-16 12:35:19 -07:00
..
privhelper don't swallow sudo's stdout and stderr in eden daemon 2018-03-14 12:46:19 -07:00
test update FuseChannel::initialize() to return the completion future 2018-03-16 12:35:19 -07:00
BufVec.cpp allow returning the open file handle before the load/materialize completes 2017-12-05 11:21:26 -08:00
BufVec.h allow returning the open file handle before the load/materialize completes 2017-12-05 11:21:26 -08:00
DirHandle.h run clang-format across all C++ files 2017-11-03 16:02:03 -07:00
DirList.cpp Misc cleanup of cpp files in eden/fs/fuse/ 2018-01-17 13:41:19 -08:00
DirList.h run clang-format across all C++ files 2017-11-03 16:02:03 -07:00
Dispatcher.cpp clean up fuse init processing 2018-01-31 15:08:42 -08:00
Dispatcher.h clean up fuse init processing 2018-01-31 15:08:42 -08:00
EdenStats.cpp run clang-format across all C++ files 2017-11-03 16:02:03 -07:00
EdenStats.h run clang-format across all C++ files 2017-11-03 16:02:03 -07:00
FileHandle.cpp run clang-format across all C++ files 2017-11-03 16:02:03 -07:00
FileHandle.h run clang-format across all C++ files 2017-11-03 16:02:03 -07:00
FileHandleBase.cpp run clang-format across all C++ files 2017-11-03 16:02:03 -07:00
FileHandleBase.h remove dep on libfuse 2018-01-02 16:36:16 -08:00
FileHandleMap.cpp make it annoying to use InodeNumber as an integer 2018-02-27 12:44:41 -08:00
FileHandleMap.h open file handles now survive graceful restart 2018-01-09 22:23:11 -08:00
FuseChannel.cpp update FuseChannel::initialize() to return the completion future 2018-03-16 12:35:19 -07:00
FuseChannel.h update FuseChannel::initialize() to return the completion future 2018-03-16 12:35:19 -07:00
FuseTypes.cpp make it annoying to use InodeNumber as an integer 2018-02-27 12:44:41 -08:00
FuseTypes.h add an operator for InodeNumber literals 2018-03-15 18:20:29 -07:00
handlemap.thrift move InodeMap serialization to new takeover.thrift file 2018-01-17 11:51:30 -08:00
PollHandle.cpp run clang-format across all C++ files 2017-11-03 16:02:03 -07:00
PollHandle.h Added joinAndNormalize to PathFuncs with test plus minor cleanup. 2018-01-04 10:11:38 -08:00
RequestData.cpp run clang-format across eden 2018-01-26 11:20:31 -08:00
RequestData.h re-enable FUSE_INTERRUPT support 2018-01-02 16:36:16 -08:00