javax.media.MediaProxy Maven / Gradle / Ivy
/**
This is not an official specification document, and usage is restricted.
NOTICE
(c) 2005-2008 Sun Microsystems, Inc. All Rights Reserved.
Neither this file nor any files generated from it describe a complete
specification, and they may only be used as described below.
Sun Microsystems Inc. owns the copyright in this file and it is provided
to you for informative use only. For example,
this file and any files generated from it may be used to generate other documentation,
such as a unified set of documents of API signatures for a platform
that includes technologies expressed as Java APIs.
This file may also be used to produce "compilation stubs,"
which allow applications to be compiled and validated for such platforms.
By contrast, no permission is given for you to incorporate this file,
in whole or in part, in an implementation of a Java specification.
Any work generated from this file, such as unified javadocs or compiled
stub files, must be accompanied by this notice in its entirety.
This work corresponds to the API signatures of JSR 927: Java TV API 1.1.1.
In the event of a discrepency between this work and the JSR 927 specification,
which is available at http://www.jcp.org/en/jsr/detail?id=927, the latter takes precedence.
*/
package javax.media;
import javax.media.protocol.DataSource;
import java.io.IOException;
/**
* MediaProxy
is a MediaHandler
which
* processes content from one DataSource
,
* to produce another DataSource
.
*
*
* Typically, a MediaProxy
reads a text configuration file
* that contains all of the information needed to
* make a connection to a server and obtain media data.
* To produce a Player
from a MediaLocator
* referencing the configuration file,
* Manger
:
*
* - constructs a
DataSource
* for the protocol described by the MediaLocator
* - constructs a
MediaProxy
to read
* the configuration file using the content-type of the
* DataSource
* - obtains a new
DataSource
* from the MediaProxy
* - constructs the
Player
using the content-type of the new
* DataSource
*
*
*
* @see Manager
*
* @version 1.10, 97/08/25.
*/
public interface MediaProxy extends MediaHandler
{
/**
* Obtain the new DataSource
.
* The DataSource
is already connected.
*
* @exception IOException Thrown when if there are IO
* problems in reading the the original or new
* DataSource
.
*
* @exception NoDataSourceException Thrown if this proxy
* can't produce a DataSource
.
*
* @return the new DataSource
for this content.
*/
public DataSource getDataSource() throws IOException, NoDataSourceException;
}