1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.apache.mina.statemachine.event;
21
22 import org.apache.mina.statemachine.context.StateContext;
23
24
25
26
27
28
29
30
31 public class Event {
32
33 public static final String WILDCARD_EVENT_ID = "*";
34
35 private final Object id;
36
37 private final StateContext context;
38
39 private final Object[] arguments;
40
41
42
43
44
45
46
47 public Event(Object id, StateContext context) {
48 this(id, context, new Object[0]);
49 }
50
51
52
53
54
55
56
57
58 public Event(Object id, StateContext context, Object[] arguments) {
59 if (id == null) {
60 throw new IllegalArgumentException("id");
61 }
62
63 if (context == null) {
64 throw new IllegalArgumentException("context");
65 }
66
67 if (arguments == null) {
68 throw new IllegalArgumentException("arguments");
69 }
70
71 this.id = id;
72 this.context = context;
73 this.arguments = arguments;
74 }
75
76
77
78
79 public StateContext getContext() {
80 return context;
81 }
82
83
84
85
86 public Object getId() {
87 return id;
88 }
89
90
91
92
93
94 public Object[] getArguments() {
95 return arguments;
96 }
97
98 @Override
99 public String toString() {
100 StringBuilder sb = new StringBuilder();
101
102 sb.append("Event[");
103 sb.append("id=").append(id);
104 sb.append(",context=").append(context);
105 sb.append(",arguments=");
106
107 if (arguments != null) {
108 sb.append('{');
109 boolean isFirst = true;
110
111 for (Object argument:arguments) {
112 if (isFirst) {
113 isFirst = false;
114 } else {
115 sb.append(',');
116 }
117
118 sb.append(argument);
119 }
120
121 sb.append('}');
122 } else {
123 sb.append("null");
124 }
125
126 sb.append("]");
127
128 return sb.toString();
129 }
130 }