File Coverage

lib/Net/EGTS/Codes.pm
Criterion Covered Total %
statement 246 246 100.0
branch n/a
condition n/a
subroutine 82 82 100.0
pod n/a
total 328 328 100.0


line stmt bran cond sub pod time code
1 15     15   73 use utf8;
  15         21  
  15         88  
2              
3             package Net::EGTS::Codes;
4 15     15   1857 use namespace::autoclean;
  15         52282  
  15         69  
5 15     15   682 use Mouse;
  15         45  
  15         115  
6             extends qw(Exporter);
7              
8             our @EXPORT;
9              
10             # Packet types
11 15     15   4984 use constant EGTS_PT_RESPONSE => 0;
  15         19  
  15         1127  
12 15     15   88 use constant EGTS_PT_APPDATA => 1;
  15         20  
  15         588  
13 15     15   60 use constant EGTS_PT_SIGNED_APPDATA => 2;
  15         25  
  15         828  
14             push @EXPORT, qw(
15             EGTS_PT_RESPONSE
16             EGTS_PT_APPDATA
17             EGTS_PT_SIGNED_APPDATA
18             );
19              
20             # Result codes
21 15     15   74 use constant EGTS_PC_OK => 0;
  15         16  
  15         647  
22 15     15   63 use constant EGTS_PC_IN_PROGRESS => 1;
  15         18  
  15         555  
23 15     15   65 use constant EGTS_PC_UNS_PROTOCOL => 128;
  15         16  
  15         595  
24 15     15   66 use constant EGTS_PC_DECRYPT_ERROR => 129;
  15         18  
  15         567  
25 15     15   81 use constant EGTS_PC_PROC_DENIED => 130;
  15         23  
  15         580  
26 15     15   64 use constant EGTS_PC_INC_HEADERFORM => 131;
  15         27  
  15         625  
27 15     15   80 use constant EGTS_PC_INC_DATAFORM => 132;
  15         18  
  15         547  
28 15     15   71 use constant EGTS_PC_UNS_TYPE => 133;
  15         20  
  15         544  
29 15     15   62 use constant EGTS_PC_NOTEN_PARAMS => 134;
  15         26  
  15         538  
30 15     15   58 use constant EGTS_PC_DBL_PROC => 135;
  15         20  
  15         543  
31 15     15   58 use constant EGTS_PC_PROC_SRC_DENIED => 136;
  15         16  
  15         520  
32 15     15   59 use constant EGTS_PC_HEADERCRC_ERROR => 137;
  15         34  
  15         551  
33 15     15   69 use constant EGTS_PC_DATACRC_ERROR => 138;
  15         23  
  15         623  
34 15     15   91 use constant EGTS_PC_INVDATALEN => 139;
  15         27  
  15         538  
35 15     15   62 use constant EGTS_PC_ROUTE_NFOUND => 140;
  15         16  
  15         564  
36 15     15   65 use constant EGTS_PC_ROUTE_CLOSED => 141;
  15         23  
  15         507  
37 15     15   55 use constant EGTS_PC_ROUTE_DENIED => 142;
  15         24  
  15         518  
38 15     15   62 use constant EGTS_PC_INVADDR => 143;
  15         16  
  15         607  
39 15     15   76 use constant EGTS_PC_TTLEXPIRED => 144;
  15         24  
  15         552  
40 15     15   60 use constant EGTS_PC_NO_ACK => 145;
  15         20  
  15         553  
41 15     15   79 use constant EGTS_PC_OBJ_NFOUND => 146;
  15         23  
  15         511  
42 15     15   67 use constant EGTS_PC_EVNT_NFOUND => 147;
  15         15  
  15         527  
43 15     15   59 use constant EGTS_PC_SRVC_NFOUND => 148;
  15         16  
  15         546  
44 15     15   81 use constant EGTS_PC_SRVC_DENIED => 149;
  15         42  
  15         707  
45 15     15   69 use constant EGTS_PC_SRVC_UNKN => 150;
  15         22  
  15         557  
46 15     15   111 use constant EGTS_PC_AUTH_DENIED => 151;
  15         25  
  15         646  
47 15     15   66 use constant EGTS_PC_ALREADY_EXISTS => 152;
  15         18  
  15         549  
48 15     15   86 use constant EGTS_PC_ID_NFOUND => 153;
  15         20  
  15         537  
49 15     15   69 use constant EGTS_PC_INC_DATETIME => 154;
  15         34  
  15         542  
50 15     15   57 use constant EGTS_PC_IO_ERROR => 155;
  15         21  
  15         569  
51 15     15   60 use constant EGTS_PC_NO_RES_AVAIL => 156;
  15         16  
  15         516  
52 15     15   68 use constant EGTS_PC_MODULE_FAULT => 157;
  15         19  
  15         517  
53 15     15   62 use constant EGTS_PC_MODULE_PWR_FLT => 158;
  15         51  
  15         586  
54 15     15   66 use constant EGTS_PC_MODULE_PROC_FLT => 159;
  15         27  
  15         567  
55 15     15   68 use constant EGTS_PC_MODULE_SW_FLT => 160;
  15         18  
  15         538  
56 15     15   61 use constant EGTS_PC_MODULE_FW_FLT => 161;
  15         18  
  15         519  
57 15     15   69 use constant EGTS_PC_MODULE_IO_FLT => 162;
  15         23  
  15         605  
58 15     15   77 use constant EGTS_PC_MODULE_MEM_FLT => 163;
  15         19  
  15         492  
59 15     15   55 use constant EGTS_PC_TEST_FAILED => 164;
  15         29  
  15         1043  
60             push @EXPORT, qw(
61             EGTS_PC_OK
62             EGTS_PC_IN_PROGRESS
63             EGTS_PC_UNS_PROTOCOL
64             EGTS_PC_DECRYPT_ERROR
65             EGTS_PC_PROC_DENIED
66             EGTS_PC_INC_HEADERFORM
67             EGTS_PC_INC_DATAFORM
68             EGTS_PC_UNS_TYPE
69             EGTS_PC_NOTEN_PARAMS
70             EGTS_PC_DBL_PROC
71             EGTS_PC_PROC_SRC_DENIED
72             EGTS_PC_HEADERCRC_ERROR
73             EGTS_PC_DATACRC_ERROR
74             EGTS_PC_INVDATALEN
75             EGTS_PC_ROUTE_NFOUND
76             EGTS_PC_ROUTE_CLOSED
77             EGTS_PC_ROUTE_DENIED
78             EGTS_PC_INVADDR
79             EGTS_PC_TTLEXPIRED
80             EGTS_PC_NO_ACK
81             EGTS_PC_OBJ_NFOUND
82             EGTS_PC_EVNT_NFOUND
83             EGTS_PC_SRVC_NFOUND
84             EGTS_PC_SRVC_DENIED
85             EGTS_PC_SRVC_UNKN
86             EGTS_PC_AUTH_DENIED
87             EGTS_PC_ALREADY_EXISTS
88             EGTS_PC_ID_NFOUND
89             EGTS_PC_INC_DATETIME
90             EGTS_PC_IO_ERROR
91             EGTS_PC_NO_RES_AVAIL
92             EGTS_PC_MODULE_FAULT
93             EGTS_PC_MODULE_PWR_FLT
94             EGTS_PC_MODULE_PROC_FLT
95             EGTS_PC_MODULE_SW_FLT
96             EGTS_PC_MODULE_FW_FLT
97             EGTS_PC_MODULE_IO_FLT
98             EGTS_PC_MODULE_MEM_FLT
99             EGTS_PC_TEST_FAILED
100             );
101              
102             # Service type
103 15     15   117 use constant EGTS_AUTH_SERVICE => 1;
  15         17  
  15         847  
104 15     15   66 use constant EGTS_TELEDATA_SERVICE => 2;
  15         55  
  15         568  
105 15     15   65 use constant EGTS_COMMANDS_SERVICE => 3;
  15         18  
  15         581  
106 15     15   66 use constant EGTS_FIRMWARE_SERVICE => 4;
  15         40  
  15         596  
107             # .. 63 reserved
108 15     15   61 use constant EGTS_USER_SERVICE => 64;
  15         17  
  15         834  
109             push @EXPORT, qw(
110             EGTS_AUTH_SERVICE
111             EGTS_TELEDATA_SERVICE
112             EGTS_COMMANDS_SERVICE
113             EGTS_FIRMWARE_SERVICE
114              
115             EGTS_USER_SERVICE
116             );
117              
118             # Service state
119 15     15   65 use constant EGTS_SST_IN_SERVICE => 0;
  15         14  
  15         645  
120 15     15   60 use constant EGTS_SST_OUT_OF_SERVICE => 128;
  15         16  
  15         504  
121 15     15   76 use constant EGTS_SST_DENIDED => 129;
  15         17  
  15         493  
122 15     15   76 use constant EGTS_SST_NO_CONF => 130;
  15         16  
  15         511  
123 15     15   56 use constant EGTS_SST_TEMP_UNAVAIL => 131;
  15         28  
  15         752  
124             push @EXPORT, qw(
125             EGTS_SST_IN_SERVICE
126             EGTS_SST_OUT_OF_SERVICE
127             EGTS_SST_DENIDED
128             EGTS_SST_NO_CONF
129             EGTS_SST_TEMP_UNAVAIL
130             );
131              
132             # Source Data codes (custom names)
133 15     15   65 use constant EGTS_SRCD_TIMER => 0;
  15         20  
  15         605  
