gnu.java.awt.peer

Class ClasspathDesktopPeer

Implemented Interfaces:
DesktopPeer
Known Direct Subclasses:
GnomeDesktopPeer, KDEDesktopPeer

public class ClasspathDesktopPeer
extends Object
implements DesktopPeer

Offers a common implementation for the Desktop peers, that enables access to default system application within java processes.

Field Summary

protected static String
_BROWSE
gnu.java.awt.peer.Desktop.html.command
protected static String
_DEFAULT_BROWSER
This is the fallback browser, if no desktop was detected.
protected static String
_EDIT
gnu.java.awt.peer.Desktop.edit.command
protected static String
_MAIL
gnu.java.awt.peer.Desktop.mail.command
protected static String
_OPEN
gnu.java.awt.peer.Desktop.open.command
protected static String
_PRINT
gnu.java.awt.peer.Desktop.print.command
protected static ClasspathDesktopPeer
classpath
protected static GnomeDesktopPeer
gnome
protected static KDEDesktopPeer
kde
protected Preferences
prefs
Preference subsystem.

Constructor Summary

ClasspathDesktopPeer()

Method Summary

void
browse(URI url)
protected void
checkPermissions()
Note: Checks for AWTPermission("showWindowWithoutWarningBanner") only.
protected void
checkPermissions(File file, boolean readOnly)
Calls checkPermissions() and checks for SecurityManager.checkRead() and, if readOnly is false, for SecurityManager.checkWrite()
protected void
checkPrintPermissions(File file)
Calls checkPermissions(file, true) and checks for SecurityManager.checkPrintJobAccess()
void
edit(File file)
protected String
getCommand(String action)
static DesktopPeer
getDesktop()
boolean
isSupported(Desktop.Action action)
void
mail()
void
mail(URI mailtoURL)
void
open(File file)
void
print(File file)
protected boolean
supportCommand(String check)

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Details

_BROWSE

protected static final String _BROWSE
gnu.java.awt.peer.Desktop.html.command
Field Value:
"html"

_DEFAULT_BROWSER

protected static final String _DEFAULT_BROWSER
This is the fallback browser, if no desktop was detected.
Field Value:
"firefox"

_EDIT

protected static final String _EDIT
gnu.java.awt.peer.Desktop.edit.command
Field Value:
"edit"

_MAIL

protected static final String _MAIL
gnu.java.awt.peer.Desktop.mail.command
Field Value:
"mail"

_OPEN

protected static final String _OPEN
gnu.java.awt.peer.Desktop.open.command
Field Value:
"open"

_PRINT

protected static final String _PRINT
gnu.java.awt.peer.Desktop.print.command
Field Value:
"print"

classpath

protected static final ClasspathDesktopPeer classpath

gnome

protected static final GnomeDesktopPeer gnome

kde

protected static final KDEDesktopPeer kde

prefs

protected Preferences prefs
Preference subsystem. Packagers and users can override the default behaviour of this class via preferences and system properties.

Constructor Details

ClasspathDesktopPeer

protected ClasspathDesktopPeer()
Parameters:

Method Details

browse

public void browse(URI url)
            throws IOException
Specified by:
browse in interface DesktopPeer

checkPermissions

protected void checkPermissions()
Note: Checks for AWTPermission("showWindowWithoutWarningBanner") only.

checkPermissions

protected void checkPermissions(File file,
                                boolean readOnly)
Calls checkPermissions() and checks for SecurityManager.checkRead() and, if readOnly is false, for SecurityManager.checkWrite()

checkPrintPermissions

protected void checkPrintPermissions(File file)
Calls checkPermissions(file, true) and checks for SecurityManager.checkPrintJobAccess()

edit

public void edit(File file)
            throws IOException
Specified by:
edit in interface DesktopPeer

getCommand

protected String getCommand(String action)

getDesktop

public static DesktopPeer getDesktop()
Returns:

isSupported

public boolean isSupported(Desktop.Action action)
Specified by:
isSupported in interface DesktopPeer

mail

public void mail()
            throws IOException
Specified by:
mail in interface DesktopPeer

mail

public void mail(URI mailtoURL)
            throws IOException
Specified by:
mail in interface DesktopPeer

open

public void open(File file)
            throws IOException
Specified by:
open in interface DesktopPeer

print

public void print(File file)
            throws IOException
Specified by:
print in interface DesktopPeer

supportCommand

protected boolean supportCommand(String check)
Parameters:
check -
Returns:

ClasspathDesktopPeer.java -- Offers a concrete implementation for DesktopPeer Copyright (C) 2006, 2007 Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.