/**
         * Executes the PNGOut, OptiPNG, and AdvPNG optimization programs on the
         * working file passed into the constructor.
         *
         * @return The optimized file.
         * @throws IOException If there was an issue reading / writing to the
         *                     file system
         * @throws InterruptedException If the optimization was interrupted.
         */
public File executeOptimization() throws IOException, InterruptedException {
            final String path = workingFile.getCanonicalPath();
            // FIXME Handle the ImageFileOptimizationException in one of the optimizations so it does not impact the other optimizations.
            return executePngquant(executeOptipng(executePngout(executeAdvpng(executePngquant(executeOptipng(executePngout(executeAdvpng(workingFile, path), path), path), path), path), path), path), path);
        }
public File executeOptimization() throws IOException, InterruptedException {
final String path = workingFile.getCanonicalPath();
// FIXME Handle the ImageFileOptimizationException in one of the optimizations so it does not impact the other optimizations.
return executePngquant(executeOptipng(executePngout(executeAdvpng(executePngquant(executeOptipng(executePngout(executeAdvpng(workingFile, path), path), path), path), path), path), path), path);
}
public File executeOptimization() throws IOException, InterruptedException {
final String path = workingFile.getCanonicalPath();
// FIXME Handle the ImageFileOptimizationException in one of the optimizations so it does not impact the other optimizations.
return executePngquant(executeOptipng(executePngout(executeAdvpng(executePngquant(executeOptipng(executePngout(executeAdvpng(workingFile, path), path), path), path), path), path), path), path);
}
public File executeOptimization() throws IOException, InterruptedException {
final String path = workingFile.getCanonicalPath();
// FIXME Handle the ImageFileOptimizationException in one of the optimizations so it does not impact the other optimizations.
return executePngquant(executeOptipng(executePngout(executeAdvpng(executePngquant(executeOptipng(executePngout(executeAdvpng(workingFile, path), path), path), path), path), path), path), path);
}