libzypp  17.37.18
ShutdownLock_p.h
Go to the documentation of this file.
1 /*---------------------------------------------------------------------\
2 | ____ _ __ __ ___ |
3 | |__ / \ / / . \ . \ |
4 | / / \ V /| _/ _/ |
5 | / /__ | | | | | | |
6 | /_____||_| |_| |_| |
7 | |
8 \---------------------------------------------------------------------*/
13 #ifndef ZYPP_SHUTDOWNLOCK_P_H_INCLUDED
14 #define ZYPP_SHUTDOWNLOCK_P_H_INCLUDED
15 
16 #include <string>
17 
18 #include <zypp-core/Globals.h>
20 
21 namespace zypp
22 {
23 
24 class ExternalProgramWithSeperatePgid;
25 
36 {
37 protected:
38  ShutdownLock( const std::string &who, const std::string &reason );
39  ~ShutdownLock();
40 
41 private:
42  shared_ptr<ExternalProgramWithSeperatePgid> _prog;
43 };
44 
46 {
47 public:
48  ShutdownLockCommit( const std::string &who )
49  : ShutdownLock( who, "Zypp commit running." )
50  {}
51 };
52 
53 } // namespace
54 #endif
Attempts to create a lock to prevent the system from going into hibernate/shutdown.
Provides API related macros.
ShutdownLockCommit(const std::string &who)
ShutdownLock(const std::string &who, const std::string &reason)
Definition: ShutdownLock.cc:8
shared_ptr< ExternalProgramWithSeperatePgid > _prog