libzypp  17.31.31
zypp::media::multifetchrequest Class Reference
Inheritance diagram for zypp::media::multifetchrequest:

Public Member Functions

 multifetchrequest (const MediaMultiCurl *context, const Pathname &filename, const Url &baseurl, CURLM *multi, FILE *fp, callback::SendReport< DownloadProgressReport > *report, MediaBlockList &&blklist, off_t filesize)
 
 ~multifetchrequest ()
 
void run (std::vector< Url > &urllist)
 
MediaBlockListblockList ()
 

Static Public Member Functions

static ByteCount makeBlksize (uint maxConns, size_t filesize)
 

Public Attributes

double _timeout = 0
 
double _connect_timeout = 0
 
double _maxspeed = 0
 
int _maxworkers = 0
 

Protected Attributes

const MediaMultiCurl_context
 
const Pathname _filename
 
Url _baseurl
 
FILE * _fp = nullptr
 
callback::SendReport< DownloadProgressReport > * _report = nullptr
 
MediaBlockList _blklist
 
std::vector< Stripe_requiredStripes
 
off_t _filesize = 0
 
std::list< std::unique_ptr< multifetchworker > > _workers
 
bool _stealing = false
 
bool _havenewjob = false
 
zypp::ByteCount _defaultBlksize = 0
 
off_t _stripeNo = 0
 
size_t _activeworkers = 0
 
size_t _lookupworkers = 0
 
size_t _sleepworkers = 0
 
double _minsleepuntil = 0
 
bool _finished = false
 
off_t _totalsize = 0
 
off_t _fetchedsize = 0
 
off_t _fetchedgoodsize = 0
 
double _starttime = 0
 
double _lastprogress = 0
 
double _lastperiodstart = 0
 
double _lastperiodfetched = 0
 
double _periodavg = 0
 
- Protected Attributes inherited from internal::CurlPollHelper::CurlPoll
CURLM * _multi = nullptr
 

Friends

class multifetchworker
 

Detailed Description

Definition at line 227 of file MediaMultiCurl.cc.

Constructor & Destructor Documentation

◆ multifetchrequest()

zypp::media::multifetchrequest::multifetchrequest ( const MediaMultiCurl context,
const Pathname filename,
const Url baseurl,
CURLM *  multi,
FILE *  fp,
callback::SendReport< DownloadProgressReport > *  report,
MediaBlockList &&  blklist,
off_t  filesize 
)

Definition at line 952 of file MediaMultiCurl.cc.

◆ ~multifetchrequest()

zypp::media::multifetchrequest::~multifetchrequest ( )

Definition at line 998 of file MediaMultiCurl.cc.

Member Function Documentation

◆ run()

void zypp::media::multifetchrequest::run ( std::vector< Url > &  urllist)

Definition at line 1004 of file MediaMultiCurl.cc.

◆ makeBlksize()

zypp::ByteCount zypp::media::multifetchrequest::makeBlksize ( uint  maxConns,
size_t  filesize 
)
inlinestatic

Definition at line 1334 of file MediaMultiCurl.cc.

◆ blockList()

MediaBlockList& zypp::media::multifetchrequest::blockList ( )
inline

Definition at line 235 of file MediaMultiCurl.cc.

Friends And Related Function Documentation

◆ multifetchworker

friend class multifetchworker
friend

Definition at line 240 of file MediaMultiCurl.cc.

Member Data Documentation

◆ _context

const MediaMultiCurl* zypp::media::multifetchrequest::_context
protected

Definition at line 242 of file MediaMultiCurl.cc.

◆ _filename

const Pathname zypp::media::multifetchrequest::_filename
protected

Definition at line 243 of file MediaMultiCurl.cc.

◆ _baseurl

Url zypp::media::multifetchrequest::_baseurl
protected

Definition at line 244 of file MediaMultiCurl.cc.

◆ _fp

FILE* zypp::media::multifetchrequest::_fp = nullptr
protected

Definition at line 246 of file MediaMultiCurl.cc.

◆ _report

callback::SendReport<DownloadProgressReport>* zypp::media::multifetchrequest::_report = nullptr
protected

