git-svn-id: http://mc-server.googlecode.com/svn/trunk@1139 0a769ca7-a7f5-676a-18bf-c427514a06d6
		
			
				
	
	
		
			69 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			69 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
#pragma once
 | 
						|
 | 
						|
#include "../WebServer/WebServer.h"
 | 
						|
#include "OSSupport/Socket.h"
 | 
						|
 | 
						|
class cStringMap;
 | 
						|
 | 
						|
struct HTTPFormData		// tolua_export
 | 
						|
{						// tolua_export
 | 
						|
	std::string Name;	// tolua_export
 | 
						|
	std::string Value;	// tolua_export
 | 
						|
	std::string Type;	// tolua_export
 | 
						|
};// tolua_export
 | 
						|
 | 
						|
struct HTTPRequest	// tolua_export
 | 
						|
{					// tolua_export
 | 
						|
	typedef std::map< std::string, std::string > StringStringMap;
 | 
						|
	typedef std::map< std::string, HTTPFormData > FormDataMap;
 | 
						|
	std::string Method;			// tolua_export
 | 
						|
	std::string Path;			// tolua_export
 | 
						|
	StringStringMap Params;		// >> EXPORTED IN MANUALBINDINGS <<
 | 
						|
	StringStringMap PostParams;	// >> EXPORTED IN MANUALBINDINGS <<
 | 
						|
	std::string Username;		// tolua_export
 | 
						|
	FormDataMap FormData;		// >> EXPORTED IN MANUALBINDINGS <<
 | 
						|
}; // tolua_export
 | 
						|
 | 
						|
struct lua_State;
 | 
						|
class cEvent;
 | 
						|
class cIniFile;
 | 
						|
class cWebPlugin;
 | 
						|
class cWebAdmin
 | 
						|
{
 | 
						|
public:
 | 
						|
	cWebAdmin( int a_Port = 8080 );
 | 
						|
	~cWebAdmin();
 | 
						|
 | 
						|
	bool Init( int a_Port );
 | 
						|
 | 
						|
	void AddPlugin( cWebPlugin* a_Plugin );
 | 
						|
	void RemovePlugin( cWebPlugin* a_Plugin );
 | 
						|
 | 
						|
	typedef std::list< cWebPlugin* > PluginList;
 | 
						|
	PluginList GetPlugins() { return m_Plugins; }
 | 
						|
 | 
						|
	static void Request_Handler(webserver::http_request* r);
 | 
						|
 | 
						|
	int GetPort() { return m_Port; }
 | 
						|
private:
 | 
						|
 | 
						|
#ifdef _WIN32
 | 
						|
	static DWORD WINAPI ListenThread(LPVOID lpParam);
 | 
						|
#else
 | 
						|
	static void *ListenThread( void *lpParam );
 | 
						|
#endif
 | 
						|
 | 
						|
	std::string GetTemplate();
 | 
						|
 | 
						|
	int m_Port;
 | 
						|
 | 
						|
	bool m_bConnected;
 | 
						|
	cSocket m_ListenSocket;
 | 
						|
 | 
						|
	cIniFile* m_IniFile;
 | 
						|
	PluginList m_Plugins;
 | 
						|
 | 
						|
	cEvent* m_Event;
 | 
						|
 | 
						|
	webserver* m_WebServer;
 | 
						|
}; |