libzypp  17.25.1
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  private:
64  ZYppFactory();
65  };
67 
69  std::ostream & operator<<( std::ostream & str, const ZYppFactory & obj );
70 
75  inline ZYpp::Ptr getZYpp()
76  { return ZYppFactory::instance().getZYpp(); }
77 
79 } // namespace zypp
81 #endif // ZYPP_ZYPPFACTORY_H
zypp::ZYppFactory::operator<<
friend std::ostream & operator<<(std::ostream &str, const ZYppFactory &obj)
Definition: ZYppFactory.cc:427
zypp::Exception
Base class for Exception.
Definition: Exception.h:145
zypp::ZYppFactory::getZYpp
ZYpp::Ptr getZYpp() const
Definition: ZYppFactory.cc:353
zypp::ZYppFactoryException::lockerPid
pid_t lockerPid() const
Definition: ZYppFactory.h:30
ZYpp.h
zypp::ZYppFactoryException::~ZYppFactoryException
virtual ~ZYppFactoryException()
Definition: ZYppFactory.cc:333
zypp::ZYppFactoryException
Definition: ZYppFactory.h:24
Exception.h
zypp::ZYppFactory::getZYpp
ZYpp::Ptr getZYpp()
Definition: ZYppFactory.h:75
zypp
Easy-to use interface to the ZYPP dependency resolver.
Definition: CodePitfalls.doc:1
zypp::ZYpp::Ptr
::boost::shared_ptr< ZYpp > Ptr
Definition: ZYpp.h:60
zypp::ZYppFactoryException::lockerName
const std::string & lockerName() const
Definition: ZYppFactory.h:31
zypp::ZYppFactory::haveZYpp
bool haveZYpp() const
Whether the ZYpp instance is already created.
Definition: ZYppFactory.cc:420
zypp::ZYppFactory::instance
static ZYppFactory instance()
Singleton ctor.
Definition: ZYppFactory.cc:342
zypp::ZYppFactory::~ZYppFactory
~ZYppFactory()
Dtor.
Definition: ZYppFactory.cc:348
zypp::ZYppFactory
ZYpp factory class (Singleton)
Definition: ZYppFactory.h:43
zypp::ZYppFactoryException::ZYppFactoryException
ZYppFactoryException(const std::string &msg_r, pid_t lockerPid_r, const std::string &lockerName_r)
Definition: ZYppFactory.cc:327
zypp::ZYppFactoryException::_lockerName
std::string _lockerName
Definition: ZYppFactory.h:34
zypp::operator<<
std::ostream & operator<<(std::ostream &str, const Exception &obj)
Definition: Exception.cc:147
str
String related utilities and Regular expression matching.
zypp::ZYppFactory::ZYppFactory
ZYppFactory()
Default ctor.
Definition: ZYppFactory.cc:345
zypp::ZYppFactoryException::_lockerPid
pid_t _lockerPid
Definition: ZYppFactory.h:33