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

Public Member Functions

 multifetchrequest (const MediaMultiCurl *context, Pathname filename, Url baseurl, CURLM *multi, FILE *fp, callback::SendReport< DownloadProgressReport > *report, MediaBlockList &&blklist, off_t filesize)
 multifetchrequest (const multifetchrequest &)=delete
 multifetchrequest (multifetchrequest &&)=delete
multifetchrequestoperator= (const multifetchrequest &)=delete
multifetchrequestoperator= (multifetchrequest &&)=delete
 ~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 232 of file MediaMultiCurl.cc.

Constructor & Destructor Documentation

◆ multifetchrequest() [1/3]

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

Definition at line 972 of file MediaMultiCurl.cc.

◆ multifetchrequest() [2/3]

zypp::media::multifetchrequest::multifetchrequest ( const multifetchrequest & )
delete

◆ multifetchrequest() [3/3]

zypp::media::multifetchrequest::multifetchrequest ( multifetchrequest && )
delete

◆ ~multifetchrequest()

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

Definition at line 1018 of file MediaMultiCurl.cc.

Member Function Documentation

◆ operator=() [1/2]

multifetchrequest & zypp::media::multifetchrequest::operator= ( const multifetchrequest & )
delete

◆ operator=() [2/2]

multifetchrequest & zypp::media::multifetchrequest::operator= ( multifetchrequest && )
delete

◆ run()

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

Definition at line 1024 of file MediaMultiCurl.cc.

◆ makeBlksize()

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

Definition at line 1362 of file MediaMultiCurl.cc.

◆ blockList()

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

Definition at line 247 of file MediaMultiCurl.cc.

◆ multifetchworker

friend class multifetchworker
friend

Definition at line 252 of file MediaMultiCurl.cc.

Member Data Documentation

◆ _context

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

Definition at line 254 of file MediaMultiCurl.cc.

◆ _filename

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

Definition at line 255 of file MediaMultiCurl.cc.

◆ _baseurl

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

Definition at line 256 of file MediaMultiCurl.cc.

◆ _fp

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

Definition at line 258 of file MediaMultiCurl.cc.

◆ _report

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

Definition at line 259 of file MediaMultiCurl.cc.

◆ _blklist

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

Definition at line 260 of file MediaMultiCurl.cc.

◆ _requiredStripes

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

Definition at line 262 of file MediaMultiCurl.cc.

◆ _filesize

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

Definition at line 264 of file MediaMultiCurl.cc.

◆ _workers

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

Definition at line 266 of file MediaMultiCurl.cc.

◆ _stealing

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

Definition at line 267 of file MediaMultiCurl.cc.

◆ _havenewjob

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

Definition at line 268 of file MediaMultiCurl.cc.

◆ _defaultBlksize

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

Definition at line 270 of file MediaMultiCurl.cc.

◆ _stripeNo

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

Definition at line 271 of file MediaMultiCurl.cc.

◆ _activeworkers

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

Definition at line 273 of file MediaMultiCurl.cc.

◆ _lookupworkers

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

Definition at line 274 of file MediaMultiCurl.cc.

◆ _sleepworkers

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

Definition at line 275 of file MediaMultiCurl.cc.

◆ _minsleepuntil

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

Definition at line 276 of file MediaMultiCurl.cc.

◆ _finished

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

Definition at line 277 of file MediaMultiCurl.cc.

◆ _totalsize

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

Definition at line 279 of file MediaMultiCurl.cc.

◆ _fetchedsize

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

Definition at line 280 of file MediaMultiCurl.cc.

◆ _fetchedgoodsize

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

Definition at line 281 of file MediaMultiCurl.cc.

◆ _starttime

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

Definition at line 283 of file MediaMultiCurl.cc.

◆ _lastprogress

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

Definition at line 284 of file MediaMultiCurl.cc.

◆ _lastperiodstart

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

Definition at line 286 of file MediaMultiCurl.cc.

◆ _lastperiodfetched

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

Definition at line 287 of file MediaMultiCurl.cc.

◆ _periodavg

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

Definition at line 288 of file MediaMultiCurl.cc.

◆ _timeout

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

Definition at line 291 of file MediaMultiCurl.cc.

◆ _connect_timeout

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

Definition at line 292 of file MediaMultiCurl.cc.

◆ _maxspeed

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

Definition at line 293 of file MediaMultiCurl.cc.

◆ _maxworkers

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

Definition at line 294 of file MediaMultiCurl.cc.


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