registrationhandler.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef REGISTRATIONHANDLER_H__
00016 #define REGISTRATIONHANDLER_H__
00017
00018 #include "oob.h"
00019
00020 #include <string>
00021
00022 namespace gloox
00023 {
00024
00025 class DataForm;
00026 class OOB;
00027 class JID;
00028
00032 enum RegistrationResult
00033 {
00034 RegistrationSuccess = 0,
00036 RegistrationNotAcceptable,
00037 RegistrationConflict,
00038 RegistrationNotAuthorized,
00043 RegistrationBadRequest,
00050 RegistrationForbidden,
00052 RegistrationRequired,
00054 RegistrationUnexpectedRequest,
00062 RegistrationNotAllowed,
00064 RegistrationUnknownError
00065 };
00066
00077 class GLOOX_API RegistrationHandler
00078 {
00079 public:
00083 virtual ~RegistrationHandler() {}
00084
00092 virtual void handleRegistrationFields( const JID& from, int fields,
00093 std::string instructions ) = 0;
00094
00099 virtual void handleAlreadyRegistered( const JID& from ) = 0;
00100
00106 virtual void handleRegistrationResult( const JID& from, RegistrationResult regResult ) = 0;
00107
00114 virtual void handleDataForm( const JID& from, const DataForm &form ) = 0;
00115
00122 virtual void handleOOB( const JID& from, const OOB& oob ) = 0;
00123
00124 };
00125
00126 }
00127
00128 #endif // REGISTRATIONHANDLER_H__