/*************************************************************************** Replicationg °ü·Ã Queue Pop Control class ----------------------------------------- begin : 2010/03/31 copyright : (C) 2010 Solbox Inc. author : storage dev team email : storage.sd@solbox.com version : 3.3 CopyRight(C) 2010 Solbox Inc. All Rights reserved. Redistribution and use in source and binary forms, with or with out modification, are not permitted in outside of Solbox Inc. ***************************************************************************/ #ifndef __REPLICATE_QUEUE_CONTROL_H__ #define __REPLICATE_QUEUE_CONTROL_H__ #include #include "DataQueue.hpp" #include "ReplicationData.h" #include "ReportLog.h" // CQueuePopControl // Replication ó¸® °ü·Ã ¿øº» Queue ¿Í Àç½Ãµµ Queue Áß // ¾î´À Queue ¿¡¼­ Replication ´ë»ó content ¸¦ POP ó¸®ÇÒ °ÍÀÎÁö¸¦ // Á¦¾îÇϱâ À§ÇÑ Å¬·¡½º class CReplicateQueueControl { public: // »ý¼ºÀÚ CReplicateQueueControl(); // ¼Ò¸êÀÚ ~CReplicateQueueControl(); // °´Ã¼ ÃʱâÈ­ ÇÔ¼ö bool Init( CDataQueue * pSourceQueue, CDataQueue * pRetryQueue ); // Replication À» ó¸®ÇÒ °´Ã¼¸¦ ¿äûÇÑ ¼ö¸¸Å­ list ÇüÅ·ΠÀü´Þ // @param [in] nCnt ¿äû °³¼ö¸¦ ÀÔ·ÂÇÑ´Ù. // @param [out] lstWork ÀÛ¾÷´ë»ó Á¤º¸¸¦ listÇüÅ·ΠÀü´Þ // @return true ó¸®ÇÒ data °¡ Á¸ÀçÇÏ´Â °æ¿ì.. // false ó¸®ÇÒ data °¡ ¾ø´Â °æ¿ì bool GetWork(unsigned int nCnt, std::list& lstWork); private: // º¹Á¦´ë»ó Content Á¤º¸¸¦ °ü¸®ÇÏ´Â Queue °´Ã¼¿¡ ´ëÇÑ Æ÷ÀÎÅÍ CDataQueue * m_pSourceQueue; // º¹Á¦ ó¸® °ü·Ã Àç½Ãµµ Content Á¤º¸¸¦ °ü¸®ÇÏ´Â Queue °´Ã¼¿¡ ´ëÇÑ Æ÷ÀÎÅÍ CDataQueue * m_pRetryQueue; // Report log ó¸® °ü·Ã °´Ã¼ CReportLog m_reportLog; }; #endif // __REPLICATE_QUEUE_CONTROL_H__