gloox  1.0.1
privacylisthandler.h
1 /*
2  Copyright (c) 2005-2012 by Jakob Schroeter <js@camaya.net>
3  This file is part of the gloox library. http://camaya.net/gloox
4 
5  This software is distributed under a license. The full license
6  agreement can be found in the file LICENSE in this distribution.
7  This software may not be copied, modified, sold or distributed
8  other than expressed in the named license agreement.
9 
10  This software is distributed without any warranty.
11 */
12 
13 
14 #ifndef PRIVACYLISTHANDLER_H__
15 #define PRIVACYLISTHANDLER_H__
16 
17 #include "privacyitem.h"
18 #include "gloox.h"
19 
20 #include <string>
21 #include <list>
22 
23 namespace gloox
24 {
25 
30  {
42  };
43 
50  class GLOOX_API PrivacyListHandler
51  {
52  public:
53 
57  typedef std::list<PrivacyItem> PrivacyList;
58 
62  virtual ~PrivacyListHandler() {}
63 
71  virtual void handlePrivacyListNames( const std::string& active, const std::string& def,
72  const StringList& lists ) = 0;
73 
80  virtual void handlePrivacyList( const std::string& name, const PrivacyList& items ) = 0;
81 
86  virtual void handlePrivacyListChanged( const std::string& name ) = 0;
87 
93  virtual void handlePrivacyListResult( const std::string& id, PrivacyListResult plResult ) = 0;
94 
95  };
96 
97 }
98 
99 #endif // PRIVACYLISTHANDLER_H__