blob: 35171c769ab83261fc1397b5b8c19314872fe5e4 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
#include "libproto/worker.grpc.pb.h"
#include "libproto/worker.pb.h"
#include "libstore/store-api.hh"
namespace nix::daemon {
using ::grpc::Status;
using ::nix::proto::StorePath;
using ::nix::proto::Worker;
class WorkerServiceImpl final : public Worker::Service {
public:
WorkerServiceImpl(nix::Store* store) : store_(store) {}
Status IsValidPath(grpc::ServerContext* context, const StorePath* request,
nix::proto::IsValidPathResponse* response) {
const auto& path = request->path();
store_->assertStorePath(path);
response->set_is_valid(store_->isValidPath(path));
return Status::OK;
}
private:
// TODO(tazjin): Who owns the store?
nix::Store* store_;
};
} // namespace nix::daemon
|