/* ==================================================================== * ÆÄ ÀÏ : logRecver.h * ¸ñ Àû : °¢ ¼­¹öÀÇ ·Î±×¸¦ ¹Þ¾Æ¼­, SQL-Pool·Î Àü´Þ * ÀÛ ¼º ÀÚ : °ûöÁß * ÀÛ ¼º ÀÏ : 07/02/14 * ÁÖÀÇ»çÇ× : * =================================================================== */ #ifndef __LOG_RECVER_H__ #define __LOG_RECVER_H__ //#ifndef WINVER //#define WINVER 0x0500 //#endif // //#ifndef _WIN32_WINNT //#define _WIN32_WINNT 0x0500 //#endif #pragma once #include "iocpudprecv.h" #include "logprotocol.h" #include "packetpool.h" #ifndef __LOG_RECVER_TYPE__ #define __LOG_RECVER_TYPE__ enum LOG_RECVER_REQUEST_TYPE { // DEFAULT_LOG_RECVER - defined logdemon.h file LOG_RECVER_REQUEST = DEFAULT_LOG_RECVER, }; #endif // __LOG_RECVER_TYPE__ class cLogRecver : public IocpUdpRecv { private: PacketPool* mPacketPool; private: // ¼­¹ö °ü·Ã ¸Þ¼Òµå - º¸Á¶. bool SendSQL ( MSGBUF* msgBuf, int msgLen, SQL_REQUEST_LOG_TYPE logType ); private: // ¼­¹ö °ü·Ã ¸Þ¼Òµå - º¸Á¶. bool BatchComplete ( MSGBUF* msgBuf, int msgLen ); private: // ¼­¹ö °ü·Ã ¸Þ¼Òµå - ÁÖ. bool RecvComplete ( ULONG_PTR completionKey, PerIoContext* perIoContext, DWORD bytesTransferred ); bool CallbackComplete ( ULONG_PTR completionKey, PerIoContext* perIoContext, DWORD bytesTransferred ); public: // Ŭ·¡½º »ý¼º ¹× °ø¿ë ¸Þ¼Òµå. cLogRecver(void); void ErrorLog ( LPCTSTR format, ... ); bool Initialize ( char* ipAddr="", unsigned short port=14700, unsigned short numWorkerThreads=2, unsigned int bufferLength=65535 ); void Shutdown ( DWORD maxWait=INFINITE ); DWORD BackendThread ( ); public: // Ŭ·¡½º ÆÄ±« ¸Þ¼Òµå. virtual ~cLogRecver(void); }; #endif // __LOG_RECVER_H__