libzypp 17.35.19
metalinkinfo_p.h
Go to the documentation of this file.
1/*---------------------------------------------------------------------\
2| ____ _ __ __ ___ |
3| |__ / \ / / . \ . \ |
4| / / \ V /| _/ _/ |
5| / /__ | | | | | | |
6| /_____||_| |_| |_| |
7| |
8----------------------------------------------------------------------/
9*
10* This file contains private API, this might break at any time between releases.
11* You have been warned!
12*
13*/
14#ifndef ZYPP_CURL_NG_NETWORK_PRIVATE_DOWNLOADERSTATES_METALINKINFO_P_H_INCLUDED
15#define ZYPP_CURL_NG_NETWORK_PRIVATE_DOWNLOADERSTATES_METALINKINFO_P_H_INCLUDED
16
17#include "base_p.h"
18#include "basicdownloader_p.h"
21
22namespace zyppng {
23
24 struct FinishedState;
25 struct PrepareMultiState;
26
28
35 static constexpr auto stateId = Download::DlMetaLinkInfo;
36
38 DlMetaLinkInfoState( std::shared_ptr<Request> &&prevRequest, DownloadPrivate &parent );
39
40 SignalProxy< void () > sigFinished() {
41 return _sigFinished;
42 }
44 return _sigGotMetadata;
45 }
46 SignalProxy< void () > sigFailed() {
47 return _sigFailed;
48 }
49
50 std::shared_ptr<FinishedState> transitionToFinished ();
51 std::shared_ptr<PrepareMultiState> transitionToPrepareMulti ();
52
53 bool initializeRequest( std::shared_ptr<Request> &r ) override;
54 void gotFinished () override;
55
56 protected:
57 MetaDataType _detectedMetaType = MetaDataType::None;
59
60 void handleRequestProgress ( NetworkRequest &req, off_t dltotal, off_t dlnow ) override;
61
62 private:
63 bool _fallbackMilWritten = false; //< Flag to know if we already logged that we fall back to the normal progress
64 };
65
66}
67
68#endif
WeakPtr parent() const
Definition base.cc:26
SignalProxy< void() > sigGotMetadata()
Signal< void() > _sigGotMetadata
SignalProxy< void() > sigFailed()
std::shared_ptr< FinishedState > transitionToFinished()
SignalProxy< void() > sigFinished()
void handleRequestProgress(NetworkRequest &req, off_t dltotal, off_t dlnow) override
static constexpr auto stateId
bool initializeRequest(std::shared_ptr< Request > &r) override
DlMetaLinkInfoState(DownloadPrivate &parent)
std::shared_ptr< PrepareMultiState > transitionToPrepareMulti()