16 #include "gtest/gtest_prod.h"
40 virtual int64_t
Write(
const void *buf, uint64_t sz) {
74 bool external_data =
false);
79 const std::string &name,
82 const std::string &alt_url =
"",
83 off_t range_offset = -1);
135 const std::string &name,
169 #endif // CVMFS_FETCH_H_
void CleanupTls(ThreadLocalStorage *tls)
friend void TLSDestructor(void *data)
virtual int64_t Write(const void *buf, uint64_t sz)
BackoffThrottle * backoff_throttle_
std::map< shash::Any, std::vector< int > * > ThreadQueues
ThreadLocalStorage * GetTls()
download::DownloadManager * download_mgr()
perf::Counter * n_invocations
Fetcher(CacheManager *cache_mgr, download::DownloadManager *download_mgr, BackoffThrottle *backoff_throttle, perf::StatisticsTemplate statistics, bool external_data=false)
CacheManager * cache_mgr_
ThreadQueues queues_download_
CacheManager * cache_mgr()
std::vector< ThreadLocalStorage * > tls_blocks_
std::vector< int > other_pipes_waiting
pthread_mutex_t * lock_tls_blocks_
pthread_mutex_t * lock_queues_download_
CacheManager * cache_mgr_
TransactionSink(CacheManager *cache_mgr, void *open_txn)
download::DownloadManager * download_mgr_
virtual ~TransactionSink()
int OpenSelect(const shash::Any &id, const std::string &name, const CacheManager::ObjectType object_type)
void SignalWaitingThreads(const int fd, const shash::Any &id, ThreadLocalStorage *tls)
FRIEND_TEST(T_Fetcher, GetTls)
virtual int Reset(void *txn)=0
download::JobInfo download_job
friend void * TestFetchCollapse2(void *data)
friend void * TestGetTls(void *data)
perf::Counter * n_downloads
pthread_key_t thread_local_storage_
friend void * TestFetchCollapse(void *data)
virtual int64_t Write(const void *buf, uint64_t sz, void *txn)=0
int Fetch(const shash::Any &id, const uint64_t size, const std::string &name, const zlib::Algorithms compression_algorithm, const CacheManager::ObjectType object_type, const std::string &alt_url="", off_t range_offset=-1)