001package jmri.jmrit.operations.trains;
002
003import java.io.File;
004import java.io.IOException;
005import org.slf4j.Logger;
006import org.slf4j.LoggerFactory;
007
008/**
009 * Train file utilities
010 *
011 * @author Daniel Boudreau (C) 2010
012 *
013 *
014 */
015public class TrainUtilities {
016
017    /**
018     * This method uses Desktop which is supported in Java 1.6.
019     * @param file The File to open.
020     */
021    public static void openDesktop(File file) {
022        if (!java.awt.Desktop.isDesktopSupported()) {
023            log.warn("desktop not supported");
024            return;
025        }
026        java.awt.Desktop desktop = java.awt.Desktop.getDesktop();
027        if (!desktop.isSupported(java.awt.Desktop.Action.OPEN)) {
028            log.warn("desktop open not supported");
029            return;
030        }
031        try {
032            desktop.open(file);
033        } catch (IOException e) {
034            log.error("unable to open {} in desktop application", file, e);
035        }
036    }
037
038    private final static Logger log = LoggerFactory.getLogger(TrainUtilities.class);
039}