libzypp  16.13.0
CredentialManager.h
Go to the documentation of this file.
1 /*---------------------------------------------------------------------\
2 | ____ _ __ __ ___ |
3 | |__ / \ / / . \ . \ |
4 | / / \ V /| _/ _/ |
5 | / /__ | | | | | | |
6 | /_____||_| |_| |_| |
7 | |
8 \---------------------------------------------------------------------*/
12 #ifndef ZYPP_MEDIA_CREDENTIALMANAGER_H
13 #define ZYPP_MEDIA_CREDENTIALMANAGER_H
14 
15 #include <set>
16 
17 #include "zypp/Pathname.h"
19 
21 namespace zypp
22 {
23 
24  class Url;
25 
27  namespace media
28  {
29 
30 
32  //
33  // CLASS NAME : CredManagerOptions
34  //
39  {
40  CredManagerOptions(const Pathname & rootdir = "");
41 
43  Pathname userCredFilePath;
45  };
47 
48  // comparator for CredentialSet
50  {
51  bool operator()(const AuthData_Ptr & lhs, const AuthData_Ptr & rhs);
52  };
53 
55  //
56  // CLASS NAME : CredentialManager
57  //
63  {
64  public:
65  typedef std::set<AuthData_Ptr, AuthDataComparator> CredentialSet;
67  typedef CredentialSet::const_iterator CredentialIterator;
68 
69 
71 
73  {}
74 
75  public:
87  AuthData_Ptr getCred(const Url & url);
88 
92  AuthData_Ptr getCredFromFile(const Pathname & file);
93 
97  void addGlobalCred(const AuthData & cred);
98 
102  void addUserCred(const AuthData & cred);
103 
118  void addCred(const AuthData & cred);
119 
124  void save();
125 
133  void saveInGlobal(const AuthData & cred);
134 
142  void saveInUser(const AuthData & cred);
143 
152  void saveInFile(const AuthData &, const Pathname & credFile);
153 
159  void clearAll(bool global = false);
160 
161 
162  CredentialIterator credsGlobalBegin() const;
163  CredentialIterator credsGlobalEnd() const;
164  CredentialSize credsGlobalSize() const;
165  bool credsGlobalEmpty() const;
166 
167  CredentialIterator credsUserBegin() const;
168  CredentialIterator credsUserEnd() const;
169  CredentialSize credsUserSize() const;
170  bool credsUserEmpty() const;
171 
172  class Impl;
173  private:
175  };
177 
178 
180  } // media
183 } // zypp
185 
186 #endif /* ZYPP_MEDIA_CREDENTIALMANAGER_H */
187 
CredentialSet::size_type CredentialSize
Url url
Definition: MediaCurl.cc:196
CredManagerOptions(const Pathname &rootdir="")
Class for handling media authentication data.
Definition: MediaUserAuth.h:30
SolvableIdType size_type
Definition: PoolMember.h:126
shared_ptr< AuthData > AuthData_Ptr
Definition: MediaUserAuth.h:69
std::set< AuthData_Ptr, AuthDataComparator > CredentialSet
CredentialSet::const_iterator CredentialIterator
Easy-to use interface to the ZYPP dependency resolver.
Definition: CodePitfalls.doc:1
Convenience interface for handling authentication data of media user.
Url manipulation class.
Definition: Url.h:87