libzypp  17.31.31
ZYppFactory.h
Go to the documentation of this file.
1 /*---------------------------------------------------------------------\
2 | ____ _ __ __ ___ |
3 | |__ / \ / / . \ . \ |
4 | / / \ V /| _/ _/ |
5 | / /__ | | | | | | |
6 | /_____||_| |_| |_| |
7 | |
8 \---------------------------------------------------------------------*/
12 #ifndef ZYPP_ZYPPFACTORY_H
13 #define ZYPP_ZYPPFACTORY_H
14 
15 #include <iosfwd>
16 
17 #include <zypp/base/Exception.h>
18 #include <zypp/ZYpp.h>
19 
21 namespace zypp
22 {
23 
25  {
26  public:
27  ZYppFactoryException( const std::string & msg_r, pid_t lockerPid_r, const std::string & lockerName_r );
28  virtual ~ZYppFactoryException() throw ();
29  public:
30  pid_t lockerPid() const { return _lockerPid; }
31  const std::string & lockerName() const { return _lockerName; }
32  private:
33  pid_t _lockerPid;
34  std::string _lockerName;
35  };
36 
38  //
39  // CLASS NAME : ZYppFactory
40  //
44  {
45  friend std::ostream & operator<<( std::ostream & str, const ZYppFactory & obj );
46 
47  public:
49  static ZYppFactory instance();
51  ~ZYppFactory();
52 
53  public:
57  ZYpp::Ptr getZYpp() const;
58 
60  bool haveZYpp() const;
61 
62  static zypp::Pathname lockfileDir ();
63 
64  private:
66  ZYppFactory();
67  };
69 
71  std::ostream & operator<<( std::ostream & str, const ZYppFactory & obj );
72 
77  inline ZYpp::Ptr getZYpp()
78  { return ZYppFactory::instance().getZYpp(); }
79 
81 } // namespace zypp
83 #endif // ZYPP_ZYPPFACTORY_H
bool haveZYpp() const
Whether the ZYpp instance is already created.
Definition: ZYppFactory.cc:460
String related utilities and Regular expression matching.
std::ostream & operator<<(std::ostream &str, const SerialNumber &obj)
Definition: SerialNumber.cc:52
static ZYppFactory instance()
Singleton ctor.
Definition: ZYppFactory.cc:361
::boost::shared_ptr< ZYpp > Ptr
Definition: ZYpp.h:63
ZYpp::Ptr getZYpp() const
Definition: ZYppFactory.cc:372
ZYppFactoryException(const std::string &msg_r, pid_t lockerPid_r, const std::string &lockerName_r)
Definition: ZYppFactory.cc:346
ZYpp factory class (Singleton)
Definition: ZYppFactory.h:43
ZYppFactory()
Default ctor.
Definition: ZYppFactory.cc:364
Base class for Exception.
Definition: Exception.h:145
const std::string & lockerName() const
Definition: ZYppFactory.h:31
friend std::ostream & operator<<(std::ostream &str, const ZYppFactory &obj)
Definition: ZYppFactory.cc:473
static zypp::Pathname lockfileDir()
Definition: ZYppFactory.cc:463
Easy-to use interface to the ZYPP dependency resolver.
Definition: CodePitfalls.doc:1
ZYpp::Ptr getZYpp()
Definition: ZYppFactory.h:77