Add SoundWrapper class
parent
3359ab9ff1
commit
7a63db1349
|
@ -0,0 +1,29 @@
|
|||
import javax.sound.sampled.LineUnavailableException;
|
||||
import javax.sound.sampled.UnsupportedAudioFileException;
|
||||
import java.io.*;
|
||||
|
||||
public class SoundWrapper implements Serializable {
|
||||
transient public Sound sound;
|
||||
public String soundString;
|
||||
|
||||
// please note that not as many constructors were implemented as BufferedImage, as this class was created before most sounds were added;
|
||||
// as such, backwards compatibility was not needed
|
||||
public SoundWrapper(String soundLocation) throws UnsupportedAudioFileException, LineUnavailableException, IOException {
|
||||
sound = new Sound(soundLocation);
|
||||
soundString = soundLocation;
|
||||
}
|
||||
|
||||
public SoundWrapper() {}
|
||||
|
||||
@Serial
|
||||
private void writeObject(ObjectOutputStream out) throws IOException {
|
||||
out.writeObject(soundString);
|
||||
}
|
||||
|
||||
@Serial
|
||||
private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException, UnsupportedAudioFileException, LineUnavailableException {
|
||||
Object o;
|
||||
o = in.readObject();
|
||||
sound = new Sound((String)o);
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue