http://xradar.sourceforge.net


Statics Report - System: 1.0, Version: 0, Date: TodayDesigned for use with Checkstyle, CKJM, FindBugs, JavaNCSS, JDepend, Macaron, PMD, PMD-CPD, Java2HTML and Ant.

[Statics] classes-org.apache.qpid.client.security

[scorecard] [analysis] [explanations]
{overview} {architecture} {design} {code} {test} {source control} {system specific}

org.apache.qpid.client.security.AMQCallbackHandler

Package: org.apache.qpid.client.security | Class source

Methods:Source statements:Cyclomatic Complexity
Total:
Total Declared:
Public :
Private :
1
1
1
0
Total :
Per method :
2
2
Total :
Per method :
Per statement :
1
1
0.5
Inheritance:Coupling:
Depth of inheritance tree (DIT):
Number of Children (NOC):
1
0
Efferent/Import Class Couplings (CBO/Ce):
Afferent/Export Class Couplings (Ca):
Response for a class (RFC):
Lack of Cohesion in methods (LCOM):
1
3
1
0
Javadocs:Code violations:Style Errors:Unit Test Coverage
Total :
Per method :
0
0
Total :
Per method :
Per statement :

NaN
NaN
Total :
Per method :
Per statement :
3
3
1.5
Statement Test Coverage :
Method Test Reference :
0
1


Method :Javadocs:Source statements:Cyclometic complexity:Test References:
initialise(AMQProtocolSession)
0111




View line in sourceStyle ErrorColumn
27Commentaire javadoc manquant.
28'{' devrait être sur la ligne précédente.1
29Commentaire javadoc manquant.5

org.apache.qpid.client.security.CallbackHandlerRegistry

Package: org.apache.qpid.client.security | Class source

Methods:Source statements:Cyclomatic Complexity
Total:
Total Declared:
Public :
Private :
6
5
3
3
Total :
Per method :
51
10.2
Total :
Per method :
Per statement :
13
2.6
0.25
Inheritance:Coupling:
Depth of inheritance tree (DIT):
Number of Children (NOC):
1
0
Efferent/Import Class Couplings (CBO/Ce):
Afferent/Export Class Couplings (Ca):
Response for a class (RFC):
Lack of Cohesion in methods (LCOM):
4
1
33
0
Javadocs:Code violations:Style Errors:Unit Test Coverage
Total :
Per method :
6
1.2
Total :
Per method :
Per statement :
13
2.6
0.25
Total :
Per method :
Per statement :
64
12.8
1.25
Statement Test Coverage :
Method Test Reference :
0
3


Method :Javadocs:Source statements:Cyclometic complexity:Test References:
getInstance()
1212
getCallbackHandlerClass(String)
1211
getMechanisms()
1211
CallbackHandlerRegistry()
11541
parseProperties(Properties)
12361


View line in sourceCode ViolationRule
A class which only has private constructors should be final ClassWithOnlyPrivateConstructorsShouldBeFinal
Private field '_mechanismToHandlerClassMap' could be made final; it is only initialized in the declaration or constructor. ImmutableField
Parameter 'mechanism' is not assigned and could be declared final MethodArgumentCouldBeFinal
Local variable 'filename' could be declared final LocalVariableCouldBeFinal
Local variable 'is' could be declared final LocalVariableCouldBeFinal
Local variable 'props' could be declared final LocalVariableCouldBeFinal
Parameter 'props' is not assigned and could be declared final MethodArgumentCouldBeFinal
Local variable 'e' could be declared final LocalVariableCouldBeFinal
Local variable 'propertyName' could be declared final LocalVariableCouldBeFinal
Local variable 'period' could be declared final LocalVariableCouldBeFinal
String.indexOf(char) is faster than String.indexOf(String). UseIndexOfChar
Local variable 'mechanism' could be declared final LocalVariableCouldBeFinal
Local variable 'className' could be declared final LocalVariableCouldBeFinal


