59 std::chrono::time_point<std::chrono::steady_clock>
startTime;
89 virtual void closeWrite() = 0;
91 std::exception_ptr processStderr(
Sink * sink = 0,
Source * source = 0,
bool flush =
true);
105 bool daemonException =
false;
110 : handle(std::move(handle))
111 , handlerThreads(handlerThreads)
115 ConnectionHandle(ConnectionHandle && h)
116 : handle(std::move(h.handle))
117 , handlerThreads(h.handlerThreads)
118 , daemonException(h.daemonException)
120 h.daemonException =
false;
128 void processStderr(
Sink * sink = 0,
Source * source = 0,
bool flush =
true);
130 void withFramedSink(std::function<
void(
Sink & sink)> fun);
131 kj::Promise<Result<void>>
132 withFramedSinkAsync(std::function<kj::Promise<Result<void>>(
Sink & sink)> fun);
135 struct FramedSinkHandler
137 std::exception_ptr ex;
138 std::packaged_task<void()> stderrHandler;
140 explicit FramedSinkHandler(ConnectionHandle & conn,
ThreadPool & handlerThreads);
142 ~FramedSinkHandler()
noexcept(
false);
Definition thread-pool.hh:26
Definition serialise.hh:124
Definition serialise.hh:156
Definition remote-store-connection.hh:102
Definition remote-store-connection.hh:18
WorkerProto::Version daemonVersion
Definition remote-store-connection.hh:33
std::optional< TrustedFlag > remoteTrustsUs
Definition remote-store-connection.hh:46
std::chrono::time_point< std::chrono::steady_clock > startTime
Definition remote-store-connection.hh:59
std::optional< std::string > daemonNixVersion
Definition remote-store-connection.hh:54
FdSink to
Definition remote-store-connection.hh:22
FdSource from
Definition remote-store-connection.hh:27
Definition serialise.hh:18
Definition serialise.hh:66
Definition worker-protocol.hh:76
Definition worker-protocol.hh:89
unsigned int Version
Definition worker-protocol.hh:70