jdk
1/*
2* Copyright (c) 2016, 2021, Oracle and/or its affiliates. All rights reserved.
3* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4*
5* This code is free software; you can redistribute it and/or modify it
6* under the terms of the GNU General Public License version 2 only, as
7* published by the Free Software Foundation. Oracle designates this
8* particular file as subject to the "Classpath" exception as provided
9* by Oracle in the LICENSE file that accompanied this code.
10*
11* This code is distributed in the hope that it will be useful, but WITHOUT
12* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14* version 2 for more details (a copy is included in the LICENSE file that
15* accompanied this code).
16*
17* You should have received a copy of the GNU General Public License version
18* 2 along with this work; if not, write to the Free Software Foundation,
19* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20*
21* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22* or visit www.oracle.com if you need additional information or have any
23* questions.
24*/
25
26package java.awt.desktop;27
28import java.awt.Desktop;29import java.awt.GraphicsEnvironment;30import java.awt.HeadlessException;31import java.io.Serial;32import java.net.URI;33
34/**
35* Event sent when the app is asked to open a {@code URI}.
36*
37* @see OpenURIHandler#openURI(OpenURIEvent)
38* @since 9
39*/
40public final class OpenURIEvent extends AppEvent {41
42/**43* Use serialVersionUID from JDK 9 for interoperability.
44*/
45@Serial46private static final long serialVersionUID = 221209100935933476L;47
48/**49* The {@code URI} the app was asked to open.
50*/
51final URI uri;52
53/**54* Constructs an {@code OpenURIEvent}.
55*
56* @param uri the {@code URI} the app was asked to open
57* @throws HeadlessException if {@link GraphicsEnvironment#isHeadless()}
58* returns {@code true}
59* @throws UnsupportedOperationException if Desktop API is not supported on
60* the current platform
61* @see Desktop#isDesktopSupported()
62* @see java.awt.GraphicsEnvironment#isHeadless
63*/
64public OpenURIEvent(final URI uri) {65this.uri = uri;66}67
68/**69* Get the {@code URI} the app was asked to open.
70*
71* @return the {@code URI}
72*/
73public URI getURI() {74return uri;75}76}
77