View line in sourceStyle ErrorColumn
36La ligne excède 80 caractères.
37La ligne excède 80 caractères.
38La ligne excède 80 caractères.
39La ligne excède 80 caractères.
41La ligne excède 80 caractères.
48La ligne excède 80 caractères.
49La ligne excède 80 caractères.
59'{' devrait être sur la ligne précédente.1
60La ligne excède 80 caractères.
60Commentaire javadoc manquant.5
60Le nom '_logger' n'est pas conforme à l'expression '^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$'.33
62La ligne excède 80 caractères.
63La ligne excède 80 caractères.
66La ligne excède 80 caractères.
69La ligne excède 80 caractères.
69Le nom '_instance' n'est pas conforme à l'expression '^[a-z][a-zA-Z0-9]*$'.44
72La ligne excède 80 caractères.
72Il manque une espace avant '<'.16
72Il manque une espace après '<'.17
72Il manque une espace avant '>'.30
72Le nom '_mechanismToHandlerClassMap' n'est pas conforme à l'expression '^[a-z][a-zA-Z0-9]*$'.32
72Il manque une espace avant '<'.73
72Il manque une espace après '<'.74
72Il manque une espace avant '>'.87
72Il manque une espace après '>'.88
74La ligne excède 80 caractères.
75Le nom '_mechanisms' n'est pas conforme à l'expression '^[a-z][a-zA-Z0-9]*$'.20
83'{' devrait être sur la ligne précédente.5
92La ligne excède 80 caractères.
95'{' devrait être sur la ligne précédente.5
105'{' devrait être sur la ligne précédente.5
110La ligne excède 80 caractères.
111La ligne excède 80 caractères.
114'{' devrait être sur la ligne précédente.5
124'{' devrait être sur la ligne précédente.9
128La ligne excède 80 caractères.
129'}' devrait être sur la même ligne.9
131'{' devrait être sur la ligne précédente.9
133'}' devrait être sur la même ligne.9
135'{' devrait être sur la ligne précédente.9
137'{' devrait être sur la ligne précédente.13
139'{' devrait être sur la ligne précédente.17
142'}' devrait être sur la même ligne.17
144'{' devrait être sur la ligne précédente.17
159La ligne excède 80 caractères.
164La ligne excède 80 caractères.
170La ligne excède 80 caractères.
177La ligne excède 80 caractères.
178La ligne excède 80 caractères.
179La ligne excède 80 caractères.
184Balise javadoc @param manquante pour 'props'.45
185'{' devrait être sur la ligne précédente.5
188'{' devrait être sur la ligne précédente.9
192'{' devrait être sur la ligne précédente.13
193La ligne excède 80 caractères.
202'{' devrait être sur la ligne précédente.13
205'{' devrait être sur la ligne précédente.17
206La ligne excède 80 caractères.
214'{' devrait être sur la ligne précédente.17
216'}' devrait être sur la même ligne.17
218'{' devrait être sur la ligne précédente.17
222'}' devrait être sur la même ligne.13
224'{' devrait être sur la ligne précédente.13
225La ligne excède 80 caractères.

org.apache.qpid.client.security.DynamicSaslRegistrar

Package: org.apache.qpid.client.security | Class source

Methods:Source statements:Cyclomatic Complexity
Total:
Total Declared:
Public :
Private :
4
2
2
2
Total :
Per method :
41
20.5
Total :
Per method :
Per statement :
10
5
0.24
Inheritance:Coupling:
Depth of inheritance tree (DIT):
Number of Children (NOC):
1
0
Efferent/Import Class Couplings (CBO/Ce):
Afferent/Export Class Couplings (Ca):
Response for a class (RFC):
Lack of Cohesion in methods (LCOM):
4
1
33
0
Javadocs:Code violations:Style Errors:Unit Test Coverage
Total :
Per method :
3
1.5
Total :
Per method :
Per statement :
12
6
0.29
Total :
Per method :
Per statement :
107
53.5
2.61
Statement Test Coverage :
Method Test Reference :
0
1.5


