libzypp  17.38.7
RepoProvideFile.h
Go to the documentation of this file.
1 /*---------------------------------------------------------------------\
2 | ____ _ __ __ ___ |
3 | |__ / \ / / . \ . \ |
4 | / / \ V /| _/ _/ |
5 | / /__ | | | | | | |
6 | /_____||_| |_| |_| |
7 | |
8 \---------------------------------------------------------------------*/
12 #ifndef ZYPP_REPO_REPOPROVIDEFILE_H
13 #define ZYPP_REPO_REPOPROVIDEFILE_H
14 
15 #include <iosfwd>
16 
20 #include <zypp/RepoInfo.h>
21 #include <zypp/ManagedFile.h>
22 #include <utility>
23 #include <zypp-core/OnMediaLocation>
24 #include <zypp/ProvideFilePolicy.h>
25 
27 namespace zypp
28 {
29  namespace repo
31  {
32 
34  //
35  // provideFile
36  //
38 
48  const OnMediaLocation & loc_r,
49  const ProvideFilePolicy & policy_r = ProvideFilePolicy() );
50 
60  std::vector<Pathname> repositoryCachePaths( RepoInfo repo_r );
61 
73  {
74  public:
77  ~RepoMediaAccess();
78 
88  ManagedFile provideFile( const RepoInfo& repo_r,
89  const OnMediaLocation & loc_r,
90  const ProvideFilePolicy & policy_r );
91 
94  { return provideFile( std::move(repo_r), loc_r, defaultPolicy() ); }
95 
96  public:
98  void setDefaultPolicy( const ProvideFilePolicy & policy_r );
99 
101  const ProvideFilePolicy & defaultPolicy() const;
102 
103  public:
123  static Pathname mapToCachePath( const RepoInfo & repo_r, const OnMediaLocation & resource_r );
124 
125  private:
126  class Impl;
128  };
129 
131  } // namespace repo
134 } // namespace zypp
136 #endif // ZYPP_REPO_REPOPROVIDEFILE_H
ManagedFile provideFile(RepoInfo repo_r, const OnMediaLocation &loc_r)
Describes a resource file located on a medium.
zypp::RepoInfo RepoInfo
Definition: repomanager.h:38
What is known about a repository.
Definition: RepoInfo.h:71
AutoDispose< const Pathname > ManagedFile
A Pathname plus associated cleanup code to be executed when path is no longer needed.
Definition: ManagedFile.h:27
Policy for provideFile and RepoMediaAccess.
std::vector< Pathname > repositoryCachePaths(RepoInfo repo_r)
returns a set of paths.
ManagedFile provideFile(RepoInfo repo_r, const OnMediaLocation &loc_r, const ProvideFilePolicy &policy_r)
Provide a file from a Repository.
const Arch Arch_empty ZYPP_API
relates: Arch This is an empty Arch represented by an empty string.
Definition: Arch.h:173
Provides files from different repos.
Easy-to use interface to the ZYPP dependency resolver.
Definition: CodePitfalls.doc:1