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 <string>
00019
00020 namespace gloox
00021 {
00022
00032 class GLOOX_EXPORT RegistrationHandler
00033 {
00034 public:
00038 enum resultEnum
00039 {
00040 REGISTRATION_SUCCESS = 0,
00042 REGISTRATION_NOT_ACCEPTABLE,
00043 REGISTRATION_CONFLICT,
00044 REGISTRATION_NOT_AUTHORIZED,
00049 REGISTRATION_BAD_REQUEST,
00055 REGISTRATION_FORBIDDEN,
00057 REGISTRATION_REGISTRATION_REQUIRED,
00059 REGISTRATION_UNEXPECTED_REQUEST,
00065 REGISTRATION_NOT_ALLOWED
00067 };
00068
00072 virtual ~RegistrationHandler() {};
00073
00080 virtual void handleRegistrationFields( int fields, std::string instructions ) = 0;
00081
00086 virtual void handleAlreadyRegistered() = 0;
00087
00092 virtual void handleRegistrationResult( resultEnum result ) = 0;
00093 };
00094
00095 }
00096
00097 #endif // REGISTRATIONHANDLER_H__