Method :Javadocs:Source statements:Cyclometic complexity:Test References:
registerSaslProviders()
12261
parseProperties(Properties)
11541


View line in sourceCode ViolationRule
All methods are static. Consider using Singleton instead. Alternatively, you could add a private constructor or make the class abstract to silence this warning. UseSingleton
Local variable 'filename' could be declared final LocalVariableCouldBeFinal
Local variable 'is' could be declared final LocalVariableCouldBeFinal
Local variable 'props' could be declared final LocalVariableCouldBeFinal
Local variable 'factories' could be declared final LocalVariableCouldBeFinal
Substitute calls to size() == 0 (or size() != 0) with calls to isEmpty() UseCollectionIsEmpty
Parameter 'props' is not assigned and could be declared final MethodArgumentCouldBeFinal
Local variable 'e' could be declared final LocalVariableCouldBeFinal
Local variable 'factoriesToRegister' could be declared final LocalVariableCouldBeFinal
Local variable 'mechanism' could be declared final LocalVariableCouldBeFinal
Local variable 'className' could be declared final LocalVariableCouldBeFinal
Local variable 'clazz' could be declared final LocalVariableCouldBeFinal


View line in sourceStyle ErrorColumn
39La ligne excède 80 caractères.
40La ligne excède 80 caractères.
43La ligne excède 80 caractères.
50La ligne excède 80 caractères.
51La ligne excède 80 caractères.
53La ligne excède 80 caractères.
54La ligne excède 80 caractères.
57'{' devrait être sur la ligne précédente.1
58La ligne excède 80 caractères.
58Commentaire javadoc manquant.5
58Le nom '_logger' n'est pas conforme à l'expression '^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$'.33
60La ligne excède 80 caractères.
61La ligne excède 80 caractères.
64La ligne excède 80 caractères.
66La ligne excède 80 caractères.
68'{' devrait être sur la ligne précédente.5
71La ligne excède 80 caractères.
78'{' devrait être sur la ligne précédente.9
84La ligne excède 80 caractères.
84Il manque une espace avant '<'.16
84Il manque une espace après '<'.17
84Il manque une espace avant '<'.30
84Il manque une espace après '<'.31
84Il manque une espace avant '?'.31
84Il manque une espace avant '>'.58
84Il manque une espace après '>'.59
84Il manque une espace avant '>'.59
87'{' devrait être sur la ligne précédente.13
89La ligne excède 80 caractères.
92'}' devrait être sur la même ligne.17
94'{' devrait être sur la ligne précédente.17
95La ligne excède 80 caractères.
97'}' devrait être sur la même ligne.13
99'{' devrait être sur la ligne précédente.13
102'}' devrait être sur la même ligne.9
104'{' devrait être sur la ligne précédente.9
106'}' devrait être sur la même ligne.9
108'{' devrait être sur la ligne précédente.9
110'{' devrait être sur la ligne précédente.13
112'{' devrait être sur la ligne précédente.17
115'}' devrait être sur la même ligne.17
117'{' devrait être sur la ligne précédente.17
125La ligne excède 80 caractères.
128La ligne excède 80 caractères.
130La ligne excède 80 caractères.
136La ligne excède 80 caractères.
145La ligne excède 80 caractères.
147La ligne excède 80 caractères.
152La ligne excède 80 caractères.
156La ligne excède 80 caractères.
159La ligne excède 80 caractères.
166La ligne excède 80 caractères.
167La ligne excède 80 caractères.
170La ligne excède 80 caractères.
172La ligne excède 80 caractères.
174La ligne excède 80 caractères.
175La ligne excède 80 caractères.
178La ligne excède 80 caractères.
178Il manque une espace avant '<'.23
178Il manque une espace après '<'.24
178Il manque une espace avant '<'.37
178Il manque une espace après '<'.38
178Il manque une espace avant '?'.38
178Il manque une espace avant '>'.65
178Il manque une espace après '>'.66
178Il manque une espace avant '>'.66
182La ligne excède 80 caractères.
182Il manque une espace avant '<'.16
182Il manque une espace après '<'.17
182Il manque une espace avant '<'.30
182Il manque une espace après '<'.31
182Il manque une espace avant '?'.31
182Il manque une espace avant '>'.58
182Il manque une espace après '>'.59
182Il manque une espace avant '>'.59
183Il manque une espace avant '<'.24
183Il manque une espace après '<'.25
183Il manque une espace avant '<'.38
183Il manque une espace après '<'.39
183Il manque une espace avant '?'.39
183Il manque une espace avant '>'.66
183Il manque une espace après '>'.67
183Il manque une espace avant '>'.67
183Il manque une espace après '>'.68
186'{' devrait être sur la ligne précédente.9
190'{' devrait être sur la ligne précédente.13
191Il manque une espace avant '<'.22
191Il manque une espace après '<'.23
191Il manque une espace avant '?'.23
191Il manque une espace après '?'.24
191Il manque une espace avant '>'.24
193'{' devrait être sur la ligne précédente.17
194La ligne excède 80 caractères.
199La ligne excède 80 caractères.
199Il manque une espace avant '+'.51
199Il manque une espace après '+'.70
199Il manque une espace avant '+'.87
199Il manque une espace après '+'.88
200La ligne excède 80 caractères.
200Il manque une espace avant '<'.58
200Il manque une espace après '<'.59
200Il manque une espace avant '?'.59
200Il manque une espace avant '>'.86
200Il manque une espace après '>'.87
201'}' devrait être sur la même ligne.13
203'{' devrait être sur la ligne précédente.13
204La ligne excède 80 caractères.

