[core] Consolidate file source keys in the generic FileSource header

Thus we do not need to include specific headers to use `{set|get}Property`
API with key constants.
This commit is contained in:
Mikhail Pozdnyakov
2020-02-25 17:50:12 +02:00
parent 3c05bd984a
commit 7c48611f9e
7 changed files with 28 additions and 28 deletions

View File

@@ -7,12 +7,6 @@
namespace mbgl {
// Properties that may be supported by database file sources.
// Property to set database mode. When set, database opens in read-only mode; database opens in read-write-create mode
// otherwise. type: bool
constexpr const char* READ_ONLY_MODE_KEY = "read-only-mode";
class ResourceOptions;
// TODO: Split DatabaseFileSource into Ambient cache and Database interfaces.

View File

@@ -84,4 +84,24 @@ protected:
FileSource() = default;
};
// Properties that may be supported by online file sources:
// Property name to set / get an access token.
// type: std::string
constexpr const char* ACCESS_TOKEN_KEY = "access-token";
// Property name to set / get base url.
// type: std::string
constexpr const char* API_BASE_URL_KEY = "api-base-url";
// Property name to set / get maximum number of concurrent requests.
// type: unsigned
constexpr const char* MAX_CONCURRENT_REQUESTS_KEY = "max-concurrent-requests";
// Properties that may be supported by database file sources:
// Property to set database mode. When set, database opens in read-only mode; database opens in read-write-create mode
// otherwise. type: bool
constexpr const char* READ_ONLY_MODE_KEY = "read-only-mode";
} // namespace mbgl

View File

@@ -7,20 +7,6 @@ namespace mbgl {
class ResourceTransform;
// Properties that may be supported by online file sources.
// Property name to set / get an access token.
// type: std::string
constexpr const char* ACCESS_TOKEN_KEY = "access-token";
// Property name to set / get base url.
// type: std::string
constexpr const char* API_BASE_URL_KEY = "api-base-url";
// Property name to set / get maximum number of concurrent requests.
// type: unsigned
constexpr const char* MAX_CONCURRENT_REQUESTS_KEY = "max-concurrent-requests";
class OnlineFileSource : public FileSource {
public:
OnlineFileSource();

View File

@@ -373,7 +373,7 @@ void OfflineDownload::continueDownload() {
if (resourcesToBeMarkedAsUsed.size() >= kMarkBatchSize) markPendingUsedResources();
uint32_t maxConcurrentRequests = util::DEFAULT_MAXIMUM_CONCURRENT_REQUESTS;
auto value = onlineFileSource.getProperty("max-concurrent-requests");
auto value = onlineFileSource.getProperty(MAX_CONCURRENT_REQUESTS_KEY);
if (uint64_t* maxRequests = value.getUint()) {
maxConcurrentRequests = static_cast<uint32_t>(*maxRequests);
}

View File

@@ -20,7 +20,7 @@ ProxyFileSource::ProxyFileSource(std::shared_ptr<FileSource> defaultResourceLoad
assert(defaultResourceLoader);
if (offline) {
auto dbfs = FileSourceManager::get()->getFileSource(FileSourceType::Database, options);
dbfs->setProperty("read-only-mode", true);
dbfs->setProperty(READ_ONLY_MODE_KEY, true);
}
}

View File

@@ -385,7 +385,7 @@ TEST(OfflineDownload, DoesNotFloodTheFileSourceWithRequests) {
fileSource.respond(Resource::Kind::Style, test.response("style.json"));
test.loop.runOnce();
EXPECT_EQ(*fileSource.getProperty("max-concurrent-requests").getUint(), fileSource.requests.size());
EXPECT_EQ(*fileSource.getProperty(MAX_CONCURRENT_REQUESTS_KEY).getUint(), fileSource.requests.size());
}
TEST(OfflineDownload, GetStatusNoResources) {

View File

@@ -449,7 +449,7 @@ TEST(OnlineFileSource, TEST_REQUIRES_SERVER(LowHighPriorityRequests)) {
const std::size_t NUM_REQUESTS = 3;
NetworkStatus::Set(NetworkStatus::Status::Offline);
fs.setProperty("max-concurrent-requests", 1u);
fs.setProperty(MAX_CONCURRENT_REQUESTS_KEY, 1u);
// After DefaultFileSource was split, OnlineFileSource lives on a separate
// thread. Pause OnlineFileSource, so that messages are queued for processing.
fs.pause();
@@ -492,7 +492,7 @@ TEST(OnlineFileSource, TEST_REQUIRES_SERVER(LowHighPriorityRequestsMany)) {
int correct_regular = 0;
NetworkStatus::Set(NetworkStatus::Status::Offline);
fs.setProperty("max-concurrent-requests", 1u);
fs.setProperty(MAX_CONCURRENT_REQUESTS_KEY, 1u);
fs.pause();
std::vector<std::unique_ptr<AsyncRequest>> collector;
@@ -542,10 +542,10 @@ TEST(OnlineFileSource, TEST_REQUIRES_SERVER(MaximumConcurrentRequests)) {
util::RunLoop loop;
OnlineFileSource fs;
ASSERT_EQ(*fs.getProperty("max-concurrent-requests").getUint(), 20u);
ASSERT_EQ(*fs.getProperty(MAX_CONCURRENT_REQUESTS_KEY).getUint(), 20u);
fs.setProperty("max-concurrent-requests", 10u);
ASSERT_EQ(*fs.getProperty("max-concurrent-requests").getUint(), 10u);
fs.setProperty(MAX_CONCURRENT_REQUESTS_KEY, 10u);
ASSERT_EQ(*fs.getProperty(MAX_CONCURRENT_REQUESTS_KEY).getUint(), 10u);
}
TEST(OnlineFileSource, TEST_REQUIRES_SERVER(RequestSameUrlMultipleTimes)) {