FileVolumeManager.java
package com.github.junrar.volume;
import com.github.junrar.Archive;
import java.io.File;
/**
 * @author <a href="http://www.rogiel.com">Rogiel</a>
 */
public class FileVolumeManager implements VolumeManager {
    private final File firstVolume;
    public FileVolumeManager(final File firstVolume) {
        this.firstVolume = firstVolume;
    }
    @Override
    public Volume nextVolume(final Archive archive, final Volume last) {
        if (last == null) return new FileVolume(archive, this.firstVolume);
        final FileVolume lastFileVolume = (FileVolume) last;
        final boolean oldNumbering = !archive.getMainHeader().isNewNumbering()
            || archive.isOldFormat();
        final String nextName = VolumeHelper.nextVolumeName(lastFileVolume.getFile().getAbsolutePath(), oldNumbering);
        final File nextVolume = new File(nextName);
        return new FileVolume(archive, nextVolume);
    }
}