org.apache.qpid.client.security.JCAProvider

Package: org.apache.qpid.client.security | Class source

Methods:Source statements:Cyclomatic Complexity
Total:
Total Declared:
Public :
Private :
3
2
1
2
Total :
Per method :
9
4.5
Total :
Per method :
Per statement :
3
1.5
0.33
Inheritance:Coupling:
Depth of inheritance tree (DIT):
Number of Children (NOC):
5
0
Efferent/Import Class Couplings (CBO/Ce):
Afferent/Export Class Couplings (Ca):
Response for a class (RFC):
Lack of Cohesion in methods (LCOM):
2
1
17
1
Javadocs:Code violations:Style Errors:Unit Test Coverage
Total :
Per method :
3
1.5
Total :
Per method :
Per statement :
3
1.5
0.33
Total :
Per method :
Per statement :
42
21
4.67
Statement Test Coverage :
Method Test Reference :
0
4


Method :Javadocs:Source statements:Cyclometic complexity:
JCAProvider(SaslClientFactory)
131
register(SaslClientFactory)
142


View line in sourceCode ViolationRule
Avoid unused imports such as 'java.security.Security' UnusedImports
Parameter 'providerMap' is not assigned and could be declared final MethodArgumentCouldBeFinal
Parameter 'providerMap' is not assigned and could be declared final MethodArgumentCouldBeFinal


