# Poco

# class ArchiveStrategy

Library: Foundation
Package: Logging
Header: Poco/ArchiveStrategy.h

## Description

The ArchiveStrategy is used by FileChannel to rename a rotated log file for archiving.

Archived files can be automatically compressed, using the gzip file format.

## Inheritance

Known Derived Classes: ArchiveByNumberStrategy, ArchiveByTimestampStrategy

## Member Summary

Member Functions: archive, compress, exists, moveFile

## Constructors

### ArchiveStrategy

ArchiveStrategy();

## Destructor

### ~ArchiveStrategy

virtual ~ArchiveStrategy();

## Member Functions

### archive

virtual LogFile * archive(
LogFile * pFile
) = 0;

Renames the given log file for archiving and creates and returns a new log file. The given LogFile object is deleted.

### compress

void compress(
bool flag = true
);

Enables or disables compression of archived files.

### exists

bool exists(
const std::string & name
);

### moveFile

void moveFile(
const std::string & oldName,
const std::string & newName
);