| 170 | } |
| 171 | |
| 172 | Future<Reference<IAsyncFile>> BackupContainerS3BlobStore::readFile(const std::string& path) { |
| 173 | Reference<IAsyncFile> f = makeReference<AsyncFileS3BlobStoreRead>(m_bstore, m_bucket, dataPath(path)); |
| 174 | |
| 175 | if (usesEncryption()) { |
| 176 | f = makeReference<AsyncFileEncrypted>(f, AsyncFileEncrypted::Mode::READ_ONLY); |
| 177 | } |
| 178 | if (m_bstore->knobs.enable_read_cache) { |
| 179 | f = makeReference<AsyncFileReadAheadCache>(f, |
| 180 | m_bstore->knobs.read_block_size, |
| 181 | m_bstore->knobs.read_ahead_blocks, |
| 182 | m_bstore->knobs.concurrent_reads_per_file, |
| 183 | m_bstore->knobs.read_cache_blocks_per_file); |
| 184 | } |
| 185 | return f; |
| 186 | } |
| 187 | |
| 188 | Future<std::vector<std::string>> BackupContainerS3BlobStore::listURLs(Reference<S3BlobStoreEndpoint> bstore, |
| 189 | const std::string& bucket) { |
no outgoing calls
no test coverage detected