| |||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public class Desktop extends Object
The {@code Desktop} class allows a Java application to launch associated applications registered on the native desktop to handle a {@link 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 registereing, accessing, and launching the associated application is platform-dependent.
Each operation is an action type represented by the {@link 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 | |
---|---|
static enum |
Represents an action type. |
Method Summary | |
---|---|
void |
Launches the default browser to display a . |
void |
Launches the associated editor application and opens a file for editing. |
static Desktop |
Returns the Desktop instance of the current
browser context.
|
static boolean |
Tests whether this class is supported on the current platform. |
boolean |
isSupported(Desktop.Action action) Tests whether an action is supported on the current platform. |
void |
mail() Launches the mail composing window of the user default mail client. |
void |
Launches the mail composing window of the user default mail client, filling the message fields specified by a URI. |
void |
Launches the associated application to open the file. |
void |
Prints a file with the native desktop printing facility, using the associated application's print command. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Method Detail |
---|
public void browse(URI uri) throws IOException
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.
uri
- the URI to be displayed in the user default browserIOException
- if the user default browser is not found,
or it fails to be launched, or the default handler application
failed to be launchedpublic void edit(File file) throws IOException
file
- the file to be opened for editingIOException
- if the specified file has no associated
editor, or the associated application fails to be launchedpublic static synchronized Desktop getDesktop()
Desktop
instance of the current
browser context. On some platforms the Desktop API may not be
supported; use the {@link #isDesktopSupported} method to
determine if the current desktop is supported.
public static boolean isDesktopSupported()
true
if this class is supported on the
current platform; false
otherwisepublic boolean isSupported(Desktop.Action action)
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 {@link Desktop.Action#OPEN} action. But for a specific file, there may not be an application registered to open it. In this case, {@link #isSupported} may return {@code true}, but the corresponding action method will throw an {@link IOException}.
action
- the specified {@link Action}true
if the specified action is supported on
the current platform; false
otherwisepublic void mail() throws IOException
IOException
- if the user default mail client is not
found, or it fails to be launchedpublic void mail(URI mailtoURI) throws IOException
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.
mailtoURI
- the specified {@code mailto:} URIIOException
- if the user default mail client is not
found or fails to be launchedpublic void open(File file) throws IOException
If the specified file is a directory, the file manager of the current platform is launched to open it.
file
- the file to be opened with the associated applicationIOException
- if the specified file has no associated
application or the associated application fails to be launchedpublic void print(File file) throws IOException
file
- the file to be printedIOException
- if the specified file has no associated
application that can be used to print it
| |||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |