00001
00002
00004
00005 #if !defined(AFX_WXFLICKRHANDLER_H__E4D25BB2_1822_409D_AC4D_8D8DDB78DD62__INCLUDED_)
00006 #define AFX_WXFLICKRHANDLER_H__E4D25BB2_1822_409D_AC4D_8D8DDB78DD62__INCLUDED_
00007
00008
00009 #include <wx/event.h>
00010 #include <wx/socket.h>
00011
00012
00013 #include "wxFlickrClient.h"
00014 #include "wxFlickrData.h"
00015
00016
00017 #include "includes/tinyxml_2_4_2/tinyxml.h"
00018
00019 using namespace wxFlickrAPI;
00020
00022 class wxFlickrHandler : public wxEvtHandler {
00023 public:
00024 wxFlickrHandler();
00025 virtual ~wxFlickrHandler();
00026 virtual void OnSocketEvent(wxSocketEvent &event);
00027
00028 protected:
00029 virtual void HandleSocketInput(wxFlickrClient *pClientSocket);
00030 virtual TiXmlNode *ExtractXMLPayload() = 0;
00031 virtual bool GotFullResponse() = 0;
00032
00033 wxString m_sInput;
00034 bool m_bGotFlickrError;
00035 private:
00036
00037
00038 };
00039
00041 class wxFlickrHandlerREST : public wxFlickrHandler {
00042 protected:
00043 virtual TiXmlNode *ExtractXMLPayload();
00044 virtual bool GotFullResponse();
00045 };
00046
00048 class wxFlickrHandlerXMLRPC : public wxFlickrHandler {
00049 protected:
00050 virtual TiXmlNode *ExtractXMLPayload();
00051 virtual bool GotFullResponse();
00052 };
00053
00054 #endif // !defined(AFX_WXFLICKRHANDLER_H__E4D25BB2_1822_409D_AC4D_8D8DDB78DD62__INCLUDED_)