1 package org.musicontroller.importer; 2 3 import java.io.File; 4 import java.io.IOException; 5 6 public interface MediafileInspector { 7 8 /** 9 * Inspect the specified file as an MP3 file. The same inspector 10 * can be re-used by calling inspectFile() repeatedly. 11 * 12 * @param filename The name of the file to analyze. 13 * @throws ImporterException 14 * @throws IOException 15 */ 16 public void inspectFile(String filename) throws ImporterException, IOException; 17 18 /** 19 * Returns the song name of the MP3 file. 20 * @return The song name. 21 */ 22 public String getSongname(); 23 24 /** 25 * Returns the playlist name of the MP3 file. 26 * @return The playlist name. 27 */ 28 public String getPlaylistname(); 29 30 /** 31 * Returns the band name of the MP3 file. 32 * @return The band name. 33 */ 34 public String getBandname(); 35 36 /** 37 * Returns the genre keyword. 38 * @return The genre keyword. 39 */ 40 public String getKeyword(); 41 42 /** 43 * Returns the year of release of the playlist. 44 * @return The year of release of the playlist. 45 */ 46 public int getPlaylistyear(); 47 48 /** 49 * Returns the sequence no. of the song in the playlist. 50 * @return The sequence no. of the song in the playlist. 51 */ 52 public int getPlaylistrow(); 53 54 /** 55 * Returns the song length in milliseconds. 56 * @return The song length in milliseconds. 57 */ 58 public int getSonglength(); 59 60 /** 61 * Returns the extension of the song (".mp3"). 62 * @return Returns the extension of the song. 63 */ 64 public String getExtension(); 65 66 /** 67 * Returns the currently analyzed file. 68 * @return The file currently being analyzed 69 */ 70 public File getFile(); 71 }