glooxd  0.3-svn
confighandler.h
1 /*
2  Copyright (c) 2009 by Jakob Schroeter <js@camaya.net>
3  This file is part of the glooxd library. http://camaya.net/glooxd
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 CONFIGHANDLER_H__
15 #define CONFIGHANDLER_H__
16 
17 #include "macros.h"
18 
19 #include <string>
20 
21 namespace glooxd
22 {
23 
31  class GLOOXD_API ConfigHandler
32  {
33  public:
37  virtual ~ConfigHandler() {}
38 
44  virtual bool handleC2SInterfaceAdded( const std::string& interface,
45  int port )
46  {
47  (void)interface;
48  (void)port;
49  return true;
50  }
51 
57  virtual bool handleC2SInterfaceRemoved( const std::string& interface,
58  int port )
59  {
60  (void)interface;
61  (void)port;
62  return true;
63  }
64 
70  virtual void handleDomainAdded( const std::string& domain ) = 0;
71 
76  virtual void handleDomainRemoved( const std::string& domain ) = 0;
77 
81  virtual void handleShutdown() = 0;
82 
83  };
84 
85 }
86 
87 #endif // CONFIGHANDLER_H__