package com.xenoage.zong.commands.desktop.app;
import static com.xenoage.utils.jse.JsePlatformUtils.io;
import static com.xenoage.utils.log.Log.log;
import static com.xenoage.utils.log.Report.warning;
import java.awt.Desktop;
import lombok.AllArgsConstructor;
import com.xenoage.utils.document.command.TransparentCommand;
/**
* Opens the given file in the default program.
*
* The default program for the file type is defined by the OS.
*
* @author Andreas Wenger
*/
@AllArgsConstructor
public class ExternalFileOpen
extends TransparentCommand {
private String filePath;
@Override public void execute() {
try {
Desktop.getDesktop().open(io().findNormalFile(filePath));
} catch (Exception ex) {
log(warning("Could not open file: " + filePath + " (" + ex.getMessage() + ")"));
}
}
}