View line in sourceStyle ErrorColumn
33La ligne excède 80 caractères.
34La ligne excède 80 caractères.
43'{' devrait être sur la ligne précédente.1
44La ligne excède 80 caractères.
44Commentaire javadoc manquant.5
44Le nom 'log' n'est pas conforme à l'expression '^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$'.33
47La ligne excède 80 caractères.
49La ligne excède 80 caractères.
51La ligne excède 80 caractères.
51Il manque une espace avant '<'.27
51Il manque une espace après '<'.28
51Il manque une espace avant '<'.41
51Il manque une espace après '<'.42
51Il manque une espace avant '?'.42
51Il manque une espace avant '>'.69
51Il manque une espace après '>'.70
51Il manque une espace avant '>'.70
53La ligne excède 80 caractères.
60La ligne excède 80 caractères.
62La ligne excède 80 caractères.
64La ligne excède 80 caractères.
64Il manque une espace avant '<'.30
64Il manque une espace après '<'.31
64Il manque une espace avant '<'.44
64Il manque une espace après '<'.45
64Il manque une espace avant '?'.45
64Il manque une espace avant '>'.72
64Il manque une espace après '>'.73
64Il manque une espace avant '>'.73
66La ligne excède 80 caractères.
66Il manque une espace avant '<'.23
66Il manque une espace après '<'.24
66Il manque une espace avant '<'.37
66Il manque une espace après '<'.38
66Il manque une espace avant '?'.38
66Il manque une espace avant '>'.65
66Il manque une espace après '>'.66
66Il manque une espace avant '>'.66
68Il y a une espace de trop après '('.17
68Il manque une espace avant '+'.38
68Il manque une espace après '+'.39
69La ligne excède 80 caractères.

org.apache.qpid.client.security.UsernameHashedPasswordCallbackHandler

Package: org.apache.qpid.client.security | Class source

Methods:Source statements:Cyclomatic Complexity
Total:
Total Declared:
Public :
Private :
5
3
3
2
Total :
Per method :
30
10
Total :
Per method :
Per statement :
11
3.67
0.37
Inheritance:Coupling:
Depth of inheritance tree (DIT):
Number of Children (NOC):
1
0
Efferent/Import Class Couplings (CBO/Ce):
Afferent/Export Class Couplings (Ca):
Response for a class (RFC):
Lack of Cohesion in methods (LCOM):
4
0
17
8
Javadocs:Code violations:Style Errors:Unit Test Coverage
Total :
Per method :
0
0
Total :
Per method :
Per statement :
11
3.67
0.37
Total :
Per method :
Per statement :
25
8.33
0.83
Statement Test Coverage :
Method Test Reference :
0
1


Method :Javadocs:Source statements:Cyclometic complexity:Test References:
initialise(AMQProtocolSession)
0210
handle(Callback[])
01470
getHash(String)
01131

