## javax.media.j3d
Class MediaContainer

    java.lang.Object
      javax.media.j3d.SceneGraphObject
          javax.media.j3d.NodeComponent
              javax.media.j3d.MediaContainer

    public class MediaContainer

extends NodeComponent

The MediaContainer object defines all sound data: cached state flag, and associated sound media. Currently this references the sound media in one of three forms: URL String, URL object, or InputStream object. In future releases media data will include references to Java Media Player objects. Only one type of sound media data specified using `setURLString`, `setURLObject`, or `setInputStream` may be non-null (or they may all be null). An attempt to set more than one of these attributes to a non-null reference will result in an exception being thrown. If all sound media data references are null, there is no sound associated with this MediaContainer and Sound nodes referencing this object cannot be played.

Field Summary
`static int` `ALLOW_CACHE_READ` For MediaContainer component objects, specifies that this object allows the reading of its cached flag.
`static int` `ALLOW_CACHE_WRITE` For MediaContainer component objects, specifies that this object allows the writing of its cached flag.
`static int` `ALLOW_URL_READ` For MediaContainer component objects, specifies that this object allows the reading of it's sound data.
`static int` `ALLOW_URL_WRITE` For MediaContainer component objects, specifies that this object allows the writing of it's URL path.

Constructor Summary
`MediaContainer()` Constructs a MediaContainer object with default parameters.
`MediaContainer(java.io.InputStream stream)` Constructs and initializes a MediaContainer object using specified parameters.
`MediaContainer(java.lang.String path)` Constructs and initializes a MediaContainer object using specified parameters.
`MediaContainer(java.net.URL url)` Constructs and initializes a MediaContainer object using specified parameters.

Method Summary
`NodeComponent` `cloneNodeComponent()` Deprecated. As of Java 3D version 1.2, replaced with `cloneNodeComponent(boolean forceDuplicate)`
`boolean` `getCacheEnable()` Retrieve Cache Enable state flag.
`java.io.InputStream` `getInputStream()` Retrieve Input Stream.
`java.lang.String` `getURL()` Deprecated. As of Java 3D version 1.2, replaced by `getURLString`
`java.net.URL` `getURLObject()` Retrieve URL Object.
`java.lang.String` `getURLString()` Retrieve URL String.
`void` `setCacheEnable(boolean flag)` Set Cache Enable state flag.
`void` `setInputStream(java.io.InputStream stream)` Set Input Stream.
`void` `setURL(java.lang.String path)` Deprecated. As of Java 3D version 1.2, replaced by `setURLString`
`void` `setURL(java.net.URL url)` Deprecated. As of Java 3D version 1.2, replaced by `setURLObject`
`void` `setURLObject(java.net.URL url)` Set URL Object.
`void` `setURLString(java.lang.String path)` Set URL String.

Methods inherited from class javax.media.j3d.NodeComponent
`cloneNodeComponent, duplicateNodeComponent, duplicateNodeComponent, getDuplicateOnCloneTree, setDuplicateOnCloneTree`

Methods inherited from class javax.media.j3d.SceneGraphObject
`clearCapability, clearCapabilityIsFrequent, duplicateSceneGraphObject, getCapability, getCapabilityIsFrequent, getName, getUserData, isCompiled, isLive, setCapability, setCapabilityIsFrequent, setName, setUserData, toString, updateNodeReferences`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### ALLOW_CACHE_READ

    public static final int ALLOW_CACHE_READ

  For MediaContainer component objects, specifies that this object allows the reading of its cached flag.

  See Also:
    Constant Field Values

### ALLOW_CACHE_WRITE

    public static final int ALLOW_CACHE_WRITE

  For MediaContainer component objects, specifies that this object allows the writing of its cached flag.

  See Also:
    Constant Field Values

### ALLOW_URL_READ

    public static final int ALLOW_URL_READ

  For MediaContainer component objects, specifies that this object allows the reading of it's sound data.

  See Also:
    Constant Field Values

### ALLOW_URL_WRITE

    public static final int ALLOW_URL_WRITE

  For MediaContainer component objects, specifies that this object allows the writing of it's URL path.

  See Also:
    Constant Field Values

Constructor Detail

### MediaContainer

    public MediaContainer()

  Constructs a MediaContainer object with default parameters. The default values are as follows:
  URL String data : null
  URL object data : null
  InputStream data : null
  cache enable : true

