libzypp 17.31.23
credentialmanager.h
Go to the documentation of this file.
1/*---------------------------------------------------------------------\
2| ____ _ __ __ ___ |
3| |__ / \ / / . \ . \ |
4| / / \ V /| _/ _/ |
5| / /__ | | | | | | |
6| /_____||_| |_| |_| |
7| |
8\---------------------------------------------------------------------*/
12#ifndef ZYPP_MEDIA_AUTH_CREDENTIALMANAGER_H
13#define ZYPP_MEDIA_AUTH_CREDENTIALMANAGER_H
14
15#include <set>
16
17#include <zypp-core/Pathname.h>
18#include <zypp-media/auth/AuthData>
19
21namespace 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
45 };
47
48 // comparator for CredentialSet
50 {
51 bool operator()(const AuthData_Ptr & lhs, const AuthData_Ptr & rhs) const;
52 };
53
55 //
56 // CLASS NAME : CredentialManager
57 //
63 {
64 public:
65 typedef std::set<AuthData_Ptr, AuthDataComparator> CredentialSet;
66 typedef CredentialSet::size_type CredentialSize;
67 typedef CredentialSet::const_iterator CredentialIterator;
68
69
71
73 {}
74
75 public:
87 AuthData_Ptr getCred(const Url & url);
88
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
164 static AuthData_Ptr findIn( const CredentialManager::CredentialSet & set, const Url & url, url::ViewOption vopt );
165
169 time_t timestampForCredDatabase ( const zypp::Url &url );
170
174 bool credsGlobalEmpty() const;
175
179 bool credsUserEmpty() const;
180
181 struct Impl;
182 private:
184 };
186
187
189 } // media
192} // zypp
194
195#endif /* ZYPP_MEDIA_AUTH_CREDENTIALMANAGER_H */
RepoManager implementation.
Url manipulation class.
Definition: Url.h:92
Class for handling media authentication data.
Definition: authdata.h:29
CredentialSize credsUserSize() const
void save()
Saves any unsaved credentials added via addUserCred() or addGlobalCred() methods.
AuthData_Ptr getCredFromFile(const Pathname &file)
Read credentials from a file.
CredentialIterator credsGlobalBegin() const
CredentialIterator credsUserBegin() const
time_t timestampForCredDatabase(const zypp::Url &url)
std::set< AuthData_Ptr, AuthDataComparator > CredentialSet
CredentialSet::const_iterator CredentialIterator
void saveInUser(const AuthData &cred)
Saves given cred to user's credentials file.
AuthData_Ptr getCred(const Url &url)
Get credentials for the specified url.
void addUserCred(const AuthData &cred)
Add new user credentials.
static AuthData_Ptr findIn(const CredentialManager::CredentialSet &set, const Url &url, url::ViewOption vopt)
void saveInFile(const AuthData &, const Pathname &credFile)
Saves given cred to user specified credentials file.
CredentialIterator credsGlobalEnd() const
CredentialIterator credsUserEnd() const
CredentialSize credsGlobalSize() const
void addCred(const AuthData &cred)
Add new credentials with user callbacks.
void addGlobalCred(const AuthData &cred)
Add new global credentials.
CredentialSet::size_type CredentialSize
void saveInGlobal(const AuthData &cred)
Saves given cred to global credentials file.
void clearAll(bool global=false)
Remove all global or user credentials from memory and disk.
shared_ptr< AuthData > AuthData_Ptr
Definition: authdata.h:79
Easy-to use interface to the ZYPP dependency resolver.
Definition: CodePitfalls.doc:2
constexpr std::string_view Url("url")
Wrapper for const correct access via Smart pointer types.
Definition: PtrTypes.h:286
bool operator()(const AuthData_Ptr &lhs, const AuthData_Ptr &rhs) const
Url::asString() view options.
Definition: UrlBase.h:40