View line in source of duplicated classesLinesTokensStart of code fragment
(78) org/apache/qpid/client/security/UsernameHashedPasswordCallbackHandler
(85) org/apache/qpid/management/common/sasl/UsernameHashedPasswordCallbackHandler
2497 public static char[] getHash(String text) throws NoSuchAlgorithmException, UnsupportedEncoding .....
(78) org/apache/qpid/client/security/UsernameHashedPasswordCallbackHandler
(541) org/apache/qpid/management/ui/views/ViewUtility
2396 public static char[] getHash(String text) throws NoSuchAlgorithmException, UnsupportedEncoding .....
(42) org/apache/qpid/client/security/UsernameHashedPasswordCallbackHandler
(34) org/apache/qpid/client/security/UsernamePasswordCallbackHandler
1882 private AMQProtocolSession _protocolSession; public void initialise(AMQProtocolSession pr .....

View line in sourceCode ViolationRule
Avoid unused private fields such as '_logger'. UnusedPrivateField
Parameter 'protocolSession' is not assigned and could be declared final MethodArgumentCouldBeFinal
Parameter 'callbacks' is not assigned and could be declared final MethodArgumentCouldBeFinal
Local variable 'cb' could be declared final LocalVariableCouldBeFinal
Avoid instantiating new objects inside loops AvoidInstantiatingObjectsInLoops
Local variable 'uce' could be declared final LocalVariableCouldBeFinal
New exception is thrown in catch block, original stack trace may be lost PreserveStackTrace
Parameter 'text' is not assigned and could be declared final MethodArgumentCouldBeFinal
Local variable 'data' could be declared final LocalVariableCouldBeFinal
Local variable 'md' could be declared final LocalVariableCouldBeFinal
Local variable 'digest' could be declared final LocalVariableCouldBeFinal


View line in sourceStyle ErrorColumn
38Commentaire javadoc manquant.
40La ligne excède 80 caractères.
40Commentaire javadoc manquant.5
40Le nom '_logger' n'est pas conforme à l'expression '^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$'.33
42Commentaire javadoc manquant.5
42Le nom '_protocolSession' n'est pas conforme à l'expression '^[a-z][a-zA-Z0-9]*$'.32
44Commentaire javadoc manquant.5
45'{' devrait être sur la ligne précédente.5
49La ligne excède 80 caractères.
49Commentaire javadoc manquant.5
52'{' devrait être sur la ligne précédente.9
55'{' devrait être sur la ligne précédente.13
57'}' devrait être sur la même ligne.13
59'{' devrait être sur la ligne précédente.13
61'{' devrait être sur la ligne précédente.17
62La ligne excède 80 caractères.
63'}' devrait être sur la même ligne.17
65'{' devrait être sur la ligne précédente.17
66La ligne excède 80 caractères.
70'}' devrait être sur la même ligne.13
72'{' devrait être sur la ligne précédente.13
78La ligne excède 80 caractères.
78Commentaire javadoc manquant.5
86'{' devrait être sur la ligne précédente.9
96'{' devrait être sur la ligne précédente.9

org.apache.qpid.client.security.UsernamePasswordCallbackHandler

Package: org.apache.qpid.client.security | Class source

Methods:Source statements:Cyclomatic Complexity
Total:
Total Declared:
Public :
Private :
3
2
3
0
Total :
Per method :
14
7
Total :
Per method :
Per statement :
6
3
0.43
Inheritance:Coupling:
Depth of inheritance tree (DIT):
Number of Children (NOC):
1
0
Efferent/Import Class Couplings (CBO/Ce):
Afferent/Export Class Couplings (Ca):
Response for a class (RFC):
Lack of Cohesion in methods (LCOM):
2
0
10
1
Javadocs:Code violations:Style Errors:Unit Test Coverage
Total :
Per method :
0
0
Total :
Per method :
Per statement :
3
1.5
0.21
Total :
Per method :
Per statement :
17
8.5
1.21
Statement Test Coverage :
Method Test Reference :
0
0.33


Method :Javadocs:Source statements:Cyclometic complexity:Test References:
initialise(AMQProtocolSession)
0210
handle(Callback[])
01050

View line in source of duplicated classesLinesTokensStart of code fragment
(42) org/apache/qpid/client/security/UsernameHashedPasswordCallbackHandler
(34) org/apache/qpid/client/security/UsernamePasswordCallbackHandler
1882 private AMQProtocolSession _protocolSession; public void initialise(AMQProtocolSession pr .....

View line in sourceCode ViolationRule
Parameter 'protocolSession' is not assigned and could be declared final MethodArgumentCouldBeFinal
Parameter 'callbacks' is not assigned and could be declared final MethodArgumentCouldBeFinal
Local variable 'cb' could be declared final LocalVariableCouldBeFinal


View line in sourceStyle ErrorColumn
32Commentaire javadoc manquant.
33'{' devrait être sur la ligne précédente.1
34Commentaire javadoc manquant.5
34Le nom '_protocolSession' n'est pas conforme à l'expression '^[a-z][a-zA-Z0-9]*$'.32
36Commentaire javadoc manquant.5
37'{' devrait être sur la ligne précédente.5
41La ligne excède 80 caractères.
41Commentaire javadoc manquant.5
44'{' devrait être sur la ligne précédente.9
47'{' devrait être sur la ligne précédente.13
48Il manque une espace après 'cast'.32
49'}' devrait être sur la même ligne.13
51'{' devrait être sur la ligne précédente.13
52La ligne excède 80 caractères.
52Il manque une espace après 'cast'.36
53'}' devrait être sur la même ligne.13
55'{' devrait être sur la ligne précédente.13