Module java.desktop
Package javax.sound.midi.spi

## Class SoundbankReader

- java.lang.Object
- - javax.sound.midi.spi.SoundbankReader

    public abstract class SoundbankReader
    extends Object

A `SoundbankReader` supplies soundbank file-reading services. Concrete subclasses of `SoundbankReader` parse a given soundbank file, producing a `Soundbank` object that can be loaded into a `Synthesizer`.

Since:
  1.3

### Constructor Summary

Constructors
`SoundbankReader()`

### Method Summary

All Methods Instance Methods Abstract Methods
`abstract Soundbank` `getSoundbank​(File file)` Obtains a soundbank object from the `File` provided.
`abstract Soundbank` `getSoundbank​(InputStream stream)` Obtains a soundbank object from the `InputStream` provided.
`abstract Soundbank` `getSoundbank​(URL url)` Obtains a soundbank object from the `URL` provided.

### Methods declared in class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### SoundbankReader

    public SoundbankReader()

### Method Detail

#### getSoundbank

    public abstract Soundbank getSoundbank​(URL url)
                                    throws InvalidMidiDataException,
                                           IOException

Obtains a soundbank object from the `URL` provided.

Parameters:
  `url` - `URL` representing the soundbank
Returns:
  soundbank object
Throws:
  `InvalidMidiDataException` - if the `URL` does not point to valid MIDI soundbank data recognized by this soundbank reader
  `IOException` - if an I/O error occurs
  `NullPointerException` - if `url` is `null`

#### getSoundbank

    public abstract Soundbank getSoundbank​(InputStream stream)
                                    throws InvalidMidiDataException,
                                           IOException

Obtains a soundbank object from the `InputStream` provided.

Parameters:
  `stream` - `InputStream` representing the soundbank
Returns:
  soundbank object
Throws:
  `InvalidMidiDataException` - if the stream does not point to valid MIDI soundbank data recognized by this soundbank reader
  `IOException` - if an I/O error occurs
  `NullPointerException` - if `stream` is `null`

#### getSoundbank

    public abstract Soundbank getSoundbank​(File file)
                                    throws InvalidMidiDataException,
                                           IOException

Obtains a soundbank object from the `File` provided.

Parameters:
  `file` - the `File` representing the soundbank
Returns:
  soundbank object
Throws:
  `InvalidMidiDataException` - if the file does not point to valid MIDI soundbank data recognized by this soundbank reader
  `IOException` - if an I/O error occurs
  `NullPointerException` - if `file` is `null`