14#ifndef ZYPP_CURL_NG_NETWORK_PRIVATE_DOWNLOADER_P_H_INCLUDED
15#define ZYPP_CURL_NG_NETWORK_PRIVATE_DOWNLOADER_P_H_INCLUDED
17#include <zypp-core/zyppng/base/statemachine.h>
27#if ENABLE_ZCHUNK_COMPRESSION
46 template <
typename Derived>
49 Transition< InitialState, &InitialState::sigTransitionToDetectMetalinkState, DetectMetalinkState >,
50 Transition< InitialState, &InitialState::sigTransitionToDlMetaLinkInfoState, DlMetaLinkInfoState >,
51#if ENABLE_ZCHUNK_COMPRESSION
52 Transition< InitialState, &InitialState::sigTransitionToDLZckHeaderState, DLZckHeadState, DefaultStateCondition, &InitialState::toDLZckHeadState >,
54 Transition< InitialState, &InitialState::sigTransitionToDlNormalFileState, DlNormalFileState >,
56 Transition< DetectMetalinkState, &DetectMetalinkState::sigFinished, DlMetaLinkInfoState, &DetectMetalinkState::toMetalinkGuard, &DetectMetalinkState::toDlMetaLinkInfoState >,
57#if ENABLE_ZCHUNK_COMPRESSION
58 Transition< DetectMetalinkState, &DetectMetalinkState::sigFinished, DLZckHeadState, &DetectMetalinkState::toZckHeadDownloadGuard, &DetectMetalinkState::toDLZckHeadState >,
60 Transition< DetectMetalinkState, &DetectMetalinkState::sigFinished, DlNormalFileState, &DetectMetalinkState::toSimpleDownloadGuard >,
62 Transition< DlMetaLinkInfoState, &DlMetaLinkInfoState::sigFinished, FinishedState, DefaultStateCondition, &DlMetaLinkInfoState::transitionToFinished >,
63 Transition< DlMetaLinkInfoState, &DlMetaLinkInfoState::sigGotMetadata, PrepareMultiState, DefaultStateCondition, &DlMetaLinkInfoState::transitionToPrepareMulti >,
64 Transition< DlMetaLinkInfoState, &DlMetaLinkInfoState::sigFailed, FinishedState, DefaultStateCondition, &DlMetaLinkInfoState::transitionToFinished >,
66 Transition< PrepareMultiState, &PrepareMultiState::sigFinished, DlMetalinkState, &PrepareMultiState::toMetalinkDownloadGuard , &PrepareMultiState::transitionToMetalinkDl >,
67#if ENABLE_ZCHUNK_COMPRESSION
68 Transition< PrepareMultiState, &PrepareMultiState::sigFinished, DLZckHeadState, &PrepareMultiState::toZckHeadDownloadGuard, &PrepareMultiState::transitionToZckHeadDl >,
70 Transition< PrepareMultiState, &PrepareMultiState::sigFallback, DlNormalFileState, DefaultStateCondition, &PrepareMultiState::fallbackToNormalTransition >,
71 Transition< PrepareMultiState, &PrepareMultiState::sigFailed, DlNormalFileState >,
73#if ENABLE_ZCHUNK_COMPRESSION
74 Transition< DLZckHeadState, &DLZckHeadState::sigFinished, DLZckState, DefaultStateCondition, &DLZckHeadState::transitionToDlZckState >,
75 Transition< DLZckHeadState, &DLZckHeadState::sigFailed, DlNormalFileState >,
77 Transition< DLZckState, &DLZckState::sigFinished, FinishedState, DefaultStateCondition, &DLZckState::transitionToFinished >,
78 Transition< DLZckState, &DLZckState::sigFallback, DlNormalFileState >,
81 Transition< DlMetalinkState, &DlMetalinkState::sigFinished, FinishedState, DefaultStateCondition, &DlMetalinkState::transitionToFinished >,
82 Transition< DlMetalinkState, &DlMetalinkState::sigFailed, FinishedState, &DlMetalinkState::toFinalStateCondition, &DlMetalinkState::transitionToFinished >,
83 Transition< DlMetalinkState, &DlMetalinkState::sigFailed, DlNormalFileState, &DlMetalinkState::toSimpleDownloadCondition >,
85 Transition< DlNormalFileState, &DlNormalFileState::sigFinished, FinishedState, DefaultStateCondition, &DlNormalFileState::transitionToFinished >,
86 Transition< DlNormalFileState, &DlNormalFileState::sigFailed, FinishedState, DefaultStateCondition, &DlNormalFileState::transitionToFinished >
std::shared_ptr< MirrorControl > _mirrors
Signal< void(Downloader &parent, Download &download)> _sigStarted
std::vector< std::shared_ptr< Download > > _runningDownloads
void onDownloadFinished(Download &download)
Signal< void(Downloader &parent)> _queueEmpty
std::shared_ptr< NetworkRequestDispatcher > _requestDispatcher
Signal< void(Downloader &parent, Download &download)> _sigFinished
void onDownloadStarted(Download &download)