gloox 1.0.28
component.h
1/*
2 Copyright (c) 2005-2023 by Jakob Schröter <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
15#ifndef COMPONENT_H__
16#define COMPONENT_H__
17
18#include "clientbase.h"
19
20#include <string>
21
22namespace gloox
23{
24
33 class GLOOX_API Component : public ClientBase
34 {
35 public:
46 Component( const std::string& ns, const std::string& server,
47 const std::string& component, const std::string& password, int port = 5347 );
48
52 virtual ~Component() {}
53
57 virtual void disconnect() { ClientBase::disconnect( ConnUserDisconnected ); }
58
59 protected:
60 // reimplemented from ClientBase
61 virtual void handleStartNode( const Tag* start );
62
63 // reimplemented from ClientBase
64 virtual bool handleNormalNode( Tag* tag );
65
66 // reimplemented from ClientBase
67 virtual bool checkStreamVersion( const std::string& /*version*/ ) { return true; }
68
69 private:
70 // reimplemented from ClientBase
71 virtual void rosterFilled() {}
72
73 };
74
75}
76
77#endif // COMPONENT_H__
This is the common base class for a Jabber/XMPP Client and a Jabber Component.
Definition clientbase.h:79
This is an implementation of a basic jabber Component.
Definition component.h:34
virtual ~Component()
Definition component.h:52
virtual bool checkStreamVersion(const std::string &)
Definition component.h:67
virtual void disconnect()
Definition component.h:57
This is an abstraction of an XML element.
Definition tag.h:47
The namespace for the gloox library.
Definition adhoc.cpp:28
@ ConnUserDisconnected
Definition gloox.h:714