/**
* Runs the changeset extraction.
*/
public void run() {
ApidbChangeReader reader;
XmlChangeWriter writer;
ChangeTagSorter tagSorter;
String fileName;
File tmpFile;
File file;
// Generate the changeset file name.
fileName = new ChangesetFileNameFormatter(config.getChangeFileBeginFormat(), config.getChangeFileEndFormat())
.generateFileName(intervalBegin, intervalEnd);
// Generate the temporary output file.
tmpFile = new File(baseDirectory, TMP_FILE_NAME);
// Generate the changeset output file.
file = new File(baseDirectory, fileName);
// Create the output task to write to a compressed xml file.
writer = new XmlChangeWriter(tmpFile, CompressionMethod.GZip);
// Create the input task to read the change interval from the database.
reader = new ApidbChangeReader(config.getDatabaseLoginCredentials(), config.getDatabasePreferences(),
intervalBegin, intervalEnd, fullHistory);