libzypp  17.14.0
CheckAccessDeleted.h
Go to the documentation of this file.
1 /*---------------------------------------------------------------------\
2 | ____ _ __ __ ___ |
3 | |__ / \ / / . \ . \ |
4 | / / \ V /| _/ _/ |
5 | / /__ | | | | | | |
6 | /_____||_| |_| |_| |
7 | |
8 \---------------------------------------------------------------------*/
12 #ifndef ZYPP_MISC_CHECKACCESSDELETED_H
13 #define ZYPP_MISC_CHECKACCESSDELETED_H
14 
15 #include <iosfwd>
16 #include <vector>
17 #include <string>
18 #include <zypp/Pathname.h>
19 #include <zypp/base/PtrTypes.h>
20 
22 namespace zypp
23 {
24 
42  {
43 
44  public:
45  class Impl;
49  struct ProcInfo
50  {
51  std::string pid;
52  std::string ppid;
53  std::string puid;
54  std::string login;
55  std::string command;
56  std::vector<std::string> files;
57 
62  std::string service() const;
63  };
64 
65  typedef size_t size_type;
67  typedef std::vector<ProcInfo>::const_iterator const_iterator;
68 
69  public:
75  CheckAccessDeleted( bool doCheck_r = true );
76 
77  public:
90  size_type check( bool verbose_r = false );
91 
99  size_type check( const Pathname &lsofOutput_r, bool verbose_r = false );
100 
101  bool empty() const;
102  size_type size() const;
103  const_iterator begin() const;
104  const_iterator end() const;
105 
110  void setDebugOutputFile (const Pathname &filename_r);
111 
112  public:
117  static std::string findService( pid_t pid_r );
118  private:
120  };
122 
124  std::ostream & operator<<( std::ostream & str, const CheckAccessDeleted & obj );
125 
127  std::ostream & operator<<( std::ostream & str, const CheckAccessDeleted::ProcInfo & obj );
128 
130 } // namespace zypp
132 #endif // ZYPP_MISC_CHECKACCESSDELETED_H