9 #ifndef ZYPP_NG_REPODOWNLOADER_WORKFLOW_INCLUDED 10 #define ZYPP_NG_REPODOWNLOADER_WORKFLOW_INCLUDED 14 #include <zypp/ng/repo/Downloader> 15 #include <zypp-core/zyppng/ui/ProgressObserver> 16 #include <zypp-core/zyppng/pipelines/AsyncResult> 17 #include <zypp-core/zyppng/pipelines/Expected> 18 #include <zypp-media/MediaException> 19 #include <zypp-media/ng/ProvideSpec> 20 #include <zypp-media/ng/LazyMediaHandle> 28 class MediaSyncFacade;
30 class ProvideMediaHandle;
31 class SyncMediaHandle;
36 namespace RepoDownloaderWorkflow {
52 template <
typename MediaHandle>
58 constexpr
bool isAsync = std::is_same_v<ProvideType, Provide>;
59 auto provider = mediaHandle.
parent();
64 |
and_then( ProvideType::copyResultToDest( provider, destdir /
"/media.1/media" ) );
AsyncOpRef< expected< repo::AsyncDownloadContextRef > > download(repo::AsyncDownloadContextRef dl, ProvideMediaHandle mediaHandle, ProgressObserverRef progressObserver=nullptr)
Store and operate with byte count.
static const Unit MB
1000^2 Byte
#define ZYPP_EXCPT_PTR(EXCPT)
Drops a logline and returns Exception as a std::exception_ptr.
AsyncOpRef< expected< repo::AsyncDownloadContextRef > > downloadMasterIndex(repo::AsyncDownloadContextRef dl, ProvideMediaHandle mediaHandle, zypp::filesystem::Pathname masterIndex_r)
std::shared_ptr< AsyncOp< T > > AsyncOpRef
AsyncOpRef< expected< zypp::RepoStatus > > repoStatus(repo::AsyncDownloadContextRef dl, ProvideMediaHandle mediaHandle)
ResultType and_then(const expected< T, E > &exp, Function &&f)
typename decay< T >::type decay_t
auto downloadMediaInfo(MediaHandle &&mediaHandle, const zypp::filesystem::Pathname &destdir)