134 15     15   69 use constant EGTS_SRCD_DISTANCE => 1;
  15         16  
  15         532  
135 15     15   84 use constant EGTS_SRCD_ANGLE => 2;
  15         28  
  15         513  
136 15     15   77 use constant EGTS_SRCD_RESPONSE => 3;
  15         18  
  15         556  
137             #...
138 15     15   69 use constant EGTS_SRCD_EXTERNAL => 16;
  15         16  
  15         539  
139             #...
140 15     15   56 use constant EGTS_SRCD_CHANGE_MODE => 35;
  15         14  
  15         747  
141             push @EXPORT, qw(
142             EGTS_SRCD_TIMER
143             EGTS_SRCD_DISTANCE
144             EGTS_SRCD_ANGLE
145             EGTS_SRCD_RESPONSE
146              
147             EGTS_SRCD_EXTERNAL
148              
149             EGTS_SRCD_CHANGE_MODE
150             );
151              
152             # Subrecord types common
153 15     15   62 use constant EGTS_SR_RECORD_RESPONSE => 0;
  15         21  
  15         551  
154             # Subrecord types for EGTS_AUTH_SERVICE
155 15     15   58 use constant EGTS_SR_TERM_IDENTITY => 1;
  15         19  
  15         482  
156 15     15   64 use constant EGTS_SR_MODULE_DATA => 2;
  15         23  
  15         580  
157 15     15   63 use constant EGTS_SR_VEHICLE_DATA => 3;
  15         14  
  15         565  
158 15     15   73 use constant EGTS_SR_DISPATCHER_IDENTITY => 5;
  15         14  
  15         533  
159 15     15   57 use constant EGTS_SR_AUTH_PARAMS => 6;
  15         16  
  15         571  
160 15     15   74 use constant EGTS_SR_AUTH_INFO => 7;
  15         28  
  15         530  
161 15     15   64 use constant EGTS_SR_SERVICE_INFO => 8;
  15         22  
  15         600  
162 15     15   59 use constant EGTS_SR_RESULT_CODE => 9;
  15         17  
  15         596  
163             # Subrecord types for EGTS_TELEDATA_SERVICE
164 15     15   60 use constant EGTS_SR_POS_DATA => 16;
  15         18  
  15         620  
165 15     15   76 use constant EGTS_SR_EXT_POS_DATA => 17;
  15         21  
  15         547  
166 15     15   59 use constant EGTS_SR_AD_SENSORS_DATA => 18;
  15         27  
  15         550  
167 15     15   68 use constant EGTS_SR_COUNTERS_DATA => 19;
  15         19  
  15         526  
168 15     15   62 use constant EGTS_SR_STATE_DATA => 20;
  15         17  
  15         552  
169 15     15   62 use constant EGTS_SR_LOOPIN_DATA => 22;
  15         17  
  15         578  
170 15     15   62 use constant EGTS_SR_ABS_DIG_SENS_DATA => 23;
  15         30  
  15         569  
171 15     15   69 use constant EGTS_SR_ABS_AN_SENS_DATA => 24;
  15         28  
  15         528  
172 15     15   56 use constant EGTS_SR_ABS_CNTR_DATA => 25;
  15         41  
  15         567  
173 15     15   69 use constant EGTS_SR_ABS_LOOPIN_DATA => 26;
  15         17  
  15         545  
174 15     15   62 use constant EGTS_SR_LIQUID_LEVEL_SENSOR => 27;
  15         16  
  15         505  
175 15     15   57 use constant EGTS_SR_PASSENGERS_COUNTERS => 28;
  15         29  
  15         1089  
176             push @EXPORT, qw(
177             EGTS_SR_RECORD_RESPONSE
178              
179             EGTS_SR_TERM_IDENTITY
180             EGTS_SR_MODULE_DATA
181             EGTS_SR_VEHICLE_DATA
182             EGTS_SR_DISPATCHER_IDENTITY
183             EGTS_SR_AUTH_PARAMS
184             EGTS_SR_AUTH_INFO
185             EGTS_SR_SERVICE_INFO
186             EGTS_SR_RESULT_CODE
187              
188             EGTS_SR_POS_DATA
189             EGTS_SR_EXT_POS_DATA
190             EGTS_SR_AD_SENSORS_DATA
191             EGTS_SR_COUNTERS_DATA
192             EGTS_SR_STATE_DATA
193             EGTS_SR_LOOPIN_DATA
194             EGTS_SR_ABS_DIG_SENS_DATA
195             EGTS_SR_ABS_AN_SENS_DATA
196             EGTS_SR_ABS_CNTR_DATA
197             EGTS_SR_ABS_LOOPIN_DATA
198             EGTS_SR_LIQUID_LEVEL_SENSOR
199             EGTS_SR_PASSENGERS_COUNTERS
200             );
201              
202             __PACKAGE__->meta->make_immutable();