-/*\r
- * @file time_and_size_based_rolling_policy.h\r
- * @brief log4cxx's rolling policy class. (time + size)\r
- *\r
- * L7VSD: Linux Virtual Server for Layer7 Load Balancing\r
- * Copyright (C) 2008 NTT COMWARE Corporation.\r
- *\r
- * This program is free software; you can redistribute it and/or\r
- * modify it under the terms of the GNU Lesser General Public\r
- * License as published by the Free Software Foundation; either\r
- * version 2.1 of the License, or (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU\r
- * Lesser General Public License for more details.\r
- * \r
- * You should have received a copy of the GNU Lesser General Public\r
- * License along with this library; if not, write to the Free Software\r
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA\r
- * 02110-1301 USA\r
- *\r
- **********************************************************************/\r
-\r
-#ifndef __TIME_AND_SIZE_BASED_ROLLING_POLICY_H__\r
-#define __TIME_AND_SIZE_BASED_ROLLING_POLICY_H__\r
-\r
-#include <log4cxx/portability.h>\r
-#include "strict_time_based_rolling_policy.h"\r
-#include "logger_enum.h"\r
-\r
-namespace log4cxx {\r
- namespace rolling {\r
- /*!\r
- * log4cxx time and size based rolling policy class.\r
- * this policy class is delivered from StrictTimeBasedRollingPolicy.\r
- * so it can size specify in addition to strict time specify.\r
- */\r
- class LOG4CXX_EXPORT TimeAndSizeBasedRollingPolicy :\r
- public StrictTimeBasedRollingPolicy\r
- {\r
- DECLARE_LOG4CXX_OBJECT(TimeAndSizeBasedRollingPolicy)\r
- BEGIN_LOG4CXX_CAST_MAP()\r
- LOG4CXX_CAST_ENTRY(TimeAndSizeBasedRollingPolicy)\r
- LOG4CXX_CAST_ENTRY_CHAIN(StrictTimeBasedRollingPolicy)\r
- END_LOG4CXX_CAST_MAP()\r
-\r
- protected:\r
- //! maximum size of file\r
- size_t maxFileSize;\r
- \r
- public:\r
- //! default constructor\r
- TimeAndSizeBasedRollingPolicy();\r
- //! option setter\r
- void setOption(const LogString&, const LogString&);\r
- //! maxFileSize getter\r
- size_t getMaxFileSize();\r
- //! maxFileSize setter\r
- void setMaxFileSize(size_t);\r
- \r
- //! returns do rollover or not\r
- virtual bool isTriggeringEvent(\r
- Appender* appender,\r
- const log4cxx::spi::LoggingEventPtr& event,\r
- const LogString& filename,\r
- size_t fileLength);\r
- \r
- };\r
- LOG4CXX_PTR_DEF(TimeAndSizeBasedRollingPolicy);\r
- }\r
-}\r
-\r
-#endif //__TIME_AND_SIZE_BASED_ROLLING_POLICY_H__\r
-\r
+/*
+ * @file time_and_size_based_rolling_policy.h
+ * @brief log4cxx's rolling policy class. (time + size)
+ *
+ * L7VSD: Linux Virtual Server for Layer7 Load Balancing
+ * Copyright (C) 2008 NTT COMWARE Corporation.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA
+ *
+ **********************************************************************/
+
+#ifndef __TIME_AND_SIZE_BASED_ROLLING_POLICY_H__
+#define __TIME_AND_SIZE_BASED_ROLLING_POLICY_H__
+
+#include <log4cxx/portability.h>
+#include "strict_time_based_rolling_policy.h"
+#include "logger_enum.h"
+
+namespace log4cxx {
+ namespace rolling {
+ /*!
+ * log4cxx time and size based rolling policy class.
+ * this policy class is delivered from StrictTimeBasedRollingPolicy.
+ * so it can size specify in addition to strict time specify.
+ */
+ class LOG4CXX_EXPORT TimeAndSizeBasedRollingPolicy :
+ public StrictTimeBasedRollingPolicy
+ {
+ DECLARE_LOG4CXX_OBJECT(TimeAndSizeBasedRollingPolicy)
+ BEGIN_LOG4CXX_CAST_MAP()
+ LOG4CXX_CAST_ENTRY(TimeAndSizeBasedRollingPolicy)
+ LOG4CXX_CAST_ENTRY_CHAIN(StrictTimeBasedRollingPolicy)
+ END_LOG4CXX_CAST_MAP()
+
+ protected:
+ //! maximum size of file
+ size_t maxFileSize;
+
+ public:
+ //! default constructor
+ TimeAndSizeBasedRollingPolicy();
+ //! option setter
+ void setOption(const LogString&, const LogString&);
+ //! maxFileSize getter
+ size_t getMaxFileSize();
+ //! maxFileSize setter
+ void setMaxFileSize(size_t);
+
+ //! returns do rollover or not
+ virtual bool isTriggeringEvent(
+ Appender* appender,
+ const log4cxx::spi::LoggingEventPtr& event,
+ const LogString& filename,
+ size_t fileLength);
+
+ };
+ LOG4CXX_PTR_DEF(TimeAndSizeBasedRollingPolicy);
+ }
+}
+
+#endif //__TIME_AND_SIZE_BASED_ROLLING_POLICY_H__
+