blob: 2770211aa9ca165ff2a5cc939635935a6aa527c3 [file] [log] [blame]
slowr13fa5b02017-08-08 16:32:31 -07001/**
2 * This class file was automatically generated by jASN1 v1.8.0 (http://www.openmuc.org)
3 */
4
5package org.onosproject.xran.codecs.pdu;
6
7import org.openmuc.jasn1.ber.BerByteArrayOutputStream;
8import org.openmuc.jasn1.ber.BerTag;
9
10import java.io.IOException;
11import java.io.InputStream;
12import java.io.Serializable;
13
14public class XrancPduBody implements Serializable {
15
16 private static final long serialVersionUID = 1L;
17
18 public byte[] code = null;
19 private CellConfigRequest cellConfigRequest = null;
20 private CellConfigReport cellConfigReport = null;
21 private UEAdmissionRequest uEAdmissionRequest = null;
22 private UEAdmissionResponse uEAdmissionResponse = null;
slowr13fa5b02017-08-08 16:32:31 -070023 private UEAdmissionStatus uEAdmissionStatus = null;
slowr8ddc2b12017-08-14 14:13:38 -070024 private UEContextUpdate uEContextUpdate = null;
slowr13fa5b02017-08-08 16:32:31 -070025 private UEReconfigInd uEReconfigInd = null;
26 private UEReleaseInd uEReleaseInd = null;
27 private BearerAdmissionRequest bearerAdmissionRequest = null;
28 private BearerAdmissionResponse bearerAdmissionResponse = null;
29 private BearerAdmissionStatus bearerAdmissionStatus = null;
30 private BearerReleaseInd bearerReleaseInd = null;
slowr13fa5b02017-08-08 16:32:31 -070031 private HORequest hORequest = null;
32 private HOFailure hOFailure = null;
33 private HOComplete hOComplete = null;
34 private RXSigMeasConfig rXSigMeasConfig = null;
35 private RXSigMeasReport rXSigMeasReport = null;
36 private L2MeasConfig l2MeasConfig = null;
37 private RadioMeasReportPerUE radioMeasReportPerUE = null;
38 private RadioMeasReportPerCell radioMeasReportPerCell = null;
39 private SchedMeasReportPerUE schedMeasReportPerUE = null;
40 private SchedMeasReportPerCell schedMeasReportPerCell = null;
41 private PDCPMeasReportPerUe pDCPMeasReportPerUe = null;
42 private XICICConfig xICICConfig = null;
slowr8ddc2b12017-08-14 14:13:38 -070043 private UECapabilityInfo uECapabilityInfo = null;
44 private UECapabilityEnquiry uECapabilityEnquiry = null;
slowr13fa5b02017-08-08 16:32:31 -070045 private ScellAdd scellAdd = null;
46 private ScellAddStatus scellAddStatus = null;
47 private ScellDelete scellDelete = null;
slowr8ddc2b12017-08-14 14:13:38 -070048 private RRMConfig rRMConfig = null;
49 private RRMConfigStatus rRMConfigStatus = null;
slowr13fa5b02017-08-08 16:32:31 -070050 private SeNBAdd seNBAdd = null;
51 private SeNBAddStatus seNBAddStatus = null;
52 private SeNBDelete seNBDelete = null;
53 private TrafficSplitConfig trafficSplitConfig = null;
slowr8ddc2b12017-08-14 14:13:38 -070054
slowr13fa5b02017-08-08 16:32:31 -070055 public XrancPduBody() {
56 }
57
58 public XrancPduBody(byte[] code) {
59 this.code = code;
60 }
61
62 public void setCellConfigRequest(CellConfigRequest cellConfigRequest) {
63 this.cellConfigRequest = cellConfigRequest;
64 }
65
66 public CellConfigRequest getCellConfigRequest() {
67 return cellConfigRequest;
68 }
69
70 public void setCellConfigReport(CellConfigReport cellConfigReport) {
71 this.cellConfigReport = cellConfigReport;
72 }
73
74 public CellConfigReport getCellConfigReport() {
75 return cellConfigReport;
76 }
77
78 public void setUEAdmissionRequest(UEAdmissionRequest uEAdmissionRequest) {
79 this.uEAdmissionRequest = uEAdmissionRequest;
80 }
81
82 public UEAdmissionRequest getUEAdmissionRequest() {
83 return uEAdmissionRequest;
84 }
85
86 public void setUEAdmissionResponse(UEAdmissionResponse uEAdmissionResponse) {
87 this.uEAdmissionResponse = uEAdmissionResponse;
88 }
89
90 public UEAdmissionResponse getUEAdmissionResponse() {
91 return uEAdmissionResponse;
92 }
93
slowr13fa5b02017-08-08 16:32:31 -070094 public void setUEAdmissionStatus(UEAdmissionStatus uEAdmissionStatus) {
95 this.uEAdmissionStatus = uEAdmissionStatus;
96 }
97
98 public UEAdmissionStatus getUEAdmissionStatus() {
99 return uEAdmissionStatus;
100 }
101
slowr8ddc2b12017-08-14 14:13:38 -0700102 public void setUEContextUpdate(UEContextUpdate uEContextUpdate) {
103 this.uEContextUpdate = uEContextUpdate;
104 }
105
106 public UEContextUpdate getUEContextUpdate() {
107 return uEContextUpdate;
108 }
109
slowr13fa5b02017-08-08 16:32:31 -0700110 public void setUEReconfigInd(UEReconfigInd uEReconfigInd) {
111 this.uEReconfigInd = uEReconfigInd;
112 }
113
114 public UEReconfigInd getUEReconfigInd() {
115 return uEReconfigInd;
116 }
117
118 public void setUEReleaseInd(UEReleaseInd uEReleaseInd) {
119 this.uEReleaseInd = uEReleaseInd;
120 }
121
122 public UEReleaseInd getUEReleaseInd() {
123 return uEReleaseInd;
124 }
125
126 public void setBearerAdmissionRequest(BearerAdmissionRequest bearerAdmissionRequest) {
127 this.bearerAdmissionRequest = bearerAdmissionRequest;
128 }
129
130 public BearerAdmissionRequest getBearerAdmissionRequest() {
131 return bearerAdmissionRequest;
132 }
133
134 public void setBearerAdmissionResponse(BearerAdmissionResponse bearerAdmissionResponse) {
135 this.bearerAdmissionResponse = bearerAdmissionResponse;
136 }
137
138 public BearerAdmissionResponse getBearerAdmissionResponse() {
139 return bearerAdmissionResponse;
140 }
141
142 public void setBearerAdmissionStatus(BearerAdmissionStatus bearerAdmissionStatus) {
143 this.bearerAdmissionStatus = bearerAdmissionStatus;
144 }
145
146 public BearerAdmissionStatus getBearerAdmissionStatus() {
147 return bearerAdmissionStatus;
148 }
149
150 public void setBearerReleaseInd(BearerReleaseInd bearerReleaseInd) {
151 this.bearerReleaseInd = bearerReleaseInd;
152 }
153
154 public BearerReleaseInd getBearerReleaseInd() {
155 return bearerReleaseInd;
156 }
157
slowr13fa5b02017-08-08 16:32:31 -0700158 public void setHORequest(HORequest hORequest) {
159 this.hORequest = hORequest;
160 }
161
162 public HORequest getHORequest() {
163 return hORequest;
164 }
165
166 public void setHOFailure(HOFailure hOFailure) {
167 this.hOFailure = hOFailure;
168 }
169
170 public HOFailure getHOFailure() {
171 return hOFailure;
172 }
173
174 public void setHOComplete(HOComplete hOComplete) {
175 this.hOComplete = hOComplete;
176 }
177
178 public HOComplete getHOComplete() {
179 return hOComplete;
180 }
181
182 public void setRXSigMeasConfig(RXSigMeasConfig rXSigMeasConfig) {
183 this.rXSigMeasConfig = rXSigMeasConfig;
184 }
185
186 public RXSigMeasConfig getRXSigMeasConfig() {
187 return rXSigMeasConfig;
188 }
189
190 public void setRXSigMeasReport(RXSigMeasReport rXSigMeasReport) {
191 this.rXSigMeasReport = rXSigMeasReport;
192 }
193
194 public RXSigMeasReport getRXSigMeasReport() {
195 return rXSigMeasReport;
196 }
197
198 public void setL2MeasConfig(L2MeasConfig l2MeasConfig) {
199 this.l2MeasConfig = l2MeasConfig;
200 }
201
202 public L2MeasConfig getL2MeasConfig() {
203 return l2MeasConfig;
204 }
205
206 public void setRadioMeasReportPerUE(RadioMeasReportPerUE radioMeasReportPerUE) {
207 this.radioMeasReportPerUE = radioMeasReportPerUE;
208 }
209
210 public RadioMeasReportPerUE getRadioMeasReportPerUE() {
211 return radioMeasReportPerUE;
212 }
213
214 public void setRadioMeasReportPerCell(RadioMeasReportPerCell radioMeasReportPerCell) {
215 this.radioMeasReportPerCell = radioMeasReportPerCell;
216 }
217
218 public RadioMeasReportPerCell getRadioMeasReportPerCell() {
219 return radioMeasReportPerCell;
220 }
221
222 public void setSchedMeasReportPerUE(SchedMeasReportPerUE schedMeasReportPerUE) {
223 this.schedMeasReportPerUE = schedMeasReportPerUE;
224 }
225
226 public SchedMeasReportPerUE getSchedMeasReportPerUE() {
227 return schedMeasReportPerUE;
228 }
229
230 public void setSchedMeasReportPerCell(SchedMeasReportPerCell schedMeasReportPerCell) {
231 this.schedMeasReportPerCell = schedMeasReportPerCell;
232 }
233
234 public SchedMeasReportPerCell getSchedMeasReportPerCell() {
235 return schedMeasReportPerCell;
236 }
237
238 public void setPDCPMeasReportPerUe(PDCPMeasReportPerUe pDCPMeasReportPerUe) {
239 this.pDCPMeasReportPerUe = pDCPMeasReportPerUe;
240 }
241
242 public PDCPMeasReportPerUe getPDCPMeasReportPerUe() {
243 return pDCPMeasReportPerUe;
244 }
245
246 public void setXICICConfig(XICICConfig xICICConfig) {
247 this.xICICConfig = xICICConfig;
248 }
249
250 public XICICConfig getXICICConfig() {
251 return xICICConfig;
252 }
253
slowr8ddc2b12017-08-14 14:13:38 -0700254 public void setUECapabilityInfo(UECapabilityInfo uECapabilityInfo) {
255 this.uECapabilityInfo = uECapabilityInfo;
slowr13fa5b02017-08-08 16:32:31 -0700256 }
257
slowr8ddc2b12017-08-14 14:13:38 -0700258 public UECapabilityInfo getUECapabilityInfo() {
259 return uECapabilityInfo;
slowr13fa5b02017-08-08 16:32:31 -0700260 }
261
slowr8ddc2b12017-08-14 14:13:38 -0700262 public void setUECapabilityEnquiry(UECapabilityEnquiry uECapabilityEnquiry) {
263 this.uECapabilityEnquiry = uECapabilityEnquiry;
slowr13fa5b02017-08-08 16:32:31 -0700264 }
265
slowr8ddc2b12017-08-14 14:13:38 -0700266 public UECapabilityEnquiry getUECapabilityEnquiry() {
267 return uECapabilityEnquiry;
slowr13fa5b02017-08-08 16:32:31 -0700268 }
269
270 public void setScellAdd(ScellAdd scellAdd) {
271 this.scellAdd = scellAdd;
272 }
273
274 public ScellAdd getScellAdd() {
275 return scellAdd;
276 }
277
278 public void setScellAddStatus(ScellAddStatus scellAddStatus) {
279 this.scellAddStatus = scellAddStatus;
280 }
281
282 public ScellAddStatus getScellAddStatus() {
283 return scellAddStatus;
284 }
285
286 public void setScellDelete(ScellDelete scellDelete) {
287 this.scellDelete = scellDelete;
288 }
289
290 public ScellDelete getScellDelete() {
291 return scellDelete;
292 }
293
slowr8ddc2b12017-08-14 14:13:38 -0700294 public void setRRMConfig(RRMConfig rRMConfig) {
295 this.rRMConfig = rRMConfig;
296 }
297
298 public RRMConfig getRRMConfig() {
299 return rRMConfig;
300 }
301
302 public void setRRMConfigStatus(RRMConfigStatus rRMConfigStatus) {
303 this.rRMConfigStatus = rRMConfigStatus;
304 }
305
306 public RRMConfigStatus getRRMConfigStatus() {
307 return rRMConfigStatus;
308 }
309
slowr13fa5b02017-08-08 16:32:31 -0700310 public void setSeNBAdd(SeNBAdd seNBAdd) {
311 this.seNBAdd = seNBAdd;
312 }
313
314 public SeNBAdd getSeNBAdd() {
315 return seNBAdd;
316 }
317
318 public void setSeNBAddStatus(SeNBAddStatus seNBAddStatus) {
319 this.seNBAddStatus = seNBAddStatus;
320 }
321
322 public SeNBAddStatus getSeNBAddStatus() {
323 return seNBAddStatus;
324 }
325
326 public void setSeNBDelete(SeNBDelete seNBDelete) {
327 this.seNBDelete = seNBDelete;
328 }
329
330 public SeNBDelete getSeNBDelete() {
331 return seNBDelete;
332 }
333
334 public void setTrafficSplitConfig(TrafficSplitConfig trafficSplitConfig) {
335 this.trafficSplitConfig = trafficSplitConfig;
336 }
337
338 public TrafficSplitConfig getTrafficSplitConfig() {
339 return trafficSplitConfig;
340 }
341
342 public int encode(BerByteArrayOutputStream os) throws IOException {
343
344 if (code != null) {
345 for (int i = code.length - 1; i >= 0; i--) {
346 os.write(code[i]);
347 }
348 return code.length;
349 }
350
351 int codeLength = 0;
352 if (trafficSplitConfig != null) {
353 codeLength += trafficSplitConfig.encode(os, false);
354 // write tag: CONTEXT_CLASS, CONSTRUCTED, 34
355 os.write(0x22);
356 os.write(0xBF);
357 codeLength += 2;
358 return codeLength;
359 }
slowr8ddc2b12017-08-14 14:13:38 -0700360
slowr13fa5b02017-08-08 16:32:31 -0700361 if (seNBDelete != null) {
362 codeLength += seNBDelete.encode(os, false);
363 // write tag: CONTEXT_CLASS, CONSTRUCTED, 33
364 os.write(0x21);
365 os.write(0xBF);
366 codeLength += 2;
367 return codeLength;
368 }
slowr8ddc2b12017-08-14 14:13:38 -0700369
slowr13fa5b02017-08-08 16:32:31 -0700370 if (seNBAddStatus != null) {
371 codeLength += seNBAddStatus.encode(os, false);
372 // write tag: CONTEXT_CLASS, CONSTRUCTED, 32
373 os.write(0x20);
374 os.write(0xBF);
375 codeLength += 2;
376 return codeLength;
377 }
slowr8ddc2b12017-08-14 14:13:38 -0700378
slowr13fa5b02017-08-08 16:32:31 -0700379 if (seNBAdd != null) {
380 codeLength += seNBAdd.encode(os, false);
381 // write tag: CONTEXT_CLASS, CONSTRUCTED, 31
382 os.write(0x1F);
383 os.write(0xBF);
384 codeLength += 2;
385 return codeLength;
386 }
slowr8ddc2b12017-08-14 14:13:38 -0700387
388 if (rRMConfigStatus != null) {
389 codeLength += rRMConfigStatus.encode(os, false);
slowr13fa5b02017-08-08 16:32:31 -0700390 // write tag: CONTEXT_CLASS, CONSTRUCTED, 30
391 os.write(0xBE);
392 codeLength += 1;
393 return codeLength;
394 }
slowr8ddc2b12017-08-14 14:13:38 -0700395
396 if (rRMConfig != null) {
397 codeLength += rRMConfig.encode(os, false);
slowr13fa5b02017-08-08 16:32:31 -0700398 // write tag: CONTEXT_CLASS, CONSTRUCTED, 29
399 os.write(0xBD);
400 codeLength += 1;
401 return codeLength;
402 }
slowr8ddc2b12017-08-14 14:13:38 -0700403
404 if (scellDelete != null) {
405 codeLength += scellDelete.encode(os, false);
slowr13fa5b02017-08-08 16:32:31 -0700406 // write tag: CONTEXT_CLASS, CONSTRUCTED, 28
407 os.write(0xBC);
408 codeLength += 1;
409 return codeLength;
410 }
slowr8ddc2b12017-08-14 14:13:38 -0700411
412 if (scellAddStatus != null) {
413 codeLength += scellAddStatus.encode(os, false);
slowr13fa5b02017-08-08 16:32:31 -0700414 // write tag: CONTEXT_CLASS, CONSTRUCTED, 27
415 os.write(0xBB);
416 codeLength += 1;
417 return codeLength;
418 }
slowr8ddc2b12017-08-14 14:13:38 -0700419
420 if (scellAdd != null) {
421 codeLength += scellAdd.encode(os, false);
slowr13fa5b02017-08-08 16:32:31 -0700422 // write tag: CONTEXT_CLASS, CONSTRUCTED, 26
423 os.write(0xBA);
424 codeLength += 1;
425 return codeLength;
426 }
slowr8ddc2b12017-08-14 14:13:38 -0700427
428 if (uECapabilityEnquiry != null) {
429 codeLength += uECapabilityEnquiry.encode(os, false);
slowr13fa5b02017-08-08 16:32:31 -0700430 // write tag: CONTEXT_CLASS, CONSTRUCTED, 25
431 os.write(0xB9);
432 codeLength += 1;
433 return codeLength;
434 }
slowr8ddc2b12017-08-14 14:13:38 -0700435
436 if (uECapabilityInfo != null) {
437 codeLength += uECapabilityInfo.encode(os, false);
slowr13fa5b02017-08-08 16:32:31 -0700438 // write tag: CONTEXT_CLASS, CONSTRUCTED, 24
439 os.write(0xB8);
440 codeLength += 1;
441 return codeLength;
442 }
slowr8ddc2b12017-08-14 14:13:38 -0700443
444 if (xICICConfig != null) {
445 codeLength += xICICConfig.encode(os, false);
slowr13fa5b02017-08-08 16:32:31 -0700446 // write tag: CONTEXT_CLASS, CONSTRUCTED, 23
447 os.write(0xB7);
448 codeLength += 1;
449 return codeLength;
450 }
slowr8ddc2b12017-08-14 14:13:38 -0700451
452 if (pDCPMeasReportPerUe != null) {
453 codeLength += pDCPMeasReportPerUe.encode(os, false);
slowr13fa5b02017-08-08 16:32:31 -0700454 // write tag: CONTEXT_CLASS, CONSTRUCTED, 22
455 os.write(0xB6);
456 codeLength += 1;
457 return codeLength;
458 }
slowr8ddc2b12017-08-14 14:13:38 -0700459
460 if (schedMeasReportPerCell != null) {
461 codeLength += schedMeasReportPerCell.encode(os, false);
slowr13fa5b02017-08-08 16:32:31 -0700462 // write tag: CONTEXT_CLASS, CONSTRUCTED, 21
463 os.write(0xB5);
464 codeLength += 1;
465 return codeLength;
466 }
slowr8ddc2b12017-08-14 14:13:38 -0700467
468 if (schedMeasReportPerUE != null) {
469 codeLength += schedMeasReportPerUE.encode(os, false);
slowr13fa5b02017-08-08 16:32:31 -0700470 // write tag: CONTEXT_CLASS, CONSTRUCTED, 20
471 os.write(0xB4);
472 codeLength += 1;
473 return codeLength;
474 }
slowr8ddc2b12017-08-14 14:13:38 -0700475
476 if (radioMeasReportPerCell != null) {
477 codeLength += radioMeasReportPerCell.encode(os, false);
slowr13fa5b02017-08-08 16:32:31 -0700478 // write tag: CONTEXT_CLASS, CONSTRUCTED, 19
479 os.write(0xB3);
480 codeLength += 1;
481 return codeLength;
482 }
slowr8ddc2b12017-08-14 14:13:38 -0700483
484 if (radioMeasReportPerUE != null) {
485 codeLength += radioMeasReportPerUE.encode(os, false);
slowr13fa5b02017-08-08 16:32:31 -0700486 // write tag: CONTEXT_CLASS, CONSTRUCTED, 18
487 os.write(0xB2);
488 codeLength += 1;
489 return codeLength;
490 }
slowr8ddc2b12017-08-14 14:13:38 -0700491
492 if (l2MeasConfig != null) {
493 codeLength += l2MeasConfig.encode(os, false);
slowr13fa5b02017-08-08 16:32:31 -0700494 // write tag: CONTEXT_CLASS, CONSTRUCTED, 17
495 os.write(0xB1);
496 codeLength += 1;
497 return codeLength;
498 }
slowr8ddc2b12017-08-14 14:13:38 -0700499
500 if (rXSigMeasReport != null) {
501 codeLength += rXSigMeasReport.encode(os, false);
slowr13fa5b02017-08-08 16:32:31 -0700502 // write tag: CONTEXT_CLASS, CONSTRUCTED, 16
503 os.write(0xB0);
504 codeLength += 1;
505 return codeLength;
506 }
slowr8ddc2b12017-08-14 14:13:38 -0700507
508 if (rXSigMeasConfig != null) {
509 codeLength += rXSigMeasConfig.encode(os, false);
slowr13fa5b02017-08-08 16:32:31 -0700510 // write tag: CONTEXT_CLASS, CONSTRUCTED, 15
511 os.write(0xAF);
512 codeLength += 1;
513 return codeLength;
514 }
slowr8ddc2b12017-08-14 14:13:38 -0700515
516 if (hOComplete != null) {
517 codeLength += hOComplete.encode(os, false);
slowr13fa5b02017-08-08 16:32:31 -0700518 // write tag: CONTEXT_CLASS, CONSTRUCTED, 14
519 os.write(0xAE);
520 codeLength += 1;
521 return codeLength;
522 }
slowr8ddc2b12017-08-14 14:13:38 -0700523
524 if (hOFailure != null) {
525 codeLength += hOFailure.encode(os, false);
slowr13fa5b02017-08-08 16:32:31 -0700526 // write tag: CONTEXT_CLASS, CONSTRUCTED, 13
527 os.write(0xAD);
528 codeLength += 1;
529 return codeLength;
530 }
slowr8ddc2b12017-08-14 14:13:38 -0700531
532 if (hORequest != null) {
533 codeLength += hORequest.encode(os, false);
slowr13fa5b02017-08-08 16:32:31 -0700534 // write tag: CONTEXT_CLASS, CONSTRUCTED, 12
535 os.write(0xAC);
536 codeLength += 1;
537 return codeLength;
538 }
slowr8ddc2b12017-08-14 14:13:38 -0700539
slowr13fa5b02017-08-08 16:32:31 -0700540 if (bearerReleaseInd != null) {
541 codeLength += bearerReleaseInd.encode(os, false);
542 // write tag: CONTEXT_CLASS, CONSTRUCTED, 11
543 os.write(0xAB);
544 codeLength += 1;
545 return codeLength;
546 }
slowr8ddc2b12017-08-14 14:13:38 -0700547
slowr13fa5b02017-08-08 16:32:31 -0700548 if (bearerAdmissionStatus != null) {
549 codeLength += bearerAdmissionStatus.encode(os, false);
550 // write tag: CONTEXT_CLASS, CONSTRUCTED, 10
551 os.write(0xAA);
552 codeLength += 1;
553 return codeLength;
554 }
slowr8ddc2b12017-08-14 14:13:38 -0700555
slowr13fa5b02017-08-08 16:32:31 -0700556 if (bearerAdmissionResponse != null) {
557 codeLength += bearerAdmissionResponse.encode(os, false);
558 // write tag: CONTEXT_CLASS, CONSTRUCTED, 9
559 os.write(0xA9);
560 codeLength += 1;
561 return codeLength;
562 }
slowr8ddc2b12017-08-14 14:13:38 -0700563
slowr13fa5b02017-08-08 16:32:31 -0700564 if (bearerAdmissionRequest != null) {
565 codeLength += bearerAdmissionRequest.encode(os, false);
566 // write tag: CONTEXT_CLASS, CONSTRUCTED, 8
567 os.write(0xA8);
568 codeLength += 1;
569 return codeLength;
570 }
slowr8ddc2b12017-08-14 14:13:38 -0700571
slowr13fa5b02017-08-08 16:32:31 -0700572 if (uEReleaseInd != null) {
573 codeLength += uEReleaseInd.encode(os, false);
574 // write tag: CONTEXT_CLASS, CONSTRUCTED, 7
575 os.write(0xA7);
576 codeLength += 1;
577 return codeLength;
578 }
slowr8ddc2b12017-08-14 14:13:38 -0700579
slowr13fa5b02017-08-08 16:32:31 -0700580 if (uEReconfigInd != null) {
581 codeLength += uEReconfigInd.encode(os, false);
582 // write tag: CONTEXT_CLASS, CONSTRUCTED, 6
583 os.write(0xA6);
584 codeLength += 1;
585 return codeLength;
586 }
slowr8ddc2b12017-08-14 14:13:38 -0700587
588 if (uEContextUpdate != null) {
589 codeLength += uEContextUpdate.encode(os, false);
slowr13fa5b02017-08-08 16:32:31 -0700590 // write tag: CONTEXT_CLASS, CONSTRUCTED, 5
591 os.write(0xA5);
592 codeLength += 1;
593 return codeLength;
594 }
slowr8ddc2b12017-08-14 14:13:38 -0700595
596 if (uEAdmissionStatus != null) {
597 codeLength += uEAdmissionStatus.encode(os, false);
slowr13fa5b02017-08-08 16:32:31 -0700598 // write tag: CONTEXT_CLASS, CONSTRUCTED, 4
599 os.write(0xA4);
600 codeLength += 1;
601 return codeLength;
602 }
slowr8ddc2b12017-08-14 14:13:38 -0700603
slowr13fa5b02017-08-08 16:32:31 -0700604 if (uEAdmissionResponse != null) {
605 codeLength += uEAdmissionResponse.encode(os, false);
606 // write tag: CONTEXT_CLASS, CONSTRUCTED, 3
607 os.write(0xA3);
608 codeLength += 1;
609 return codeLength;
610 }
slowr8ddc2b12017-08-14 14:13:38 -0700611
slowr13fa5b02017-08-08 16:32:31 -0700612 if (uEAdmissionRequest != null) {
613 codeLength += uEAdmissionRequest.encode(os, false);
614 // write tag: CONTEXT_CLASS, CONSTRUCTED, 2
615 os.write(0xA2);
616 codeLength += 1;
617 return codeLength;
618 }
slowr8ddc2b12017-08-14 14:13:38 -0700619
slowr13fa5b02017-08-08 16:32:31 -0700620 if (cellConfigReport != null) {
621 codeLength += cellConfigReport.encode(os, false);
622 // write tag: CONTEXT_CLASS, CONSTRUCTED, 1
623 os.write(0xA1);
624 codeLength += 1;
625 return codeLength;
626 }
slowr8ddc2b12017-08-14 14:13:38 -0700627
slowr13fa5b02017-08-08 16:32:31 -0700628 if (cellConfigRequest != null) {
629 codeLength += cellConfigRequest.encode(os, false);
630 // write tag: CONTEXT_CLASS, CONSTRUCTED, 0
631 os.write(0xA0);
632 codeLength += 1;
633 return codeLength;
634 }
slowr8ddc2b12017-08-14 14:13:38 -0700635
slowr13fa5b02017-08-08 16:32:31 -0700636 throw new IOException("Error encoding CHOICE: No element of CHOICE was selected.");
637 }
638
639 public int decode(InputStream is) throws IOException {
640 return decode(is, null);
641 }
642
643 public int decode(InputStream is, BerTag berTag) throws IOException {
644
645 int codeLength = 0;
646 BerTag passedTag = berTag;
647
648 if (berTag == null) {
649 berTag = new BerTag();
650 codeLength += berTag.decode(is);
651 }
652
653 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 0)) {
654 cellConfigRequest = new CellConfigRequest();
655 codeLength += cellConfigRequest.decode(is, false);
656 return codeLength;
657 }
658
659 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 1)) {
660 cellConfigReport = new CellConfigReport();
661 codeLength += cellConfigReport.decode(is, false);
662 return codeLength;
663 }
664
665 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 2)) {
666 uEAdmissionRequest = new UEAdmissionRequest();
667 codeLength += uEAdmissionRequest.decode(is, false);
668 return codeLength;
669 }
670
671 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 3)) {
672 uEAdmissionResponse = new UEAdmissionResponse();
673 codeLength += uEAdmissionResponse.decode(is, false);
674 return codeLength;
675 }
676
677 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 4)) {
slowr8ddc2b12017-08-14 14:13:38 -0700678 uEAdmissionStatus = new UEAdmissionStatus();
679 codeLength += uEAdmissionStatus.decode(is, false);
slowr13fa5b02017-08-08 16:32:31 -0700680 return codeLength;
681 }
682
683 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 5)) {
slowr8ddc2b12017-08-14 14:13:38 -0700684 uEContextUpdate = new UEContextUpdate();
685 codeLength += uEContextUpdate.decode(is, false);
slowr13fa5b02017-08-08 16:32:31 -0700686 return codeLength;
687 }
688
689 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 6)) {
690 uEReconfigInd = new UEReconfigInd();
691 codeLength += uEReconfigInd.decode(is, false);
692 return codeLength;
693 }
694
695 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 7)) {
696 uEReleaseInd = new UEReleaseInd();
697 codeLength += uEReleaseInd.decode(is, false);
698 return codeLength;
699 }
700
701 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 8)) {
702 bearerAdmissionRequest = new BearerAdmissionRequest();
703 codeLength += bearerAdmissionRequest.decode(is, false);
704 return codeLength;
705 }
706
707 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 9)) {
708 bearerAdmissionResponse = new BearerAdmissionResponse();
709 codeLength += bearerAdmissionResponse.decode(is, false);
710 return codeLength;
711 }
712
713 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 10)) {
714 bearerAdmissionStatus = new BearerAdmissionStatus();
715 codeLength += bearerAdmissionStatus.decode(is, false);
716 return codeLength;
717 }
718
719 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 11)) {
720 bearerReleaseInd = new BearerReleaseInd();
721 codeLength += bearerReleaseInd.decode(is, false);
722 return codeLength;
723 }
724
725 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 12)) {
slowr13fa5b02017-08-08 16:32:31 -0700726 hORequest = new HORequest();
727 codeLength += hORequest.decode(is, false);
728 return codeLength;
729 }
730
slowr8ddc2b12017-08-14 14:13:38 -0700731 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 13)) {
slowr13fa5b02017-08-08 16:32:31 -0700732 hOFailure = new HOFailure();
733 codeLength += hOFailure.decode(is, false);
734 return codeLength;
735 }
736
slowr8ddc2b12017-08-14 14:13:38 -0700737 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 14)) {
slowr13fa5b02017-08-08 16:32:31 -0700738 hOComplete = new HOComplete();
739 codeLength += hOComplete.decode(is, false);
740 return codeLength;
741 }
742
slowr8ddc2b12017-08-14 14:13:38 -0700743 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 15)) {
slowr13fa5b02017-08-08 16:32:31 -0700744 rXSigMeasConfig = new RXSigMeasConfig();
745 codeLength += rXSigMeasConfig.decode(is, false);
746 return codeLength;
747 }
748
slowr8ddc2b12017-08-14 14:13:38 -0700749 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 16)) {
slowr13fa5b02017-08-08 16:32:31 -0700750 rXSigMeasReport = new RXSigMeasReport();
751 codeLength += rXSigMeasReport.decode(is, false);
752 return codeLength;
753 }
754
slowr8ddc2b12017-08-14 14:13:38 -0700755 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 17)) {
slowr13fa5b02017-08-08 16:32:31 -0700756 l2MeasConfig = new L2MeasConfig();
757 codeLength += l2MeasConfig.decode(is, false);
758 return codeLength;
759 }
760
slowr8ddc2b12017-08-14 14:13:38 -0700761 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 18)) {
slowr13fa5b02017-08-08 16:32:31 -0700762 radioMeasReportPerUE = new RadioMeasReportPerUE();
763 codeLength += radioMeasReportPerUE.decode(is, false);
764 return codeLength;
765 }
766
slowr8ddc2b12017-08-14 14:13:38 -0700767 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 19)) {
slowr13fa5b02017-08-08 16:32:31 -0700768 radioMeasReportPerCell = new RadioMeasReportPerCell();
769 codeLength += radioMeasReportPerCell.decode(is, false);
770 return codeLength;
771 }
772
slowr8ddc2b12017-08-14 14:13:38 -0700773 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 20)) {
slowr13fa5b02017-08-08 16:32:31 -0700774 schedMeasReportPerUE = new SchedMeasReportPerUE();
775 codeLength += schedMeasReportPerUE.decode(is, false);
776 return codeLength;
777 }
778
slowr8ddc2b12017-08-14 14:13:38 -0700779 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 21)) {
slowr13fa5b02017-08-08 16:32:31 -0700780 schedMeasReportPerCell = new SchedMeasReportPerCell();
781 codeLength += schedMeasReportPerCell.decode(is, false);
782 return codeLength;
783 }
784
slowr8ddc2b12017-08-14 14:13:38 -0700785 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 22)) {
slowr13fa5b02017-08-08 16:32:31 -0700786 pDCPMeasReportPerUe = new PDCPMeasReportPerUe();
787 codeLength += pDCPMeasReportPerUe.decode(is, false);
788 return codeLength;
789 }
790
slowr8ddc2b12017-08-14 14:13:38 -0700791 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 23)) {
slowr13fa5b02017-08-08 16:32:31 -0700792 xICICConfig = new XICICConfig();
793 codeLength += xICICConfig.decode(is, false);
794 return codeLength;
795 }
796
slowr8ddc2b12017-08-14 14:13:38 -0700797 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 24)) {
798 uECapabilityInfo = new UECapabilityInfo();
799 codeLength += uECapabilityInfo.decode(is, false);
800 return codeLength;
801 }
802
803 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 25)) {
804 uECapabilityEnquiry = new UECapabilityEnquiry();
805 codeLength += uECapabilityEnquiry.decode(is, false);
806 return codeLength;
807 }
808
slowr13fa5b02017-08-08 16:32:31 -0700809 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 26)) {
slowr13fa5b02017-08-08 16:32:31 -0700810 scellAdd = new ScellAdd();
811 codeLength += scellAdd.decode(is, false);
812 return codeLength;
813 }
814
slowr8ddc2b12017-08-14 14:13:38 -0700815 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 27)) {
slowr13fa5b02017-08-08 16:32:31 -0700816 scellAddStatus = new ScellAddStatus();
817 codeLength += scellAddStatus.decode(is, false);
818 return codeLength;
819 }
820
slowr8ddc2b12017-08-14 14:13:38 -0700821 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 28)) {
slowr13fa5b02017-08-08 16:32:31 -0700822 scellDelete = new ScellDelete();
823 codeLength += scellDelete.decode(is, false);
824 return codeLength;
825 }
826
slowr8ddc2b12017-08-14 14:13:38 -0700827 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 29)) {
828 rRMConfig = new RRMConfig();
829 codeLength += rRMConfig.decode(is, false);
830 return codeLength;
831 }
832
833 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 30)) {
834 rRMConfigStatus = new RRMConfigStatus();
835 codeLength += rRMConfigStatus.decode(is, false);
836 return codeLength;
837 }
838
slowr13fa5b02017-08-08 16:32:31 -0700839 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 31)) {
840 seNBAdd = new SeNBAdd();
841 codeLength += seNBAdd.decode(is, false);
842 return codeLength;
843 }
844
845 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 32)) {
846 seNBAddStatus = new SeNBAddStatus();
847 codeLength += seNBAddStatus.decode(is, false);
848 return codeLength;
849 }
850
851 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 33)) {
852 seNBDelete = new SeNBDelete();
853 codeLength += seNBDelete.decode(is, false);
854 return codeLength;
855 }
856
857 if (berTag.equals(BerTag.CONTEXT_CLASS, BerTag.CONSTRUCTED, 34)) {
858 trafficSplitConfig = new TrafficSplitConfig();
859 codeLength += trafficSplitConfig.decode(is, false);
860 return codeLength;
861 }
862
863 if (passedTag != null) {
864 return 0;
865 }
866
867 throw new IOException("Error decoding CHOICE: Tag " + berTag + " matched to no item.");
868 }
869
870 public void encodeAndSave(int encodingSizeGuess) throws IOException {
871 BerByteArrayOutputStream os = new BerByteArrayOutputStream(encodingSizeGuess);
872 encode(os);
873 code = os.getArray();
874 }
875
876 public String toString() {
877 StringBuilder sb = new StringBuilder();
878 appendAsString(sb, 0);
879 return sb.toString();
880 }
881
882 public void appendAsString(StringBuilder sb, int indentLevel) {
883
884 if (cellConfigRequest != null) {
885 sb.append("\"cellConfigRequest\": ");
886 cellConfigRequest.appendAsString(sb, indentLevel + 1);
887 return;
888 }
889
890 if (cellConfigReport != null) {
891 sb.append("\"cellConfigReport\": ");
892 cellConfigReport.appendAsString(sb, indentLevel + 1);
893 return;
894 }
895
896 if (uEAdmissionRequest != null) {
897 sb.append("\"uEAdmissionRequest\": ");
898 uEAdmissionRequest.appendAsString(sb, indentLevel + 1);
899 return;
900 }
901
902 if (uEAdmissionResponse != null) {
903 sb.append("\"uEAdmissionResponse\": ");
904 uEAdmissionResponse.appendAsString(sb, indentLevel + 1);
905 return;
906 }
907
slowr8ddc2b12017-08-14 14:13:38 -0700908 if (uEContextUpdate != null) {
909 sb.append("\"uEContextUpdate\": ");
910 uEContextUpdate.appendAsString(sb, indentLevel + 1);
slowr13fa5b02017-08-08 16:32:31 -0700911 return;
912 }
913
914 if (uEAdmissionStatus != null) {
915 sb.append("\"uEAdmissionStatus\": ");
916 uEAdmissionStatus.appendAsString(sb, indentLevel + 1);
917 return;
918 }
919
920 if (uEReconfigInd != null) {
921 sb.append("\"uEReconfigInd\": ");
922 uEReconfigInd.appendAsString(sb, indentLevel + 1);
923 return;
924 }
925
926 if (uEReleaseInd != null) {
927 sb.append("\"uEReleaseInd\": ");
928 uEReleaseInd.appendAsString(sb, indentLevel + 1);
929 return;
930 }
931
932 if (bearerAdmissionRequest != null) {
933 sb.append("\"bearerAdmissionRequest\": ");
934 bearerAdmissionRequest.appendAsString(sb, indentLevel + 1);
935 return;
936 }
937
938 if (bearerAdmissionResponse != null) {
939 sb.append("\"bearerAdmissionResponse\": ");
940 bearerAdmissionResponse.appendAsString(sb, indentLevel + 1);
941 return;
942 }
943
944 if (bearerAdmissionStatus != null) {
945 sb.append("\"bearerAdmissionStatus\": ");
946 bearerAdmissionStatus.appendAsString(sb, indentLevel + 1);
947 return;
948 }
949
950 if (bearerReleaseInd != null) {
951 sb.append("\"bearerReleaseInd\": ");
952 bearerReleaseInd.appendAsString(sb, indentLevel + 1);
953 return;
954 }
955
956 if (uECapabilityEnquiry != null) {
957 sb.append("\"uECapabilityEnquiry\": ");
958 uECapabilityEnquiry.appendAsString(sb, indentLevel + 1);
959 return;
960 }
961
962 if (uECapabilityInfo != null) {
963 sb.append("\"uECapabilityInfo\": ");
964 uECapabilityInfo.appendAsString(sb, indentLevel + 1);
965 return;
966 }
967
968 if (hORequest != null) {
969 sb.append("\"hORequest\": ");
970 hORequest.appendAsString(sb, indentLevel + 1);
971 return;
972 }
973
974 if (hOFailure != null) {
975 sb.append("\"hOFailure\": ");
976 hOFailure.appendAsString(sb, indentLevel + 1);
977 return;
978 }
979
980 if (hOComplete != null) {
981 sb.append("\"hOComplete\": ");
982 hOComplete.appendAsString(sb, indentLevel + 1);
983 return;
984 }
985
986 if (rXSigMeasConfig != null) {
987 sb.append("\"rXSigMeasConfig\": ");
988 rXSigMeasConfig.appendAsString(sb, indentLevel + 1);
989 return;
990 }
991
992 if (rXSigMeasReport != null) {
993 sb.append("\"rXSigMeasReport\": ");
994 rXSigMeasReport.appendAsString(sb, indentLevel + 1);
995 return;
996 }
997
998 if (l2MeasConfig != null) {
999 sb.append("\"l2MeasConfig\": ");
1000 l2MeasConfig.appendAsString(sb, indentLevel + 1);
1001 return;
1002 }
1003
1004 if (radioMeasReportPerUE != null) {
1005 sb.append("\"radioMeasReportPerUE\": ");
1006 radioMeasReportPerUE.appendAsString(sb, indentLevel + 1);
1007 return;
1008 }
1009
1010 if (radioMeasReportPerCell != null) {
1011 sb.append("\"radioMeasReportPerCell\": ");
1012 radioMeasReportPerCell.appendAsString(sb, indentLevel + 1);
1013 return;
1014 }
1015
1016 if (schedMeasReportPerUE != null) {
1017 sb.append("\"schedMeasReportPerUE\": ");
1018 schedMeasReportPerUE.appendAsString(sb, indentLevel + 1);
1019 return;
1020 }
1021
1022 if (schedMeasReportPerCell != null) {
1023 sb.append("\"schedMeasReportPerCell\": ");
1024 schedMeasReportPerCell.appendAsString(sb, indentLevel + 1);
1025 return;
1026 }
1027
1028 if (pDCPMeasReportPerUe != null) {
1029 sb.append("\"pDCPMeasReportPerUe\": ");
1030 pDCPMeasReportPerUe.appendAsString(sb, indentLevel + 1);
1031 return;
1032 }
1033
1034 if (xICICConfig != null) {
1035 sb.append("\"xICICConfig\": ");
1036 xICICConfig.appendAsString(sb, indentLevel + 1);
1037 return;
1038 }
1039
1040 if (rRMConfig != null) {
1041 sb.append("\"rRMConfig\": ");
1042 rRMConfig.appendAsString(sb, indentLevel + 1);
1043 return;
1044 }
1045
1046 if (rRMConfigStatus != null) {
1047 sb.append("\"rRMConfigStatus\": ");
1048 rRMConfigStatus.appendAsString(sb, indentLevel + 1);
1049 return;
1050 }
1051
1052 if (scellAdd != null) {
1053 sb.append("\"scellAdd\": ");
1054 scellAdd.appendAsString(sb, indentLevel + 1);
1055 return;
1056 }
1057
1058 if (scellAddStatus != null) {
1059 sb.append("\"scellAddStatus\": ");
1060 scellAddStatus.appendAsString(sb, indentLevel + 1);
1061 return;
1062 }
1063
1064 if (scellDelete != null) {
1065 sb.append("\"scellDelete\": ");
1066 scellDelete.appendAsString(sb, indentLevel + 1);
1067 return;
1068 }
1069
1070 if (seNBAdd != null) {
1071 sb.append("\"seNBAdd\": ");
1072 seNBAdd.appendAsString(sb, indentLevel + 1);
1073 return;
1074 }
1075
1076 if (seNBAddStatus != null) {
1077 sb.append("\"seNBAddStatus\": ");
1078 seNBAddStatus.appendAsString(sb, indentLevel + 1);
1079 return;
1080 }
1081
1082 if (seNBDelete != null) {
1083 sb.append("\"seNBDelete\": ");
1084 seNBDelete.appendAsString(sb, indentLevel + 1);
1085 return;
1086 }
1087
1088 if (trafficSplitConfig != null) {
1089 sb.append("\"trafficSplitConfig\": ");
1090 trafficSplitConfig.appendAsString(sb, indentLevel + 1);
1091 return;
1092 }
1093
1094 sb.append("<none>");
1095 }
1096
1097}
1098