diff options
Diffstat (limited to 'libjava/java/applet/AppletContext.java')
-rw-r--r-- | libjava/java/applet/AppletContext.java | 149 |
1 files changed, 92 insertions, 57 deletions
diff --git a/libjava/java/applet/AppletContext.java b/libjava/java/applet/AppletContext.java index 86552ab..20206ef 100644 --- a/libjava/java/applet/AppletContext.java +++ b/libjava/java/applet/AppletContext.java @@ -1,23 +1,23 @@ -/* AppletContext.java -- Access the applet's runtime environment. - Copyright (C) 1999 Free Software Foundation, Inc. - +/* AppletContext.java -- access the applet's runtime environment + Copyright (C) 1999, 2002 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 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 @@ -39,81 +39,116 @@ exception statement from your version. */ package java.applet; import java.awt.Image; +import java.io.InputStream; +import java.io.IOException; import java.net.URL; import java.util.Enumeration; +import java.util.Iterator; /** - * This interface allows an applet access to the browser to retrieve - * additional data files and display documents. It also allows the - * applet to find out other applets in the same document. - * - * @author Aaron M. Renn (arenn@urbanophile.com) - */ + * This interface allows an applet access to the browser to retrieve + * additional data files and display documents. It also allows the + * applet to find out other applets in the same document. + * + * @author Aaron M. Renn (arenn@urbanophile.com) + * @since 1.0 + * @status updated to 1.4 + */ public interface AppletContext { /** - * Returns an audio clip from the specified URL. - * - * @param url The URL of the audio clip. - * - * @return The retrieved audio clip // FIXME: What happens on error? - */ + * Returns an audio clip from the specified URL. + * + * @param url the URL of the audio clip + * @return the retrieved audio clip + * @throws NullPointerException if url is null + */ AudioClip getAudioClip(URL url); /** - * Returns an image from the specified URL. Note that the image is not - * actually retrieved until the applet attempts to display it, so this - * method returns immediately. - * - * @param url The URL of the image. - * - * @return The retrieved image. // FIXME: What happens on eror? - */ + * Returns an image from the specified URL. Note that the image is not + * actually retrieved until the applet attempts to display it, so this + * method returns immediately. + * + * @param url the absolute URL of the image + * @return the retrieved image + * @throws NullPointerException if url is null + */ Image getImage(URL url); /** - * Returns the applet in the document for this object that has the - * specified name. - * - * @param name The applet name. - * - * @return The requested applet, or <code>null</code> if an applet with - * the requested name cannot be found. - */ + * Returns the applet in the document for this object that has the + * specified name. + * + * @param name the applet name + * @return the requested applet, or <code>null</code> if not found + */ Applet getApplet(String name); /** - * Returns a list of all the applets in the document for this object. - * - * @return A list of all the applets in the document for this object. - */ + * Returns a list of all the applets in the document for this object. + * + * @return a list of all the applets + */ Enumeration getApplets(); /** - * Displays the web page pointed to by the specified URL in the window - * for this object. This page replaces the document that is currently - * there. - * - * @param url The URL of the web page to load. - */ + * Displays the web page pointed to by the specified URL in the window + * for this object. This page replaces the document that is currently + * there. + * + * @param url the URL of the web page to load; unspecified on an error + */ void showDocument(URL url); /** - * Displays the web page pointed to be the sepcified URL in the window - * with the specified name. The standard names "_top", "_blank", - * "_parent", and "_self" are allowed. - * - * @param url The URL of the web page to load. - * @param target The target window. - */ + * Displays the web page pointed to be the sepcified URL in the window + * with the specified name. The standard names "_top", "_blank", + * "_parent", and "_self" are allowed. An applet viewer may disregard + * this request. + * + * @param url the URL of the web page to load + * @param target the target window + */ void showDocument(URL url, String target); /** - * Displays the specified message in the status window if that window - * exists. - * - * @param message The status message. - */ + * Displays the specified message in the status window if that window + * exists. + * + * @param message the status message, may be null + */ void showStatus(String message); + /** + * Associate a stream to a key for this applet context, possibly replacing + * the old value. Stream associations are local to the applet context, for + * security purposes. + * + * @param key the key to associate with + * @param stream the stream value to tie to the key, or null to remove + * @throws IOException if the stream is too large + * @since 1.4 + */ + public void setStream(String key, InputStream stream) throws IOException; + + /** + * Return the stream associated with a given key in this applet context, or + * null if nothing is associated. Stream associations are local to the + * applet context, for security purposes. + * + * @param key the key to look up + * @return the associated stream, or null + * @since 1.4 + */ + public InputStream getStream(String key); + + /** + * Iterate over all keys that have associated streams. Sttream associated + * are local to the applet context, for security purposes. + * + * @return an iterator over the association keys + * @since 1.4 + */ + public Iterator getStreamKeys(); } // interface AppletContext |