aboutsummaryrefslogtreecommitdiff
path: root/zenserver/upstream/jupiter.h
diff options
context:
space:
mode:
Diffstat (limited to 'zenserver/upstream/jupiter.h')
-rw-r--r--zenserver/upstream/jupiter.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/zenserver/upstream/jupiter.h b/zenserver/upstream/jupiter.h
index d8844279e..9573a1631 100644
--- a/zenserver/upstream/jupiter.h
+++ b/zenserver/upstream/jupiter.h
@@ -2,6 +2,7 @@
#pragma once
+#include <zencore/iohash.h>
#include <zencore/logging.h>
#include <zencore/refcount.h>
#include <zencore/thread.h>
@@ -53,6 +54,16 @@ struct CloudCacheResult
bool Success = false;
};
+struct PutRefResult : CloudCacheResult
+{
+ std::vector<IoHash> Needs;
+};
+
+struct FinalizeRefResult : CloudCacheResult
+{
+ std::vector<IoHash> Needs;
+};
+
/**
* Context for performing Jupiter operations
*
@@ -76,11 +87,13 @@ public:
CloudCacheResult PutDerivedData(std::string_view BucketId, std::string_view Key, IoBuffer DerivedData);
CloudCacheResult PutDerivedData(std::string_view BucketId, const IoHash& Key, IoBuffer DerivedData);
- CloudCacheResult PutRef(std::string_view BucketId, const IoHash& Key, IoBuffer Ref, ZenContentType RefType);
+ PutRefResult PutRef(std::string_view BucketId, const IoHash& Key, IoBuffer Ref, ZenContentType RefType);
CloudCacheResult PutBlob(const IoHash& Key, IoBuffer Blob);
CloudCacheResult PutCompressedBlob(const IoHash& Key, IoBuffer Blob);
CloudCacheResult PutObject(const IoHash& Key, IoBuffer Object);
+ FinalizeRefResult FinalizeRef(std::string_view BucketId, const IoHash& Key, const IoHash& RefHah);
+
CloudCacheResult DerivedDataExists(std::string_view BucketId, std::string_view Key);
CloudCacheResult DerivedDataExists(std::string_view BucketId, const IoHash& Key);
CloudCacheResult RefExists(std::string_view BucketId, const IoHash& Key);