### PMD report

### Problems found

# | File | Line | Problem
--- | --- | --- | ---
1 | src/com/wjholden/nmap/NmapConstants.java | 12 | An Interface should be used only to model a behaviour; consider converting this to a class.
2 | src/com/wjholden/nmap/NmapConstants.java | 68 | Avoid excessively long variable names like MENU_ITEM_DEBUG_ENABLE
3 | src/com/wjholden/nmap/NmapConstants.java | 73 | Avoid excessively long variable names like MENU_ITEM_DEBUG_EMAIL
4 | src/com/wjholden/nmap/NmapConstants.java | 78 | Avoid excessively long variable names like MENU_ITEM_MORE_HELP
5 | src/com/wjholden/nmap/NmapConstants.java | 83 | Avoid excessively long variable names like MENU_ITEM_REINSTALL
6 | src/com/wjholden/nmap/NmapConstants.java | 91 | Avoid excessively long variable names like MENU_GROUP_EXTRA_OPTIONS
7 | src/com/wjholden/nmap/NmapInstall.java | 33 | Found non-transient, non-static member. Please mark as transient or provide accessors.
8 | src/com/wjholden/nmap/NmapInstall.java | 41 | Found non-transient, non-static member. Please mark as transient or provide accessors.
9 | src/com/wjholden/nmap/NmapInstall.java | 49 | Found non-transient, non-static member. Please mark as transient or provide accessors.
10 | src/com/wjholden/nmap/NmapInstall.java | 69 | Local variable 'msg' could be declared final
11 | src/com/wjholden/nmap/NmapInstall.java | 73 | A method should have only one exit point, and that should be the last statement in the method
12 | src/com/wjholden/nmap/NmapInstall.java | 94 | Local variable 'msg' could be declared final
13 | src/com/wjholden/nmap/NmapInstall.java | 99 | Local variable 'msg' could be declared final
14 | src/com/wjholden/nmap/NmapInstall.java | 132 | Local variable 'buf' could be declared final
15 | src/com/wjholden/nmap/NmapInstall.java | 135 | Local variable 'in_nmap_a' could be declared final
16 | src/com/wjholden/nmap/NmapInstall.java | 195 | Avoid excessively long variable names like installationResults
17 | src/com/wjholden/nmap/NmapInstall.java | 200 | Avoid variables with short names like os
18 | src/com/wjholden/nmap/NmapInstall.java | 201 | Avoid variables with short names like in
19 | src/com/wjholden/nmap/NmapInstall.java | 240 | Avoid assignments in operands
20 | src/com/wjholden/nmap/NmapInstall.java | 240 | Found 'DU'-anomaly for variable 'input' (lines '240'-'265').
21 | src/com/wjholden/nmap/NmapInstall.java | 244 | Avoid assignments in operands
22 | src/com/wjholden/nmap/NmapInstall.java | 244 | Found 'DU'-anomaly for variable 'error' (lines '244'-'265').
23 | src/com/wjholden/nmap/NmapMain.java | 1 | A high number of imports can indicate a high degree of coupling within an object.
24 | src/com/wjholden/nmap/NmapMain.java | 43 | The class 'NmapMain' has a Cyclomatic Complexity of 5 (Highest = 20).
25 | src/com/wjholden/nmap/NmapMain.java | 43 | This class has too many methods, consider refactoring it.
26 | src/com/wjholden/nmap/NmapMain.java | 43 | Too many fields
27 | src/com/wjholden/nmap/NmapMain.java | 110 | Avoid variables with short names like sh
28 | src/com/wjholden/nmap/NmapMain.java | 125 | Found non-transient, non-static member. Please mark as transient or provide accessors.
29 | src/com/wjholden/nmap/NmapMain.java | 130 | Found non-transient, non-static member. Please mark as transient or provide accessors.
30 | src/com/wjholden/nmap/NmapMain.java | 142 | Avoid variables with short names like pd
31 | src/com/wjholden/nmap/NmapMain.java | 147 | Found non-transient, non-static member. Please mark as transient or provide accessors.
32 | src/com/wjholden/nmap/NmapMain.java | 152 | Found non-transient, non-static member. Please mark as transient or provide accessors.
33 | src/com/wjholden/nmap/NmapMain.java | 152 | Perhaps 'preferencesEditor' could be replaced by a local variable.
34 | src/com/wjholden/nmap/NmapMain.java | 166 | Avoid variables with short names like ne
35 | src/com/wjholden/nmap/NmapMain.java | 171 | Found non-transient, non-static member. Please mark as transient or provide accessors.
36 | src/com/wjholden/nmap/NmapMain.java | 171 | Perhaps 'wifiManager' could be replaced by a local variable.
37 | src/com/wjholden/nmap/NmapMain.java | 176 | Perhaps 'wifiInfo' could be replaced by a local variable.
38 | src/com/wjholden/nmap/NmapMain.java | 179 | Avoid excessively long variable names like savedInstanceState
39 | src/com/wjholden/nmap/NmapMain.java | 179 | Avoid really long methods.
40 | src/com/wjholden/nmap/NmapMain.java | 179 | Parameter 'savedInstanceState' is not assigned and could be declared final
41 | src/com/wjholden/nmap/NmapMain.java | 179 | The method 'onCreate' has a Cyclomatic Complexity of 20.
42 | src/com/wjholden/nmap/NmapMain.java | 179 | The method onCreate() has an NPath complexity of 900
43 | src/com/wjholden/nmap/NmapMain.java | 188 | Local variable 'target' could be declared final
44 | src/com/wjholden/nmap/NmapMain.java | 192 | Local variable 'args' could be declared final
45 | src/com/wjholden/nmap/NmapMain.java | 200 | The String literal "installVerified" appears 4 times in this file; the first occurrence is on line 200
46 | src/com/wjholden/nmap/NmapMain.java | 202 | The String literal "hasRunOneScan" appears 4 times in this file; the first occurrence is on line 202
47 | src/com/wjholden/nmap/NmapMain.java | 204 | The String literal "canGetRoot" appears 4 times in this file; the first occurrence is on line 204
48 | src/com/wjholden/nmap/NmapMain.java | 230 | Local variable 'curVersion' could be declared final
49 | src/com/wjholden/nmap/NmapMain.java | 252 | Avoid variables with short names like v
50 | src/com/wjholden/nmap/NmapMain.java | 252 | Parameter 'v' is not assigned and could be declared final
51 | src/com/wjholden/nmap/NmapMain.java | 257 | Avoid excessively long variable names like targetAndArguments
52 | src/com/wjholden/nmap/NmapMain.java | 257 | Found 'DU'-anomaly for variable 'targetAndArguments' (lines '257'-'318').
53 | src/com/wjholden/nmap/NmapMain.java | 257 | Found 'DU'-anomaly for variable 'targetAndArguments' (lines '257'-'318').
54 | src/com/wjholden/nmap/NmapMain.java | 257 | Found 'DU'-anomaly for variable 'targetAndArguments' (lines '257'-'318').
55 | src/com/wjholden/nmap/NmapMain.java | 257 | Found 'DU'-anomaly for variable 'targetAndArguments' (lines '257'-'318').
56 | src/com/wjholden/nmap/NmapMain.java | 286 | Avoid variables with short names like v
57 | src/com/wjholden/nmap/NmapMain.java | 286 | Parameter 'v' is not assigned and could be declared final
58 | src/com/wjholden/nmap/NmapMain.java | 310 | Parameter 'v' is not assigned and could be declared final
59 | src/com/wjholden/nmap/NmapMain.java | 322 | Avoid instantiating String objects; this is usually unnecessary.
60 | src/com/wjholden/nmap/NmapMain.java | 327 | Avoid instantiating String objects; this is usually unnecessary.
61 | src/com/wjholden/nmap/NmapMain.java | 344 | Avoid excessively long variable names like savedInstanceState
62 | src/com/wjholden/nmap/NmapMain.java | 344 | Parameter 'savedInstanceState' is not assigned and could be declared final
63 | src/com/wjholden/nmap/NmapMain.java | 352 | Avoid using if statements without curly braces
64 | src/com/wjholden/nmap/NmapMain.java | 354 | Avoid using if statements without curly braces
65 | src/com/wjholden/nmap/NmapMain.java | 428 | Local variable 'uri' could be declared final
66 | src/com/wjholden/nmap/NmapMain.java | 442 | Local variable 'surveyActivity' could be declared final
67 | src/com/wjholden/nmap/NmapMain.java | 519 | Avoid using if statements without curly braces
68 | src/com/wjholden/nmap/NmapMain.java | 533 | Avoid really long methods.
69 | src/com/wjholden/nmap/NmapMain.java | 533 | The method 'initHandler' has a Cyclomatic Complexity of 18.
70 | src/com/wjholden/nmap/NmapMain.java | 537 | Avoid really long methods.
71 | src/com/wjholden/nmap/NmapMain.java | 537 | The method 'handleMessage' has a Cyclomatic Complexity of 17.
72 | src/com/wjholden/nmap/NmapMain.java | 539 | Found 'DU'-anomaly for variable 'alert' (lines '539'-'647').
73 | src/com/wjholden/nmap/NmapMain.java | 539 | Found 'DU'-anomaly for variable 'alert' (lines '539'-'647').
74 | src/com/wjholden/nmap/NmapMain.java | 539 | Found 'DU'-anomaly for variable 'alert' (lines '539'-'647').
75 | src/com/wjholden/nmap/NmapMain.java | 545 | An empty statement (semicolon) not part of a loop
76 | src/com/wjholden/nmap/NmapMain.java | 577 | Position literals first in String comparisons
77 | src/com/wjholden/nmap/NmapMain.java | 581 | Position literals first in String comparisons
78 | src/com/wjholden/nmap/NmapMain.java | 585 | Position literals first in String comparisons
79 | src/com/wjholden/nmap/NmapMain.java | 603 | Avoid assignments in operands
80 | src/com/wjholden/nmap/NmapMain.java | 603 | Found 'DU'-anomaly for variable 'line' (lines '603'-'647').
81 | src/com/wjholden/nmap/NmapMain.java | 603 | Found 'DU'-anomaly for variable 'line' (lines '603'-'647').
82 | src/com/wjholden/nmap/NmapMain.java | 603 | Found 'DU'-anomaly for variable 'line' (lines '603'-'647').
83 | src/com/wjholden/nmap/NmapScan.java | 25 | The class 'NmapScan' has a Cyclomatic Complexity of 10 (Highest = 21).
84 | src/com/wjholden/nmap/NmapScan.java | 29 | Avoid variables with short names like os
85 | src/com/wjholden/nmap/NmapScan.java | 29 | Perhaps 'os' could be replaced by a local variable.
86 | src/com/wjholden/nmap/NmapScan.java | 30 | Avoid variables with short names like in
87 | src/com/wjholden/nmap/NmapScan.java | 30 | Perhaps 'in' could be replaced by a local variable.
88 | src/com/wjholden/nmap/NmapScan.java | 31 | Perhaps 'err' could be replaced by a local variable.
89 | src/com/wjholden/nmap/NmapScan.java | 32 | Avoid variables with short names like p
90 | src/com/wjholden/nmap/NmapScan.java | 32 | Perhaps 'p' could be replaced by a local variable.
91 | src/com/wjholden/nmap/NmapScan.java | 78 | Avoid really long methods.
92 | src/com/wjholden/nmap/NmapScan.java | 78 | The method 'doInBackground' has a Cyclomatic Complexity of 21.
93 | src/com/wjholden/nmap/NmapScan.java | 78 | The method doInBackground() has an NPath complexity of 79872
94 | src/com/wjholden/nmap/NmapScan.java | 80 | Found 'DU'-anomaly for variable 'exeParams' (lines '80'-'233').
95 | src/com/wjholden/nmap/NmapScan.java | 88 | Found 'DU'-anomaly for variable 'temporaryFolder' (lines '88'-'233').
96 | src/com/wjholden/nmap/NmapScan.java | 107 | A method should have only one exit point, and that should be the last statement in the method
97 | src/com/wjholden/nmap/NmapScan.java | 120 | A method should have only one exit point, and that should be the last statement in the method
98 | src/com/wjholden/nmap/NmapScan.java | 148 | Position literals first in String comparisons
99 | src/com/wjholden/nmap/NmapScan.java | 149 | Avoid using if...else statements without curly braces
100 | src/com/wjholden/nmap/NmapScan.java | 181 | Avoid assignments in operands
101 | src/com/wjholden/nmap/NmapScan.java | 184 | Prefer StringBuffer over += for concatenating strings
102 | src/com/wjholden/nmap/NmapScan.java | 188 | Local variable 'msg1' could be declared final
103 | src/com/wjholden/nmap/NmapScan.java | 195 | Local variable 'msg' could be declared final
104 | src/com/wjholden/nmap/NmapScan.java | 203 | Avoid assignments in operands
105 | src/com/wjholden/nmap/NmapScan.java | 205 | Local variable 'msg' could be declared final
106 | src/com/wjholden/nmap/NmapScan.java | 211 | Local variable 'msg' could be declared final
107 | src/com/wjholden/nmap/NmapScan.java | 220 | Local variable 'msg' could be declared final
108 | src/com/wjholden/nmap/NmapScan.java | 228 | Position literals first in String comparisons
109 | src/com/wjholden/nmap/NmapSurvey.java | 39 | Avoid excessively long variable names like savedInstanceState
110 | src/com/wjholden/nmap/NmapSurvey.java | 39 | Parameter 'savedInstanceState' is not assigned and could be declared final
111 | src/com/wjholden/nmap/NmapSurvey.java | 49 | Avoid variables with short names like v
112 | src/com/wjholden/nmap/NmapSurvey.java | 49 | Parameter 'v' is not assigned and could be declared final
113 | src/com/wjholden/nmap/NmapSurvey.java | 50 | Local variable 'myUploadData' could be declared final
114 | src/com/wjholden/nmap/NmapSurvey.java | 72 | To be compliant to J2EE, a webapp should not use any thread.
115 | src/com/wjholden/nmap/NmapSurvey.java | 77 | Found non-transient, non-static member. Please mark as transient or provide accessors.
116 | src/com/wjholden/nmap/NmapSurvey.java | 82 | Found non-transient, non-static member. Please mark as transient or provide accessors.
117 | src/com/wjholden/nmap/NmapSurvey.java | 87 | Found non-transient, non-static member. Please mark as transient or provide accessors.
118 | src/com/wjholden/nmap/NmapSurvey.java | 97 | It is a good practice to call super() in a constructor
119 | src/com/wjholden/nmap/NmapSurvey.java | 113 | Local variable 'client' could be declared final
120 | src/com/wjholden/nmap/NmapSurvey.java | 114 | Local variable 'url' could be declared final
121 | src/com/wjholden/nmap/NmapSurvey.java | 115 | Local variable 'uri' could be declared final
122 | src/com/wjholden/nmap/NmapSurvey.java | 117 | Local variable 'httppost' could be declared final
123 | src/com/wjholden/nmap/NmapUtilities.java | 83 | Avoid instantiating new objects inside loops
124 | src/com/wjholden/nmap/NmapUtilities.java | 108 | Found 'DD'-anomaly for variable 'dataDir' (lines '108'-'110').