throw new ParseException(String.format("Regex patterns can only be used on fields which can be converted to a string. Field \"%s\" of type \"%s\" cannot be converted.", left, ((LogEntryField) left).getType()));
222
+
}
223
+
}
224
+
205
225
|
206
226
op = NumericOperator()
207
227
{
skipped 118 lines
326
346
|
327
347
v = Boolean()
328
348
|
329
-
LOOKAHEAD(2)v = String()
349
+
v = String()
330
350
|
331
351
v = RegexInForwardSlashes()
332
-
|
333
-
v = RegexInString()
334
352
)
335
353
{return v;}
336
354
}
skipped 32 lines
369
387
{
370
388
fieldGroup = FieldGroup.findByLabel(group.image);
371
389
if(fieldGroup == null)
372
-
throw new ParseException(String.format("Invalid field group \"%s\". Valid groups are:%s", group.image, Arrays.toString(FieldGroup.values())));
390
+
throw new ParseException(String.format("Invalid field group \"%s\". Valid groups are:\n%s", group.image, Arrays.toString(FieldGroup.values())));
373
391
}
374
392
<DOT>
375
393
identifier=<IDENTIFIER>
376
394
{
377
395
field = LogEntryField.getByLabel(fieldGroup, identifier.image);
378
-
if(field == null)
379
-
throw new ParseException(String.format("Invalid field \"%s\". Valid fields for group \"%s\" are: %s", identifier.image, fieldGroup, LogEntryField.getFieldsInGroup(fieldGroup).values()));
396
+
if(field == null){
397
+
StringBuilder fieldMessage = new StringBuilder();
398
+
ArrayList<LogEntryField> fields = new ArrayList<LogEntryField>(getFieldsInGroup(FieldGroup.REQUEST));
throw new ParseException(String.format("Regex patterns can only be used on fields which can be converted to a string. Field \"%s\" of type \"%s\" cannot be converted.", left, ((LogEntryField) left).getType()));
181
+
}
182
+
}
183
+
164
184
|
165
185
op = NumericOperator()
166
186
{
skipped 76 lines
243
263
|
244
264
v = Boolean()
245
265
|
246
-
LOOKAHEAD(2)v = String()
266
+
v = String()
247
267
|
248
268
v = RegexInForwardSlashes()
249
-
|
250
-
v = RegexInString()
251
269
)
252
270
{return v;}
253
271
}
skipped 32 lines
286
304
{
287
305
fieldGroup = FieldGroup.findByLabel(group.image);
288
306
if(fieldGroup == null)
289
-
throw new ParseException(String.format("Invalid field group \"%s\". Valid groups are:%s", group.image, Arrays.toString(FieldGroup.values())));
307
+
throw new ParseException(String.format("Invalid field group \"%s\". Valid groups are:\n%s", group.image, Arrays.toString(FieldGroup.values())));
290
308
}
291
309
<DOT>
292
310
identifier=<IDENTIFIER>
293
311
{
294
312
field = LogEntryField.getByLabel(fieldGroup, identifier.image);
295
-
if(field == null)
296
-
throw new ParseException(String.format("Invalid field \"%s\". Valid fields for group \"%s\" are: %s", identifier.image, fieldGroup, LogEntryField.getFieldsInGroup(fieldGroup).values()));
313
+
if(field == null){
314
+
StringBuilder fieldMessage = new StringBuilder();
315
+
ArrayList<LogEntryField> fields = new ArrayList<LogEntryField>(getFieldsInGroup(FieldGroup.REQUEST));
{if (true) throw new ParseException(String.format("Numeric operators cannot be used for field \"%s\" of type \"%s\"", left, ((LogEntryField) left).getType()));}
229
-
}
230
230
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
231
-
case NUMBER:{
232
-
right = Number();
231
+
case EQ:
232
+
case NEQ:{
233
+
op = EqualityOperator();
234
+
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
235
+
case BOOLEAN:
236
+
case NUMBER:
237
+
case REGEXLITERAL_IN_FORWARD_SLASHES:
238
+
case REGEX_IN_FORWARD_SLASHES:
239
+
case INVERSE:
240
+
case IDENTIFIER:
241
+
case OPEN_SINGLE_QUOTE_STRING:
242
+
case OPEN_DOUBLE_QUOTE_STRING:{
243
+
right = Value();
244
+
break;
245
+
}
246
+
default:
247
+
jj_la1[7] = jj_gen;
248
+
{if (true) throw new ParseException("Invalid right hand value for comparison \"" + op + "\"");}
{if (true) throw new ParseException(String.format("Regex patterns can only be used on fields which can be converted to a string. Field \"%s\" of type \"%s\" cannot be converted.", left, ((LogEntryField) left).getType()));}
{if (true) throw new ParseException(String.format("Numeric operators cannot be used for field \"%s\" of type \"%s\"", left, ((LogEntryField) left).getType()));}
{if (true) throw new ParseException(String.format("Numeric operators cannot be used for field \"%s\" of type \"%s\"", right, ((LogEntryField) right).getType()));}
239
272
}
240
-
break;
241
-
}
242
-
default:
243
-
jj_la1[7] = jj_gen;
273
+
break;
274
+
}
275
+
default:
276
+
jj_la1[8] = jj_gen;
244
277
{if (true) throw new ParseException("Invalid right hand value for comparison \"" + op + "\"");}
245
-
}
246
-
break;
247
-
}
248
-
case CONTAINS:{
249
-
op = ContainsOperator();
250
-
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
251
-
case SINGLEQUOTEDSTRING:
252
-
case DOUBLEQUOTEDSTRING:{
253
-
right = String();
254
-
break;
255
278
}
256
-
case NUMBER:{
257
-
right = Number();
258
279
break;
259
280
}
260
-
case IDENTIFIER:{
261
-
right = Identifier();
262
-
break;
281
+
case CONTAINS:{
282
+
op = ContainsOperator();
283
+
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
284
+
case OPEN_SINGLE_QUOTE_STRING:
285
+
case OPEN_DOUBLE_QUOTE_STRING:{
286
+
right = String();
287
+
break;
288
+
}
289
+
case NUMBER:{
290
+
right = Number();
291
+
break;
292
+
}
293
+
case IDENTIFIER:{
294
+
right = Identifier();
295
+
break;
296
+
}
297
+
default:
298
+
jj_la1[9] = jj_gen;
299
+
{if (true) throw new ParseException("The contains operator can only be used on string and numeric values and identifiers.");}
263
300
}
264
-
default:
265
-
jj_la1[8] = jj_gen;
266
-
{if (true) throw new ParseException("The contains operator can only be used on string and numeric values and identifiers.");}
267
-
}
268
-
break;
269
-
}
270
-
case IN:{
271
-
op = InOperator();
272
-
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
273
-
case ARRAY_START:{
274
-
right = Array();
275
301
break;
276
302
}
277
-
default:
278
-
jj_la1[9] = jj_gen;
303
+
case IN:{
304
+
op = InOperator();
305
+
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
306
+
case ARRAY_START:{
307
+
right = Array();
308
+
break;
309
+
}
310
+
default:
311
+
jj_la1[10] = jj_gen;
279
312
{if (true) throw new ParseException("The in operator must be used on an array. E.g. \"Response.status IN [200, 302, 500]\"");}
280
-
}
281
-
break;
282
-
}
283
-
case MATCHES:{
284
-
op = MatchesOperator();
285
-
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
286
-
case SINGLEQUOTEDSTRING:
287
-
case DOUBLEQUOTEDSTRING:{
288
-
right = RegexInString();
313
+
}
289
314
break;
290
315
}
291
-
case REGEXLITERAL_IN_FORWARD_SLASHES:
292
-
case REGEX_IN_FORWARD_SLASHES:{
293
-
right = RegexInForwardSlashes();
316
+
case MATCHES:{
317
+
op = MatchesOperator();
318
+
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
319
+
case OPEN_SINGLE_QUOTE_STRING:
320
+
case OPEN_DOUBLE_QUOTE_STRING:{
321
+
right = RegexInString();
322
+
break;
323
+
}
324
+
case REGEXLITERAL_IN_FORWARD_SLASHES:
325
+
case REGEX_IN_FORWARD_SLASHES:{
326
+
right = RegexInForwardSlashes();
327
+
break;
328
+
}
329
+
default:
330
+
jj_la1[11] = jj_gen;
331
+
{if (true) throw new ParseException("The matches operator must have a pattern as its right hand value.");}
332
+
}
294
333
break;
295
334
}
296
335
default:
297
-
jj_la1[10] = jj_gen;
298
-
{if (true) throw new ParseException("The matches operator must have a pattern as its right hand value.");}
{if (true) throw new ParseException("Array elements must all be of the same type.");}
442
479
}
443
480
items.add(subsequent);
444
-
}
445
-
jj_consume_token(ARRAY_END);
481
+
}
482
+
jj_consume_token(ARRAY_END);
446
483
{if ("" != null) return items;}
447
484
throw new Error("Missing return statement in function");
485
+
} finally {
486
+
trace_return("Array");
487
+
}
448
488
}
449
489
450
490
//IDENTIFIERS
451
-
final public LogEntryField Identifier() throws ParseException {Tokengroup,identifier;
491
+
final public LogEntryField Identifier() throws ParseException { try{
492
+
Token group, identifier;
452
493
FieldGroup fieldGroup;
453
494
LogEntryField field;
454
-
group = jj_consume_token(IDENTIFIER);
495
+
group = jj_consume_token(IDENTIFIER);
455
496
fieldGroup = FieldGroup.findByLabel(group.image);
456
497
if(fieldGroup == null)
457
-
{if (true) throw new ParseException(String.format("Invalid field group \"%s\". Valid groups are:%s", group.image, Arrays.toString(FieldGroup.values())));}
458
-
jj_consume_token(DOT);
459
-
identifier = jj_consume_token(IDENTIFIER);
498
+
{if (true) throw new ParseException(String.format("Invalid field group \"%s\". Valid groups are:\n%s", group.image, Arrays.toString(FieldGroup.values())));}
499
+
jj_consume_token(DOT);
500
+
identifier = jj_consume_token(IDENTIFIER);
460
501
field = LogEntryField.getByLabel(fieldGroup, identifier.image);
461
-
if(field == null)
462
-
{if (true) throw new ParseException(String.format("Invalid field \"%s\". Valid fields for group \"%s\" are: %s", identifier.image, fieldGroup, LogEntryField.getFieldsInGroup(fieldGroup).values()));}
502
+
if(field == null){
503
+
StringBuilder fieldMessage = new StringBuilder();
504
+
ArrayList<LogEntryField> fields = new ArrayList<LogEntryField>(getFieldsInGroup(FieldGroup.REQUEST));
{if (true) throw new ParseException(String.format("Invalid field \"%s\". Valid fields for group \"%s\" are:\n%s", identifier.image, fieldGroup, fieldMessage));}
511
+
}
463
512
if(field == LogEntryField.NUMBER)
464
513
{if (true) throw new ParseException("Field " + LogEntryField.NUMBER + " is ephemeral and cannot be used in filters.");}
465
514
{if ("" != null) return field;}
466
515
throw new Error("Missing return statement in function");
throw new Error("Missing return statement in function");
739
+
} finally {
740
+
trace_return("NumericOperator");
741
+
}
606
742
}
607
743
608
-
final public Operator ContainsOperator() throws ParseException {
609
-
jj_consume_token(CONTAINS);
744
+
final public Operator ContainsOperator() throws ParseException {try{
745
+
746
+
jj_consume_token(CONTAINS);
610
747
{if ("" != null) return Operator.CONTAINS;}
611
748
throw new Error("Missing return statement in function");
749
+
} finally {
750
+
trace_return("ContainsOperator");
751
+
}
612
752
}
613
753
614
-
final public Operator MatchesOperator() throws ParseException {
615
-
jj_consume_token(MATCHES);
754
+
final public Operator MatchesOperator() throws ParseException {try{
755
+
756
+
jj_consume_token(MATCHES);
616
757
{if ("" != null) return Operator.MATCHES;}
617
758
throw new Error("Missing return statement in function");
759
+
} finally {
760
+
trace_return("MatchesOperator");
761
+
}
618
762
}
619
763
620
-
final public Operator InOperator() throws ParseException {
621
-
jj_consume_token(IN);
764
+
final public Operator InOperator() throws ParseException {try{
765
+
766
+
jj_consume_token(IN);
622
767
{if ("" != null) return Operator.IN;}
623
768
throw new Error("Missing return statement in function");
769
+
} finally {
770
+
trace_return("InOperator");
771
+
}
624
772
}
625
773
626
-
final public boolean Inverse() throws ParseException {
627
-
jj_consume_token(INVERSE);
774
+
final public boolean Inverse() throws ParseException {try{
775
+
776
+
jj_consume_token(INVERSE);
628
777
{if ("" != null) return true;}
629
778
throw new Error("Missing return statement in function");
779
+
} finally {
780
+
trace_return("Inverse");
781
+
}
630
782
}
631
783
632
-
final public BooleanOperator And() throws ParseException {
633
-
jj_consume_token(AND);
784
+
final public BooleanOperator And() throws ParseException {try{
785
+
786
+
jj_consume_token(AND);
634
787
{if ("" != null) return BooleanOperator.AND;}
635
788
throw new Error("Missing return statement in function");
789
+
} finally {
790
+
trace_return("And");
791
+
}
636
792
}
637
793
638
-
final public BooleanOperator Or() throws ParseException {
639
-
jj_consume_token(OR);
794
+
final public BooleanOperator Or() throws ParseException {try{
795
+
796
+
jj_consume_token(OR);
640
797
{if ("" != null) return BooleanOperator.OR;}
641
798
throw new Error("Missing return statement in function");
799
+
} finally {
800
+
trace_return("Or");
801
+
}
642
802
}
643
803
644
-
final public BooleanOperator Xor() throws ParseException {
645
-
jj_consume_token(XOR);
804
+
final public BooleanOperator Xor() throws ParseException {try{
805
+
806
+
jj_consume_token(XOR);
646
807
{if ("" != null) return BooleanOperator.XOR;}
647
808
throw new Error("Missing return statement in function");
809
+
} finally {
810
+
trace_return("Xor");
811
+
}
648
812
}
649
813
650
814
private boolean jj_2_1(int xla)
skipped 20 lines
671
835
finally { jj_save(2, xla); }
672
836
}
673
837
674
-
private boolean jj_2_4(intxla)
675
-
{
676
-
jj_la = xla; jj_lastpos = jj_scanpos = token;
677
-
try { return (!jj_3_4()); }
678
-
catch(LookaheadSuccess ls) { return true; }
679
-
finally { jj_save(3, xla); }
680
-
}
681
-
682
-
private boolean jj_2_5(int xla)
683
-
{
684
-
jj_la = xla; jj_lastpos = jj_scanpos = token;
685
-
try { return (!jj_3_5()); }
686
-
catch(LookaheadSuccess ls) { return true; }
687
-
finally { jj_save(4, xla); }
688
-
}
689
-
690
-
private boolean jj_3R_43()
691
-
{
692
-
if (jj_scan_token(LEQ)) return true;
693
-
return false;
694
-
}
695
-
696
-
private boolean jj_3R_42()
697
-
{
698
-
if (jj_scan_token(GEQ)) return true;
699
-
return false;
700
-
}
701
-
702
-
private boolean jj_3R_41()
703
-
{
704
-
if (jj_scan_token(LT)) return true;
705
-
return false;
706
-
}
707
-
708
-
private boolean jj_3R_40()
709
-
{
710
-
if (jj_scan_token(GT)) return true;
711
-
return false;
712
-
}
713
-
714
-
private boolean jj_3R_34()
715
-
{
716
-
Token xsp;
717
-
xsp = jj_scanpos;
718
-
if (jj_3R_40()) {
719
-
jj_scanpos = xsp;
720
-
if (jj_3R_41()) {
721
-
jj_scanpos = xsp;
722
-
if (jj_3R_42()) {
723
-
jj_scanpos = xsp;
724
-
if (jj_3R_43()) return true;
725
-
}
726
-
}
727
-
}
728
-
return false;
729
-
}
730
-
731
-
private boolean jj_3R_6()
838
+
private boolean jj_3R_13()
732
839
{
733
-
if (jj_3R_15()) return true;
840
+
if (jj_scan_token(OR)) return true;
734
841
return false;
735
842
}
736
843
737
-
private boolean jj_3R_39()
844
+
private boolean jj_3R_27()
738
845
{
739
-
if (jj_scan_token(NEQ)) return true;
846
+
if (jj_3R_33()) return true;
740
847
return false;
741
848
}
742
849
743
-
private boolean jj_3R_38()
850
+
private boolean jj_3R_12()
744
851
{
745
-
if (jj_scan_token(EQ)) return true;
852
+
if (jj_scan_token(AND)) return true;
746
853
return false;
747
854
}
748
855
749
-
private boolean jj_3R_33()
750
-
{
751
-
Token xsp;
752
-
xsp = jj_scanpos;
753
-
if (jj_3R_38()) {
754
-
jj_scanpos = xsp;
755
-
if (jj_3R_39()) return true;
756
-
}
757
-
return false;
758
-
}
759
-
760
-
private boolean jj_3R_28()
761
-
{
762
-
if (jj_3R_34()) return true;
763
-
return false;
764
-
}
765
-
766
-
private boolean jj_3R_27()
856
+
private boolean jj_3R_11()
767
857
{
768
-
if (jj_3R_33()) return true;
858
+
if (jj_3R_14()) return true;
769
859
return false;
770
860
}
771
861
772
-
private boolean jj_3R_12()
862
+
private boolean jj_3R_5()
773
863
{
774
-
if (jj_3R_15()) return true;
864
+
if (jj_3R_13()) return true;
775
865
return false;
776
866
}
777
867
778
-
private boolean jj_3R_5()
868
+
private boolean jj_3R_25()
779
869
{
780
-
if (jj_3R_14()) return true;
870
+
if (jj_3R_8()) return true;
781
871
return false;
782
872
}
783
873
784
-
private boolean jj_3_3()
874
+
private boolean jj_3R_22()
785
875
{
786
-
if (jj_3R_8()) return true;
876
+
if (jj_scan_token(INVERSE)) return true;
787
877
return false;
788
878
}
789
879
790
-
private boolean jj_3R_25()
880
+
private boolean jj_3R_24()
791
881
{
792
882
Token xsp;
793
883
xsp = jj_scanpos;
794
-
if (jj_3_3()) {
884
+
if (jj_3R_25()) {
795
885
jj_scanpos = xsp;
796
886
if (jj_3R_26()) return true;
797
887
}
skipped 17 lines
815
905
return false;
816
906
}
817
907
818
-
private boolean jj_3_5()
908
+
private boolean jj_3_3()
819
909
{
820
-
if (jj_3R_9()) return true;
910
+
if (jj_3R_8()) return true;
821
911
return false;
822
912
}
823
913
824
-
private boolean jj_3R_11()
914
+
private boolean jj_3R_36()
825
915
{
826
-
if (jj_3R_14()) return true;
916
+
if (jj_scan_token(IN)) return true;
827
917
return false;
828
918
}
829
919
830
-
private boolean jj_3R_17()
920
+
private boolean jj_3R_16()
831
921
{
832
-
if (jj_3R_19()) return true;
922
+
if (jj_3R_18()) return true;
833
923
return false;
834
924
}
835
925
836
-
private boolean jj_3_4()
926
+
private boolean jj_3R_10()
837
927
{
838
-
if (jj_3R_8()) return true;
928
+
if (jj_3R_13()) return true;
929
+
return false;
930
+
}
931
+
932
+
private boolean jj_3R_37()
933
+
{
934
+
if (jj_scan_token(MATCHES)) return true;
839
935
return false;
840
936
}
841
937
842
938
private boolean jj_3R_4()
843
939
{
844
-
if (jj_3R_13()) return true;
940
+
if (jj_3R_12()) return true;
941
+
return false;
942
+
}
943
+
944
+
private boolean jj_3R_23()
945
+
{
946
+
if (jj_scan_token(ALIAS_SYMBOL)) return true;
947
+
return false;
948
+
}
949
+
950
+
private boolean jj_3R_35()
951
+
{
952
+
if (jj_scan_token(CONTAINS)) return true;
845
953
return false;
846
954
}
847
955
skipped 12 lines
860
968
return false;
861
969
}
862
970
863
-
private boolean jj_3R_10()
971
+
private boolean jj_3R_9()
864
972
{
865
-
if (jj_3R_13()) return true;
973
+
if (jj_3R_12()) return true;
866
974
return false;
867
975
}
868
976
869
-
private boolean jj_3R_22()
977
+
private boolean jj_3R_21()
870
978
{
871
-
if (jj_3R_25()) return true;
979
+
if (jj_3R_24()) return true;
872
980
return false;
873
981
}
874
982
skipped 1 lines
876
984
{
877
985
Token xsp;
878
986
xsp = jj_scanpos;
879
-
if (jj_3R_10()) {
987
+
if (jj_3R_9()) {
880
988
jj_scanpos = xsp;
881
-
if (jj_3R_11()) {
989
+
if (jj_3R_10()) {
882
990
jj_scanpos = xsp;
883
-
if (jj_3R_12()) return true;
991
+
if (jj_3R_11()) return true;
884
992
}
885
993
}
886
994
if (jj_3R_7()) return true;
887
995
return false;
888
996
}
889
997
890
-
private boolean jj_3R_24()
998
+
private boolean jj_3R_43()
891
999
{
892
-
if (jj_scan_token(ALIAS_SYMBOL)) return true;
1000
+
if (jj_scan_token(LEQ)) return true;
893
1001
return false;
894
1002
}
895
1003
896
-
private boolean jj_3R_15()
1004
+
private boolean jj_3R_42()
897
1005
{
898
-
if (jj_scan_token(XOR)) return true;
1006
+
if (jj_scan_token(GEQ)) return true;
899
1007
return false;
900
1008
}
901
1009
902
-
private boolean jj_3R_9()
1010
+
private boolean jj_3R_41()
1011
+
{
1012
+
if (jj_scan_token(LT)) return true;
1013
+
return false;
1014
+
}
1015
+
1016
+
private boolean jj_3R_40()
1017
+
{
1018
+
if (jj_scan_token(GT)) return true;
1019
+
return false;
1020
+
}
1021
+
1022
+
private boolean jj_3R_34()
903
1023
{
904
1024
Token xsp;
905
1025
xsp = jj_scanpos;
906
-
if (jj_scan_token(14)) {
1026
+
if (jj_3R_40()) {
907
1027
jj_scanpos = xsp;
908
-
if (jj_scan_token(15)) return true;
1028
+
if (jj_3R_41()) {
1029
+
jj_scanpos = xsp;
1030
+
if (jj_3R_42()) {
1031
+
jj_scanpos = xsp;
1032
+
if (jj_3R_43()) return true;
1033
+
}
1034
+
}
909
1035
}
910
1036
return false;
911
1037
}
912
1038
913
-
private boolean jj_3R_19()
1039
+
private boolean jj_3R_18()
914
1040
{
915
1041
Token xsp;
916
1042
xsp = jj_scanpos;
917
-
if (jj_3R_21()) {
1043
+
if (jj_3R_20()) {
918
1044
jj_scanpos = xsp;
919
-
if (jj_3R_22()) return true;
1045
+
if (jj_3R_21()) return true;
920
1046
}
921
1047
return false;
922
1048
}
923
1049
924
-
private boolean jj_3R_21()
1050
+
private boolean jj_3R_20()
1051
+
{
1052
+
if (jj_3R_23()) return true;
1053
+
return false;
1054
+
}
1055
+
1056
+
private boolean jj_3R_39()
925
1057
{
926
-
if (jj_3R_24()) return true;
1058
+
if (jj_scan_token(NEQ)) return true;
927
1059
return false;
928
1060
}
929
1061
930
-
private boolean jj_3R_14()
1062
+
private boolean jj_3R_38()
931
1063
{
932
-
if (jj_scan_token(OR)) return true;
1064
+
if (jj_scan_token(EQ)) return true;
933
1065
return false;
934
1066
}
935
1067
936
-
private boolean jj_3R_7()
1068
+
private boolean jj_3R_33()
937
1069
{
938
1070
Token xsp;
939
1071
xsp = jj_scanpos;
940
-
if (jj_3R_16()) {
1072
+
if (jj_3R_38()) {
941
1073
jj_scanpos = xsp;
942
-
if (jj_3R_17()) return true;
1074
+
if (jj_3R_39()) return true;
943
1075
}
944
1076
return false;
945
1077
}
946
1078
947
-
private boolean jj_3R_16()
1079
+
private boolean jj_3R_32()
948
1080
{
949
-
if (jj_3R_18()) return true;
950
1081
return false;
951
1082
}
952
1083
953
-
private boolean jj_3_1()
1084
+
private boolean jj_3R_15()
954
1085
{
955
-
if (jj_3R_3()) return true;
1086
+
if (jj_3R_17()) return true;
956
1087
return false;
957
1088
}
958
1089
959
-
private boolean jj_3R_32()
1090
+
private boolean jj_3R_7()
960
1091
{
1092
+
Token xsp;
1093
+
xsp = jj_scanpos;
1094
+
if (jj_3R_15()) {
1095
+
jj_scanpos = xsp;
1096
+
if (jj_3R_16()) return true;
1097
+
}
961
1098
return false;
962
1099
}
963
1100
964
-
private boolean jj_3R_13()
1101
+
private boolean jj_3_1()
965
1102
{
966
-
if (jj_scan_token(AND)) return true;
1103
+
if (jj_3R_3()) return true;
967
1104
return false;
968
1105
}
969
1106
970
-
private boolean jj_3R_20()
1107
+
private boolean jj_3R_19()
971
1108
{
972
-
if (jj_3R_23()) return true;
1109
+
if (jj_3R_22()) return true;
973
1110
return false;
974
1111
}
975
1112
976
-
private boolean jj_3R_18()
1113
+
private boolean jj_3R_17()
977
1114
{
978
1115
Token xsp;
979
1116
xsp = jj_scanpos;
980
-
if (jj_3R_20()) jj_scanpos = xsp;
1117
+
if (jj_3R_19()) jj_scanpos = xsp;
981
1118
if (jj_scan_token(LPAREN)) return true;
982
1119
return false;
983
1120
}
984
1121
985
-
private boolean jj_3R_23()
986
-
{
987
-
if (jj_scan_token(INVERSE)) return true;
988
-
return false;
989
-
}
990
-
991
1122
private boolean jj_3R_31()
992
1123
{
993
1124
if (jj_3R_37()) return true;
994
1125
return false;
995
1126
}
996
1127
997
-
private boolean jj_3R_36()
1128
+
private boolean jj_3R_30()
998
1129
{
999
-
if (jj_scan_token(IN)) return true;
1130
+
if (jj_3R_36()) return true;
1000
1131
return false;
1001
1132
}
1002
1133
1003
-
private boolean jj_3R_30()
1134
+
private boolean jj_3R_29()
1004
1135
{
1005
-
if (jj_3R_36()) return true;
1136
+
if (jj_3R_35()) return true;
1006
1137
return false;
1007
1138
}
1008
1139
1009
-
private boolean jj_3R_37()
1140
+
private boolean jj_3R_8()
1010
1141
{
1011
-
if (jj_scan_token(MATCHES)) return true;
1142
+
if (jj_scan_token(IDENTIFIER)) return true;
1143
+
if (jj_scan_token(DOT)) return true;
1012
1144
return false;
1013
1145
}
1014
1146
skipped 2 lines
1017
1149
return false;
1018
1150
}
1019
1151
1020
-
private boolean jj_3R_8()
1152
+
private boolean jj_3R_6()
1021
1153
{
1022
-
if (jj_scan_token(IDENTIFIER)) return true;
1023
-
if (jj_scan_token(DOT)) return true;
1024
-
if (jj_scan_token(IDENTIFIER)) return true;
1154
+
if (jj_3R_14()) return true;
1025
1155
return false;
1026
1156
}
1027
1157
1028
-
private boolean jj_3R_35()
1158
+
private boolean jj_3R_28()
1029
1159
{
1030
-
if (jj_scan_token(CONTAINS)) return true;
1160
+
if (jj_3R_34()) return true;
1031
1161
return false;
1032
1162
}
1033
1163
1034
-
private boolean jj_3R_29()
1164
+
private boolean jj_3R_14()
1035
1165
{
1036
-
if (jj_3R_35()) return true;
1166
+
if (jj_scan_token(XOR)) return true;
1037
1167
return false;
1038
1168
}
1039
1169
skipped 8 lines
1048
1178
private Token jj_scanpos, jj_lastpos;
1049
1179
private int jj_la;
1050
1180
private int jj_gen;
1051
-
final private int[] jj_la1 = new int[23];
1181
+
final private int[] jj_la1 = new int[29];
1052
1182
static private int[] jj_la1_0;
1183
+
static private int[] jj_la1_1;
1053
1184
static {
1054
1185
jj_la1_init_0();
1186
+
jj_la1_init_1();
1055
1187
}
1056
1188
private static void jj_la1_init_0() {
1057
-
jj_la1_0 = new int[] {0x800000,0x400000,0xa00000,0x20000000,0x700,0x700,0x28de000,0x2010000,0x201c000,0x4000000,0xcc000,0x1018fc,0x812000,0xcc000,0x1c000,0x10000000,0x1c000,0xc000,0xc000,0xc0000,0x800000,0xc,0xf0,};
1189
+
jj_la1_0 = new int[] {0x200000,0x100000,0x280000,0x8000000,0x700,0x700,0x800000,0x30a36000,0x804000,0x30804000,0x1000000,0x30030000,0x418fc,0x30236000,0x30004000,0x4000000,0x30004000,0x40000000,0x80000000,0x0,0x0,0x30000000,0x80000000,0x0,0x30000000,0x30000,0x200000,0xc,0xf0,};
1190
+
}
1191
+
private static void jj_la1_init_1() {
1192
+
jj_la1_1 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x2,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x0,};
1058
1193
}
1059
-
final private JJCalls[] jj_2_rtns = new JJCalls[5];
1194
+
final private JJCalls[] jj_2_rtns = new JJCalls[3];
1060
1195
private boolean jj_rescan = false;
1061
1196
private int jj_gc = 0;
1062
1197
1198
+
{
1199
+
enable_tracing();
1200
+
}
1063
1201
/** Constructor with InputStream. */
1064
1202
public FilterParser(java.io.InputStream stream) {
1065
1203
this(stream, null);
skipped 5 lines
1071
1209
token = new Token();
1072
1210
jj_ntk = -1;
1073
1211
jj_gen = 0;
1074
-
for (int i = 0; i < 23; i++) jj_la1[i] = -1;
1212
+
for (int i = 0; i < 29; i++) jj_la1[i] = -1;
1075
1213
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
1076
1214
}
1077
1215
skipped 9 lines
1087
1225
jj_ntk = -1;
1088
1226
jjtree.reset();
1089
1227
jj_gen = 0;
1090
-
for (int i = 0; i < 23; i++) jj_la1[i] = -1;
1228
+
for (int i = 0; i < 29; i++) jj_la1[i] = -1;
1091
1229
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
1092
1230
}
1093
1231
skipped 4 lines
1098
1236
token = new Token();
1099
1237
jj_ntk = -1;
1100
1238
jj_gen = 0;
1101
-
for (int i = 0; i < 23; i++) jj_la1[i] = -1;
1239
+
for (int i = 0; i < 29; i++) jj_la1[i] = -1;
1102
1240
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
1103
1241
}
1104
1242
skipped 13 lines
1118
1256
jj_ntk = -1;
1119
1257
jjtree.reset();
1120
1258
jj_gen = 0;
1121
-
for (int i = 0; i < 23; i++) jj_la1[i] = -1;
1259
+
for (int i = 0; i < 29; i++) jj_la1[i] = -1;
1122
1260
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
1123
1261
}
1124
1262
skipped 3 lines
1128
1266
token = new Token();
1129
1267
jj_ntk = -1;
1130
1268
jj_gen = 0;
1131
-
for (int i = 0; i < 23; i++) jj_la1[i] = -1;
1269
+
for (int i = 0; i < 29; i++) jj_la1[i] = -1;
1132
1270
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
1133
1271
}
1134
1272
skipped 4 lines
1139
1277
jj_ntk = -1;
1140
1278
jjtree.reset();
1141
1279
jj_gen = 0;
1142
-
for (int i = 0; i < 23; i++) jj_la1[i] = -1;
1280
+
for (int i = 0; i < 29; i++) jj_la1[i] = -1;
1143
1281
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
JOptionPane.showMessageDialog(BurpExtender.instance.getUiComponent(), "Alias names may only contain alphanumeric characters and the symbols period (.) and underscore (_)\n" +
71
+
"Invalid characters have been replaced with an underscore.", "Alias Error", JOptionPane.WARNING_MESSAGE);