Home » openjdk-7 » java » awt » [javadoc | source]
public class: Desktop [javadoc | source]
The {@code Desktop} class allows a Java application to launch associated applications registered on the native desktop to handle a java.net.URI or a file.

Supported operations include:

This class provides methods corresponding to these operations. The methods look for the associated application registered on the current platform, and launch it to handle a URI or file. If there is no associated application or the associated application fails to be launched, an exception is thrown.

An application is registered to a URI or file type; for example, the {@code "sxi"} file extension is typically registered to StarOffice. The mechanism of registering, accessing, and launching the associated application is platform-dependent.

Each operation is an action type represented by the Desktop.Action class.

Note: when some action is invoked and the associated application is executed, it will be executed on the same system as the one on which the Java application was launched.

Nested Class Summary:
public static enum class  Desktop.Action  Represents an action type. Each platform supports a different set of actions. You may use the {@link Desktop#isSupported} method to determine if the given action is supported by the current platform. 
Method from java.awt.Desktop Summary:
browse,   edit,   getDesktop,   isDesktopSupported,   isSupported,   mail,   mail,   open,   print
Methods from java.lang.Object:
clone,   equals,   finalize,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from java.awt.Desktop Detail:
 public  void browse(URI uri) throws IOException 
    Launches the default browser to display a {@code URI}. If the default browser is not able to handle the specified {@code URI}, the application registered for handling {@code URIs} of the specified type is invoked. The application is determined from the protocol and path of the {@code URI}, as defined by the {@code URI} class.

    If the calling thread does not have the necessary permissions, and this is invoked from within an applet, {@code AppletContext.showDocument()} is used. Similarly, if the calling does not have the necessary permissions, and this is invoked from within a Java Web Started application, {@code BasicService.showDocument()} is used.

 public  void edit(File file) throws IOException 
    Launches the associated editor application and opens a file for editing.
 public static synchronized Desktop getDesktop() 
    Returns the Desktop instance of the current browser context. On some platforms the Desktop API may not be supported; use the #isDesktopSupported method to determine if the current desktop is supported.
 public static boolean isDesktopSupported() 
    Tests whether this class is supported on the current platform. If it's supported, use #getDesktop() to retrieve an instance.
 public boolean isSupported(Action action) 
    Tests whether an action is supported on the current platform.

    Even when the platform supports an action, a file or URI may not have a registered application for the action. For example, most of the platforms support the Desktop.Action#OPEN action. But for a specific file, there may not be an application registered to open it. In this case, #isSupported may return {@code true}, but the corresponding action method will throw an IOException .

 public  void mail() throws IOException 
    Launches the mail composing window of the user default mail client.
 public  void mail(URI mailtoURI) throws IOException 
    Launches the mail composing window of the user default mail client, filling the message fields specified by a {@code mailto:} URI.

    A mailto: URI can specify message fields including "to", "cc", "subject", "body", etc. See The mailto URL scheme (RFC 2368) for the {@code mailto:} URI specification details.

 public  void open(File file) throws IOException 
    Launches the associated application to open the file.

    If the specified file is a directory, the file manager of the current platform is launched to open it.

 public  void print(File file) throws IOException 
    Prints a file with the native desktop printing facility, using the associated application's print command.