libzypp  17.25.0
RepoException.h
Go to the documentation of this file.
1 /*---------------------------------------------------------------------\
2 | ____ _ __ __ ___ |
3 | |__ / \ / / . \ . \ |
4 | / / \ V /| _/ _/ |
5 | / /__ | | | | | | |
6 | /_____||_| |_| |_| |
7 | |
8 \---------------------------------------------------------------------*/
12 #ifndef ZYPP_REPO_REPOEXCEPTION_H
13 #define ZYPP_REPO_REPOEXCEPTION_H
14 
15 #include <iosfwd>
16 #include <string>
17 
18 #include <zypp/base/Exception.h>
20 #include <zypp/RepoInfo.h>
21 #include <zypp/ServiceInfo.h>
22 
24 namespace zypp
25 {
26  namespace repo
28  {
29 
33 
37  class RepoException : public Exception
38  {
39  public:
40  RepoException();
41  RepoException( const std::string & msg_r );
42  RepoException( const RepoInfo & info );
43  RepoException( const RepoInfo & info, const std::string & msg_r );
44  virtual ~RepoException() throw();
45 
47  { return _info; }
48 
49  std::string alias()
50  { return info().alias(); }
51 
52  protected:
53  virtual std::ostream & dumpOn( std::ostream & str ) const;
54 
55  private:
57  };
59 
66  {
67  public:
69  RepoNotCachedException( const std::string & msg_r );
71  RepoNotCachedException( const RepoInfo & info, const std::string & msg_r );
72  };
73 
79  {
80  public:
82  RepoNoUrlException( const std::string & msg_r );
83  RepoNoUrlException( const RepoInfo & info );
84  RepoNoUrlException( const RepoInfo & info, const std::string & msg_r );
85  };
86 
92  {
93  public:
95  RepoNoAliasException( const std::string & msg_r );
97  RepoNoAliasException( const RepoInfo & info, const std::string & msg_r );
98  };
99 
104  {
105  public:
107  RepoInvalidAliasException( const std::string & msg_r );
109  RepoInvalidAliasException( const RepoInfo & info, const std::string & msg_r );
110  };
111 
117  {
118  public:
120  RepoNotFoundException( const std::string & msg_r );
122  RepoNotFoundException( const RepoInfo & info, const std::string & msg_r );
123  };
124 
130  {
131  public:
133  RepoAlreadyExistsException( const std::string & msg_r );
135  RepoAlreadyExistsException( const RepoInfo & info, const std::string & msg_r );
136  };
137 
143  {
144  public:
146  RepoUnknownTypeException( const std::string & msg_r );
148  RepoUnknownTypeException( const RepoInfo & info, const std::string & msg_r );
149  };
150 
156  {
157  public:
159  RepoMetadataException( const std::string & msg_r );
161  RepoMetadataException( const RepoInfo & info, const std::string & msg_r );
162  };
163 
165 
172 
176  {
177  public:
179  ServiceException( const std::string & msg_r );
180  ServiceException( const ServiceInfo & service_r );
181  ServiceException( const ServiceInfo & service_r, const std::string & msg_r );
182  virtual ~ServiceException() throw();
183 
185  { return _service; }
186 
187  std::string alias()
188  { return service().alias(); }
189 
190  protected:
191  virtual std::ostream & dumpOn( std::ostream & str ) const;
192 
193  private:
195  };
197 
201  {
202  public:
204  ServiceNoAliasException( const std::string & msg_r );
205  ServiceNoAliasException( const ServiceInfo & service_r );
206  ServiceNoAliasException( const ServiceInfo & service_r, const std::string & msg_r );
207  };
208 
213  {
214  public:
216  ServiceInvalidAliasException( const std::string & msg_r );
218  ServiceInvalidAliasException( const ServiceInfo & info, const std::string & msg_r );
219  };
220 
224  {
225  public:
227  ServiceAlreadyExistsException( const std::string & msg_r );
228  ServiceAlreadyExistsException( const ServiceInfo & service_r );
229  ServiceAlreadyExistsException( const ServiceInfo & service_r, const std::string & msg_r );
230  };
231 
235  {
236  public:
238  ServiceNoUrlException( const std::string & msg_r );
239  ServiceNoUrlException( const ServiceInfo & service_r );
240  ServiceNoUrlException( const ServiceInfo & service_r, const std::string & msg_r );
241  };
243 
244 
248 
252  {
253  public:
255  ServicePluginException( const std::string & msg_r );
256  ServicePluginException( const ServiceInfo & service_r );
257  ServicePluginException( const ServiceInfo & service_r, const std::string & msg_r );
258  };
259 
263  {
264  public:
266  ServicePluginInformalException( const std::string & msg_r );
267  ServicePluginInformalException( const ServiceInfo & service_r );
268  ServicePluginInformalException( const ServiceInfo & service_r, const std::string & msg_r );
269  };
270 
274  {
275  public:
277  ServicePluginImmutableException( const std::string & msg_r );
278  ServicePluginImmutableException( const ServiceInfo & service_r );
279  ServicePluginImmutableException( const ServiceInfo & service_r, const std::string & msg_r );
280  };
282 
284  } // namespace repo
287 } // namespace zypp
289 #endif // ZYPP_PARSER_TAGFILE_PARSEEXCEPTION_H
zypp::repo::ServiceException::~ServiceException
virtual ~ServiceException()
Definition: RepoException.cc:98
zypp::repo::ServiceException::service
ServiceInfo service()
Definition: RepoException.h:184
zypp::ServiceInfo
Service data.
Definition: ServiceInfo.h:36
zypp::Exception
Base class for Exception.
Definition: Exception.h:145
zypp::RepoInfo
What is known about a repository.
Definition: RepoInfo.h:71
zypp::repo::ServicePluginInformalException
Service plugin has trouble providing the metadata but this should not be treated as error.
Definition: RepoException.h:262
zypp::repo::RepoException::info
RepoInfo info()
Definition: RepoException.h:46
zypp::repo::RepoException::RepoException
RepoException()
Definition: RepoException.cc:32
zypp::repo::RepoNotCachedException::RepoNotCachedException
RepoNotCachedException()
zypp::repo::RepoException::alias
std::string alias()
Definition: RepoException.h:49
zypp::repo::ServiceAlreadyExistsException
Service already exists and some unique attribute can't be duplicated.
Definition: RepoException.h:223
zypp::repo::RepoUnknownTypeException
thrown when it was impossible to determine this repo type.
Definition: RepoException.h:142
zypp::repo::RepoNoUrlException::RepoNoUrlException
RepoNoUrlException()
zypp::repo::RepoMetadataException
thrown when it was impossible to use the raw metadata for this repo.
Definition: RepoException.h:155
zypp::repo::ServiceInvalidAliasException::ServiceInvalidAliasException
ServiceInvalidAliasException()
zypp::repo::ServicePluginException::ServicePluginException
ServicePluginException()
zypp::repo::ServiceAlreadyExistsException::ServiceAlreadyExistsException
ServiceAlreadyExistsException()
zypp::repo::ServicePluginImmutableException::ServicePluginImmutableException
ServicePluginImmutableException()
zypp::repo::ServiceException::dumpOn
virtual std::ostream & dumpOn(std::ostream &str) const
Overload this to print a proper error message.
Definition: RepoException.cc:101
zypp::repo::ServicePluginInformalException::ServicePluginInformalException
ServicePluginInformalException()
zypp::repo::RepoNotFoundException
thrown when it was impossible to match a repository
Definition: RepoException.h:116
zypp::repo::ServiceNoAliasException
Service without alias was used in an operation.
Definition: RepoException.h:200
zypp::repo::RepoInvalidAliasException::RepoInvalidAliasException
RepoInvalidAliasException()
zypp::repo::RepoNoAliasException
thrown when it was impossible to determine an alias for this repo.
Definition: RepoException.h:91
zypp::repo::RepoInvalidAliasException
Thrown when the repo alias is found to be invalid.
Definition: RepoException.h:103
Exception.h
zypp::repo::ServiceException::_service
ServiceInfo _service
Definition: RepoException.h:194
RepoInfo.h
zypp::repo::RepoInfoBase::alias
std::string alias() const
unique identifier for this source.
Definition: RepoInfoBase.cc:111
zypp::repo::RepoAlreadyExistsException
Repository already exists and some unique attribute can't be duplicated.
Definition: RepoException.h:129
zypp
Easy-to use interface to the ZYPP dependency resolver.
Definition: CodePitfalls.doc:1
zypp::repo::ServiceException::alias
std::string alias()
Definition: RepoException.h:187
zypp::repo::RepoException::dumpOn
virtual std::ostream & dumpOn(std::ostream &str) const
Overload this to print a proper error message.
Definition: RepoException.cc:51
zypp::repo::ServiceNoAliasException::ServiceNoAliasException
ServiceNoAliasException()
zypp::repo::RepoNoUrlException
thrown when it was impossible to determine one url for this repo.
Definition: RepoException.h:78
zypp::repo::ServiceNoUrlException
Service has no or invalid url defined.
Definition: RepoException.h:234
zypp::repo::ServiceException::ServiceException
ServiceException()
Definition: RepoException.cc:82
UserRequestException.h
zypp::repo::RepoAlreadyExistsException::RepoAlreadyExistsException
RepoAlreadyExistsException()
zypp::repo::RepoNotCachedException
The repository cache is not built yet so you can't create the repostories from the cache.
Definition: RepoException.h:65
zypp::repo::RepoException::~RepoException
virtual ~RepoException()
Definition: RepoException.cc:48
zypp::repo::RepoNotFoundException::RepoNotFoundException
RepoNotFoundException()
ServiceInfo.h
zypp::repo::RepoMetadataException::RepoMetadataException
RepoMetadataException()
zypp::repo::ServicePluginImmutableException
Service plugin is immutable.
Definition: RepoException.h:273
zypp::repo::RepoUnknownTypeException::RepoUnknownTypeException
RepoUnknownTypeException()
zypp::repo::ServiceException
Base Exception for service handling.
Definition: RepoException.h:175
zypp::repo::ServiceInvalidAliasException
Thrown when the repo alias is found to be invalid.
Definition: RepoException.h:212
zypp::repo::RepoException
Exception for repository handling.
Definition: RepoException.h:37
str
String related utilities and Regular expression matching.
zypp::repo::ServiceNoUrlException::ServiceNoUrlException
ServiceNoUrlException()
zypp::repo::RepoException::_info
RepoInfo _info
Definition: RepoException.h:56
zypp::repo::RepoNoAliasException::RepoNoAliasException
RepoNoAliasException()
zypp::repo::ServicePluginException
PLUGIN Service related exceptions.
Definition: RepoException.h:251