Impressao com Desktop.getDesktop().print(file) em ordem

iai pessoal,
poderiam me ajudar com o código abaixo?

eu tenho uma pasta com pdfs e precisaria que os mesmos fossem impressos na ordem que estão na pasta,

Ex:
pasta com pdfs: 1,2,3
deverá ser impresso: 1,1,2,2,3,3 e 1,2,3

o código abaixo faz extamente o que quero ( em questão de lógica, quando imprimo no console ),
porem a impressora não segue a ordem ela mistura as impressões.

desde já agradeço.

package impDanfeSL;

import java.awt.Desktop;
import java.io.File;
import java.io.IOException;

import javax.swing.JFileChooser;

public class Principal {

	private String caminhoPasta;
	
	public Principal() {
		getCaminhoPasta();
	}
	
	
	public void getCaminhoPasta(){
		JFileChooser janela = new JFileChooser();
		janela.setDialogTitle("Escolher Pasta para Impressão");
		janela.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
		janela.showDialog(null, "Selecionar pasta");
		caminhoPasta = janela.getSelectedFile().getAbsolutePath();
	}
	
	
	
	public void imprimiDanfes( int numCopia){
		
		File [] files = new File(caminhoPasta).listFiles();
		
		for( File file : files){
			
			if( file.getAbsolutePath().endsWith(".pdf")){
				
				for( int i = 1; i <= numCopia; i++){
					
					try {
						
						Desktop.getDesktop().print(file);
						
					
					} catch (IOException e) {
						// TODO Auto-generated catch block
						e.printStackTrace();
					} catch (InterruptedException e) {
						// TODO Auto-generated catch block
						e.printStackTrace();
					}
					
				}
				
				
			}
		
		}
		
		
		
	}
	
	public static void main(String[] args) {
		
		Principal principal = new Principal();
	
		principal.imprimiDanfes( 2);
		principal.imprimiDanfes( 1);
			
	}

}