1 package ca.uhn.hl7v2.conf.spec.message;
2
3 import java.util.ArrayList;
4 import java.util.List;
5
6 import ca.uhn.hl7v2.conf.ProfileException;
7
8
9
10
11
12 public class Seg implements ProfileStructure {
13
14
15
16 private final java.beans.PropertyChangeSupport propertyChangeSupport = new java.beans.PropertyChangeSupport(this);
17
18
19 private final java.beans.VetoableChangeSupport vetoableChangeSupport = new java.beans.VetoableChangeSupport(this);
20
21 private String impNote;
22 private String description;
23 private String reference;
24 private String predicate;
25 private final List<Field> fields = new ArrayList<>();
26 private String name;
27 private String longName;
28 private String usage;
29 private short min;
30 private short max;
31
32
33 public Seg() {
34 }
35
36
37
38
39 public void addPropertyChangeListener(java.beans.PropertyChangeListener l) {
40 propertyChangeSupport.addPropertyChangeListener(l);
41 }
42
43
44
45
46 public void removePropertyChangeListener(java.beans.PropertyChangeListener l) {
47 propertyChangeSupport.removePropertyChangeListener(l);
48 }
49
50
51
52
53 public void addVetoableChangeListener(java.beans.VetoableChangeListener l) {
54 vetoableChangeSupport.addVetoableChangeListener(l);
55 }
56
57
58
59
60 public void removeVetoableChangeListener(java.beans.VetoableChangeListener l) {
61 vetoableChangeSupport.removeVetoableChangeListener(l);
62 }
63
64
65
66
67 public String getImpNote() {
68 return this.impNote;
69 }
70
71
72
73
74
75
76 public void setImpNote(String impNote) throws ProfileException {
77 String oldImpNote = this.impNote;
78 try {
79 vetoableChangeSupport.fireVetoableChange("impNote", oldImpNote, impNote);
80 } catch (Exception e) {
81 throw new ProfileException(null, e);
82 }
83 this.impNote = impNote;
84 propertyChangeSupport.firePropertyChange("impNote", oldImpNote, impNote);
85 }
86
87
88
89
90 public String getDescription() {
91 return this.description;
92 }
93
94
95
96
97
98
99 public void setDescription(String description) throws ProfileException {
100 String oldDescription = this.description;
101 try {
102 vetoableChangeSupport.fireVetoableChange("description", oldDescription, description);
103 } catch (Exception e) {
104 throw new ProfileException(null, e);
105 }
106 this.description = description;
107 propertyChangeSupport.firePropertyChange("description", oldDescription, description);
108 }
109
110
111
112
113 public String getReference() {
114 return this.reference;
115 }
116
117
118
119
120
121
122 public void setReference(String reference) throws ProfileException {
123 String oldReference = this.reference;
124 try {
125 vetoableChangeSupport.fireVetoableChange("reference", oldReference, reference);
126 } catch (Exception e) {
127 throw new ProfileException(null, e);
128 }
129 this.reference = reference;
130 propertyChangeSupport.firePropertyChange("reference", oldReference, reference);
131 }
132
133
134
135
136 public String getPredicate() {
137 return this.predicate;
138 }
139
140
141
142
143
144
145 public void setPredicate(String predicate) throws ProfileException {
146 String oldPredicate = this.predicate;
147 try {
148 vetoableChangeSupport.fireVetoableChange("predicate", oldPredicate, predicate);
149 } catch (Exception e) {
150 throw new ProfileException(null, e);
151 }
152 this.predicate = predicate;
153 propertyChangeSupport.firePropertyChange("predicate", oldPredicate, predicate);
154 }
155
156
157
158
159
160 public Field getField(int index) {
161 return this.fields.get(index - 1);
162 }
163
164
165
166
167
168
169
170 public void setField(int index, Field field) throws ProfileException {
171 index--;
172 while (fields.size() <= index) {
173 fields.add(null);
174 }
175 Field oldField = this.fields.get(index);
176 this.fields.set(index,field);
177 try {
178 vetoableChangeSupport.fireVetoableChange("fields", null, null );
179 }
180 catch(java.beans.PropertyVetoException vetoException ) {
181 this.fields.set(index, oldField);
182 throw new ProfileException(null, vetoException);
183 }
184 propertyChangeSupport.firePropertyChange("fields", null, null );
185 }
186
187
188
189
190 public String getName() {
191 return this.name;
192 }
193
194
195
196
197
198
199 public void setName(String name) throws ProfileException {
200 String oldName = this.name;
201 try {
202 vetoableChangeSupport.fireVetoableChange("name", oldName, name);
203 } catch (Exception e) {
204 throw new ProfileException(null, e);
205 }
206 this.name = name;
207 propertyChangeSupport.firePropertyChange("name", oldName, name);
208 }
209
210
211
212
213 public String getLongName() {
214 return this.longName;
215 }
216
217
218
219
220
221
222 public void setLongName(String longName) throws ProfileException {
223 String oldLongName = this.longName;
224 try {
225 vetoableChangeSupport.fireVetoableChange("longName", oldLongName, longName);
226 } catch (Exception e) {
227 throw new ProfileException(null, e);
228 }
229 this.longName = longName;
230 propertyChangeSupport.firePropertyChange("longName", oldLongName, longName);
231 }
232
233
234
235
236 public String getUsage() {
237 return this.usage;
238 }
239
240
241
242
243
244
245 public void setUsage(String usage) throws ProfileException {
246 String oldUsage = this.usage;
247 try {
248 vetoableChangeSupport.fireVetoableChange("usage", oldUsage, usage);
249 } catch (Exception e) {
250 throw new ProfileException(null, e);
251 }
252 this.usage = usage;
253 propertyChangeSupport.firePropertyChange("usage", oldUsage, usage);
254 }
255
256
257
258
259 public short getMin() {
260 return this.min;
261 }
262
263
264
265
266
267
268 public void setMin(short min) throws ProfileException {
269 short oldMin = this.min;
270 try {
271 vetoableChangeSupport.fireVetoableChange("min", oldMin, min);
272 } catch (Exception e) {
273 throw new ProfileException(null, e);
274 }
275 this.min = min;
276 propertyChangeSupport.firePropertyChange("min", oldMin, min);
277 }
278
279
280
281
282 public short getMax() {
283 return this.max;
284 }
285
286
287
288
289
290
291 public void setMax(short max) throws ProfileException {
292 short oldMax = this.max;
293 try {
294 vetoableChangeSupport.fireVetoableChange("max", Short.valueOf(oldMax), Short.valueOf(max));
295 } catch (Exception e) {
296 throw new ProfileException(null, e);
297 }
298 this.max = max;
299 propertyChangeSupport.firePropertyChange("max", Short.valueOf(oldMax), Short.valueOf(max));
300 }
301
302
303
304 public int getFields() {
305 return this.fields.size();
306 }
307
308
309 public List<Field> getFieldsAsList() {
310 return (this.fields);
311 }
312
313
314 public List<Field> getChildrenAsList() {
315 return (this.fields);
316 }
317
318 }