-
CSR
-
Resolution: Approved
-
P2
-
None
-
behavioral
-
minimal
-
Java API
-
SE
Summary
The specification of some classes in "java.awt.desktop" package should specify possible exceptions.
Problem
Some unspecified exceptions are thrown in "java.awt.desktop"
Solution
Update the spec according the implementation.
Specification
src/java.desktop/share/classes/java/awt/desktop/AboutEvent.java
/**
+ * @throws HeadlessException if {@link GraphicsEnvironment#isHeadless()}
+ * returns {@code true}
+ * @throws UnsupportedOperationException if Desktop API is not supported on
+ * the current platform
+ * @see Desktop#isDesktopSupported()
+ * @see java.awt.GraphicsEnvironment#isHeadless
*/
public AboutEvent() {
src/java.desktop/share/classes/java/awt/desktop/AppForegroundEvent.java
/**
+ * @throws HeadlessException if {@link GraphicsEnvironment#isHeadless()}
+ * returns {@code true}
+ * @throws UnsupportedOperationException if Desktop API is not supported on
+ * the current platform
+ * @see Desktop#isDesktopSupported()
+ * @see java.awt.GraphicsEnvironment#isHeadless
*/
public AppForegroundEvent() {
src/java.desktop/share/classes/java/awt/desktop/AppHiddenEvent.java
/**
+ * @throws HeadlessException if {@link GraphicsEnvironment#isHeadless()}
+ * returns {@code true}
+ * @throws UnsupportedOperationException if Desktop API is not supported on
+ * the current platform
+ * @see Desktop#isDesktopSupported()
+ * @see java.awt.GraphicsEnvironment#isHeadless
*/
public AppHiddenEvent() {
src/java.desktop/share/classes/java/awt/desktop/AppReopenedEvent.java
/**
+ * @throws HeadlessException if {@link GraphicsEnvironment#isHeadless()}
+ * returns {@code true}
+ * @throws UnsupportedOperationException if Desktop API is not supported on
+ * the current platform
+ * @see Desktop#isDesktopSupported()
+ * @see java.awt.GraphicsEnvironment#isHeadless
*/
public AppReopenedEvent() {
src/java.desktop/share/classes/java/awt/desktop/OpenFilesEvent.java
/**
- * Constructs an {@code OpenFilesEvent}
- * @param files files
- * @param searchTerm searchTerm
+ * Constructs an {@code OpenFilesEvent}.
+ *
+ * @param files the list of files
+ * @param searchTerm the search term
+ * @throws HeadlessException if {@link GraphicsEnvironment#isHeadless()}
+ * returns {@code true}
+ * @throws UnsupportedOperationException if Desktop API is not supported on
+ * the current platform
+ * @see Desktop#isDesktopSupported()
+ * @see java.awt.GraphicsEnvironment#isHeadless
*/
public OpenFilesEvent(final List<File> files, final String searchTerm) {
src/java.desktop/share/classes/java/awt/desktop/OpenURIEvent.java
/**
- * Constructs an {@code OpenURIEvent}
- * @param uri {@code URI}
+ * Constructs an {@code OpenURIEvent}.
+ *
+ * @param uri the {@code URI} the app was asked to open
+ * @throws HeadlessException if {@link GraphicsEnvironment#isHeadless()}
+ * returns {@code true}
+ * @throws UnsupportedOperationException if Desktop API is not supported on
+ * the current platform
+ * @see Desktop#isDesktopSupported()
+ * @see java.awt.GraphicsEnvironment#isHeadless
*/
public OpenURIEvent(final URI uri) {
src/java.desktop/share/classes/java/awt/desktop/PreferencesEvent.java
/**
+ * @throws HeadlessException if {@link GraphicsEnvironment#isHeadless()}
+ * returns {@code true}
+ * @throws UnsupportedOperationException if Desktop API is not supported on
+ * the current platform
+ * @see Desktop#isDesktopSupported()
+ * @see java.awt.GraphicsEnvironment#isHeadless
*/
public PreferencesEvent() {
src/java.desktop/share/classes/java/awt/desktop/PrintFilesEvent.java
/**
- * Constructs a {@code PrintFilesEvent}
- * @param files files
+ * Constructs a {@code PrintFilesEvent}.
+ *
+ * @param files the list of files
+ * @throws HeadlessException if {@link GraphicsEnvironment#isHeadless()}
+ * returns {@code true}
+ * @throws UnsupportedOperationException if Desktop API is not supported on
+ * the current platform
+ * @see Desktop#isDesktopSupported()
+ * @see java.awt.GraphicsEnvironment#isHeadless
*/
public PrintFilesEvent(final List<File> files) {
src/java.desktop/share/classes/java/awt/desktop/QuitEvent.java
/**
+ * @throws HeadlessException if {@link GraphicsEnvironment#isHeadless()}
+ * returns {@code true}
+ * @throws UnsupportedOperationException if Desktop API is not supported on
+ * the current platform
+ * @see Desktop#isDesktopSupported()
+ * @see java.awt.GraphicsEnvironment#isHeadless
*/
public QuitEvent() {
src/java.desktop/share/classes/java/awt/desktop/ScreenSleepEvent.java
/**
+ * @throws HeadlessException if {@link GraphicsEnvironment#isHeadless()}
+ * returns {@code true}
+ * @throws UnsupportedOperationException if Desktop API is not supported on
+ * the current platform
+ * @see Desktop#isDesktopSupported()
+ * @see java.awt.GraphicsEnvironment#isHeadless
*/
public ScreenSleepEvent() {
src/java.desktop/share/classes/java/awt/desktop/SystemSleepEvent.java
/**
+ * @throws HeadlessException if {@link GraphicsEnvironment#isHeadless()}
+ * returns {@code true}
+ * @throws UnsupportedOperationException if Desktop API is not supported on
+ * the current platform
+ * @see Desktop#isDesktopSupported()
+ * @see java.awt.GraphicsEnvironment#isHeadless
*/
public SystemSleepEvent() {
src/java.desktop/share/classes/java/awt/desktop/UserSessionEvent.java
/**
- * @param reason of session change
+ * @param reason the reason of the user session change
+ * @throws HeadlessException if {@link GraphicsEnvironment#isHeadless()}
+ * returns {@code true}
+ * @throws UnsupportedOperationException if Desktop API is not supported on
+ * the current platform
+ * @see Desktop#isDesktopSupported()
+ * @see java.awt.GraphicsEnvironment#isHeadless
*/
public UserSessionEvent(Reason reason) {
webrev for convenience : http://cr.openjdk.java.net/~serb/8203224/webrev.00/
- csr of
-
JDK-8203224 java.awt.desktop.*Event classes could not be instantiated if Desktop feature is not supported
-
- Resolved
-