Definition at line 247 of file MediaMultiCurl.cc.

◆ _blklist

MediaBlockList zypp::media::multifetchrequest::_blklist
protected

Definition at line 248 of file MediaMultiCurl.cc.

◆ _requiredStripes

std::vector<Stripe> zypp::media::multifetchrequest::_requiredStripes
protected

Definition at line 250 of file MediaMultiCurl.cc.

◆ _filesize

off_t zypp::media::multifetchrequest::_filesize = 0
protected

Definition at line 252 of file MediaMultiCurl.cc.

◆ _workers

std::list< std::unique_ptr<multifetchworker> > zypp::media::multifetchrequest::_workers
protected

Definition at line 254 of file MediaMultiCurl.cc.

◆ _stealing

bool zypp::media::multifetchrequest::_stealing = false
protected

Definition at line 255 of file MediaMultiCurl.cc.

◆ _havenewjob

bool zypp::media::multifetchrequest::_havenewjob = false
protected

Definition at line 256 of file MediaMultiCurl.cc.

◆ _defaultBlksize

zypp::ByteCount zypp::media::multifetchrequest::_defaultBlksize = 0
protected

Definition at line 258 of file MediaMultiCurl.cc.

◆ _stripeNo

off_t zypp::media::multifetchrequest::_stripeNo = 0
protected

Definition at line 259 of file MediaMultiCurl.cc.

◆ _activeworkers

size_t zypp::media::multifetchrequest::_activeworkers = 0
protected

Definition at line 261 of file MediaMultiCurl.cc.

◆ _lookupworkers

size_t zypp::media::multifetchrequest::_lookupworkers = 0
protected

Definition at line 262 of file MediaMultiCurl.cc.

◆ _sleepworkers

size_t zypp::media::multifetchrequest::_sleepworkers = 0
protected

Definition at line 263 of file MediaMultiCurl.cc.

◆ _minsleepuntil

double zypp::media::multifetchrequest::_minsleepuntil = 0
protected

Definition at line 264 of file MediaMultiCurl.cc.

◆ _finished

bool zypp::media::multifetchrequest::_finished = false
protected

Definition at line 265 of file MediaMultiCurl.cc.

◆ _totalsize

off_t zypp::media::multifetchrequest::_totalsize = 0
protected

Definition at line 267 of file MediaMultiCurl.cc.

◆ _fetchedsize

off_t zypp::media::multifetchrequest::_fetchedsize = 0
protected

Definition at line 268 of file MediaMultiCurl.cc.

◆ _fetchedgoodsize

off_t zypp::media::multifetchrequest::_fetchedgoodsize = 0
protected

Definition at line 269 of file MediaMultiCurl.cc.

◆ _starttime

double zypp::media::multifetchrequest::_starttime = 0
protected

Definition at line 271 of file MediaMultiCurl.cc.

◆ _lastprogress

double zypp::media::multifetchrequest::_lastprogress = 0
protected

Definition at line 272 of file MediaMultiCurl.cc.

◆ _lastperiodstart

double zypp::media::multifetchrequest::_lastperiodstart = 0
protected

Definition at line 274 of file MediaMultiCurl.cc.

◆ _lastperiodfetched

double zypp::media::multifetchrequest::_lastperiodfetched = 0
protected

Definition at line 275 of file MediaMultiCurl.cc.

◆ _periodavg

double zypp::media::multifetchrequest::_periodavg = 0
protected

Definition at line 276 of file MediaMultiCurl.cc.

◆ _timeout

double zypp::media::multifetchrequest::_timeout = 0

Definition at line 279 of file MediaMultiCurl.cc.

◆ _connect_timeout

double zypp::media::multifetchrequest::_connect_timeout = 0

Definition at line 280 of file MediaMultiCurl.cc.

◆ _maxspeed

double zypp::media::multifetchrequest::_maxspeed = 0

Definition at line 281 of file MediaMultiCurl.cc.

◆ _maxworkers

int zypp::media::multifetchrequest::_maxworkers = 0

Definition at line 282 of file MediaMultiCurl.cc.


The documentation for this class was generated from the following file: