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 }