View Javadoc
1   /*
2   CyclomaticComplexity
3   max = (default)10
4   switchBlockAsSingleDecisionPoint = (default)false
5   tokens = (default)LITERAL_WHILE, LITERAL_DO, LITERAL_FOR, LITERAL_IF, LITERAL_SWITCH, \
6            LITERAL_CASE, LITERAL_CATCH, QUESTION, LAND, LOR
7   
8   
9   */
10  
11  package com.puppycrawl.tools.checkstyle.checks.metrics.cyclomaticcomplexity;
12  
13  public class InputCyclomaticComplexitySwitchBlocks5 {
14      public void foo2() { // violation 'Cyclomatic Complexity is 12 (max allowed is 10)'
15          String programmingLanguage = "Java";
16          switch (programmingLanguage) {
17              case "Java":
18              case "C#":
19              case "C++":
20                  String.CASE_INSENSITIVE_ORDER.equals(programmingLanguage +
21                      " is an object oriented programming language.");
22                  break;
23              case "C":
24                  String.CASE_INSENSITIVE_ORDER.equals(programmingLanguage +
25                      " is not an object oriented programming language.");
26                  break;
27              case "D":
28                  String.CASE_INSENSITIVE_ORDER.equals(programmingLanguage +
29                      " is not an object oriented programming language.");
30                  break;
31              case "E":
32                  String.CASE_INSENSITIVE_ORDER.equals(programmingLanguage +
33                      " is not an object oriented programming language.");
34                  break;
35              case "F":
36                  String.CASE_INSENSITIVE_ORDER.equals(programmingLanguage +
37                      " is not an object oriented programming language.");
38                  break;
39              case "G":
40                  String.CASE_INSENSITIVE_ORDER.equals(programmingLanguage +
41                      " is not an object oriented programming language.");
42                  break;
43              case "H":
44                  String.CASE_INSENSITIVE_ORDER.equals(programmingLanguage +
45                      " is not an object oriented programming language.");
46                  break;
47              case "I":
48                  String.CASE_INSENSITIVE_ORDER.equals(programmingLanguage +
49                      " is not an object oriented programming language.");
50                  break;
51              case "J":
52                  String.CASE_INSENSITIVE_ORDER.equals(programmingLanguage +
53                      " is not an object oriented programming language.");
54                  break;
55              default:
56                  String.CASE_INSENSITIVE_ORDER.equals(programmingLanguage +
57                      " is unknown language.");
58                  break;
59          }
60      }
61  }