- RepoInfoBase added for common SericeInfo and RepoInfo stuff
[platform/upstream/libzypp.git] / zypp / repo / RepoInfoBaseImpl.h
1 /*---------------------------------------------------------------------\
2 |                          ____ _   __ __ ___                          |
3 |                         |__  / \ / / . \ . \                         |
4 |                           / / \ V /|  _/  _/                         |
5 |                          / /__ | | | | | |                           |
6 |                         /_____||_| |_| |_|                           |
7 |                                                                      |
8 \---------------------------------------------------------------------*/
9 /** \file       zypp/repo/RepoInfoBaseImpl.h
10  *
11  */
12 #ifndef REPOINFOBASEIMPL_H_
13 #define REPOINFOBASEIMPL_H_
14
15 #include <string>
16
17 #include "zypp/TriBool.h"
18 #include "zypp/Pathname.h"
19
20 ///////////////////////////////////////////////////////////////////
21 namespace zypp
22 { /////////////////////////////////////////////////////////////////
23   ///////////////////////////////////////////////////////////////////
24   namespace repo
25   { /////////////////////////////////////////////////////////////////
26
27   ///////////////////////////////////////////////////////////////////
28   //
29   //    CLASS NAME : RepoInfoBase::Impl
30   //
31   struct RepoInfoBase::Impl
32   {
33     Impl()
34       : enabled (indeterminate)
35       , autorefresh (indeterminate)
36     {}
37
38     ~Impl()
39     {}
40
41   public:
42     TriBool enabled;
43     TriBool autorefresh;
44     std::string alias;
45     std::string escaped_alias;
46     std::string name;
47     Pathname filepath;
48   public:
49
50   private:
51     friend Impl * rwcowClone<Impl>( const Impl * rhs );
52     /** clone for RWCOW_pointer */
53     Impl * clone() const
54     { return new Impl( *this ); }
55   };
56   ///////////////////////////////////////////////////////////////////
57
58     /////////////////////////////////////////////////////////////////
59   } // namespace repo
60   ///////////////////////////////////////////////////////////////////
61   /////////////////////////////////////////////////////////////////
62 } // namespace zypp
63 ///////////////////////////////////////////////////////////////////
64
65 #endif /*REPOINFOBASEIMPL_H_*/