Javaでプリンタージョブを送信する方法のメモ

import java.io.InputStream;
import java.io.FileInputStream;
import javax.print.PrintService;
import javax.print.PrintServiceLookup;
import javax.print.DocPrintJob;
import javax.print.DocFlavor;
import javax.print.Doc;
import javax.print.SimpleDoc;

public class Client {
    public static void main(String[] args) throws Exception {
        PrintService ps = PrintServiceLookup.lookupDefaultPrintService();
        DocPrintJob dpj = ps.createPrintJob();
        InputStream is  = new FileInputStream("hoge.pdf");
        DocFlavor df    = DocFlavor.INPUT_STREAM.PDF;
        Doc d           = new SimpleDoc(is, df, null);
        dpj.print(d, null);
    }
}