aboutsummaryrefslogtreecommitdiff
path: root/zenserver/upstream
diff options
context:
space:
mode:
Diffstat (limited to 'zenserver/upstream')
-rw-r--r--zenserver/upstream/upstreamcache.cpp11
-rw-r--r--zenserver/upstream/upstreamcache.h3
-rw-r--r--zenserver/upstream/upstreamservice.cpp6
-rw-r--r--zenserver/upstream/upstreamservice.h6
4 files changed, 17 insertions, 9 deletions
diff --git a/zenserver/upstream/upstreamcache.cpp b/zenserver/upstream/upstreamcache.cpp
index 657cfb729..206787bf7 100644
--- a/zenserver/upstream/upstreamcache.cpp
+++ b/zenserver/upstream/upstreamcache.cpp
@@ -18,6 +18,7 @@
#include <zenstore/cas.h>
#include <zenstore/cidstore.h>
+#include <auth/authmgr.h>
#include "cache/structuredcachestore.h"
#include "diag/logging.h"
@@ -84,8 +85,9 @@ namespace detail {
class JupiterUpstreamEndpoint final : public UpstreamEndpoint
{
public:
- JupiterUpstreamEndpoint(const CloudCacheClientOptions& Options)
- : m_Log(zen::logging::Get("upstream"))
+ JupiterUpstreamEndpoint(const CloudCacheClientOptions& Options, AuthMgr& Mgr)
+ : m_AuthMgr(Mgr)
+ , m_Log(zen::logging::Get("upstream"))
, m_UseLegacyDdc(Options.UseLegacyDdc)
{
ZEN_ASSERT(!Options.Name.empty());
@@ -513,6 +515,7 @@ namespace detail {
spdlog::logger& Log() { return m_Log; }
+ AuthMgr& m_AuthMgr;
spdlog::logger& m_Log;
UpstreamEndpointInfo m_Info;
UpstreamStatus m_Status;
@@ -1485,9 +1488,9 @@ MakeUpstreamCache(const UpstreamCacheOptions& Options, ZenCacheStore& CacheStore
}
std::unique_ptr<UpstreamEndpoint>
-MakeJupiterUpstreamEndpoint(const CloudCacheClientOptions& Options)
+MakeJupiterUpstreamEndpoint(const CloudCacheClientOptions& Options, AuthMgr& Mgr)
{
- return std::make_unique<detail::JupiterUpstreamEndpoint>(Options);
+ return std::make_unique<detail::JupiterUpstreamEndpoint>(Options, Mgr);
}
std::unique_ptr<UpstreamEndpoint>
diff --git a/zenserver/upstream/upstreamcache.h b/zenserver/upstream/upstreamcache.h
index 2087b1fba..5bc9f58d7 100644
--- a/zenserver/upstream/upstreamcache.h
+++ b/zenserver/upstream/upstreamcache.h
@@ -15,6 +15,7 @@
namespace zen {
+class AuthMgr;
class CbObjectView;
class CbPackage;
class CbObjectWriter;
@@ -203,7 +204,7 @@ public:
std::unique_ptr<UpstreamCache> MakeUpstreamCache(const UpstreamCacheOptions& Options, ZenCacheStore& CacheStore, CidStore& CidStore);
-std::unique_ptr<UpstreamEndpoint> MakeJupiterUpstreamEndpoint(const CloudCacheClientOptions& Options);
+std::unique_ptr<UpstreamEndpoint> MakeJupiterUpstreamEndpoint(const CloudCacheClientOptions& Options, AuthMgr& Mgr);
std::unique_ptr<UpstreamEndpoint> MakeZenUpstreamEndpoint(const ZenStructuredCacheClientOptions& Options);
diff --git a/zenserver/upstream/upstreamservice.cpp b/zenserver/upstream/upstreamservice.cpp
index 1cfd1df85..c8176779e 100644
--- a/zenserver/upstream/upstreamservice.cpp
+++ b/zenserver/upstream/upstreamservice.cpp
@@ -1,9 +1,11 @@
// Copyright Epic Games, Inc. All Rights Reserved.
+#include <auth/authmgr.h>
#include <upstream/jupiter.h>
#include <upstream/upstreamcache.h>
#include <upstream/upstreamservice.h>
#include <upstream/zen.h>
+
#include <zencore/compactbinarybuilder.h>
#include <zencore/string.h>
@@ -64,7 +66,7 @@ namespace {
}
} // namespace
-HttpUpstreamService::HttpUpstreamService(UpstreamCache& Upstream) : m_Upstream(Upstream)
+HttpUpstreamService::HttpUpstreamService(UpstreamCache& Upstream, AuthMgr& Mgr) : m_Upstream(Upstream), m_AuthMgr(Mgr)
{
m_Router.RegisterRoute(
"endpoints",
@@ -179,7 +181,7 @@ HttpUpstreamService::HttpUpstreamService(UpstreamCache& Upstream) : m_Upstream(U
.OAuthSecret = OAuthSecret,
.AccessToken = OAuthToken};
- Endpoint = zen::MakeJupiterUpstreamEndpoint(Options);
+ Endpoint = zen::MakeJupiterUpstreamEndpoint(Options, m_AuthMgr);
}
m_Upstream.RegisterEndpoint(std::move(Endpoint));
diff --git a/zenserver/upstream/upstreamservice.h b/zenserver/upstream/upstreamservice.h
index 0a42198c2..f1da03c8c 100644
--- a/zenserver/upstream/upstreamservice.h
+++ b/zenserver/upstream/upstreamservice.h
@@ -6,20 +6,22 @@
namespace zen {
+class AuthMgr;
class UpstreamCache;
class HttpUpstreamService final : public zen::HttpService
{
public:
- HttpUpstreamService(UpstreamCache& Upstream);
+ HttpUpstreamService(UpstreamCache& Upstream, AuthMgr& Mgr);
virtual ~HttpUpstreamService();
virtual const char* BaseUri() const override;
virtual void HandleRequest(zen::HttpServerRequest& Request) override;
private:
- HttpRequestRouter m_Router;
UpstreamCache& m_Upstream;
+ AuthMgr& m_AuthMgr;
+ HttpRequestRouter m_Router;
};
} // namespace zen