### MediaContainer

    public MediaContainer(java.lang.String path)

  Constructs and initializes a MediaContainer object using specified parameters.

  Parameters:
    `path` - string of URL path containing sound data
  Throws:
    `SoundException` - if the URL is not valid or cannot be opened

### MediaContainer

    public MediaContainer(java.net.URL url)

  Constructs and initializes a MediaContainer object using specified parameters.

  Parameters:
    `url` - URL path containing sound data
  Throws:
    `SoundException` - if the URL is not valid or cannot be opened

### MediaContainer

    public MediaContainer(java.io.InputStream stream)

  Constructs and initializes a MediaContainer object using specified parameters.

  Parameters:
    `stream` - input stream containing sound data
  Since:
    Java 3D 1.2

Method Detail

### setCacheEnable

    public void setCacheEnable(boolean flag)

  Set Cache Enable state flag. Allows the writing of sound data explicitly into the MediaContainer rather than just referencing a JavaMedia container.

  Parameters:
    `flag` - boolean denoting if sound data is cached in this instance
  Throws:
    `CapabilityNotSetException` - if appropriate capability is not set and this object is part of live or compiled scene graph

### getCacheEnable

    public boolean getCacheEnable()

  Retrieve Cache Enable state flag.

  Returns:
    flag denoting is sound data is non-cached or cached
  Throws:
    `CapabilityNotSetException` - if appropriate capability is not set and this object is part of live or compiled scene graph

### setURL

    public void setURL(java.lang.String path)

  Deprecated. As of Java 3D version 1.2, replaced by `setURLString`

### setURL

    public void setURL(java.net.URL url)

  Deprecated. As of Java 3D version 1.2, replaced by `setURLObject`

### setURLString

    public void setURLString(java.lang.String path)

  Set URL String.

  Parameters:
    `path` - string of URL containing sound data
  Throws:
    `CapabilityNotSetException` - if appropriate capability is not set and this object is part of live or compiled scene graph
    `SoundException` - if the URL is not valid or cannot be opened
    `java.lang.IllegalArgumentException` - if the specified sound data is non-null and any other sound data reference is also non-null.
  Since:
    Java 3D 1.2

### setURLObject

    public void setURLObject(java.net.URL url)

  Set URL Object.

  Parameters:
    `url` - URL object containing sound data
  Throws:
    `CapabilityNotSetException` - if appropriate capability is not set and this object is part of live or compiled scene graph
    `SoundException` - if the URL is not valid or cannot be opened
    `java.lang.IllegalArgumentException` - if the specified sound data is non-null and any other sound data reference is also non-null.
  Since:
    Java 3D 1.2

### setInputStream

    public void setInputStream(java.io.InputStream stream)

  Set Input Stream.

  Parameters:
    `stream` - input stream object containing sound data
  Throws:
    `CapabilityNotSetException` - if appropriate capability is not set and this object is part of live or compiled scene graph
    `SoundException` - if InputStream is bad
    `java.lang.IllegalArgumentException` - if the specified sound data is non-null and any other sound data reference is also non-null.
  Since:
    Java 3D 1.2

### getURL

    public java.lang.String getURL()

  Deprecated. As of Java 3D version 1.2, replaced by `getURLString`

### getURLString

    public java.lang.String getURLString()

  Retrieve URL String.

  Returns:
    string of URL containing sound data
  Throws:
    `CapabilityNotSetException` - if appropriate capability is not set and this object is part of live or compiled scene graph
  Since:
    Java 3D 1.2

### getURLObject

    public java.net.URL getURLObject()

  Retrieve URL Object.

  Returns:
    URL containing sound data
  Throws:
    `CapabilityNotSetException` - if appropriate capability is not set and this object is part of live or compiled scene graph
  Since:
    Java 3D 1.2

### getInputStream

    public java.io.InputStream getInputStream()

  Retrieve Input Stream.

  Returns:
    reference to input stream containing sound data
  Throws:
    `CapabilityNotSetException` - if appropriate capability is not set and this object is part of live or compiled scene graph
  Since:
    Java 3D 1.2

### cloneNodeComponent

    public NodeComponent cloneNodeComponent()

  Deprecated. As of Java 3D version 1.2, replaced with `cloneNodeComponent(boolean forceDuplicate)`

  Overrides:
    `cloneNodeComponent` in class `NodeComponent`

Copyright 1996-2008 Sun Microsystems, Inc. All Rights Reserved. Use is subject to license terms.