2 * jSite-next - CoreListenerSupport.java -
3 * Copyright © 2008 David Roden
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2 of the License, or
8 * (at your option) any later version.
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
20 package net.pterodactylus.jsite.core;
22 import java.util.logging.Level;
23 import java.util.logging.Logger;
25 import net.pterodactylus.util.event.ListenerSupport;
30 * @author David Roden <droden@gmail.com>
32 public class CoreListenerSupport extends ListenerSupport<CoreListener> {
35 private static final Logger logger = Logger.getLogger(CoreListenerSupport.class.getName());
38 * Notifies all listeners that the projects were loaded successfully.
41 * The directory the projects were loaded from
43 public void fireLoadingProjectsDone(String directory) {
44 logger.log(Level.FINEST, "firing loadingProjectsDone event with [directory=" + directory + "]");
45 for (CoreListener coreListener : getListeners()) {
46 coreListener.loadingProjectsDone(directory);
51 * Notifies all core listeners that loading the projects from the given
52 * directory has failed.
55 * The directory the projects were tried to load from
57 * The exception that occured when loading projects
59 public void fireLoadingProjectsFailed(String directory, Throwable throwable) {
60 logger.log(Level.FINEST, "firing loadingProjectsFailed event with [directory=" + directory + ",throwable=" + throwable + "]");
61 for (CoreListener coreListener : getListeners()) {
62 coreListener.loadingProjectsFailed(directory, throwable);
67 * Notifies all listeners that the projects were successfully saved.
70 * The directory the projects were saved to
72 public void fireSavingProjectsDone(String directory) {
73 logger.log(Level.FINEST, "firing savingProjectsDone event with [directory=" + directory + "]");
74 for (CoreListener coreListener : getListeners()) {
75 coreListener.savingProjectsDone(directory);
80 * Notifies all listeners that the projects could not be saved.
83 * The directory the projects were to be saved to
85 * The exception that occured when saving the projects
87 public void fireSavingProjectsFailed(String directory, Throwable throwable) {
88 logger.log(Level.FINEST, "firing savingProjectsFailed event with [directory=" + directory + ",throwable=" + throwable + "]");
89 for (CoreListener coreListener : getListeners()) {
90 coreListener.savingProjectsFailed(directory, throwable);
95 * Notifies all listeners that a project was added.
98 * The project that was added
100 public void fireProjectAdded(Project project) {
101 logger.log(Level.FINEST, "firing projectAdded event with [project=" + project + "]");
102 for (CoreListener coreListener : getListeners()) {
103 coreListener.projectAdded(project);
108 * Notifies all listeners that a project was cloned.
110 * @param clonedProject
111 * The project that was cloned
112 * @param projectClone
113 * The clone of the project
115 public void fireProjectCloned(Project clonedProject, Project projectClone) {
116 logger.log(Level.FINEST, "firing projectCloned event with [clonedProject=" + clonedProject + ",projectClone=" + projectClone + "]");
117 for (CoreListener coreListener : getListeners()) {
118 coreListener.projectCloned(clonedProject, projectClone);
123 * Notifies all listeners that a project was removed.
126 * The project that was removed
128 public void fireProjectRemoved(Project project) {
129 logger.log(Level.FINEST, "firing projectRemoved event with [project=" + project + "]");
130 for (CoreListener coreListener : getListeners()) {
131 coreListener.projectRemoved(project);
136 * Notifies all listeners that the nodes were successfully loaded.
139 * The directory the nodes were loaded from
141 public void fireLoadingNodesDone(String directory) {
142 logger.log(Level.FINEST, "firing loadingNodesDone event with [directory=" + directory + "]");
143 for (CoreListener coreListener : getListeners()) {
144 coreListener.loadingNodesDone(directory);
149 * Notifies all listeners that loading the nodes has failed.
152 * The directory the nodes were loaded from
154 * The exception that occured while loading the nodes
156 public void fireLoadingNodesFailed(String directory, Throwable throwable) {
157 logger.log(Level.FINEST, "firing loadingNodesFailed event with [directory=" + directory + ",throwable=" + throwable + "]");
158 for (CoreListener coreListener : getListeners()) {
159 coreListener.loadingNodesFailed(directory, throwable);
164 * Notifies all listeners that the nodes were saved successfully.
167 * The directory the nodes were saved to
169 public void fireSavingNodesDone(String directory) {
170 logger.log(Level.FINEST, "firing savingNodesDone event with [directory=" + directory + "]");
171 for (CoreListener coreListener : getListeners()) {
172 coreListener.savingNodesDone(directory);
177 * Notifies all listeners that saving the nodes has failed.
180 * The directory the nodes were saved to
182 * The exception that occured while saving the nodes
184 public void fireSavingNodesFailed(String directory, Throwable throwable) {
185 logger.log(Level.FINEST, "firing savingNodesFailed event with [directory=" + directory + ",throwable=" + throwable + "]");
186 for (CoreListener coreListener : getListeners()) {
187 coreListener.savingProjectsFailed(directory, throwable);
192 * Notifies all core listeners that the core has loaded and is ready to run.
194 public void fireCoreLoaded() {
195 logger.log(Level.FINEST, "firing coreLoaded event");
196 for (CoreListener coreListener : getListeners()) {
197 coreListener.coreLoaded();
202 * Notifies all listeners that the core was stopped.
204 public void fireCoreStopped() {
205 logger.log(Level.FINEST, "firing coreStopped event");
206 for (CoreListener coreListener : getListeners()) {
207 coreListener.coreStopped();
212 * Notifies all listeners that a node was added to the core.
215 * The node that was added
217 public void fireNodeAdded(Node node) {
218 logger.log(Level.FINEST, "firing nodeAdded event with [node=" + node + "]");
219 for (CoreListener coreListener : getListeners()) {
220 coreListener.nodeAdded(node);
225 * Notifies all listeners that a node was removed from the core.
228 * The node that was removed
230 public void fireNodeRemoved(Node node) {
231 logger.log(Level.FINEST, "firing nodeRemoved event with [node=" + node + "]");
232 for (CoreListener coreListener : getListeners()) {
233 coreListener.nodeRemoved(node);
238 * Notifies all listeners that a connection to the given node is now being
242 * The node that is being connected to
244 public void fireNodeConnecting(Node node) {
245 logger.log(Level.FINEST, "firing nodeConnecting event with [node=" + node + "]");
246 for (CoreListener coreListener : getListeners()) {
247 coreListener.nodeConnecting(node);
252 * Notifies all listeners that the given node is now connected.
255 * The node that is now connected
257 public void fireNodeConnected(Node node) {
258 logger.log(Level.FINEST, "firing nodeConnected event with [node=" + node + "]");
259 for (CoreListener coreListener : getListeners()) {
260 coreListener.nodeConnected(node);
265 * Notifies all listeners that a connection to a node has failed.
268 * The node that could not be connected
270 * The cause of the failure
272 public void fireNodeConnectionFailed(Node node, Throwable cause) {
273 logger.log(Level.FINEST, "firing nodeConnectionFailed event with [node=" + node + ",cause=" + cause + "]");
274 for (CoreListener coreListener : getListeners()) {
275 coreListener.nodeConnectionFailed(node, cause);
280 * Notifies all listeners that the given node was disconnected.
283 * The node that is now disconnected
285 * The exception that caused the disconnect, or <code>null</code>
286 * if there was no exception
288 public void fireNodeDisconnected(Node node, Throwable throwable) {
289 logger.log(Level.FINEST, "firing nodeDisconnected event with [node=" + node + ",throwable=" + throwable + "]");
290 for (CoreListener coreListener : getListeners()) {
291 coreListener.nodeDisconnected(node, throwable);