/* * @(#)MediaProxy.java 1.2 02/08/21 * * Copyright (c) 1996-2002 Sun Microsystems, Inc. All rights reserved. */ package javax.media; import javax.media.protocol.DataSource; import java.io.IOException; /* * Typically, a <code>MediaProxy</code> 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 <code>Player</code> from a <code>MediaLocator</code> * referencing the configuration file, * <code>Manger</code>: * <ul> * <li>constructs a <code>DataSource</code> * for the protocol described by the <code>MediaLocator</code> * <li>constructs a <code>MediaProxy</code> to read * the configuration file using the content-type of the * <code>DataSource</code> * <li> obtains a new <code>DataSource</code> * from the <code>MediaProxy</code> * <li>constructs the <code>Player</code> using the content-type of the new * <code>DataSource</code> * </ul> */ public interface MediaProxy extends MediaHandler { /** * Obtain the new <code>DataSource</code>. * The <code>DataSource</code> is already connected. * * @exception IOException Thrown when if there are IO * problems in reading the the original or new * <code>DataSource</code>. * * @exception NoDataSourceException Thrown if this proxy * can't produce a <code>DataSource</code>. * * @return the new <code>DataSource</code> for this content. */ public DataSource getDataSource() throws IOException, NoDataSourceException; }