00001 /* libzzinet 00002 * 00003 * This program is distributed under the GNU General Public License, version 2. 00004 * A copy of this license is included with this source. 00005 * 00006 * Copyright 2004-2006, Toni Thomsson <toni@tonjac.org> 00007 */ 00008 00013 #ifndef zz_mini_webserver_h 00014 #define zz_mini_webserver_h 00015 00016 #include <zz_http_server.h> 00017 #include <zz_log.h> 00018 #include <zz_worker_thread.h> 00019 #include <windows.h> 00020 #include <zz_access_log.h> 00021 #include <jni.h> 00022 00023 #define MAXTHREADS 100 00024 typedef CzzWorkerThread* THREADLIST[MAXTHREADS]; 00025 00026 class CzzMiniWebserver : public CzzWinThread, CzzHTTPServer 00027 { 00028 public: 00029 00030 // Construction 00031 CzzMiniWebserver( CzzAccessLog* log, JavaVM* jvm_instance ); 00032 virtual ~CzzMiniWebserver(); 00033 00034 // Listen for a request 00035 void listen( void ); 00036 virtual void OnStart( void ); 00037 00038 private: 00039 00040 CzzWorkerThread* getIdleThread( void ); 00041 void updateThreadList( CzzWorkerThread* newjob ); 00042 THREADLIST m_Services; 00043 JavaVM* m_JvmInstance; 00044 }; 00045 00046 #endif // zz_mini_webserver_h
1.4.6-NO