1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 package org.diyefi.openlogviewer.decoder;
25
26
27
28
29
30
31 public class FreeEmsPacket {
32
33
34 private boolean hasLength;
35 private boolean isNack;
36 private boolean hasSequence;
37 private boolean reserved3;
38 private boolean reserved4;
39 private boolean reserved5;
40 private boolean reserved6;
41 private boolean reserved7;
42
43
44 private short length;
45 private short sequence;
46 private short payloadId;
47
48
49 private short errorId;
50 private short payload[];
51
52
53 private short checksum;
54
55 public FreeEmsPacket(short rawPacket[]) {
56 throw new RuntimeException("Not implemented!");
57 }
58
59 public boolean hasLength() {
60 return hasLength;
61 }
62
63 public boolean isNack() {
64 return isNack;
65 }
66
67 public boolean hasSequence() {
68 return hasSequence;
69 }
70
71 public boolean reserved3() {
72 return reserved3;
73 }
74
75 public boolean reserved4() {
76 return reserved4;
77 }
78
79 public boolean reserved5() {
80 return reserved5;
81 }
82
83 public boolean reserved6() {
84 return reserved6;
85 }
86
87 public boolean reserved7() {
88 return reserved7;
89 }
90
91 public short getLength() {
92 return length;
93 }
94
95 public short getSequence() {
96 if(hasSequence){
97 return sequence;
98 }else{
99 throw new RuntimeException("Has no sequence!");
100 }
101 }
102
103 public short getPayloadId() {
104 return payloadId;
105 }
106
107 public short getErrorId() {
108 if(isNack){
109 return errorId;
110 }else{
111 throw new RuntimeException("Not a nack!");
112 }
113 }
114
115 public short[] getPayload() {
116 return payload;
117 }
118
119 public int getPayloadLength() {
120 return payload.length;
121 }
122
123 public short getChecksum() {
124 return checksum;
125 }
126
127 }