[core] FileSourceManager::getFileSource() returns PassRefPtr
This commit is contained in:
@@ -90,7 +90,7 @@ int main(int argc, char* argv[]) {
|
||||
}
|
||||
|
||||
mbgl::util::RunLoop loop;
|
||||
auto dbfs = mbgl::FileSourceManager::get()->getFileSource(
|
||||
std::shared_ptr<mbgl::FileSource> dbfs = mbgl::FileSourceManager::get()->getFileSource(
|
||||
mbgl::FileSourceType::Database, mbgl::ResourceOptions().withCachePath(args::get(cacheValue)));
|
||||
dbfs->forward(resource, response, [&loop] { loop.stop(); });
|
||||
loop.run();
|
||||
|
||||
@@ -163,10 +163,10 @@ int main(int argc, char *argv[]) {
|
||||
|
||||
|
||||
util::RunLoop loop;
|
||||
std::shared_ptr<DatabaseFileSource> fileSource =
|
||||
std::static_pointer_cast<DatabaseFileSource>(FileSourceManager::get()->getFileSource(
|
||||
std::shared_ptr<DatabaseFileSource> fileSource = std::static_pointer_cast<DatabaseFileSource>(
|
||||
std::shared_ptr<FileSource>(FileSourceManager::get()->getFileSource(
|
||||
FileSourceType::Database,
|
||||
ResourceOptions().withAccessToken(token).withBaseURL(apiBaseURL).withCachePath(output)));
|
||||
ResourceOptions().withAccessToken(token).withBaseURL(apiBaseURL).withCachePath(output))));
|
||||
|
||||
std::unique_ptr<OfflineRegion> region;
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#pragma once
|
||||
|
||||
#include <mbgl/storage/file_source.hpp>
|
||||
#include <mbgl/util/pass_types.hpp>
|
||||
|
||||
namespace mbgl {
|
||||
|
||||
@@ -29,7 +30,7 @@ public:
|
||||
// Returns shared instance of a file source for (type, options) tuple.
|
||||
// Creates new instance via registered factory if needed. If new instance cannot be
|
||||
// created, nullptr would be returned.
|
||||
std::shared_ptr<FileSource> getFileSource(FileSourceType, const ResourceOptions&) noexcept;
|
||||
PassRefPtr<FileSource> getFileSource(FileSourceType, const ResourceOptions&) noexcept;
|
||||
|
||||
// Registers file source factory for a provided FileSourceType type. If factory for the
|
||||
// same type was already registered, will unregister previously registered factory.
|
||||
|
||||
@@ -41,10 +41,10 @@ FileSource::FileSource(jni::JNIEnv& _env, const jni::String& accessToken, const
|
||||
// TODO: Split Android FileSource API to smaller interfaces
|
||||
resourceLoader =
|
||||
mbgl::FileSourceManager::get()->getFileSource(mbgl::FileSourceType::ResourceLoader, resourceOptions);
|
||||
databaseSource = std::static_pointer_cast<mbgl::DatabaseFileSource>(
|
||||
mbgl::FileSourceManager::get()->getFileSource(mbgl::FileSourceType::Database, resourceOptions));
|
||||
onlineSource = std::static_pointer_cast<mbgl::OnlineFileSource>(
|
||||
mbgl::FileSourceManager::get()->getFileSource(mbgl::FileSourceType::Network, resourceOptions));
|
||||
databaseSource = std::static_pointer_cast<mbgl::DatabaseFileSource>(std::shared_ptr<mbgl::FileSource>(
|
||||
mbgl::FileSourceManager::get()->getFileSource(mbgl::FileSourceType::Database, resourceOptions)));
|
||||
onlineSource = std::static_pointer_cast<mbgl::OnlineFileSource>(std::shared_ptr<mbgl::FileSource>(
|
||||
mbgl::FileSourceManager::get()->getFileSource(mbgl::FileSourceType::Network, resourceOptions)));
|
||||
}
|
||||
|
||||
FileSource::~FileSource() {
|
||||
|
||||
@@ -25,8 +25,9 @@ void handleException(std::exception_ptr exception,
|
||||
|
||||
// OfflineManager //
|
||||
OfflineManager::OfflineManager(jni::JNIEnv& env, const jni::Object<FileSource>& jFileSource)
|
||||
: fileSource(std::static_pointer_cast<mbgl::DatabaseFileSource>(mbgl::FileSourceManager::get()->getFileSource(
|
||||
mbgl::FileSourceType::Database, FileSource::getSharedResourceOptions(env, jFileSource)))) {
|
||||
: fileSource(std::static_pointer_cast<mbgl::DatabaseFileSource>(
|
||||
std::shared_ptr<mbgl::FileSource>(mbgl::FileSourceManager::get()->getFileSource(
|
||||
mbgl::FileSourceType::Database, FileSource::getSharedResourceOptions(env, jFileSource))))) {
|
||||
if (!fileSource) {
|
||||
ThrowNew(env, jni::FindClass(env, "java/lang/IllegalStateException"), "Offline functionality is disabled.");
|
||||
}
|
||||
|
||||
@@ -16,8 +16,9 @@ namespace android {
|
||||
|
||||
OfflineRegion::OfflineRegion(jni::JNIEnv& env, jni::jlong offlineRegionPtr, const jni::Object<FileSource>& jFileSource)
|
||||
: region(reinterpret_cast<mbgl::OfflineRegion*>(offlineRegionPtr)),
|
||||
fileSource(std::static_pointer_cast<mbgl::DatabaseFileSource>(mbgl::FileSourceManager::get()->getFileSource(
|
||||
mbgl::FileSourceType::Database, FileSource::getSharedResourceOptions(env, jFileSource)))) {
|
||||
fileSource(std::static_pointer_cast<mbgl::DatabaseFileSource>(
|
||||
std::shared_ptr<mbgl::FileSource>(mbgl::FileSourceManager::get()->getFileSource(
|
||||
mbgl::FileSourceType::Database, FileSource::getSharedResourceOptions(env, jFileSource))))) {
|
||||
if (!fileSource) {
|
||||
ThrowNew(env, jni::FindClass(env, "java/lang/IllegalStateException"), "Offline functionality is disabled.");
|
||||
}
|
||||
|
||||
@@ -233,8 +233,8 @@ const MGLExceptionName MGLUnsupportedRegionTypeException = @"MGLUnsupportedRegio
|
||||
options.withCachePath(_mbglCachePath)
|
||||
.withAssetPath([NSBundle mainBundle].resourceURL.path.UTF8String);
|
||||
_mbglFileSource = mbgl::FileSourceManager::get()->getFileSource(mbgl::FileSourceType::ResourceLoader, options);
|
||||
_mbglOnlineFileSource = std::static_pointer_cast<mbgl::OnlineFileSource>(mbgl::FileSourceManager::get()->getFileSource(mbgl::FileSourceType::Network, options));
|
||||
_mbglDatabaseFileSource = std::static_pointer_cast<mbgl::DatabaseFileSource>(mbgl::FileSourceManager::get()->getFileSource(mbgl::FileSourceType::Database, options));
|
||||
_mbglOnlineFileSource = std::static_pointer_cast<mbgl::OnlineFileSource>(std::shared_ptr<mbgl::FileSource>(mbgl::FileSourceManager::get()->getFileSource(mbgl::FileSourceType::Network, options)));
|
||||
_mbglDatabaseFileSource = std::static_pointer_cast<mbgl::DatabaseFileSource>(std::shared_ptr<mbgl::FileSource>(mbgl::FileSourceManager::get()->getFileSource(mbgl::FileSourceType::Database, options)));
|
||||
|
||||
// Observe for changes to the API base URL (and find out the current one).
|
||||
[[MGLAccountManager sharedManager] addObserver:self
|
||||
|
||||
@@ -107,7 +107,7 @@ int main(int argc, char *argv[]) {
|
||||
mbgl::ResourceOptions resourceOptions;
|
||||
resourceOptions.withCachePath(cacheDB).withAccessToken(token);
|
||||
|
||||
auto onlineFileSource =
|
||||
std::shared_ptr<mbgl::FileSource> onlineFileSource =
|
||||
mbgl::FileSourceManager::get()->getFileSource(mbgl::FileSourceType::Network, resourceOptions);
|
||||
if (!settings.online) {
|
||||
if (onlineFileSource) {
|
||||
@@ -165,7 +165,7 @@ int main(int argc, char *argv[]) {
|
||||
});
|
||||
|
||||
// Resource loader controls top-level request processing and can resume / pause all managed sources simultaneously.
|
||||
auto resourceLoader =
|
||||
std::shared_ptr<mbgl::FileSource> resourceLoader =
|
||||
mbgl::FileSourceManager::get()->getFileSource(mbgl::FileSourceType::ResourceLoader, resourceOptions);
|
||||
view->setPauseResumeCallback([resourceLoader]() {
|
||||
static bool isPaused = false;
|
||||
@@ -180,8 +180,8 @@ int main(int argc, char *argv[]) {
|
||||
});
|
||||
|
||||
// Database file source.
|
||||
auto databaseFileSource = std::static_pointer_cast<mbgl::DatabaseFileSource>(
|
||||
mbgl::FileSourceManager::get()->getFileSource(mbgl::FileSourceType::Database, resourceOptions));
|
||||
auto databaseFileSource = std::static_pointer_cast<mbgl::DatabaseFileSource>(std::shared_ptr<mbgl::FileSource>(
|
||||
mbgl::FileSourceManager::get()->getFileSource(mbgl::FileSourceType::Database, resourceOptions)));
|
||||
view->setResetCacheCallback([databaseFileSource]() {
|
||||
databaseFileSource->resetDatabase([](std::exception_ptr ex) {
|
||||
if (ex) {
|
||||
|
||||
@@ -1751,7 +1751,8 @@ QMapboxGLPrivate::QMapboxGLPrivate(QMapboxGL *q, const QMapboxGLSettings &settin
|
||||
mbgl::ResourceTransform::FinishedCallback onFinished) {
|
||||
actorRef.invoke(&mbgl::ResourceTransform::TransformCallback::operator(), kind, url, std::move(onFinished));
|
||||
}};
|
||||
auto fs = mbgl::FileSourceManager::get()->getFileSource(mbgl::FileSourceType::Network, resourceOptions);
|
||||
std::shared_ptr<mbgl::FileSource> fs =
|
||||
mbgl::FileSourceManager::get()->getFileSource(mbgl::FileSourceType::Network, resourceOptions);
|
||||
std::static_pointer_cast<mbgl::OnlineFileSource>(fs)->setResourceTransform(std::move(transform));
|
||||
}
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@ ProxyFileSource::ProxyFileSource(std::shared_ptr<FileSource> defaultResourceLoad
|
||||
: defaultResourceLoader(std::move(defaultResourceLoader_)) {
|
||||
assert(defaultResourceLoader);
|
||||
if (offline) {
|
||||
auto dbfs = FileSourceManager::get()->getFileSource(FileSourceType::Database, options);
|
||||
std::shared_ptr<FileSource> dbfs = FileSourceManager::get()->getFileSource(FileSourceType::Database, options);
|
||||
dbfs->setProperty(READ_ONLY_MODE_KEY, true);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -33,7 +33,9 @@ Map::Map(RendererFrontend& frontend,
|
||||
: impl(std::make_unique<Impl>(
|
||||
frontend,
|
||||
observer,
|
||||
FileSourceManager::get() ? FileSourceManager::get()->getFileSource(ResourceLoader, resourceOptions) : nullptr,
|
||||
FileSourceManager::get()
|
||||
? std::shared_ptr<FileSource>(FileSourceManager::get()->getFileSource(ResourceLoader, resourceOptions))
|
||||
: nullptr,
|
||||
mapOptions)) {}
|
||||
|
||||
Map::Map(std::unique_ptr<Impl> impl_) : impl(std::move(impl_)) {}
|
||||
|
||||
@@ -30,8 +30,7 @@ FileSourceManager::FileSourceManager() : impl(std::make_unique<Impl>()) {}
|
||||
|
||||
FileSourceManager::~FileSourceManager() = default;
|
||||
|
||||
std::shared_ptr<FileSource> FileSourceManager::getFileSource(FileSourceType type,
|
||||
const ResourceOptions& options) noexcept {
|
||||
PassRefPtr<FileSource> FileSourceManager::getFileSource(FileSourceType type, const ResourceOptions& options) noexcept {
|
||||
std::lock_guard<std::recursive_mutex> lock(impl->mutex);
|
||||
|
||||
// Remove released file sources.
|
||||
|
||||
@@ -342,7 +342,8 @@ TEST(Map, Offline) {
|
||||
|
||||
NetworkStatus::Set(NetworkStatus::Status::Offline);
|
||||
const std::string prefix = "http://127.0.0.1:3000/";
|
||||
auto dbfs = FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
std::shared_ptr<FileSource> dbfs =
|
||||
FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
dbfs->forward(Resource::style(prefix + "style.json"), expiredItem("style.json"));
|
||||
dbfs->forward(Resource::source(prefix + "streets.json"), expiredItem("streets.json"));
|
||||
dbfs->forward(Resource::spriteJSON(prefix + "sprite", 1.0), expiredItem("sprite.json"));
|
||||
@@ -882,7 +883,8 @@ TEST(Map, NoContentTiles) {
|
||||
Response response;
|
||||
response.noContent = true;
|
||||
response.expires = util::now() + 1h;
|
||||
auto dbfs = FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
std::shared_ptr<FileSource> dbfs =
|
||||
FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
dbfs->forward(
|
||||
Resource::tile("http://example.com/{z}-{x}-{y}.vector.pbf", 1.0, 0, 0, 0, Tileset::Scheme::XYZ), response, [&] {
|
||||
test.map.getStyle().loadJSON(R"STYLE({
|
||||
@@ -1327,7 +1329,8 @@ TEST(Map, TEST_REQUIRES_SERVER(ExpiredSpriteSheet)) {
|
||||
|
||||
NetworkStatus::Set(NetworkStatus::Status::Offline);
|
||||
const std::string prefix = "http://127.0.0.1:3000/online/";
|
||||
auto dbfs = FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
std::shared_ptr<FileSource> dbfs =
|
||||
FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
dbfs->forward(Resource::style(prefix + "style.json"), makeResponse("style.json"));
|
||||
dbfs->forward(Resource::source(prefix + "streets.json"), makeResponse("streets.json"));
|
||||
dbfs->forward(Resource::spriteJSON(prefix + "sprite", 1.0), makeResponse("sprite.json", true));
|
||||
|
||||
@@ -12,7 +12,8 @@ using namespace mbgl;
|
||||
TEST(DatabaseFileSource, PauseResume) {
|
||||
util::RunLoop loop;
|
||||
|
||||
auto dbfs = FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
std::shared_ptr<FileSource> dbfs =
|
||||
FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
dbfs->pause();
|
||||
|
||||
const Resource res{Resource::Unknown, "http://127.0.0.1:3000/test", {}, Resource::LoadingMethod::CacheOnly};
|
||||
|
||||
@@ -263,7 +263,8 @@ TEST(MainResourceLoader, OptionalNonExpired) {
|
||||
response.expires = util::now() + 1h;
|
||||
|
||||
std::unique_ptr<AsyncRequest> req;
|
||||
auto dbfs = FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
std::shared_ptr<FileSource> dbfs =
|
||||
FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
dbfs->forward(optionalResource, response, [&] {
|
||||
req = fs.request(optionalResource, [&](Response res) {
|
||||
req.reset();
|
||||
@@ -294,7 +295,8 @@ TEST(MainResourceLoader, OptionalExpired) {
|
||||
Response response;
|
||||
response.data = std::make_shared<std::string>("Cached value");
|
||||
response.expires = util::now() - 1h;
|
||||
auto dbfs = FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
std::shared_ptr<FileSource> dbfs =
|
||||
FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
std::unique_ptr<AsyncRequest> req;
|
||||
dbfs->forward(optionalResource, response, [&] {
|
||||
req = fs.request(optionalResource, [&](Response res) {
|
||||
@@ -356,7 +358,8 @@ TEST(MainResourceLoader, TEST_REQUIRES_SERVER(NoCacheRefreshEtagNotModified)) {
|
||||
response.data = std::make_shared<std::string>("Cached value");
|
||||
response.expires = util::now() + 1h;
|
||||
std::unique_ptr<AsyncRequest> req;
|
||||
auto dbfs = FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
std::shared_ptr<FileSource> dbfs =
|
||||
FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
dbfs->forward(resource, response, [&] {
|
||||
req = fs.request(resource, [&](Response res) {
|
||||
req.reset();
|
||||
@@ -392,7 +395,8 @@ TEST(MainResourceLoader, TEST_REQUIRES_SERVER(NoCacheRefreshEtagModified)) {
|
||||
response.data = std::make_shared<std::string>("Cached value");
|
||||
response.expires = util::now() + 1h;
|
||||
std::unique_ptr<AsyncRequest> req;
|
||||
auto dbfs = FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
std::shared_ptr<FileSource> dbfs =
|
||||
FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
dbfs->forward(resource, response, [&] {
|
||||
req = fs.request(resource, [&](Response res) {
|
||||
req.reset();
|
||||
@@ -427,7 +431,8 @@ TEST(MainResourceLoader, TEST_REQUIRES_SERVER(NoCacheFull)) {
|
||||
response.data = std::make_shared<std::string>("Cached value");
|
||||
response.expires = util::now() + 1h;
|
||||
std::unique_ptr<AsyncRequest> req;
|
||||
auto dbfs = FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
std::shared_ptr<FileSource> dbfs =
|
||||
FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
dbfs->forward(resource, response, [&] {
|
||||
req = fs.request(resource, [&](Response res) {
|
||||
req.reset();
|
||||
@@ -464,7 +469,8 @@ TEST(MainResourceLoader, TEST_REQUIRES_SERVER(NoCacheRefreshModifiedNotModified)
|
||||
response.data = std::make_shared<std::string>("Cached value");
|
||||
response.expires = util::now() + 1h;
|
||||
std::unique_ptr<AsyncRequest> req;
|
||||
auto dbfs = FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
std::shared_ptr<FileSource> dbfs =
|
||||
FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
dbfs->forward(resource, response, [&] {
|
||||
req = fs.request(resource, [&](Response res) {
|
||||
req.reset();
|
||||
@@ -501,7 +507,8 @@ TEST(MainResourceLoader, TEST_REQUIRES_SERVER(NoCacheRefreshModifiedModified)) {
|
||||
response.data = std::make_shared<std::string>("Cached value");
|
||||
response.expires = util::now() + 1h;
|
||||
std::unique_ptr<AsyncRequest> req;
|
||||
auto dbfs = FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
std::shared_ptr<FileSource> dbfs =
|
||||
FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
dbfs->forward(resource, response, [&] {
|
||||
req = fs.request(resource, [&](Response res) {
|
||||
req.reset();
|
||||
@@ -522,10 +529,10 @@ TEST(MainResourceLoader, TEST_REQUIRES_SERVER(NoCacheRefreshModifiedModified)) {
|
||||
|
||||
TEST(MainResourceLoader, TEST_REQUIRES_SERVER(SetResourceTransform)) {
|
||||
util::RunLoop loop;
|
||||
MainResourceLoader fs(ResourceOptions{});
|
||||
|
||||
auto onlinefs = std::static_pointer_cast<OnlineFileSource>(
|
||||
FileSourceManager::get()->getFileSource(FileSourceType::Network, ResourceOptions{}));
|
||||
MainResourceLoader resourceLoader(ResourceOptions{});
|
||||
std::shared_ptr<FileSource> fs =
|
||||
FileSourceManager::get()->getFileSource(FileSourceType::Network, ResourceOptions{});
|
||||
auto onlinefs = std::static_pointer_cast<OnlineFileSource>(fs);
|
||||
|
||||
// Translates the URL "localhost://test to http://127.0.0.1:3000/test
|
||||
Actor<ResourceTransform::TransformCallback> transform(
|
||||
@@ -545,7 +552,7 @@ TEST(MainResourceLoader, TEST_REQUIRES_SERVER(SetResourceTransform)) {
|
||||
const Resource resource1{Resource::Unknown, "localhost://test"};
|
||||
|
||||
std::unique_ptr<AsyncRequest> req;
|
||||
req = fs.request(resource1, [&](Response res) {
|
||||
req = resourceLoader.request(resource1, [&](Response res) {
|
||||
req.reset();
|
||||
EXPECT_EQ(nullptr, res.error);
|
||||
ASSERT_TRUE(res.data.get());
|
||||
@@ -562,7 +569,7 @@ TEST(MainResourceLoader, TEST_REQUIRES_SERVER(SetResourceTransform)) {
|
||||
onlinefs->setResourceTransform({});
|
||||
const Resource resource2{Resource::Unknown, "http://127.0.0.1:3000/test"};
|
||||
|
||||
req = fs.request(resource2, [&](Response res) {
|
||||
req = resourceLoader.request(resource2, [&](Response res) {
|
||||
req.reset();
|
||||
EXPECT_EQ(nullptr, res.error);
|
||||
ASSERT_TRUE(res.data.get());
|
||||
@@ -579,9 +586,10 @@ TEST(MainResourceLoader, TEST_REQUIRES_SERVER(SetResourceTransform)) {
|
||||
|
||||
TEST(MainResourceLoader, SetResourceCachePath) {
|
||||
util::RunLoop loop;
|
||||
MainResourceLoader fs(ResourceOptions{});
|
||||
auto dbfs = std::static_pointer_cast<DatabaseFileSource>(
|
||||
FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{}));
|
||||
MainResourceLoader resourceLoader(ResourceOptions{});
|
||||
std::shared_ptr<FileSource> fs =
|
||||
FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
auto dbfs = std::static_pointer_cast<DatabaseFileSource>(fs);
|
||||
dbfs->setDatabasePath("./new_offline.db", [&loop] { loop.stop(); });
|
||||
loop.run();
|
||||
}
|
||||
@@ -604,7 +612,8 @@ TEST(MainResourceLoader, TEST_REQUIRES_SERVER(RespondToStaleMustRevalidate)) {
|
||||
response.mustRevalidate = true;
|
||||
response.etag.emplace("snowfall");
|
||||
std::unique_ptr<AsyncRequest> req;
|
||||
auto dbfs = FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
std::shared_ptr<FileSource> dbfs =
|
||||
FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
dbfs->forward(resource, response, [&] {
|
||||
req = fs.request(resource, [&](Response res) {
|
||||
req.reset();
|
||||
@@ -676,8 +685,10 @@ TEST(MainResourceLoader, TEST_REQUIRES_SERVER(CachedResourceLowPriority)) {
|
||||
using namespace std::chrono_literals;
|
||||
response.expires = util::now() - 1h;
|
||||
|
||||
auto dbfs = FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
auto onlineFs = FileSourceManager::get()->getFileSource(FileSourceType::Network, ResourceOptions{});
|
||||
std::shared_ptr<FileSource> dbfs =
|
||||
FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
std::shared_ptr<FileSource> onlineFs =
|
||||
FileSourceManager::get()->getFileSource(FileSourceType::Network, ResourceOptions{});
|
||||
|
||||
// Put existing values into the cache.
|
||||
Resource resource1{Resource::Unknown, "http://127.0.0.1:3000/load/3", {}, Resource::LoadingMethod::All};
|
||||
@@ -762,7 +773,8 @@ TEST(MainResourceLoader, TEST_REQUIRES_SERVER(NoDoubleDispatch)) {
|
||||
|
||||
std::unique_ptr<AsyncRequest> req;
|
||||
unsigned responseCount = 0u;
|
||||
auto dbfs = FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
std::shared_ptr<FileSource> dbfs =
|
||||
FileSourceManager::get()->getFileSource(FileSourceType::Database, ResourceOptions{});
|
||||
dbfs->forward(resource, response, [&] {
|
||||
req = fs.request(resource, [&](Response res) {
|
||||
EXPECT_EQ(nullptr, res.error);
|
||||
|
||||
Reference in New Issue
Block a user