01: package net.sourceforge.pmd.util.viewer.model;
02:
03: /**
04: * The event which will be sent every time the model changes
05: * <p/>
06: * <p/>
07: * <p/>
08: * <p/>
09: * <p/>
10: * Note: the instances will be immutable
11: * <p/>
12: * </p>
13: *
14: * @author Boris Gruschko ( boris at gruschko.org )
15: * @version $Id: ViewerModelEvent.java 4217 2006-02-10 14:15:31Z tomcopeland $
16: */
17: public class ViewerModelEvent {
18: /**
19: * reason in the case of code recompilation
20: */
21: public static final int CODE_RECOMPILED = 1;
22: /**
23: * reason in the case of node selection
24: */
25: public static final int NODE_SELECTED = 2;
26: /**
27: * reason in the case of path extension
28: */
29: public static final int PATH_EXPRESSION_APPENDED = 3;
30: /**
31: * reason in the case of path expression evaluation
32: */
33: public static final int PATH_EXPRESSION_EVALUATED = 4;
34: private Object source;
35: private int reason;
36: private Object parameter;
37:
38: /**
39: * Creates an event
40: *
41: * @param source event's source
42: * @param reason event's reason
43: */
44: public ViewerModelEvent(Object source, int reason) {
45: this (source, reason, null);
46: }
47:
48: /**
49: * Creates an event
50: *
51: * @param source event's source
52: * @param reason event's reason
53: * @param parameter parameter object
54: */
55: public ViewerModelEvent(Object source, int reason, Object parameter) {
56: this .source = source;
57: this .reason = reason;
58: this .parameter = parameter;
59: }
60:
61: public int getReason() {
62: return reason;
63: }
64:
65: public Object getSource() {
66: return source;
67: }
68:
69: public Object getParameter() {
70: return parameter;
71: }
72: }
|