libzypp 17.31.7
RepoInfoBase.h
Go to the documentation of this file.
1/*---------------------------------------------------------------------\
2| ____ _ __ __ ___ |
3| |__ / \ / / . \ . \ |
4| / / \ V /| _/ _/ |
5| / /__ | | | | | | |
6| /_____||_| |_| |_| |
7| |
8\---------------------------------------------------------------------*/
12#ifndef REPOINFOBASE_H_
13#define REPOINFOBASE_H_
14
15#include <iosfwd>
16
17#include <zypp/base/PtrTypes.h>
18#include <zypp/APIConfig.h>
19#include <zypp/Pathname.h>
20
22namespace zypp
23{
25 namespace repo
26 {
27
29 //
30 // CLASS NAME : RepoInfoBase
31 //
40 {
41 friend std::ostream & operator<<( std::ostream & str, const RepoInfoBase & obj );
42
43 public:
45 RepoInfoBase(const std::string & alias);
46 virtual ~RepoInfoBase();
47
55 std::string alias() const;
56
60 std::string escaped_alias() const;
61
69 std::string name() const;
70
72 std::string rawName() const;
73
79 std::string label() const;
80
82 std::string asUserString() const
83 { return label(); }
84
89 bool enabled() const;
90
95 bool autorefresh() const;
96
103 Pathname filepath() const;
104
105
106 public:
107
112 void setAlias( const std::string &alias );
113
118 void setName( const std::string &name );
119
124 void setEnabled( bool enabled );
125
130 void setAutorefresh( bool autorefresh );
131
140 void setFilepath( const Pathname &filename );
141
146 virtual std::ostream & dumpOn( std::ostream & str ) const;
147
152 virtual std::ostream & dumpAsIniOn( std::ostream & str ) const;
153
158 virtual std::ostream & dumpAsXmlOn( std::ostream & str, const std::string & content = "" ) const;
159
160 struct Impl;
161 private:
164 };
166
168 inline bool operator==( const RepoInfoBase & lhs, const RepoInfoBase & rhs )
169 { return lhs.alias() == rhs.alias(); }
170
172 inline bool operator!=( const RepoInfoBase & lhs, const RepoInfoBase & rhs )
173 { return lhs.alias() != rhs.alias(); }
174
175 inline bool operator<( const RepoInfoBase & lhs, const RepoInfoBase & rhs )
176 { return lhs.alias() < rhs.alias(); }
177
179 std::ostream & operator<<( std::ostream & str, const RepoInfoBase & obj );
180
182 typedef shared_ptr<RepoInfoBase> RepoInfoBase_Ptr;
184 typedef shared_ptr<const RepoInfoBase> RepoInfoBase_constPtr;
185
186
188 } // namespace repo
191} // namespace zypp
193
194#endif /*REPOINFOBASE_H_*/
RepoManager implementation.
Base class implementing common features of RepoInfo and ServiceInfo.
Definition: RepoInfoBase.h:40
virtual std::ostream & dumpOn(std::ostream &str) const
Write a human-readable representation of this RepoInfoBase object into the str stream.
shared_ptr< const RepoInfoBase > RepoInfoBase_constPtr
Definition: RepoInfoBase.h:184
std::string label() const
Label for use in messages for the user interface.
bool operator!=(const RepoInfoBase &lhs, const RepoInfoBase &rhs)
Definition: RepoInfoBase.h:172
void setAutorefresh(bool autorefresh)
enable or disable autorefresh
Definition: RepoInfoBase.cc:91
std::string escaped_alias() const
Same as alias(), just escaped in a way to be a valid file name.
virtual std::ostream & dumpAsIniOn(std::ostream &str) const
Write this RepoInfoBase object into str in a .repo (ini) file format.
void setFilepath(const Pathname &filename)
set the path to the .repo file
bool operator==(const RepoInfoBase &lhs, const RepoInfoBase &rhs)
Definition: RepoInfoBase.h:168
std::string asUserString() const
User string: label (alias or name)
Definition: RepoInfoBase.h:82
void setAlias(const std::string &alias)
set the repository alias
Definition: RepoInfoBase.cc:94
shared_ptr< RepoInfoBase > RepoInfoBase_Ptr
Definition: RepoInfoBase.h:182
Pathname filepath() const
File where this repo was read from.
friend std::ostream & operator<<(std::ostream &str, const RepoInfoBase &obj)
void setName(const std::string &name)
set the repository name
Definition: RepoInfoBase.cc:97
bool autorefresh() const
If true, the repostory must be refreshed before creating resolvables from it.
std::string name() const
Repository name.
std::string rawName() const
The raw metadata name (no default, no variables replaced).
virtual std::ostream & dumpAsXmlOn(std::ostream &str, const std::string &content="") const
Write an XML representation of this object with content (if available).
bool enabled() const
If enabled is false, then this repository must be ignored as if does not exists, except when checking...
void setEnabled(bool enabled)
enable or disable the repository
Definition: RepoInfoBase.cc:88
RWCOW_pointer< Impl > _pimpl
Pointer to implementation.
Definition: RepoInfoBase.h:160
std::string alias() const
unique identifier for this source.
String related utilities and Regular expression matching.
std::ostream & operator<<(std::ostream &str, const DeltaCandidates &obj)
bool operator<(const RepoInfoBase &lhs, const RepoInfoBase &rhs)
Definition: RepoInfoBase.h:175
Easy-to use interface to the ZYPP dependency resolver.
Definition: CodePitfalls.doc:2
RW_pointer supporting 'copy on write' functionality.
Definition: PtrTypes.h:459