Source code: com/virtuosotechnologies/asaph/maingui/DatabaseEvent.java
1 /*
2 ================================================================================
3
4 FILE: DatabaseEvent.java
5
6 PROJECT:
7
8 Asaph
9
10 CONTENTS:
11
12 A database has changed state
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 java.util.EventObject;
46
47 import com.virtuosotechnologies.lib.base.BasicEnumeratedType;
48
49 import com.virtuosotechnologies.asaph.model.SongDatabase;
50
51
52 /**
53 * A database has changed state
54 */
55 public class DatabaseEvent
56 extends EventObject
57 {
58 public static final class Type
59 extends BasicEnumeratedType
60 {
61 Type(String str)
62 {
63 super(str);
64 }
65 }
66
67
68 public static final Type DATABASE_CLOSING = new Type("closing");
69 public static final Type DATABASE_OPENED = new Type("opened");
70 public static final Type DATABASE_CLOSED = new Type("closed");
71
72
73 private Type type_;
74 private SongDatabase database_;
75
76
77 /**
78 * Constructor
79 */
80 public DatabaseEvent(
81 Object source,
82 Type type,
83 SongDatabase database)
84 {
85 super(source);
86 type_ = type;
87 database_ = database;
88 }
89
90
91 /**
92 * Get the event type
93 */
94 public Type getType()
95 {
96 return type_;
97 }
98
99
100 /**
101 * Get which database is affected
102 */
103 public SongDatabase getSongDatabase()
104 {
105 return database_;
106 }
107 }