summaryrefslogtreecommitdiff
path: root/platform/default/src/mbgl/storage/file_source_options.cpp
blob: 782c90f7681698a250f9f7c47fbf3f8b010f1216 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#include <mbgl/storage/file_source_options.hpp>
#include <mbgl/util/constants.hpp>

#include <cassert>

namespace mbgl {

class FileSourceOptions::Impl {
public:
    std::string accessToken;
    std::string cachePath { ":memory:" };
    std::string assetRoot { "." };
    uint64_t maximumSize{mbgl::util::DEFAULT_MAX_CACHE_SIZE};
};

FileSourceOptions::FileSourceOptions() : impl_(std::make_shared<FileSourceOptions::Impl>()) {}
FileSourceOptions::~FileSourceOptions() = default;

FileSourceOptions& FileSourceOptions::withAccessToken(std::string accessToken) {
    impl_->accessToken = std::move(accessToken);
    return *this;
}

const std::string& FileSourceOptions::accessToken() const {
    return impl_->accessToken;
}

FileSourceOptions& FileSourceOptions::withCachePath(std::string path) {
    impl_->cachePath = std::move(path);
    return *this;
}

const std::string& FileSourceOptions::cachePath() const {
    return impl_->cachePath;
}

FileSourceOptions& FileSourceOptions::withAssetRoot(std::string path) {
    impl_->assetRoot = std::move(path);
    return *this;
}

const std::string& FileSourceOptions::assetRoot() const {
    return impl_->assetRoot;
}

FileSourceOptions& FileSourceOptions::withMaximumCacheSize(uint64_t size) {
    impl_->maximumSize = size;
    return *this;
}

uint64_t FileSourceOptions::maximumCacheSize() const {
    return impl_->maximumSize;
}

} // namespace mbgl