void RollingFileAppender::setDatePattern(const QString& datePattern)
{
  setDatePatternString(datePattern);
  computeFrequency();

  computeRollOverTime();
}
void RollingFileAppender::setDatePattern(DatePattern datePattern)
{
  switch (datePattern)
  {
    case MinutelyRollover:
      setDatePatternString(QLatin1String("'.'yyyy-MM-dd-hh-mm"));
      break;
    case HourlyRollover:
      setDatePatternString(QLatin1String("'.'yyyy-MM-dd-hh"));
      break;
    case HalfDailyRollover:
      setDatePatternString(QLatin1String("'.'yyyy-MM-dd-a"));
      break;
    case DailyRollover:
      setDatePatternString(QLatin1String("'.'yyyy-MM-dd"));
      break;
    case WeeklyRollover:
      setDatePatternString(QLatin1String("'.'yyyy-ww"));
      break;
    case MonthlyRollover:
      setDatePatternString(QLatin1String("'.'yyyy-MM"));
      break;
    default:
      Q_ASSERT_X(false, "DailyRollingFileAppender::setDatePattern()", "Invalid datePattern constant");
      setDatePattern(DailyRollover);
  };

  QMutexLocker locker(&m_rollingMutex);
  m_frequency = datePattern;

  computeRollOverTime();
}
Esempio n. 3
0
	void DailyRollingFileAppender::activateOptions()
	{
	    QMutexLocker locker(&mObjectGuard);
	
	    computeFrequency();
	    if (!mActiveDatePattern.isEmpty())
	    {
	        computeRollOverTime();
	        FileAppender::activateOptions();
	    }
	}
Esempio n. 4
0
	void DailyRollingFileAppender::rollOver()
	{
	    // Q_ASSERT_X(, "DailyRollingFileAppender::rollOver()", "Lock must be held by caller")
	    Q_ASSERT_X(!mActiveDatePattern.isEmpty(), "DailyRollingFileAppender::rollOver()", "No active date pattern");
	
	    QString roll_over_suffix = mRollOverSuffix;
	    computeRollOverTime();
	    if (roll_over_suffix == mRollOverSuffix)
	        return;
	
	    closeFile();
	    openFile();
	}
	void DailyRollingFileAppender::rollOver()
	{
	    // Q_ASSERT_X(, "DailyRollingFileAppender::rollOver()", "Lock must be held by caller")
	    Q_ASSERT_X(!mActiveDatePattern.isEmpty(), "DailyRollingFileAppender::rollOver()", "No active date pattern");
	
	    QString roll_over_suffix = mRollOverSuffix;
	    computeRollOverTime();
	    if (roll_over_suffix == mRollOverSuffix)
	        return;
	
	    closeFile();
	
        QString target_file_name = filePath() + fileName() + mRollOverSuffix + suffix();
        setFullFileName(target_file_name);
//	    QFile f(target_file_name);
//	    if (f.exists() && !removeFile(f))
//	        return;
//        f.setFileName(fullFileName());
//	    if (!renameFile(f, target_file_name))
//            return;
	    openFile();
	}
void RollingFileAppender::rollOver()
{
  Q_ASSERT_X(!m_datePatternString.isEmpty(), "DailyRollingFileAppender::rollOver()", "No active date pattern");

  QString rollOverSuffix = m_rollOverSuffix;
  computeRollOverTime();
  if (rollOverSuffix == m_rollOverSuffix)
    return;

  closeFile();

  QString targetFileName = fileName() + rollOverSuffix;
  QFile f(targetFileName);
  if (f.exists() && !f.remove())
    return;
  f.setFileName(fileName());
  if (!f.rename(targetFileName))
    return;

  openFile();
  removeOldFiles();
}