• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #pragma once
2 #include <memory>
3 
4 #include "rust/cxx.h"
5 
6 namespace org {
7 namespace blobstore {
8 
9 struct MultiBuf;
10 struct BlobMetadata;
11 
12 class BlobstoreClient {
13    public:
14     BlobstoreClient();
15     uint64_t put(MultiBuf &buf) const;
16     void tag(uint64_t blobid, rust::Str tag) const;
17     BlobMetadata metadata(uint64_t blobid) const;
18 
19    private:
20     class impl;
21     std::shared_ptr<impl> impl;
22 };
23 
24 std::unique_ptr<BlobstoreClient> new_blobstore_client();
25 
26 }  // namespace blobstore
27 }  // namespace org
28