Source code: com/virtuosotechnologies/asaph/maingui/ListUpdateManager.java
1 /*
2 ================================================================================
3
4 FILE: ListUpdateManager.java
5
6 PROJECT:
7
8 Asaph
9
10 CONTENTS:
11
12 The list update manager API exported by the maingui plugin
13
14 PROGRAMMERS:
15
16 Daniel Azuma (DA) <dazuma@kagi.com>
17
18 COPYRIGHT:
19
20 Copyright (C) 2003 Daniel Azuma (dazuma@kagi.com)
21
22 This program is free software; you can redistribute it and/or
23 modify it under the terms of the GNU General Public License as
24 published by the Free Software Foundation; either version 2
25 of the License, or (at your option) any later version.
26
27 This program is distributed in the hope that it will be useful,
28 but WITHOUT ANY WARRANTY; without even the implied warranty of
29 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
30 GNU General Public License for more details.
31
32 You should have received a copy of the GNU General Public
33 License along with this program; if not, write to
34 Free Software Foundation, Inc.
35 59 Temple Place, Suite 330
36 Boston, MA 02111-1307 USA
37
38 ================================================================================
39 */
40
41
42 package com.virtuosotechnologies.asaph.maingui;
43
44
45 import com.virtuosotechnologies.asaph.model.SongID;
46
47
48 /**
49 * The list update manager API exported by the maingui plugin
50 */
51 public interface ListUpdateManager
52 {
53 /**
54 * The name of this API.
55 */
56 public static final String API_NAME =
57 "com.virtuosotechnologies.asaph.maingui.ListUpdateManager";
58
59
60 /**
61 * Notify the main gui that a song has been added by this plugin. This
62 * causes the main gui to update its song list appropriately.
63 * It isn't strictly necessary to use this callback, but failure to
64 * do so may cause the main gui to get out of sync with the database
65 * contents until the user explicitly refreshes the index.
66 *
67 * @param songID SongID of the added song.
68 */
69 public void reportSongAdded(
70 SongID songID);
71
72
73 /**
74 * Notify the main gui that a song has been removed by this plugin. This
75 * causes the main gui to update its song list appropriately.
76 * It isn't strictly necessary to use this callback, but failure to
77 * do so may cause the main gui to get out of sync with the database
78 * contents until the user explicitly refreshes the index.
79 *
80 * @param songID SongID of the removed song.
81 */
82 public void reportSongRemoved(
83 SongID songID);
84
85
86 /**
87 * Notify the main gui that a song has been changed by this plugin. This
88 * causes the main gui to update its song list appropriately.
89 * It isn't strictly necessary to use this callback, but failure to
90 * do so may cause the main gui to get out of sync with the database
91 * contents until the user explicitly refreshes the index.
92 *
93 * @param songID SongID of the changed song.
94 */
95 public void reportSongChanged(
96 SongID songID);
97 }