/****************************************************************************** * Copyright 2013-2016 LASIGE * * * * Licensed under the Apache License, Version 2.0 (the "License"); you may * * not use this file except in compliance with the License. You may obtain a * * copy of the License at http://www.apache.org/licenses/LICENSE-2.0 * * * * Unless required by applicable law or agreed to in writing, software * * distributed under the License is distributed on an "AS IS" BASIS, * * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * * See the License for the specific language governing permissions and * * limitations under the License. * * * ******************************************************************************* * Audio player for the GUI. * * * * @author Daniel Faria * ******************************************************************************/ package aml.ui; import java.io.File; import javax.sound.sampled.AudioInputStream; import javax.sound.sampled.AudioSystem; import javax.sound.sampled.Clip; public class Audio { //Attributes private static String error = "store/audio/error.wav"; private static String finished = "store/audio/finished.wav"; private static String notification = "store/audio/notification.wav"; //Constructors private Audio(){} //Public Methods public static void error() { play(error); } public static void finished() { play(finished); } public static void notification() { play(notification); } //Private Methods private static void play(String file) { File f = new File(file); if(f.canRead()) { try { Clip clip = AudioSystem.getClip(); AudioInputStream inputStream = AudioSystem.getAudioInputStream(f); clip.open(inputStream); clip.start(); } catch(Exception e) { //Do nothing } } } }