PMD Results

The following document contains the results of PMD 6.29.0.

Violations By Priority

Priority 1

org/apache/fulcrum/security/BaseSecurityService.java

Rule Violation Line
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 78
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 99
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 120
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 141
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 162

org/apache/fulcrum/security/model/basic/BasicACLFactory.java

Rule Violation Line
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 82

org/apache/fulcrum/security/model/dynamic/DynamicACLFactory.java

Rule Violation Line
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 76

org/apache/fulcrum/security/model/turbine/TurbineACLFactory.java

Rule Violation Line
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 89
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 93

org/apache/fulcrum/security/model/turbine/TurbineAccessControlListImpl.java

Rule Violation Line
ConstructorCallsOverridableMethod Overridable method 'getPermissions' called during object construction 150

org/apache/fulcrum/security/spi/AbstractManager.java

Rule Violation Line
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 190

org/apache/fulcrum/security/util/SecuritySet.java

Rule Violation Line
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 263

Priority 2

org/apache/fulcrum/security/model/turbine/TurbineAccessControlListImpl.java

Rule Violation Line
LoggerIsNotStaticFinal The Logger variable declaration does not contain the static and final modifiers 81

Priority 3

org/apache/fulcrum/security/BaseSecurityService.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 41212
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 43
RedundantFieldInitializer Avoid using redundant field initializer for 'manager' 43
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the userClassName field if you want a default access modifier 47
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 47
DefaultPackage Use explicit scoping instead of the default package private level 47
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the groupClassName field if you want a default access modifier 48
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 48
DefaultPackage Use explicit scoping instead of the default package private level 48
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 49
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the permissionClassName field if you want a default access modifier 49
LongVariable Avoid excessively long variable names like permissionClassName 49
DefaultPackage Use explicit scoping instead of the default package private level 49
DefaultPackage Use explicit scoping instead of the default package private level 50
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the roleClassName field if you want a default access modifier 50
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 50
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 51
DefaultPackage Use explicit scoping instead of the default package private level 51
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the aclClassName field if you want a default access modifier 51
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 53
RedundantFieldInitializer Avoid using redundant field initializer for 'userManager' 53
RedundantFieldInitializer Avoid using redundant field initializer for 'roleManager' 55
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 55
RedundantFieldInitializer Avoid using redundant field initializer for 'groupManager' 57
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 57
RedundantFieldInitializer Avoid using redundant field initializer for 'permissionManager' 59
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 59
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 61
RedundantFieldInitializer Avoid using redundant field initializer for 'modelManager' 61
MissingOverride The method 'getUserManager()' is missing an @Override annotation. 6882
MissingOverride The method 'getGroupManager()' is missing an @Override annotation. 89103
MissingOverride The method 'getRoleManager()' is missing an @Override annotation. 110124
MissingOverride The method 'getPermissionManager()' is missing an @Override annotation. 131145
MissingOverride The method 'getModelManager()' is missing an @Override annotation. 152166
MethodArgumentCouldBeFinal Parameter 'manager' is not assigned and could be declared final 179
MissingOverride The method 'service(ServiceManager)' is missing an @Override annotation. 179182
MissingOverride The method 'initialize()' is missing an @Override annotation. 191198
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 191
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 193
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 194
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 195
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 196
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 197
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 210

org/apache/fulcrum/security/GroupManager.java

Rule Violation Line
ShortVariable Avoid variables with short names like id 105

org/apache/fulcrum/security/ModelManager.java

Rule Violation Line
ConstantsInInterface Avoid constants in interfaces. Interfaces define types, constants are implementation details better placed in classes or enums. See Effective Java, item 19. 34

org/apache/fulcrum/security/PermissionManager.java

Rule Violation Line
ShortVariable Avoid variables with short names like id 106

org/apache/fulcrum/security/RoleManager.java

Rule Violation Line
ShortVariable Avoid variables with short names like id 104

org/apache/fulcrum/security/UserManager.java

Rule Violation Line
ShortVariable Avoid variables with short names like id 129

org/apache/fulcrum/security/acl/AccessControlException.java

Rule Violation Line
MethodArgumentCouldBeFinal Parameter 'msg' is not assigned and could be declared final 43

org/apache/fulcrum/security/authenticator/Authenticator.java

Rule Violation Line
UnnecessaryModifier Unnecessary modifiers 'public static final' on field 'ROLE': the field is declared in an interface type 35
UnnecessaryModifier Unnecessary modifier 'public' on method 'authenticate': the method is declared in an interface type 37

org/apache/fulcrum/security/authenticator/CryptoAuthenticator.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 47114
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the composed field if you want a default access modifier 49
DefaultPackage Use explicit scoping instead of the default package private level 49
RedundantFieldInitializer Avoid using redundant field initializer for 'composed' 49
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 50
RedundantFieldInitializer Avoid using redundant field initializer for 'cryptoService' 50
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 51
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 52
MethodArgumentCouldBeFinal Parameter 'password' is not assigned and could be declared final 67
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 67
LocalVariableCouldBeFinal Local variable 'ca' could be declared final 71
ShortVariable Avoid variables with short names like ca 71
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 72
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 73
LocalVariableCouldBeFinal Local variable 'output' could be declared final 73
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 74
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 80
MethodArgumentCouldBeFinal Parameter 'conf' is not assigned and could be declared final 91
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 93
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 94
MethodArgumentCouldBeFinal Parameter 'manager' is not assigned and could be declared final 101
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 112

org/apache/fulcrum/security/authenticator/NoOpAuthenticator.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 3746
MethodArgumentCouldBeFinal Parameter 'password' is not assigned and could be declared final 43
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 43

org/apache/fulcrum/security/authenticator/TextMatchAuthenticator.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 3655
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 46
MethodArgumentCouldBeFinal Parameter 'password' is not assigned and could be declared final 46
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 48
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 51
LocalVariableCouldBeFinal Local variable 'referenced' could be declared final 51
LocalVariableCouldBeFinal Local variable 'tested' could be declared final 52
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 53

org/apache/fulcrum/security/entity/SecurityEntity.java

Rule Violation Line
ShortVariable Avoid variables with short names like id 66

org/apache/fulcrum/security/entity/impl/SecurityEntityImpl.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 34127
ShortVariable Avoid variables with short names like id 43
MissingOverride The method 'getId()' is missing an @Override annotation. 4851
ShortVariable Avoid variables with short names like id 56
MissingOverride The method 'setId(Object)' is missing an @Override annotation. 5659
MethodArgumentCouldBeFinal Parameter 'id' is not assigned and could be declared final 56
MissingOverride The method 'getName()' is missing an @Override annotation. 6467
MethodArgumentCouldBeFinal Parameter 'name' is not assigned and could be declared final 75
MissingOverride The method 'setName(String)' is missing an @Override annotation. 7583
AvoidUncheckedExceptionsInSignatures A method or constructor should not explicitly declare unchecked exceptions in its 'throws' clause 75
UseLocaleWithCaseConversions When doing a String.toLowerCase()/toUpperCase() call, use a Locale 81
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 88
MethodArgumentCouldBeFinal Parameter 'o' is not assigned and could be declared final 97
ShortVariable Avoid variables with short names like o 97
UnusedAssignment The initializer for variable 'equals' is never used (overwritten on lines 104, 108 and 112) 99
LocalVariableCouldBeFinal Local variable 'id' could be declared final 100
ShortVariable Avoid variables with short names like id 100
ConfusingTernary Avoid if (x != y) ..; else ..; 106113

org/apache/fulcrum/security/model/basic/BasicACLFactory.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 3685
MethodArgumentCouldBeFinal Parameter 'groupSet' is not assigned and could be declared final 51
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 59
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 70
MissingOverride The method 'getAccessControlList(User)' is missing an @Override annotation. 7084
LocalVariableCouldBeFinal Local variable 'groupSet' could be declared final 72
LocalVariableCouldBeFinal Local variable 'aclInstance' could be declared final 77

org/apache/fulcrum/security/model/basic/BasicAccessControlListImpl.java

Rule Violation Line
ImmutableField Private field 'groupSet' could be made final; it is only initialized in the declaration or constructor. 42
UnusedAssignment The field initializer for 'groupSet' is never used (overwritten on line 61) 42
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 42
MethodArgumentCouldBeFinal Parameter 'groupSet' is not assigned and could be declared final 59
MissingOverride The method 'getGroups()' is missing an @Override annotation. 6972
MissingOverride The method 'hasGroup(Group)' is missing an @Override annotation. 8184
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 81
MissingOverride The method 'hasGroup(String)' is missing an @Override annotation. 93103
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 93
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 97
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 99

org/apache/fulcrum/security/model/basic/BasicModelManager.java

Rule Violation Line
UnnecessaryModifier Unnecessary modifier 'public' on method 'grant': the method is declared in an interface type 50
UnnecessaryModifier Unnecessary modifier 'public' on method 'revoke': the method is declared in an interface type 62
UnnecessaryModifier Unnecessary modifier 'public' on method 'revokeAll': the method is declared in an interface type 76

org/apache/fulcrum/security/model/basic/entity/BasicGroup.java

Rule Violation Line
UnnecessaryModifier Unnecessary modifier 'public' on method 'getUsers': the method is declared in an interface type 42
UnnecessaryModifier Unnecessary modifier 'public' on method 'setUsers': the method is declared in an interface type 50
UnnecessaryModifier Unnecessary modifier 'public' on method 'getUsersAsSet': the method is declared in an interface type 58
UnnecessaryModifier Unnecessary modifier 'public' on method 'setUsersAsSet': the method is declared in an interface type 67
UnnecessaryModifier Unnecessary modifier 'public' on method 'addUser': the method is declared in an interface type 75
UnnecessaryModifier Unnecessary modifier 'public' on method 'removeUser': the method is declared in an interface type 83

org/apache/fulcrum/security/model/basic/entity/BasicUser.java

Rule Violation Line
UnnecessaryModifier Unnecessary modifier 'public' on method 'getGroups': the method is declared in an interface type 42
UnnecessaryModifier Unnecessary modifier 'public' on method 'setGroups': the method is declared in an interface type 50
UnnecessaryModifier Unnecessary modifier 'public' on method 'removeGroup': the method is declared in an interface type 58
UnnecessaryModifier Unnecessary modifier 'public' on method 'addGroup': the method is declared in an interface type 66
UnnecessaryModifier Unnecessary modifier 'public' on method 'setGroupsAsSet': the method is declared in an interface type 74
UnnecessaryModifier Unnecessary modifier 'public' on method 'getGroupsAsSet': the method is declared in an interface type 81

org/apache/fulcrum/security/model/basic/entity/impl/BasicGroupImpl.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 36125
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 44
MissingOverride The method 'getUsers()' is missing an @Override annotation. 5162
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 55
MissingOverride The method 'setUsers(UserSet)' is missing an @Override annotation. 7080
MethodArgumentCouldBeFinal Parameter 'userSet' is not assigned and could be declared final 70
ConfusingTernary Avoid if (x != y) ..; else ..; 7279
MissingOverride The method 'getUsersAsSet()' is missing an @Override annotation. 8891
MissingOverride The method 'setUsersAsSet(Set)' is missing an @Override annotation. 99102
MethodArgumentCouldBeFinal Parameter 'users' is not assigned and could be declared final 99
MissingOverride The method 'addUser(User)' is missing an @Override annotation. 110113
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 110
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 112
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 121
MissingOverride The method 'removeUser(User)' is missing an @Override annotation. 121124
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 123

org/apache/fulcrum/security/model/basic/entity/impl/BasicUserImpl.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 38181
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 49
MethodArgumentCouldBeFinal Parameter 'password' is not assigned and could be declared final 80
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 95
MethodArgumentCouldBeFinal Parameter 'groups' is not assigned and could be declared final 111
ConfusingTernary Avoid if (x != y) ..; else ..; 113120
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 130
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 132
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 142
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 144
MethodArgumentCouldBeFinal Parameter 'groups' is not assigned and could be declared final 154
OverrideBothEqualsAndHashcode Ensure you override both equals() and hashCode() 177

org/apache/fulcrum/security/model/dynamic/AbstractDynamicModelManager.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 43223
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 43223
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 57
MissingOverride The method 'revokeAll(Permission)' is missing an @Override annotation. 5775
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 5775
UnusedAssignment The initializer for variable 'permissionExists' is never used (overwritten on line 60) 59
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 60
LocalVariableCouldBeFinal Local variable 'roles' could be declared final 63
LocalVariableCouldBeFinal Local variable 'role2' could be declared final 64
MissingOverride The method 'revokeAll(Group)' is missing an @Override annotation. 89113
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 89113
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 89
UnusedAssignment The initializer for variable 'groupExists' is never used (overwritten on line 92) 91
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 92
LocalVariableCouldBeFinal Local variable 'users' could be declared final 95
LocalVariableCouldBeFinal Local variable 'user' could be declared final 96
LocalVariableCouldBeFinal Local variable 'roles' could be declared final 101
LocalVariableCouldBeFinal Local variable 'role2' could be declared final 102
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 127145
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 127
MissingOverride The method 'revokeAll(User)' is missing an @Override annotation. 127145
UnusedAssignment The initializer for variable 'userExists' is never used (overwritten on line 130) 129
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 130
LocalVariableCouldBeFinal Local variable 'groups' could be declared final 133
LocalVariableCouldBeFinal Local variable 'group' could be declared final 134
MissingOverride The method 'revokeAll(Role)' is missing an @Override annotation. 159182
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 159182
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 159
UnusedAssignment The initializer for variable 'roleExists' is never used (overwritten on line 162) 161
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 162
LocalVariableCouldBeFinal Local variable 'groups' could be declared final 165
LocalVariableCouldBeFinal Local variable 'group' could be declared final 166
LocalVariableCouldBeFinal Local variable 'permissions' could be declared final 171
LocalVariableCouldBeFinal Local variable 'permission' could be declared final 172
MethodArgumentCouldBeFinal Parameter 'delegator' is not assigned and could be declared final 189
MissingOverride The method 'addDelegate(User, User)' is missing an @Override annotation. 189201
MethodArgumentCouldBeFinal Parameter 'delegatee' is not assigned and could be declared final 189
LocalVariableCouldBeFinal Local variable 'dynamicDelegator' could be declared final 191
LocalVariableCouldBeFinal Local variable 'dynamicDelegatee' could be declared final 192
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 196
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 196
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 196
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 196
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 198
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 199
MethodArgumentCouldBeFinal Parameter 'delegatee' is not assigned and could be declared final 207
MethodArgumentCouldBeFinal Parameter 'delegator' is not assigned and could be declared final 207
MissingOverride The method 'removeDelegate(User, User)' is missing an @Override annotation. 207222
LocalVariableCouldBeFinal Local variable 'dynamicDelegator' could be declared final 209
LocalVariableCouldBeFinal Local variable 'dynamicDelegatee' could be declared final 210
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 212
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 212
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 214
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 215

org/apache/fulcrum/security/model/dynamic/DynamicACLFactory.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 47155
MissingOverride The method 'getAccessControlList(User)' is missing an @Override annotation. 5278
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 52
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 54
LocalVariableCouldBeFinal Local variable 'roleSets' could be declared final 54
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 54
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 55
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 55
LocalVariableCouldBeFinal Local variable 'permissionSets' could be declared final 55
LocalVariableCouldBeFinal Local variable 'users' could be declared final 57
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 57
LocalVariableCouldBeFinal Local variable 'aUser' could be declared final 63
LocalVariableCouldBeFinal Local variable 'aclInstance' could be declared final 71
MethodArgumentCouldBeFinal Parameter 'roles' is not assigned and could be declared final 95
MethodArgumentCouldBeFinal Parameter 'permissions' is not assigned and could be declared final 96
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 103
MethodArgumentCouldBeFinal Parameter 'users' is not assigned and could be declared final 118
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 118
LocalVariableCouldBeFinal Local variable 'u' could be declared final 120
LocalVariableCouldBeFinal Local variable 'delegatorUser' could be declared final 123
MethodArgumentCouldBeFinal Parameter 'roleSets' is not assigned and could be declared final 142
MethodArgumentCouldBeFinal Parameter 'permissionSets' is not assigned and could be declared final 142
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 142
LocalVariableCouldBeFinal Local variable 'group' could be declared final 144
LocalVariableCouldBeFinal Local variable 'roleSet' could be declared final 146
LocalVariableCouldBeFinal Local variable 'r' could be declared final 148
LocalVariableCouldBeFinal Local variable 'role' could be declared final 150
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 151

org/apache/fulcrum/security/model/dynamic/DynamicAccessControlList.java

Rule Violation Line
TooManyMethods This class has too many methods, consider refactoring it. 46227

org/apache/fulcrum/security/model/dynamic/DynamicAccessControlListImpl.java

Rule Violation Line
GodClass Possible God Class (WMC=53, ATFD=11, TCC=22.059%) 38429
TooManyMethods This class has too many methods, consider refactoring it. 39429
ImmutableField Private field 'roleSets' could be made final; it is only initialized in the declaration or constructor. 49
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 49
ImmutableField Private field 'permissionSets' could be made final; it is only initialized in the declaration or constructor. 52
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 52
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 55
ImmutableField Private field 'groupSet' could be made final; it is only initialized in the declaration or constructor. 55
ImmutableField Private field 'roleSet' could be made final; it is only initialized in the declaration or constructor. 58
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 58
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 61
ImmutableField Private field 'permissionSet' could be made final; it is only initialized in the declaration or constructor. 61
MethodArgumentCouldBeFinal Parameter 'roleSets' is not assigned and could be declared final 80
MethodArgumentCouldBeFinal Parameter 'permissionSets' is not assigned and could be declared final 81
LocalVariableCouldBeFinal Local variable 'entry' could be declared final 84
LocalVariableCouldBeFinal Local variable 'group' could be declared final 86
LocalVariableCouldBeFinal Local variable 'rs' could be declared final 88
ShortVariable Avoid variables with short names like rs 88
LocalVariableCouldBeFinal Local variable 'entry' could be declared final 92
LocalVariableCouldBeFinal Local variable 'role' could be declared final 94
ShortVariable Avoid variables with short names like ps 96
LocalVariableCouldBeFinal Local variable 'ps' could be declared final 96
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 107
MissingOverride The method 'getRoles(Group)' is missing an @Override annotation. 107114
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 110
MissingOverride The method 'getRoles()' is missing an @Override annotation. 121123
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 131
MissingOverride The method 'getPermissions(Group)' is missing an @Override annotation. 131144
LocalVariableCouldBeFinal Local variable 'permissionSet' could be declared final 132
LocalVariableCouldBeFinal Local variable 'role' could be declared final 135
MissingOverride The method 'getPermissions()' is missing an @Override annotation. 151153
MissingOverride The method 'hasRole(Role, Group)' is missing an @Override annotation. 162169
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 162
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 162
LocalVariableCouldBeFinal Local variable 'set' could be declared final 163
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 166
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 168
MethodArgumentCouldBeFinal Parameter 'groupset' is not assigned and could be declared final 179
MissingOverride The method 'hasRole(Role, GroupSet)' is missing an @Override annotation. 179194
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 179
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 182
LocalVariableCouldBeFinal Local variable 'group' could be declared final 185
LocalVariableCouldBeFinal Local variable 'roles' could be declared final 187
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 188
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 190
MissingOverride The method 'hasRole(String, String)' is missing an @Override annotation. 203222
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 203
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 203
LocalVariableCouldBeFinal Local variable 'entry' could be declared final 207
ShortVariable Avoid variables with short names like g 209
LocalVariableCouldBeFinal Local variable 'g' could be declared final 209
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 210
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 210
ShortVariable Avoid variables with short names like rs 212
LocalVariableCouldBeFinal Local variable 'rs' could be declared final 212
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 213
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 217
MissingOverride The method 'hasRole(String, GroupSet)' is missing an @Override annotation. 232257
MethodArgumentCouldBeFinal Parameter 'groupset' is not assigned and could be declared final 232
MethodArgumentCouldBeFinal Parameter 'rolename' is not assigned and could be declared final 232
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 238
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 240
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 245
LocalVariableCouldBeFinal Local variable 'group' could be declared final 248
LocalVariableCouldBeFinal Local variable 'roles' could be declared final 250
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 251
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 253
MissingOverride The method 'hasRole(Role)' is missing an @Override annotation. 266268
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 266
MissingOverride The method 'hasRole(String)' is missing an @Override annotation. 276285
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 276
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 279
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 281
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 295
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 295
MissingOverride The method 'hasPermission(Permission, Group)' is missing an @Override annotation. 295302
LocalVariableCouldBeFinal Local variable 'set' could be declared final 296
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 299
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 301
MethodArgumentCouldBeFinal Parameter 'groupset' is not assigned and could be declared final 313
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 313
MissingOverride The method 'hasPermission(Permission, GroupSet)' is missing an @Override annotation. 313328
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 316
LocalVariableCouldBeFinal Local variable 'group' could be declared final 319
LocalVariableCouldBeFinal Local variable 'permissions' could be declared final 321
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 322
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 324
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 338
MissingOverride The method 'hasPermission(String, String)' is missing an @Override annotation. 338347
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 338
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 341
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 343
MissingOverride The method 'hasPermission(String, Group)' is missing an @Override annotation. 357366
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 357
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 357
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 360
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 362
MethodArgumentCouldBeFinal Parameter 'permissionName' is not assigned and could be declared final 377
MethodArgumentCouldBeFinal Parameter 'groupset' is not assigned and could be declared final 377
MissingOverride The method 'hasPermission(String, GroupSet)' is missing an @Override annotation. 377400
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 382
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 383
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 388
LocalVariableCouldBeFinal Local variable 'group' could be declared final 391
LocalVariableCouldBeFinal Local variable 'permissions' could be declared final 393
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 394
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 396
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 408
MissingOverride The method 'hasPermission(Permission)' is missing an @Override annotation. 408410
MissingOverride The method 'hasPermission(String)' is missing an @Override annotation. 419428
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 419
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 422
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 424

org/apache/fulcrum/security/model/dynamic/DynamicModelManager.java

Rule Violation Line
TooManyMethods This class has too many methods, consider refactoring it. 38212

org/apache/fulcrum/security/model/dynamic/entity/DynamicGroup.java

Rule Violation Line
UnnecessaryModifier Unnecessary modifier 'public' on method 'getRoles': the method is declared in an interface type 43
UnnecessaryModifier Unnecessary modifier 'public' on method 'setRoles': the method is declared in an interface type 51
UnnecessaryModifier Unnecessary modifier 'public' on method 'addRole': the method is declared in an interface type 59
UnnecessaryModifier Unnecessary modifier 'public' on method 'removeRole': the method is declared in an interface type 67
UnnecessaryModifier Unnecessary modifier 'public' on method 'setRolesAsSet': the method is declared in an interface type 75
UnnecessaryModifier Unnecessary modifier 'public' on method 'getRolesAsSet': the method is declared in an interface type 82

org/apache/fulcrum/security/model/dynamic/entity/DynamicPermission.java

Rule Violation Line
UnnecessaryModifier Unnecessary modifier 'public' on method 'getRoles': the method is declared in an interface type 43
UnnecessaryModifier Unnecessary modifier 'public' on method 'setRoles': the method is declared in an interface type 51
UnnecessaryModifier Unnecessary modifier 'public' on method 'addRole': the method is declared in an interface type 59
UnnecessaryModifier Unnecessary modifier 'public' on method 'removeRole': the method is declared in an interface type 67
UnnecessaryModifier Unnecessary modifier 'public' on method 'setRolesAsSet': the method is declared in an interface type 75
UnnecessaryModifier Unnecessary modifier 'public' on method 'getRolesAsSet': the method is declared in an interface type 82

org/apache/fulcrum/security/model/dynamic/entity/DynamicRole.java

Rule Violation Line
UnnecessaryModifier Unnecessary modifier 'public' on method 'getPermissions': the method is declared in an interface type 45
UnnecessaryModifier Unnecessary modifier 'public' on method 'getPermissionsAsSet': the method is declared in an interface type 52
UnnecessaryModifier Unnecessary modifier 'public' on method 'setPermissions': the method is declared in an interface type 60
UnnecessaryModifier Unnecessary modifier 'public' on method 'setPermissionsAsSet': the method is declared in an interface type 68
UnnecessaryModifier Unnecessary modifier 'public' on method 'addPermission': the method is declared in an interface type 75
UnnecessaryModifier Unnecessary modifier 'public' on method 'removePermission': the method is declared in an interface type 82
UnnecessaryModifier Unnecessary modifier 'public' on method 'getGroups': the method is declared in an interface type 89
UnnecessaryModifier Unnecessary modifier 'public' on method 'setGroups': the method is declared in an interface type 97
UnnecessaryModifier Unnecessary modifier 'public' on method 'removeGroup': the method is declared in an interface type 104
UnnecessaryModifier Unnecessary modifier 'public' on method 'addGroup': the method is declared in an interface type 111
UnnecessaryModifier Unnecessary modifier 'public' on method 'setGroupsAsSet': the method is declared in an interface type 119
UnnecessaryModifier Unnecessary modifier 'public' on method 'getGroupsAsSet': the method is declared in an interface type 126

org/apache/fulcrum/security/model/dynamic/entity/DynamicUser.java

Rule Violation Line
UnnecessaryModifier Unnecessary modifier 'public' on method 'getDelegatees': the method is declared in an interface type 47
UnnecessaryModifier Unnecessary modifier 'public' on method 'setDelegatees': the method is declared in an interface type 55
UnnecessaryModifier Unnecessary modifier 'public' on method 'getDelegators': the method is declared in an interface type 63
UnnecessaryModifier Unnecessary modifier 'public' on method 'setDelegators': the method is declared in an interface type 71

org/apache/fulcrum/security/model/dynamic/entity/impl/DynamicGroupImpl.java

Rule Violation Line
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 37120
AtLeastOneConstructor Each class should declare at least one constructor 37120
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 39
MissingOverride The method 'getRoles()' is missing an @Override annotation. 4657
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 50
MethodArgumentCouldBeFinal Parameter 'roleSet' is not assigned and could be declared final 65
MissingOverride The method 'setRoles(RoleSet)' is missing an @Override annotation. 6575
ConfusingTernary Avoid if (x != y) ..; else ..; 6774
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 83
MissingOverride The method 'addRole(Role)' is missing an @Override annotation. 8386
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 85
MissingOverride The method 'removeRole(Role)' is missing an @Override annotation. 9497
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 94
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 96
MissingOverride The method 'setRolesAsSet(Set)' is missing an @Override annotation. 105108
MethodArgumentCouldBeFinal Parameter 'roles' is not assigned and could be declared final 105
MissingOverride The method 'getRolesAsSet()' is missing an @Override annotation. 116119

org/apache/fulcrum/security/model/dynamic/entity/impl/DynamicPermissionImpl.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 37120
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 37120
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 39
MissingOverride The method 'getRoles()' is missing an @Override annotation. 4657
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 50
MethodArgumentCouldBeFinal Parameter 'roleSet' is not assigned and could be declared final 65
MissingOverride The method 'setRoles(RoleSet)' is missing an @Override annotation. 6575
ConfusingTernary Avoid if (x != y) ..; else ..; 6774
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 83
MissingOverride The method 'addRole(Role)' is missing an @Override annotation. 8386
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 85
MissingOverride The method 'removeRole(Role)' is missing an @Override annotation. 9497
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 94
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 96
MissingOverride The method 'setRolesAsSet(Set)' is missing an @Override annotation. 105108
MethodArgumentCouldBeFinal Parameter 'roles' is not assigned and could be declared final 105
MissingOverride The method 'getRolesAsSet()' is missing an @Override annotation. 116119

org/apache/fulcrum/security/model/dynamic/entity/impl/DynamicRoleImpl.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 39200
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 39200
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 41
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 43
MissingOverride The method 'getPermissions()' is missing an @Override annotation. 5061
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 54
MissingOverride The method 'getPermissionsAsSet()' is missing an @Override annotation. 6972
MethodArgumentCouldBeFinal Parameter 'permissionSet' is not assigned and could be declared final 80
MissingOverride The method 'setPermissions(PermissionSet)' is missing an @Override annotation. 8090
ConfusingTernary Avoid if (x != y) ..; else ..; 8289
MissingOverride The method 'setPermissionsAsSet(Set)' is missing an @Override annotation. 98101
MethodArgumentCouldBeFinal Parameter 'permissions' is not assigned and could be declared final 98
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 108
MissingOverride The method 'addPermission(Permission)' is missing an @Override annotation. 108111
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 110
MissingOverride The method 'removePermission(Permission)' is missing an @Override annotation. 118121
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 118
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 120
MissingOverride The method 'getGroups()' is missing an @Override annotation. 128139
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 132
MissingOverride The method 'setGroups(GroupSet)' is missing an @Override annotation. 147157
MethodArgumentCouldBeFinal Parameter 'groupSet' is not assigned and could be declared final 147
ConfusingTernary Avoid if (x != y) ..; else ..; 149156
MissingOverride The method 'removeGroup(Group)' is missing an @Override annotation. 164167
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 164
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 166
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 174
MissingOverride The method 'addGroup(Group)' is missing an @Override annotation. 174177
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 176
MissingOverride The method 'setGroupsAsSet(Set)' is missing an @Override annotation. 185188
MethodArgumentCouldBeFinal Parameter 'groups' is not assigned and could be declared final 185
MissingOverride The method 'getGroupsAsSet()' is missing an @Override annotation. 196199

org/apache/fulcrum/security/model/dynamic/entity/impl/DynamicUserImpl.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 4195
DataClass The class 'DynamicUserImpl' is suspected to be a Data Class (WOC=0.000%, NOPA=0, NOAM=4, WMC=4) 4195
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 48
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 50
MissingOverride The method 'getDelegatees()' is missing an @Override annotation. 5861
MethodArgumentCouldBeFinal Parameter 'delegatees' is not assigned and could be declared final 69
MissingOverride The method 'setDelegatees(Set)' is missing an @Override annotation. 6972
MissingOverride The method 'getDelegators()' is missing an @Override annotation. 8083
MissingOverride The method 'setDelegators(Set)' is missing an @Override annotation. 9194
MethodArgumentCouldBeFinal Parameter 'delegators' is not assigned and could be declared final 91

org/apache/fulcrum/security/model/turbine/AbstractTurbineModelManager.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 45232
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 54
MethodArgumentCouldBeFinal Parameter 'conf' is not assigned and could be declared final 62
UnusedAssignment The initializer for variable 'g' is never used (overwritten on lines 82 and 86) 79
ShortVariable Avoid variables with short names like g 79
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 82
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 86
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 89
PreserveStackTrace New exception is thrown in catch block, original stack trace may be lost 93
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 113116
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 113
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 134
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 134160
MethodArgumentCouldBeFinal Parameter 'cascadeDelete' is not assigned and could be declared final 134
UnusedAssignment The initializer for variable 'roleExists' is never used (overwritten on line 137) 136
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 137
LocalVariableCouldBeFinal Local variable 'permissions' could be declared final 141
LocalVariableCouldBeFinal Local variable 'permission' could be declared final 142
LocalVariableCouldBeFinal Local variable 'userGroupRoles' could be declared final 147
LocalVariableCouldBeFinal Local variable 'userGroupRole' could be declared final 148
LocalVariableCouldBeFinal Local variable 'ugr' could be declared final 150
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 151
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 151
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 175
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 175193
UnusedAssignment The initializer for variable 'userExists' is never used (overwritten on line 178) 177
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 178
LocalVariableCouldBeFinal Local variable 'userGroupRoles' could be declared final 182
LocalVariableCouldBeFinal Local variable 'userGroupRole' could be declared final 183
LocalVariableCouldBeFinal Local variable 'ugr' could be declared final 185
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 186
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 186
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 208226
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 208
UnusedAssignment The initializer for variable 'groupExists' is never used (overwritten on line 211) 210
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 211
LocalVariableCouldBeFinal Local variable 'userGroupRoles' could be declared final 215
LocalVariableCouldBeFinal Local variable 'userGroupRole' could be declared final 216
LocalVariableCouldBeFinal Local variable 'ugr' could be declared final 218
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 219
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 219

org/apache/fulcrum/security/model/turbine/TurbineACLFactory.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 46163
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 49
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 76
LocalVariableCouldBeFinal Local variable 'tu' could be declared final 80
ShortVariable Avoid variables with short names like tu 80
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 81
LocalVariableCouldBeFinal Local variable 'tugr' could be declared final 81
LocalVariableCouldBeFinal Local variable 'aclInstance' could be declared final 84
LongVariable Avoid excessively long variable names like turbineUserGroupRoleSet 110
MethodArgumentCouldBeFinal Parameter 'turbineUserGroupRoleSet' is not assigned and could be declared final 110
ShortVariable Avoid variables with short names like g 125
UnusedAssignment The initializer for variable 'g' is never used (overwritten on lines 128 and 132) 125
UnusedAssignment The value assigned to variable 'g' is never used 128
PreserveStackTrace New exception is thrown in catch block, original stack trace may be lost 139
EmptyCatchBlock Avoid empty catch blocks 144147
ExceptionAsFlowControl Avoid using exceptions as flow control. 144

org/apache/fulcrum/security/model/turbine/TurbineAccessControlList.java

Rule Violation Line
TooManyMethods This class has too many methods, consider refactoring it. 48218

org/apache/fulcrum/security/model/turbine/TurbineAccessControlListImpl.java

Rule Violation Line
GodClass Possible God Class (WMC=57, ATFD=12, TCC=10.526%) 53528
TooManyMethods This class has too many methods, consider refactoring it. 55528
ImmutableField Private field 'roleSets' could be made final; it is only initialized in the declaration or constructor. 60
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 60
ImmutableField Private field 'permissionSets' could be made final; it is only initialized in the declaration or constructor. 63
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 63
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 66
ImmutableField Private field 'groupManager' could be made final; it is only initialized in the declaration or constructor. 69
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 69
ImmutableField Private field 'groupSet' could be made final; it is only initialized in the declaration or constructor. 72
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 72
ImmutableField Private field 'roleSet' could be made final; it is only initialized in the declaration or constructor. 75
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 75
ImmutableField Private field 'permissionSet' could be made final; it is only initialized in the declaration or constructor. 78
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 78
ImmutableField Private field 'logger' could be made final; it is only initialized in the declaration or constructor. 81
SingularField Perhaps 'logger' could be replaced by a local variable. 81
CyclomaticComplexity The constructor 'TurbineAccessControlListImpl(Set, GroupManager, RoleManager, TurbineModelManager, Logger)' has a cyclomatic complexity of 11. 102167
MethodArgumentCouldBeFinal Parameter 'turbineUserGroupRoleSet' is not assigned and could be declared final 103
LongVariable Avoid excessively long variable names like turbineUserGroupRoleSet 103
MethodArgumentCouldBeFinal Parameter 'groupManager' is not assigned and could be declared final 104
MethodArgumentCouldBeFinal Parameter 'logger' is not assigned and could be declared final 104
MethodArgumentCouldBeFinal Parameter 'roleManager' is not assigned and could be declared final 104
MethodArgumentCouldBeFinal Parameter 'modelManager' is not assigned and could be declared final 104
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 106
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 107
LocalVariableCouldBeFinal Local variable 'ugr' could be declared final 112
LocalVariableCouldBeFinal Local variable 'group' could be declared final 114
ConfusingTernary Avoid if (x != y) ..; else ..; 124137
LocalVariableCouldBeFinal Local variable 'rs' could be declared final 144
ShortVariable Avoid variables with short names like rs 144
AvoidInstantiatingObjectsInLoops Avoid instantiating new objects inside loops 144
LocalVariableCouldBeFinal Local variable 'ps' could be declared final 150
ShortVariable Avoid variables with short names like ps 150
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 176
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 180
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 203
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 207
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 231
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 231
LocalVariableCouldBeFinal Local variable 'set' could be declared final 233
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 236
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 238
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 251
MethodArgumentCouldBeFinal Parameter 'groupset' is not assigned and could be declared final 251
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 255
LocalVariableCouldBeFinal Local variable 'group' could be declared final 258
LocalVariableCouldBeFinal Local variable 'roles' could be declared final 260
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 261
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 263
MethodArgumentCouldBeFinal Parameter 'roleName' is not assigned and could be declared final 278
MethodArgumentCouldBeFinal Parameter 'groupName' is not assigned and could be declared final 278
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 282
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 284
MethodArgumentCouldBeFinal Parameter 'rolename' is not assigned and could be declared final 300
MethodArgumentCouldBeFinal Parameter 'groupset' is not assigned and could be declared final 300
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 304
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 306
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 319
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 331
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 335
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 337
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 351
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 351
LocalVariableCouldBeFinal Local variable 'set' could be declared final 353
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 356
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 358
MethodArgumentCouldBeFinal Parameter 'groupset' is not assigned and could be declared final 371
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 371
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 375
LocalVariableCouldBeFinal Local variable 'group' could be declared final 378
LocalVariableCouldBeFinal Local variable 'permissions' could be declared final 380
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 381
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 383
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 398
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 398
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 402
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 404
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 418
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 418
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 422
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 424
MethodArgumentCouldBeFinal Parameter 'permissionName' is not assigned and could be declared final 440
MethodArgumentCouldBeFinal Parameter 'groupset' is not assigned and could be declared final 440
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 447
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 449
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 454
LocalVariableCouldBeFinal Local variable 'group' could be declared final 457
LocalVariableCouldBeFinal Local variable 'permissions' could be declared final 459
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 460
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 462
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 475
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 487
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 491
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 493
ConfusingTernary Avoid if (x != y) ..; else ..; 514515
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 514515

org/apache/fulcrum/security/model/turbine/TurbineModelManager.java

Rule Violation Line
LongVariable Avoid excessively long variable names like GLOBAL_GROUP_ATTR_NAME 43
UnnecessaryModifier Unnecessary modifier 'public' on field 'GLOBAL_GROUP_NAME': the field is declared in an interface type 48
UnnecessaryModifier Unnecessary modifier 'public' on enum 'Privilege': the enum is declared in an interface type 5456
UnnecessaryModifier Unnecessary modifier 'public' on method 'getGlobalGroupName': the method is declared in an interface type 78

org/apache/fulcrum/security/model/turbine/entity/TurbinePermission.java

Rule Violation Line
UnnecessaryModifier Unnecessary modifier 'public' on method 'getRoles': the method is declared in an interface type 43
UnnecessaryModifier Unnecessary modifier 'public' on method 'setRoles': the method is declared in an interface type 51
UnnecessaryModifier Unnecessary modifier 'public' on method 'addRole': the method is declared in an interface type 59
UnnecessaryModifier Unnecessary modifier 'public' on method 'removeRole': the method is declared in an interface type 67
UnnecessaryModifier Unnecessary modifier 'public' on method 'setRolesAsSet': the method is declared in an interface type 76
UnnecessaryModifier Unnecessary modifier 'public' on method 'getRolesAsSet': the method is declared in an interface type 84

org/apache/fulcrum/security/model/turbine/entity/TurbineRole.java

Rule Violation Line
UnnecessaryModifier Unnecessary modifier 'public' on method 'getPermissions': the method is declared in an interface type 43
UnnecessaryModifier Unnecessary modifier 'public' on method 'getPermissionsAsSet': the method is declared in an interface type 50
UnnecessaryModifier Unnecessary modifier 'public' on method 'setPermissions': the method is declared in an interface type 58
UnnecessaryModifier Unnecessary modifier 'public' on method 'setPermissionsAsSet': the method is declared in an interface type 67
UnnecessaryModifier Unnecessary modifier 'public' on method 'addPermission': the method is declared in an interface type 74
UnnecessaryModifier Unnecessary modifier 'public' on method 'removePermission': the method is declared in an interface type 81

org/apache/fulcrum/security/model/turbine/entity/TurbineRolePermissionoff.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 3372
DataClass The class 'TurbineRolePermissionoff' is suspected to be a Data Class (WOC=0.000%, NOPA=0, NOAM=4, WMC=4) 3372
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 59
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 68

org/apache/fulcrum/security/model/turbine/entity/TurbineUserGroupRole.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 37204
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 86
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 97
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 108
CyclomaticComplexity The method 'equals(Object)' has a cyclomatic complexity of 12. 114162
MethodArgumentCouldBeFinal Parameter 'obj' is not assigned and could be declared final 114
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 118
ConfusingTernary Avoid if (x != y) ..; else ..; 120161
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 122
LocalVariableCouldBeFinal Local variable 'mObj' could be declared final 126
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 127
ConfusingTernary Avoid if (x != y) ..; else ..; 127137
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 129
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 131
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 136
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 138
ConfusingTernary Avoid if (x != y) ..; else ..; 138148
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 140
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 142
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 147
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 149
ConfusingTernary Avoid if (x != y) ..; else ..; 149159
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 151
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 153
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 158
LocalVariableCouldBeFinal Local variable 'hcBuilder' could be declared final 167
LocalVariableCouldBeFinal Local variable 'role' could be declared final 169
LocalVariableCouldBeFinal Local variable 'user' could be declared final 175
LocalVariableCouldBeFinal Local variable 'group' could be declared final 181
ShortVariable Avoid variables with short names like sb 193
LocalVariableCouldBeFinal Local variable 'sb' could be declared final 193
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 195
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 195
ConfusingTernary Avoid if (x != y) ..; else ..; 195
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 196
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 197
ConfusingTernary Avoid if (x != y) ..; else ..; 197
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 197
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 198
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 199
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 199
ConfusingTernary Avoid if (x != y) ..; else ..; 199

org/apache/fulcrum/security/model/turbine/entity/TurbineUserGroupRoleEntity.java

Rule Violation Line
UnnecessaryModifier Unnecessary modifier 'public' on method 'getUserGroupRoleSet': the method is declared in an interface type 43
UnnecessaryModifier Unnecessary modifier 'public' on method 'setUserGroupRoleSet': the method is declared in an interface type 51
UnnecessaryModifier Unnecessary modifier 'public' on method 'addUserGroupRole': the method is declared in an interface type 59
UnnecessaryModifier Unnecessary modifier 'public' on method 'removeUserGroupRole': the method is declared in an interface type 67

org/apache/fulcrum/security/model/turbine/entity/impl/AbstractTurbineSecurityEntityImpl.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 3788
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 43
MissingOverride The method 'getUserGroupRoleSet()' is missing an @Override annotation. 5154
MethodArgumentCouldBeFinal Parameter 'userGroupRoleSet' is not assigned and could be declared final 62
MissingOverride The method 'setUserGroupRoleSet(Set)' is missing an @Override annotation. 6265
MethodArgumentCouldBeFinal Parameter 'userGroupRole' is not assigned and could be declared final 73
MissingOverride The method 'addUserGroupRole(TurbineUserGroupRole)' is missing an @Override annotation. 7376
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 75
MissingOverride The method 'removeUserGroupRole(TurbineUserGroupRole)' is missing an @Override annotation. 8487
MethodArgumentCouldBeFinal Parameter 'userGroupRole' is not assigned and could be declared final 84
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 86

org/apache/fulcrum/security/model/turbine/entity/impl/TurbineGroupImpl.java

Rule Violation Line
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3235
AtLeastOneConstructor Each class should declare at least one constructor 3235

org/apache/fulcrum/security/model/turbine/entity/impl/TurbinePermissionImpl.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 37120
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 37120
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 39
MissingOverride The method 'getRoles()' is missing an @Override annotation. 4657
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 50
MethodArgumentCouldBeFinal Parameter 'roleSet' is not assigned and could be declared final 65
MissingOverride The method 'setRoles(RoleSet)' is missing an @Override annotation. 6575
ConfusingTernary Avoid if (x != y) ..; else ..; 6774
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 83
MissingOverride The method 'addRole(Role)' is missing an @Override annotation. 8386
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 85
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 94
MissingOverride The method 'removeRole(Role)' is missing an @Override annotation. 9497
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 96
MethodArgumentCouldBeFinal Parameter 'roles' is not assigned and could be declared final 105
MissingOverride The method 'setRolesAsSet(Set)' is missing an @Override annotation. 105108
MissingOverride The method 'getRolesAsSet()' is missing an @Override annotation. 116119

org/apache/fulcrum/security/model/turbine/entity/impl/TurbineRoleImpl.java

Rule Violation Line
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 36118
AtLeastOneConstructor Each class should declare at least one constructor 36118
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 38
MissingOverride The method 'getPermissions()' is missing an @Override annotation. 4556
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 49
MissingOverride The method 'getPermissionsAsSet()' is missing an @Override annotation. 6467
MethodArgumentCouldBeFinal Parameter 'permissionSet' is not assigned and could be declared final 75
MissingOverride The method 'setPermissions(PermissionSet)' is missing an @Override annotation. 7585
ConfusingTernary Avoid if (x != y) ..; else ..; 7784
MissingOverride The method 'setPermissionsAsSet(Set)' is missing an @Override annotation. 9497
MethodArgumentCouldBeFinal Parameter 'permissions' is not assigned and could be declared final 94
MissingOverride The method 'addPermission(Permission)' is missing an @Override annotation. 104107
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 104
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 106
MissingOverride The method 'removePermission(Permission)' is missing an @Override annotation. 114117
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 114
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 116

org/apache/fulcrum/security/model/turbine/entity/impl/TurbineUserImpl.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 33174
DataClass The class 'TurbineUserImpl' is suspected to be a Data Class (WOC=9.091%, NOPA=0, NOAM=10, WMC=11) 33174
MethodArgumentCouldBeFinal Parameter 'password' is not assigned and could be declared final 63
MethodArgumentCouldBeFinal Parameter 'firstName' is not assigned and could be declared final 85
MethodArgumentCouldBeFinal Parameter 'lastName' is not assigned and could be declared final 107
MethodArgumentCouldBeFinal Parameter 'email' is not assigned and could be declared final 129
MethodReturnsInternalArray Returning 'objectData' may expose an internal array. 145
MethodArgumentCouldBeFinal Parameter 'objectdata' is not assigned and could be declared final 154
ArrayIsStoredDirectly The user-supplied array 'objectdata' is stored directly. 154
OverrideBothEqualsAndHashcode Ensure you override both equals() and hashCode() 165

org/apache/fulcrum/security/spi/AbstractEntityManager.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 3362
MethodArgumentCouldBeFinal Parameter 'conf' is not assigned and could be declared final 41
MissingOverride The method 'configure(Configuration)' is missing an @Override annotation. 4144
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 43
MethodArgumentCouldBeFinal Parameter 'className' is not assigned and could be declared final 57

org/apache/fulcrum/security/spi/AbstractGroupManager.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 35192
LocalVariableCouldBeFinal Local variable 'group' could be declared final 60
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 60
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 63
MethodArgumentCouldBeFinal Parameter 'groupName' is not assigned and could be declared final 84
LocalVariableCouldBeFinal Local variable 'group' could be declared final 86
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 87
MethodArgumentCouldBeFinal Parameter 'name' is not assigned and could be declared final 103
LocalVariableCouldBeFinal Local variable 'group' could be declared final 106
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 106
MethodArgumentCouldBeFinal Parameter 'id' is not assigned and could be declared final 128
ShortVariable Avoid variables with short names like id 128
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 131
LocalVariableCouldBeFinal Local variable 'group' could be declared final 131
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 151173
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 151
UnusedAssignment The initializer for variable 'groupExists' is never used (overwritten on line 162) 153
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 153
ConfusingTernary Avoid if (x != y) ..; else ..; 163172
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 187

org/apache/fulcrum/security/spi/AbstractManager.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 41196
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the composed field if you want a default access modifier 43
DefaultPackage Use explicit scoping instead of the default package private level 43
RedundantFieldInitializer Avoid using redundant field initializer for 'composed' 43
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 45
RedundantFieldInitializer Avoid using redundant field initializer for 'manager' 45
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 46
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 47
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 48
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 49
MethodArgumentCouldBeFinal Parameter 'manager' is not assigned and could be declared final 148
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 161
MethodArgumentCouldBeFinal Parameter 'obj' is not assigned and could be declared final 167
MethodArgumentCouldBeFinal Parameter 'lookup' is not assigned and could be declared final 180
AvoidUncheckedExceptionsInSignatures A method or constructor should not explicitly declare unchecked exceptions in its 'throws' clause 180
UnusedAssignment The initializer for variable 'component' is never used (overwritten on line 186) 182

org/apache/fulcrum/security/spi/AbstractPermissionManager.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 36196
LocalVariableCouldBeFinal Local variable 'permission' could be declared final 61
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 61
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 64
MethodArgumentCouldBeFinal Parameter 'permName' is not assigned and could be declared final 84
LocalVariableCouldBeFinal Local variable 'perm' could be declared final 86
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 87
MethodArgumentCouldBeFinal Parameter 'name' is not assigned and could be declared final 103
LocalVariableCouldBeFinal Local variable 'permission' could be declared final 106
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 106
ShortVariable Avoid variables with short names like id 128
MethodArgumentCouldBeFinal Parameter 'id' is not assigned and could be declared final 128
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 131
LocalVariableCouldBeFinal Local variable 'permission' could be declared final 131
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 151177
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 151
UnusedAssignment The initializer for variable 'permissionExists' is never used (overwritten on line 164) 153
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 153
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 170
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 191

org/apache/fulcrum/security/spi/AbstractRoleManager.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 36213
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 66
LocalVariableCouldBeFinal Local variable 'role' could be declared final 66
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 69
MethodArgumentCouldBeFinal Parameter 'roleName' is not assigned and could be declared final 92
LocalVariableCouldBeFinal Local variable 'role' could be declared final 94
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 95
MethodArgumentCouldBeFinal Parameter 'name' is not assigned and could be declared final 116
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 119
LocalVariableCouldBeFinal Local variable 'role' could be declared final 119
MethodArgumentCouldBeFinal Parameter 'id' is not assigned and could be declared final 143
ShortVariable Avoid variables with short names like id 143
LocalVariableCouldBeFinal Local variable 'role' could be declared final 146
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 146
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 168
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 168195
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 170
UnusedAssignment The initializer for variable 'roleExists' is never used (overwritten on line 181) 170
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 187
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 209

org/apache/fulcrum/security/spi/AbstractUserManager.java

Rule Violation Line
AtLeastOneConstructor Each class should declare at least one constructor 42337
FieldDeclarationsShouldBeAtStartOfClass Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. 55
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 55
FieldDeclarationsShouldBeAtStartOfClass Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. 56
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 56
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 62
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 64
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 79
MethodArgumentCouldBeFinal Parameter 'userName' is not assigned and could be declared final 102
MethodArgumentCouldBeFinal Parameter 'password' is not assigned and could be declared final 102
LocalVariableCouldBeFinal Local variable 'user' could be declared final 104
MethodArgumentCouldBeFinal Parameter 'name' is not assigned and could be declared final 110
LocalVariableCouldBeFinal Local variable 'user' could be declared final 113
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 113
MethodArgumentCouldBeFinal Parameter 'id' is not assigned and could be declared final 135
ShortVariable Avoid variables with short names like id 135
LocalVariableCouldBeFinal Local variable 'user' could be declared final 138
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 138
MethodArgumentCouldBeFinal Parameter 'password' is not assigned and could be declared final 163
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 163
MethodArgumentCouldBeFinal Parameter 'newPassword' is not assigned and could be declared final 194
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 194
MethodArgumentCouldBeFinal Parameter 'oldPassword' is not assigned and could be declared final 194
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 230
MethodArgumentCouldBeFinal Parameter 'password' is not assigned and could be declared final 230
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 259
LocalVariableCouldBeFinal Local variable 'user' could be declared final 259
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 262
MethodArgumentCouldBeFinal Parameter 'userName' is not assigned and could be declared final 283
LocalVariableCouldBeFinal Local variable 'user' could be declared final 285
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 286
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 304
MethodArgumentCouldBeFinal Parameter 'password' is not assigned and could be declared final 304
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 319

org/apache/fulcrum/security/util/DataBackendException.java

Rule Violation Line
MethodArgumentCouldBeFinal Parameter 'msg' is not assigned and could be declared final 42
MethodArgumentCouldBeFinal Parameter 'msg' is not assigned and could be declared final 57
MethodArgumentCouldBeFinal Parameter 'nested' is not assigned and could be declared final 57

org/apache/fulcrum/security/util/EntityExistsException.java

Rule Violation Line
MethodArgumentCouldBeFinal Parameter 'msg' is not assigned and could be declared final 42

org/apache/fulcrum/security/util/FulcrumSecurityException.java

Rule Violation Line
MethodArgumentCouldBeFinal Parameter 'msg' is not assigned and could be declared final 41
MethodArgumentCouldBeFinal Parameter 'nested' is not assigned and could be declared final 56
MethodArgumentCouldBeFinal Parameter 'msg' is not assigned and could be declared final 56

org/apache/fulcrum/security/util/GroupSet.java

Rule Violation Line
MethodArgumentCouldBeFinal Parameter 'groups' is not assigned and could be declared final 61
MethodArgumentCouldBeFinal Parameter 'groupName' is not assigned and could be declared final 77
MethodArgumentCouldBeFinal Parameter 'groupId' is not assigned and could be declared final 92
LocalVariableCouldBeFinal Local variable 'sb' could be declared final 106
ShortVariable Avoid variables with short names like sb 106
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 107

org/apache/fulcrum/security/util/PasswordMismatchException.java

Rule Violation Line
MethodArgumentCouldBeFinal Parameter 'msg' is not assigned and could be declared final 42

org/apache/fulcrum/security/util/PermissionSet.java

Rule Violation Line
MethodArgumentCouldBeFinal Parameter 'permissions' is not assigned and could be declared final 61
MethodArgumentCouldBeFinal Parameter 'permissionName' is not assigned and could be declared final 78
MethodArgumentCouldBeFinal Parameter 'permissionId' is not assigned and could be declared final 94
ShortVariable Avoid variables with short names like sb 108
LocalVariableCouldBeFinal Local variable 'sb' could be declared final 108
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 109

org/apache/fulcrum/security/util/RoleSet.java

Rule Violation Line
MethodArgumentCouldBeFinal Parameter 'roles' is not assigned and could be declared final 61
MethodArgumentCouldBeFinal Parameter 'roleName' is not assigned and could be declared final 77
MethodArgumentCouldBeFinal Parameter 'roleId' is not assigned and could be declared final 92
ShortVariable Avoid variables with short names like sb 106
LocalVariableCouldBeFinal Local variable 'sb' could be declared final 106
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 107

org/apache/fulcrum/security/util/SecuritySet.java

Rule Violation Line
AbstractNaming Abstract classes should be named AbstractXXX 48347
TooManyMethods This class has too many methods, consider refactoring it. 48347
RedundantFieldInitializer Avoid using redundant field initializer for 'nameMap' 53
UnusedAssignment The field initializer for 'nameMap' is never used (overwritten on line 63) 53
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 53
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 56
UnusedAssignment The field initializer for 'idMap' is never used (overwritten on line 64) 56
RedundantFieldInitializer Avoid using redundant field initializer for 'idMap' 56
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 63
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 64
MethodArgumentCouldBeFinal Parameter 'name' is not assigned and could be declared final 114
SimplifiedTernary Ternary operators that can be simplified with || or && 116
MethodArgumentCouldBeFinal Parameter 'id' is not assigned and could be declared final 125
ShortVariable Avoid variables with short names like id 125
SimplifiedTernary Ternary operators that can be simplified with || or && 127
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 138
LocalVariableCouldBeFinal Local variable 'sbuf' could be declared final 160
LocalVariableCouldBeFinal Local variable 'it' could be declared final 162
LocalVariableCouldBeFinal Local variable 'se' could be declared final 163
ShortVariable Avoid variables with short names like se 163
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 165
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 167
MethodArgumentCouldBeFinal Parameter 'o' is not assigned and could be declared final 182
ShortVariable Avoid variables with short names like o 182
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 186
MethodArgumentCouldBeFinal Parameter 'collection' is not assigned and could be declared final 209
MethodArgumentCouldBeFinal Parameter 'collection' is not assigned and could be declared final 215
ForLoopsMustUseBraces Avoid using for statements without curly braces 219220
ControlStatementBraces This statement should have braces 219220
LocalVariableCouldBeFinal Local variable 'o' could be declared final 219
MethodArgumentCouldBeFinal Parameter 'collection' is not assigned and could be declared final 232
LocalVariableCouldBeFinal Local variable 'object' could be declared final 234
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 238
MethodArgumentCouldBeFinal Parameter 'collection' is not assigned and could be declared final 245
LocalVariableCouldBeFinal Local variable 'object' could be declared final 248
LocalVariableCouldBeFinal Local variable 'result' could be declared final 250
MethodArgumentCouldBeFinal Parameter 'collection' is not assigned and could be declared final 261
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 274
MethodArgumentCouldBeFinal Parameter 'o' is not assigned and could be declared final 284
ShortVariable Avoid variables with short names like o 284
SimplifyConditional No need to check for null before an instanceof 286
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 288
ShortVariable Avoid variables with short names like o 303
MethodArgumentCouldBeFinal Parameter 'o' is not assigned and could be declared final 303
LocalVariableCouldBeFinal Local variable 'res' could be declared final 307
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 310
ShortVariable Avoid variables with short names like a 320
MethodArgumentCouldBeFinal Parameter 'a' is not assigned and could be declared final 320
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 322
MethodArgumentCouldBeFinal Parameter 'name' is not assigned and could be declared final 332
MethodArgumentCouldBeFinal Parameter 'id' is not assigned and could be declared final 343
ShortVariable Avoid variables with short names like id 343

org/apache/fulcrum/security/util/UnknownEntityException.java

Rule Violation Line
MethodArgumentCouldBeFinal Parameter 'msg' is not assigned and could be declared final 42
MethodArgumentCouldBeFinal Parameter 'nested' is not assigned and could be declared final 57
MethodArgumentCouldBeFinal Parameter 'msg' is not assigned and could be declared final 57

org/apache/fulcrum/security/util/UserSet.java

Rule Violation Line
MethodArgumentCouldBeFinal Parameter 'users' is not assigned and could be declared final 58
MethodArgumentCouldBeFinal Parameter 'userName' is not assigned and could be declared final 74
MethodArgumentCouldBeFinal Parameter 'userId' is not assigned and could be declared final 89
ShortVariable Avoid variables with short names like sb 103
LocalVariableCouldBeFinal Local variable 'sb' could be declared final 103
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 104

Priority 4

org/apache/fulcrum/security/RoleManager.java

Rule Violation Line
UnusedImports Avoid unused imports such as 'org.apache.fulcrum.security.entity.Group' 23

org/apache/fulcrum/security/entity/Role.java

Rule Violation Line
ShortClassName Avoid short class names like Role 3134

org/apache/fulcrum/security/entity/User.java

Rule Violation Line
ShortClassName Avoid short class names like User 2957

Priority 5

org/apache/fulcrum/security/entity/impl/SecurityEntityImpl.java

Rule Violation Line
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'equals' (lines '99'-'104'). 99104
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'equals' (lines '99'-'108'). 99108
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'equals' (lines '99'-'112'). 99112

org/apache/fulcrum/security/model/basic/BasicACLFactory.java

Rule Violation Line
DataflowAnomalyAnalysis Found 'DU'-anomaly for variable 'accessControlList' (lines '57'-'65'). 5765

org/apache/fulcrum/security/model/dynamic/AbstractDynamicModelManager.java

Rule Violation Line
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'permissionExists' (lines '59'-'60'). 5960
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'groupExists' (lines '91'-'92'). 9192
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'userExists' (lines '129'-'130'). 129130
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'roleExists' (lines '161'-'162'). 161162

org/apache/fulcrum/security/model/dynamic/DynamicACLFactory.java

Rule Violation Line
DataflowAnomalyAnalysis Found 'DU'-anomaly for variable 'accessControlList' (lines '101'-'108'). 101108

org/apache/fulcrum/security/model/dynamic/DynamicAccessControlListImpl.java

Rule Violation Line
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'roleFound' (lines '204'-'219'). 204219
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'roleFound' (lines '204'-'213'). 204213
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'roleFound' (lines '213'-'219'). 213219
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'roleFound' (lines '213'-'213'). 213
DataflowAnomalyAnalysis Found 'DU'-anomaly for variable 'role' (lines '236'-'257'). 236257
DataflowAnomalyAnalysis Found 'DU'-anomaly for variable 'permission' (lines '381'-'400'). 381400

org/apache/fulcrum/security/model/turbine/AbstractTurbineModelManager.java

Rule Violation Line
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'g' (lines '79'-'82'). 7982
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'g' (lines '82'-'86'). 8286
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'roleExists' (lines '136'-'137'). 136137
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'userExists' (lines '177'-'178'). 177178
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'groupExists' (lines '210'-'211'). 210211

org/apache/fulcrum/security/model/turbine/TurbineACLFactory.java

Rule Violation Line
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'groupManager' (lines '112'-'119'). 112119
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'roleManager' (lines '113'-'118'). 113118
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'modelManager' (lines '114'-'120'). 114120
DataflowAnomalyAnalysis Found 'DU'-anomaly for variable 'roleManager' (lines '118'-'161'). 118161
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'g' (lines '125'-'128'). 125128
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'g' (lines '128'-'132'). 128132
DataflowAnomalyAnalysis Found 'DU'-anomaly for variable 'accessControlList' (lines '152'-'161'). 152161

org/apache/fulcrum/security/model/turbine/TurbineAccessControlListImpl.java

Rule Violation Line
DataflowAnomalyAnalysis Found 'DU'-anomaly for variable 'permission' (lines '445'-'466'). 445466

org/apache/fulcrum/security/spi/AbstractGroupManager.java

Rule Violation Line
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'groupExists' (lines '153'-'162'). 153162
DataflowAnomalyAnalysis Found 'DU'-anomaly for variable 'groupExists' (lines '153'-'173'). 153173

org/apache/fulcrum/security/spi/AbstractManager.java

Rule Violation Line
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'component' (lines '182'-'186'). 182186
DataflowAnomalyAnalysis Found 'DU'-anomaly for variable 'component' (lines '186'-'194'). 186194

org/apache/fulcrum/security/spi/AbstractPermissionManager.java

Rule Violation Line
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'permissionExists' (lines '153'-'164'). 153164
DataflowAnomalyAnalysis Found 'DU'-anomaly for variable 'permissionExists' (lines '153'-'177'). 153177

org/apache/fulcrum/security/spi/AbstractRoleManager.java

Rule Violation Line
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'roleExists' (lines '170'-'181'). 170181
DataflowAnomalyAnalysis Found 'DU'-anomaly for variable 'roleExists' (lines '170'-'195'). 170195

org/apache/fulcrum/security/util/SecuritySet.java

Rule Violation Line
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'changed' (lines '247'-'253'). 247253
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'changed' (lines '253'-'253'). 253

Files

org/apache/fulcrum/security/BaseSecurityService.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 41212
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 43
RedundantFieldInitializer Avoid using redundant field initializer for 'manager' 3 43
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the userClassName field if you want a default access modifier 3 47
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 47
DefaultPackage Use explicit scoping instead of the default package private level 3 47
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the groupClassName field if you want a default access modifier 3 48
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 48
DefaultPackage Use explicit scoping instead of the default package private level 3 48
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 49
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the permissionClassName field if you want a default access modifier 3 49
LongVariable Avoid excessively long variable names like permissionClassName 3 49
DefaultPackage Use explicit scoping instead of the default package private level 3 49
DefaultPackage Use explicit scoping instead of the default package private level 3 50
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the roleClassName field if you want a default access modifier 3 50
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 50
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 51
DefaultPackage Use explicit scoping instead of the default package private level 3 51
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the aclClassName field if you want a default access modifier 3 51
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 53
RedundantFieldInitializer Avoid using redundant field initializer for 'userManager' 3 53
RedundantFieldInitializer Avoid using redundant field initializer for 'roleManager' 3 55
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 55
RedundantFieldInitializer Avoid using redundant field initializer for 'groupManager' 3 57
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 57
RedundantFieldInitializer Avoid using redundant field initializer for 'permissionManager' 3 59
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 59
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 61
RedundantFieldInitializer Avoid using redundant field initializer for 'modelManager' 3 61
MissingOverride The method 'getUserManager()' is missing an @Override annotation. 3 6882
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 1 78
MissingOverride The method 'getGroupManager()' is missing an @Override annotation. 3 89103
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 1 99
MissingOverride The method 'getRoleManager()' is missing an @Override annotation. 3 110124
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 1 120
MissingOverride The method 'getPermissionManager()' is missing an @Override annotation. 3 131145
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 1 141
MissingOverride The method 'getModelManager()' is missing an @Override annotation. 3 152166
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 1 162
MethodArgumentCouldBeFinal Parameter 'manager' is not assigned and could be declared final 3 179
MissingOverride The method 'service(ServiceManager)' is missing an @Override annotation. 3 179182
MissingOverride The method 'initialize()' is missing an @Override annotation. 3 191198
SignatureDeclareThrowsException A method/constructor should not explicitly throw java.lang.Exception 3 191
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 3 193
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 3 194
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 3 195
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 3 196
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 3 197
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 3 210

org/apache/fulcrum/security/GroupManager.java

Rule Violation Priority Line
ShortVariable Avoid variables with short names like id 3 105

org/apache/fulcrum/security/ModelManager.java

Rule Violation Priority Line
ConstantsInInterface Avoid constants in interfaces. Interfaces define types, constants are implementation details better placed in classes or enums. See Effective Java, item 19. 3 34

org/apache/fulcrum/security/PermissionManager.java

Rule Violation Priority Line
ShortVariable Avoid variables with short names like id 3 106

org/apache/fulcrum/security/RoleManager.java

Rule Violation Priority Line
UnusedImports Avoid unused imports such as 'org.apache.fulcrum.security.entity.Group' 4 23
ShortVariable Avoid variables with short names like id 3 104

org/apache/fulcrum/security/UserManager.java

Rule Violation Priority Line
ShortVariable Avoid variables with short names like id 3 129

org/apache/fulcrum/security/acl/AccessControlException.java

Rule Violation Priority Line
MethodArgumentCouldBeFinal Parameter 'msg' is not assigned and could be declared final 3 43

org/apache/fulcrum/security/authenticator/Authenticator.java

Rule Violation Priority Line
UnnecessaryModifier Unnecessary modifiers 'public static final' on field 'ROLE': the field is declared in an interface type 3 35
UnnecessaryModifier Unnecessary modifier 'public' on method 'authenticate': the method is declared in an interface type 3 37

org/apache/fulcrum/security/authenticator/CryptoAuthenticator.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 47114
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the composed field if you want a default access modifier 3 49
DefaultPackage Use explicit scoping instead of the default package private level 3 49
RedundantFieldInitializer Avoid using redundant field initializer for 'composed' 3 49
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 50
RedundantFieldInitializer Avoid using redundant field initializer for 'cryptoService' 3 50
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 51
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 52
MethodArgumentCouldBeFinal Parameter 'password' is not assigned and could be declared final 3 67
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 3 67
LocalVariableCouldBeFinal Local variable 'ca' could be declared final 3 71
ShortVariable Avoid variables with short names like ca 3 71
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 72
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 73
LocalVariableCouldBeFinal Local variable 'output' could be declared final 3 73
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 74
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 80
MethodArgumentCouldBeFinal Parameter 'conf' is not assigned and could be declared final 3 91
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 93
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 94
MethodArgumentCouldBeFinal Parameter 'manager' is not assigned and could be declared final 3 101
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 3 112

org/apache/fulcrum/security/authenticator/NoOpAuthenticator.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 3746
MethodArgumentCouldBeFinal Parameter 'password' is not assigned and could be declared final 3 43
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 3 43

org/apache/fulcrum/security/authenticator/TextMatchAuthenticator.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 3655
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 3 46
MethodArgumentCouldBeFinal Parameter 'password' is not assigned and could be declared final 3 46
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 48
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 51
LocalVariableCouldBeFinal Local variable 'referenced' could be declared final 3 51
LocalVariableCouldBeFinal Local variable 'tested' could be declared final 3 52
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 53

org/apache/fulcrum/security/entity/Role.java

Rule Violation Priority Line
ShortClassName Avoid short class names like Role 4 3134

org/apache/fulcrum/security/entity/SecurityEntity.java

Rule Violation Priority Line
ShortVariable Avoid variables with short names like id 3 66

org/apache/fulcrum/security/entity/User.java

Rule Violation Priority Line
ShortClassName Avoid short class names like User 4 2957

org/apache/fulcrum/security/entity/impl/SecurityEntityImpl.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 34127
ShortVariable Avoid variables with short names like id 3 43
MissingOverride The method 'getId()' is missing an @Override annotation. 3 4851
ShortVariable Avoid variables with short names like id 3 56
MissingOverride The method 'setId(Object)' is missing an @Override annotation. 3 5659
MethodArgumentCouldBeFinal Parameter 'id' is not assigned and could be declared final 3 56
MissingOverride The method 'getName()' is missing an @Override annotation. 3 6467
MethodArgumentCouldBeFinal Parameter 'name' is not assigned and could be declared final 3 75
MissingOverride The method 'setName(String)' is missing an @Override annotation. 3 7583
AvoidUncheckedExceptionsInSignatures A method or constructor should not explicitly declare unchecked exceptions in its 'throws' clause 3 75
UseLocaleWithCaseConversions When doing a String.toLowerCase()/toUpperCase() call, use a Locale 3 81
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 88
MethodArgumentCouldBeFinal Parameter 'o' is not assigned and could be declared final 3 97
ShortVariable Avoid variables with short names like o 3 97
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'equals' (lines '99'-'104'). 5 99104
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'equals' (lines '99'-'108'). 5 99108
UnusedAssignment The initializer for variable 'equals' is never used (overwritten on lines 104, 108 and 112) 3 99
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'equals' (lines '99'-'112'). 5 99112
LocalVariableCouldBeFinal Local variable 'id' could be declared final 3 100
ShortVariable Avoid variables with short names like id 3 100
ConfusingTernary Avoid if (x != y) ..; else ..; 3 106113

org/apache/fulcrum/security/model/basic/BasicACLFactory.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 3685
MethodArgumentCouldBeFinal Parameter 'groupSet' is not assigned and could be declared final 3 51
DataflowAnomalyAnalysis Found 'DU'-anomaly for variable 'accessControlList' (lines '57'-'65'). 5 5765
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 59
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 3 70
MissingOverride The method 'getAccessControlList(User)' is missing an @Override annotation. 3 7084
LocalVariableCouldBeFinal Local variable 'groupSet' could be declared final 3 72
LocalVariableCouldBeFinal Local variable 'aclInstance' could be declared final 3 77
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 1 82

org/apache/fulcrum/security/model/basic/BasicAccessControlListImpl.java

Rule Violation Priority Line
ImmutableField Private field 'groupSet' could be made final; it is only initialized in the declaration or constructor. 3 42
UnusedAssignment The field initializer for 'groupSet' is never used (overwritten on line 61) 3 42
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 42
MethodArgumentCouldBeFinal Parameter 'groupSet' is not assigned and could be declared final 3 59
MissingOverride The method 'getGroups()' is missing an @Override annotation. 3 6972
MissingOverride The method 'hasGroup(Group)' is missing an @Override annotation. 3 8184
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 81
MissingOverride The method 'hasGroup(String)' is missing an @Override annotation. 3 93103
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 93
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 97
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 99

org/apache/fulcrum/security/model/basic/BasicModelManager.java

Rule Violation Priority Line
UnnecessaryModifier Unnecessary modifier 'public' on method 'grant': the method is declared in an interface type 3 50
UnnecessaryModifier Unnecessary modifier 'public' on method 'revoke': the method is declared in an interface type 3 62
UnnecessaryModifier Unnecessary modifier 'public' on method 'revokeAll': the method is declared in an interface type 3 76

org/apache/fulcrum/security/model/basic/entity/BasicGroup.java

Rule Violation Priority Line
UnnecessaryModifier Unnecessary modifier 'public' on method 'getUsers': the method is declared in an interface type 3 42
UnnecessaryModifier Unnecessary modifier 'public' on method 'setUsers': the method is declared in an interface type 3 50
UnnecessaryModifier Unnecessary modifier 'public' on method 'getUsersAsSet': the method is declared in an interface type 3 58
UnnecessaryModifier Unnecessary modifier 'public' on method 'setUsersAsSet': the method is declared in an interface type 3 67
UnnecessaryModifier Unnecessary modifier 'public' on method 'addUser': the method is declared in an interface type 3 75
UnnecessaryModifier Unnecessary modifier 'public' on method 'removeUser': the method is declared in an interface type 3 83

org/apache/fulcrum/security/model/basic/entity/BasicUser.java

Rule Violation Priority Line
UnnecessaryModifier Unnecessary modifier 'public' on method 'getGroups': the method is declared in an interface type 3 42
UnnecessaryModifier Unnecessary modifier 'public' on method 'setGroups': the method is declared in an interface type 3 50
UnnecessaryModifier Unnecessary modifier 'public' on method 'removeGroup': the method is declared in an interface type 3 58
UnnecessaryModifier Unnecessary modifier 'public' on method 'addGroup': the method is declared in an interface type 3 66
UnnecessaryModifier Unnecessary modifier 'public' on method 'setGroupsAsSet': the method is declared in an interface type 3 74
UnnecessaryModifier Unnecessary modifier 'public' on method 'getGroupsAsSet': the method is declared in an interface type 3 81

org/apache/fulcrum/security/model/basic/entity/impl/BasicGroupImpl.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 36125
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 44
MissingOverride The method 'getUsers()' is missing an @Override annotation. 3 5162
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 55
MissingOverride The method 'setUsers(UserSet)' is missing an @Override annotation. 3 7080
MethodArgumentCouldBeFinal Parameter 'userSet' is not assigned and could be declared final 3 70
ConfusingTernary Avoid if (x != y) ..; else ..; 3 7279
MissingOverride The method 'getUsersAsSet()' is missing an @Override annotation. 3 8891
MissingOverride The method 'setUsersAsSet(Set)' is missing an @Override annotation. 3 99102
MethodArgumentCouldBeFinal Parameter 'users' is not assigned and could be declared final 3 99
MissingOverride The method 'addUser(User)' is missing an @Override annotation. 3 110113
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 3 110
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 112
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 3 121
MissingOverride The method 'removeUser(User)' is missing an @Override annotation. 3 121124
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 123

org/apache/fulcrum/security/model/basic/entity/impl/BasicUserImpl.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 38181
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 49
MethodArgumentCouldBeFinal Parameter 'password' is not assigned and could be declared final 3 80
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 95
MethodArgumentCouldBeFinal Parameter 'groups' is not assigned and could be declared final 3 111
ConfusingTernary Avoid if (x != y) ..; else ..; 3 113120
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 130
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 132
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 142
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 144
MethodArgumentCouldBeFinal Parameter 'groups' is not assigned and could be declared final 3 154
OverrideBothEqualsAndHashcode Ensure you override both equals() and hashCode() 3 177

org/apache/fulcrum/security/model/dynamic/AbstractDynamicModelManager.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 43223
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 43223
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 3 57
MissingOverride The method 'revokeAll(Permission)' is missing an @Override annotation. 3 5775
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 5775
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'permissionExists' (lines '59'-'60'). 5 5960
UnusedAssignment The initializer for variable 'permissionExists' is never used (overwritten on line 60) 3 59
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 60
LocalVariableCouldBeFinal Local variable 'roles' could be declared final 3 63
LocalVariableCouldBeFinal Local variable 'role2' could be declared final 3 64
MissingOverride The method 'revokeAll(Group)' is missing an @Override annotation. 3 89113
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 89113
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 89
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'groupExists' (lines '91'-'92'). 5 9192
UnusedAssignment The initializer for variable 'groupExists' is never used (overwritten on line 92) 3 91
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 92
LocalVariableCouldBeFinal Local variable 'users' could be declared final 3 95
LocalVariableCouldBeFinal Local variable 'user' could be declared final 3 96
LocalVariableCouldBeFinal Local variable 'roles' could be declared final 3 101
LocalVariableCouldBeFinal Local variable 'role2' could be declared final 3 102
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 127145
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 3 127
MissingOverride The method 'revokeAll(User)' is missing an @Override annotation. 3 127145
UnusedAssignment The initializer for variable 'userExists' is never used (overwritten on line 130) 3 129
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'userExists' (lines '129'-'130'). 5 129130
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 130
LocalVariableCouldBeFinal Local variable 'groups' could be declared final 3 133
LocalVariableCouldBeFinal Local variable 'group' could be declared final 3 134
MissingOverride The method 'revokeAll(Role)' is missing an @Override annotation. 3 159182
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 159182
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 3 159
UnusedAssignment The initializer for variable 'roleExists' is never used (overwritten on line 162) 3 161
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'roleExists' (lines '161'-'162'). 5 161162
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 162
LocalVariableCouldBeFinal Local variable 'groups' could be declared final 3 165
LocalVariableCouldBeFinal Local variable 'group' could be declared final 3 166
LocalVariableCouldBeFinal Local variable 'permissions' could be declared final 3 171
LocalVariableCouldBeFinal Local variable 'permission' could be declared final 3 172
MethodArgumentCouldBeFinal Parameter 'delegator' is not assigned and could be declared final 3 189
MissingOverride The method 'addDelegate(User, User)' is missing an @Override annotation. 3 189201
MethodArgumentCouldBeFinal Parameter 'delegatee' is not assigned and could be declared final 3 189
LocalVariableCouldBeFinal Local variable 'dynamicDelegator' could be declared final 3 191
LocalVariableCouldBeFinal Local variable 'dynamicDelegatee' could be declared final 3 192
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 196
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 196
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 196
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 196
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 198
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 199
MethodArgumentCouldBeFinal Parameter 'delegatee' is not assigned and could be declared final 3 207
MethodArgumentCouldBeFinal Parameter 'delegator' is not assigned and could be declared final 3 207
MissingOverride The method 'removeDelegate(User, User)' is missing an @Override annotation. 3 207222
LocalVariableCouldBeFinal Local variable 'dynamicDelegator' could be declared final 3 209
LocalVariableCouldBeFinal Local variable 'dynamicDelegatee' could be declared final 3 210
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 212
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 212
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 214
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 215

org/apache/fulcrum/security/model/dynamic/DynamicACLFactory.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 47155
MissingOverride The method 'getAccessControlList(User)' is missing an @Override annotation. 3 5278
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 3 52
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 54
LocalVariableCouldBeFinal Local variable 'roleSets' could be declared final 3 54
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 54
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 55
UseConcurrentHashMap If you run in Java5 or newer and have concurrent access, you should use the ConcurrentHashMap implementation 3 55
LocalVariableCouldBeFinal Local variable 'permissionSets' could be declared final 3 55
LocalVariableCouldBeFinal Local variable 'users' could be declared final 3 57
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 57
LocalVariableCouldBeFinal Local variable 'aUser' could be declared final 3 63
LocalVariableCouldBeFinal Local variable 'aclInstance' could be declared final 3 71
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 1 76
MethodArgumentCouldBeFinal Parameter 'roles' is not assigned and could be declared final 3 95
MethodArgumentCouldBeFinal Parameter 'permissions' is not assigned and could be declared final 3 96
DataflowAnomalyAnalysis Found 'DU'-anomaly for variable 'accessControlList' (lines '101'-'108'). 5 101108
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 103
MethodArgumentCouldBeFinal Parameter 'users' is not assigned and could be declared final 3 118
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 3 118
LocalVariableCouldBeFinal Local variable 'u' could be declared final 3 120
LocalVariableCouldBeFinal Local variable 'delegatorUser' could be declared final 3 123
MethodArgumentCouldBeFinal Parameter 'roleSets' is not assigned and could be declared final 3 142
MethodArgumentCouldBeFinal Parameter 'permissionSets' is not assigned and could be declared final 3 142
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 3 142
LocalVariableCouldBeFinal Local variable 'group' could be declared final 3 144
LocalVariableCouldBeFinal Local variable 'roleSet' could be declared final 3 146
LocalVariableCouldBeFinal Local variable 'r' could be declared final 3 148
LocalVariableCouldBeFinal Local variable 'role' could be declared final 3 150
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 151

org/apache/fulcrum/security/model/dynamic/DynamicAccessControlList.java

Rule Violation Priority Line
TooManyMethods This class has too many methods, consider refactoring it. 3 46227

org/apache/fulcrum/security/model/dynamic/DynamicAccessControlListImpl.java

Rule Violation Priority Line
GodClass Possible God Class (WMC=53, ATFD=11, TCC=22.059%) 3 38429
TooManyMethods This class has too many methods, consider refactoring it. 3 39429
ImmutableField Private field 'roleSets' could be made final; it is only initialized in the declaration or constructor. 3 49
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 49
ImmutableField Private field 'permissionSets' could be made final; it is only initialized in the declaration or constructor. 3 52
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 52
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 55
ImmutableField Private field 'groupSet' could be made final; it is only initialized in the declaration or constructor. 3 55
ImmutableField Private field 'roleSet' could be made final; it is only initialized in the declaration or constructor. 3 58
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 58
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 61
ImmutableField Private field 'permissionSet' could be made final; it is only initialized in the declaration or constructor. 3 61
MethodArgumentCouldBeFinal Parameter 'roleSets' is not assigned and could be declared final 3 80
MethodArgumentCouldBeFinal Parameter 'permissionSets' is not assigned and could be declared final 3 81
LocalVariableCouldBeFinal Local variable 'entry' could be declared final 3 84
LocalVariableCouldBeFinal Local variable 'group' could be declared final 3 86
LocalVariableCouldBeFinal Local variable 'rs' could be declared final 3 88
ShortVariable Avoid variables with short names like rs 3 88
LocalVariableCouldBeFinal Local variable 'entry' could be declared final 3 92
LocalVariableCouldBeFinal Local variable 'role' could be declared final 3 94
ShortVariable Avoid variables with short names like ps 3 96
LocalVariableCouldBeFinal Local variable 'ps' could be declared final 3 96
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 107
MissingOverride The method 'getRoles(Group)' is missing an @Override annotation. 3 107114
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 110
MissingOverride The method 'getRoles()' is missing an @Override annotation. 3 121123
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 131
MissingOverride The method 'getPermissions(Group)' is missing an @Override annotation. 3 131144
LocalVariableCouldBeFinal Local variable 'permissionSet' could be declared final 3 132
LocalVariableCouldBeFinal Local variable 'role' could be declared final 3 135
MissingOverride The method 'getPermissions()' is missing an @Override annotation. 3 151153
MissingOverride The method 'hasRole(Role, Group)' is missing an @Override annotation. 3 162169
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 3 162
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 162
LocalVariableCouldBeFinal Local variable 'set' could be declared final 3 163
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 166
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 168
MethodArgumentCouldBeFinal Parameter 'groupset' is not assigned and could be declared final 3 179
MissingOverride The method 'hasRole(Role, GroupSet)' is missing an @Override annotation. 3 179194
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 3 179
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 182
LocalVariableCouldBeFinal Local variable 'group' could be declared final 3 185
LocalVariableCouldBeFinal Local variable 'roles' could be declared final 3 187
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 188
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 190
MissingOverride The method 'hasRole(String, String)' is missing an @Override annotation. 3 203222
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 3 203
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 203
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'roleFound' (lines '204'-'219'). 5 204219
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'roleFound' (lines '204'-'213'). 5 204213
LocalVariableCouldBeFinal Local variable 'entry' could be declared final 3 207
ShortVariable Avoid variables with short names like g 3 209
LocalVariableCouldBeFinal Local variable 'g' could be declared final 3 209
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 210
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 210
ShortVariable Avoid variables with short names like rs 3 212
LocalVariableCouldBeFinal Local variable 'rs' could be declared final 3 212
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'roleFound' (lines '213'-'219'). 5 213219
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'roleFound' (lines '213'-'213'). 5 213
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 213
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 217
MissingOverride The method 'hasRole(String, GroupSet)' is missing an @Override annotation. 3 232257
MethodArgumentCouldBeFinal Parameter 'groupset' is not assigned and could be declared final 3 232
MethodArgumentCouldBeFinal Parameter 'rolename' is not assigned and could be declared final 3 232
DataflowAnomalyAnalysis Found 'DU'-anomaly for variable 'role' (lines '236'-'257'). 5 236257
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 238
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 240
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 245
LocalVariableCouldBeFinal Local variable 'group' could be declared final 3 248
LocalVariableCouldBeFinal Local variable 'roles' could be declared final 3 250
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 251
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 253
MissingOverride The method 'hasRole(Role)' is missing an @Override annotation. 3 266268
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 3 266
MissingOverride The method 'hasRole(String)' is missing an @Override annotation. 3 276285
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 3 276
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 279
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 281
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 3 295
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 295
MissingOverride The method 'hasPermission(Permission, Group)' is missing an @Override annotation. 3 295302
LocalVariableCouldBeFinal Local variable 'set' could be declared final 3 296
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 299
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 301
MethodArgumentCouldBeFinal Parameter 'groupset' is not assigned and could be declared final 3 313
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 3 313
MissingOverride The method 'hasPermission(Permission, GroupSet)' is missing an @Override annotation. 3 313328
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 316
LocalVariableCouldBeFinal Local variable 'group' could be declared final 3 319
LocalVariableCouldBeFinal Local variable 'permissions' could be declared final 3 321
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 322
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 324
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 3 338
MissingOverride The method 'hasPermission(String, String)' is missing an @Override annotation. 3 338347
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 338
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 341
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 343
MissingOverride The method 'hasPermission(String, Group)' is missing an @Override annotation. 3 357366
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 3 357
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 357
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 360
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 362
MethodArgumentCouldBeFinal Parameter 'permissionName' is not assigned and could be declared final 3 377
MethodArgumentCouldBeFinal Parameter 'groupset' is not assigned and could be declared final 3 377
MissingOverride The method 'hasPermission(String, GroupSet)' is missing an @Override annotation. 3 377400
DataflowAnomalyAnalysis Found 'DU'-anomaly for variable 'permission' (lines '381'-'400'). 5 381400
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 382
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 383
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 388
LocalVariableCouldBeFinal Local variable 'group' could be declared final 3 391
LocalVariableCouldBeFinal Local variable 'permissions' could be declared final 3 393
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 394
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 396
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 3 408
MissingOverride The method 'hasPermission(Permission)' is missing an @Override annotation. 3 408410
MissingOverride The method 'hasPermission(String)' is missing an @Override annotation. 3 419428
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 3 419
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 422
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 424

org/apache/fulcrum/security/model/dynamic/DynamicModelManager.java

Rule Violation Priority Line
TooManyMethods This class has too many methods, consider refactoring it. 3 38212

org/apache/fulcrum/security/model/dynamic/entity/DynamicGroup.java

Rule Violation Priority Line
UnnecessaryModifier Unnecessary modifier 'public' on method 'getRoles': the method is declared in an interface type 3 43
UnnecessaryModifier Unnecessary modifier 'public' on method 'setRoles': the method is declared in an interface type 3 51
UnnecessaryModifier Unnecessary modifier 'public' on method 'addRole': the method is declared in an interface type 3 59
UnnecessaryModifier Unnecessary modifier 'public' on method 'removeRole': the method is declared in an interface type 3 67
UnnecessaryModifier Unnecessary modifier 'public' on method 'setRolesAsSet': the method is declared in an interface type 3 75
UnnecessaryModifier Unnecessary modifier 'public' on method 'getRolesAsSet': the method is declared in an interface type 3 82

org/apache/fulcrum/security/model/dynamic/entity/DynamicPermission.java

Rule Violation Priority Line
UnnecessaryModifier Unnecessary modifier 'public' on method 'getRoles': the method is declared in an interface type 3 43
UnnecessaryModifier Unnecessary modifier 'public' on method 'setRoles': the method is declared in an interface type 3 51
UnnecessaryModifier Unnecessary modifier 'public' on method 'addRole': the method is declared in an interface type 3 59
UnnecessaryModifier Unnecessary modifier 'public' on method 'removeRole': the method is declared in an interface type 3 67
UnnecessaryModifier Unnecessary modifier 'public' on method 'setRolesAsSet': the method is declared in an interface type 3 75
UnnecessaryModifier Unnecessary modifier 'public' on method 'getRolesAsSet': the method is declared in an interface type 3 82

org/apache/fulcrum/security/model/dynamic/entity/DynamicRole.java

Rule Violation Priority Line
UnnecessaryModifier Unnecessary modifier 'public' on method 'getPermissions': the method is declared in an interface type 3 45
UnnecessaryModifier Unnecessary modifier 'public' on method 'getPermissionsAsSet': the method is declared in an interface type 3 52
UnnecessaryModifier Unnecessary modifier 'public' on method 'setPermissions': the method is declared in an interface type 3 60
UnnecessaryModifier Unnecessary modifier 'public' on method 'setPermissionsAsSet': the method is declared in an interface type 3 68
UnnecessaryModifier Unnecessary modifier 'public' on method 'addPermission': the method is declared in an interface type 3 75
UnnecessaryModifier Unnecessary modifier 'public' on method 'removePermission': the method is declared in an interface type 3 82
UnnecessaryModifier Unnecessary modifier 'public' on method 'getGroups': the method is declared in an interface type 3 89
UnnecessaryModifier Unnecessary modifier 'public' on method 'setGroups': the method is declared in an interface type 3 97
UnnecessaryModifier Unnecessary modifier 'public' on method 'removeGroup': the method is declared in an interface type 3 104
UnnecessaryModifier Unnecessary modifier 'public' on method 'addGroup': the method is declared in an interface type 3 111
UnnecessaryModifier Unnecessary modifier 'public' on method 'setGroupsAsSet': the method is declared in an interface type 3 119
UnnecessaryModifier Unnecessary modifier 'public' on method 'getGroupsAsSet': the method is declared in an interface type 3 126

org/apache/fulcrum/security/model/dynamic/entity/DynamicUser.java

Rule Violation Priority Line
UnnecessaryModifier Unnecessary modifier 'public' on method 'getDelegatees': the method is declared in an interface type 3 47
UnnecessaryModifier Unnecessary modifier 'public' on method 'setDelegatees': the method is declared in an interface type 3 55
UnnecessaryModifier Unnecessary modifier 'public' on method 'getDelegators': the method is declared in an interface type 3 63
UnnecessaryModifier Unnecessary modifier 'public' on method 'setDelegators': the method is declared in an interface type 3 71

org/apache/fulcrum/security/model/dynamic/entity/impl/DynamicGroupImpl.java

Rule Violation Priority Line
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 37120
AtLeastOneConstructor Each class should declare at least one constructor 3 37120
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 39
MissingOverride The method 'getRoles()' is missing an @Override annotation. 3 4657
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 50
MethodArgumentCouldBeFinal Parameter 'roleSet' is not assigned and could be declared final 3 65
MissingOverride The method 'setRoles(RoleSet)' is missing an @Override annotation. 3 6575
ConfusingTernary Avoid if (x != y) ..; else ..; 3 6774
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 3 83
MissingOverride The method 'addRole(Role)' is missing an @Override annotation. 3 8386
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 85
MissingOverride The method 'removeRole(Role)' is missing an @Override annotation. 3 9497
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 3 94
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 96
MissingOverride The method 'setRolesAsSet(Set)' is missing an @Override annotation. 3 105108
MethodArgumentCouldBeFinal Parameter 'roles' is not assigned and could be declared final 3 105
MissingOverride The method 'getRolesAsSet()' is missing an @Override annotation. 3 116119

org/apache/fulcrum/security/model/dynamic/entity/impl/DynamicPermissionImpl.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 37120
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 37120
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 39
MissingOverride The method 'getRoles()' is missing an @Override annotation. 3 4657
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 50
MethodArgumentCouldBeFinal Parameter 'roleSet' is not assigned and could be declared final 3 65
MissingOverride The method 'setRoles(RoleSet)' is missing an @Override annotation. 3 6575
ConfusingTernary Avoid if (x != y) ..; else ..; 3 6774
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 3 83
MissingOverride The method 'addRole(Role)' is missing an @Override annotation. 3 8386
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 85
MissingOverride The method 'removeRole(Role)' is missing an @Override annotation. 3 9497
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 3 94
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 96
MissingOverride The method 'setRolesAsSet(Set)' is missing an @Override annotation. 3 105108
MethodArgumentCouldBeFinal Parameter 'roles' is not assigned and could be declared final 3 105
MissingOverride The method 'getRolesAsSet()' is missing an @Override annotation. 3 116119

org/apache/fulcrum/security/model/dynamic/entity/impl/DynamicRoleImpl.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 39200
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 39200
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 41
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 43
MissingOverride The method 'getPermissions()' is missing an @Override annotation. 3 5061
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 54
MissingOverride The method 'getPermissionsAsSet()' is missing an @Override annotation. 3 6972
MethodArgumentCouldBeFinal Parameter 'permissionSet' is not assigned and could be declared final 3 80
MissingOverride The method 'setPermissions(PermissionSet)' is missing an @Override annotation. 3 8090
ConfusingTernary Avoid if (x != y) ..; else ..; 3 8289
MissingOverride The method 'setPermissionsAsSet(Set)' is missing an @Override annotation. 3 98101
MethodArgumentCouldBeFinal Parameter 'permissions' is not assigned and could be declared final 3 98
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 3 108
MissingOverride The method 'addPermission(Permission)' is missing an @Override annotation. 3 108111
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 110
MissingOverride The method 'removePermission(Permission)' is missing an @Override annotation. 3 118121
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 3 118
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 120
MissingOverride The method 'getGroups()' is missing an @Override annotation. 3 128139
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 132
MissingOverride The method 'setGroups(GroupSet)' is missing an @Override annotation. 3 147157
MethodArgumentCouldBeFinal Parameter 'groupSet' is not assigned and could be declared final 3 147
ConfusingTernary Avoid if (x != y) ..; else ..; 3 149156
MissingOverride The method 'removeGroup(Group)' is missing an @Override annotation. 3 164167
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 164
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 166
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 174
MissingOverride The method 'addGroup(Group)' is missing an @Override annotation. 3 174177
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 176
MissingOverride The method 'setGroupsAsSet(Set)' is missing an @Override annotation. 3 185188
MethodArgumentCouldBeFinal Parameter 'groups' is not assigned and could be declared final 3 185
MissingOverride The method 'getGroupsAsSet()' is missing an @Override annotation. 3 196199

org/apache/fulcrum/security/model/dynamic/entity/impl/DynamicUserImpl.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 4195
DataClass The class 'DynamicUserImpl' is suspected to be a Data Class (WOC=0.000%, NOPA=0, NOAM=4, WMC=4) 3 4195
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 48
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 50
MissingOverride The method 'getDelegatees()' is missing an @Override annotation. 3 5861
MethodArgumentCouldBeFinal Parameter 'delegatees' is not assigned and could be declared final 3 69
MissingOverride The method 'setDelegatees(Set)' is missing an @Override annotation. 3 6972
MissingOverride The method 'getDelegators()' is missing an @Override annotation. 3 8083
MissingOverride The method 'setDelegators(Set)' is missing an @Override annotation. 3 9194
MethodArgumentCouldBeFinal Parameter 'delegators' is not assigned and could be declared final 3 91

org/apache/fulcrum/security/model/turbine/AbstractTurbineModelManager.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 45232
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 54
MethodArgumentCouldBeFinal Parameter 'conf' is not assigned and could be declared final 3 62
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'g' (lines '79'-'82'). 5 7982
UnusedAssignment The initializer for variable 'g' is never used (overwritten on lines 82 and 86) 3 79
ShortVariable Avoid variables with short names like g 3 79
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'g' (lines '82'-'86'). 5 8286
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 82
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 86
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 89
PreserveStackTrace New exception is thrown in catch block, original stack trace may be lost 3 93
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 113116
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 3 113
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 3 134
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 134160
MethodArgumentCouldBeFinal Parameter 'cascadeDelete' is not assigned and could be declared final 3 134
UnusedAssignment The initializer for variable 'roleExists' is never used (overwritten on line 137) 3 136
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'roleExists' (lines '136'-'137'). 5 136137
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 137
LocalVariableCouldBeFinal Local variable 'permissions' could be declared final 3 141
LocalVariableCouldBeFinal Local variable 'permission' could be declared final 3 142
LocalVariableCouldBeFinal Local variable 'userGroupRoles' could be declared final 3 147
LocalVariableCouldBeFinal Local variable 'userGroupRole' could be declared final 3 148
LocalVariableCouldBeFinal Local variable 'ugr' could be declared final 3 150
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 151
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 151
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 3 175
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 175193
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'userExists' (lines '177'-'178'). 5 177178
UnusedAssignment The initializer for variable 'userExists' is never used (overwritten on line 178) 3 177
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 178
LocalVariableCouldBeFinal Local variable 'userGroupRoles' could be declared final 3 182
LocalVariableCouldBeFinal Local variable 'userGroupRole' could be declared final 3 183
LocalVariableCouldBeFinal Local variable 'ugr' could be declared final 3 185
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 186
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 186
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 208226
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 208
UnusedAssignment The initializer for variable 'groupExists' is never used (overwritten on line 211) 3 210
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'groupExists' (lines '210'-'211'). 5 210211
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 211
LocalVariableCouldBeFinal Local variable 'userGroupRoles' could be declared final 3 215
LocalVariableCouldBeFinal Local variable 'userGroupRole' could be declared final 3 216
LocalVariableCouldBeFinal Local variable 'ugr' could be declared final 3 218
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 219
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 219

org/apache/fulcrum/security/model/turbine/TurbineACLFactory.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 46163
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 49
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 3 76
LocalVariableCouldBeFinal Local variable 'tu' could be declared final 3 80
ShortVariable Avoid variables with short names like tu 3 80
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 81
LocalVariableCouldBeFinal Local variable 'tugr' could be declared final 3 81
LocalVariableCouldBeFinal Local variable 'aclInstance' could be declared final 3 84
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 1 89
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 1 93
LongVariable Avoid excessively long variable names like turbineUserGroupRoleSet 3 110
MethodArgumentCouldBeFinal Parameter 'turbineUserGroupRoleSet' is not assigned and could be declared final 3 110
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'groupManager' (lines '112'-'119'). 5 112119
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'roleManager' (lines '113'-'118'). 5 113118
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'modelManager' (lines '114'-'120'). 5 114120
DataflowAnomalyAnalysis Found 'DU'-anomaly for variable 'roleManager' (lines '118'-'161'). 5 118161
ShortVariable Avoid variables with short names like g 3 125
UnusedAssignment The initializer for variable 'g' is never used (overwritten on lines 128 and 132) 3 125
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'g' (lines '125'-'128'). 5 125128
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'g' (lines '128'-'132'). 5 128132
UnusedAssignment The value assigned to variable 'g' is never used 3 128
PreserveStackTrace New exception is thrown in catch block, original stack trace may be lost 3 139
EmptyCatchBlock Avoid empty catch blocks 3 144147
ExceptionAsFlowControl Avoid using exceptions as flow control. 3 144
DataflowAnomalyAnalysis Found 'DU'-anomaly for variable 'accessControlList' (lines '152'-'161'). 5 152161

org/apache/fulcrum/security/model/turbine/TurbineAccessControlList.java

Rule Violation Priority Line
TooManyMethods This class has too many methods, consider refactoring it. 3 48218

org/apache/fulcrum/security/model/turbine/TurbineAccessControlListImpl.java

Rule Violation Priority Line
GodClass Possible God Class (WMC=57, ATFD=12, TCC=10.526%) 3 53528
TooManyMethods This class has too many methods, consider refactoring it. 3 55528
ImmutableField Private field 'roleSets' could be made final; it is only initialized in the declaration or constructor. 3 60
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 60
ImmutableField Private field 'permissionSets' could be made final; it is only initialized in the declaration or constructor. 3 63
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 63
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 66
ImmutableField Private field 'groupManager' could be made final; it is only initialized in the declaration or constructor. 3 69
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 69
ImmutableField Private field 'groupSet' could be made final; it is only initialized in the declaration or constructor. 3 72
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 72
ImmutableField Private field 'roleSet' could be made final; it is only initialized in the declaration or constructor. 3 75
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 75
ImmutableField Private field 'permissionSet' could be made final; it is only initialized in the declaration or constructor. 3 78
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 78
ImmutableField Private field 'logger' could be made final; it is only initialized in the declaration or constructor. 3 81
LoggerIsNotStaticFinal The Logger variable declaration does not contain the static and final modifiers 2 81
SingularField Perhaps 'logger' could be replaced by a local variable. 3 81
CyclomaticComplexity The constructor 'TurbineAccessControlListImpl(Set, GroupManager, RoleManager, TurbineModelManager, Logger)' has a cyclomatic complexity of 11. 3 102167
MethodArgumentCouldBeFinal Parameter 'turbineUserGroupRoleSet' is not assigned and could be declared final 3 103
LongVariable Avoid excessively long variable names like turbineUserGroupRoleSet 3 103
MethodArgumentCouldBeFinal Parameter 'groupManager' is not assigned and could be declared final 3 104
MethodArgumentCouldBeFinal Parameter 'logger' is not assigned and could be declared final 3 104
MethodArgumentCouldBeFinal Parameter 'roleManager' is not assigned and could be declared final 3 104
MethodArgumentCouldBeFinal Parameter 'modelManager' is not assigned and could be declared final 3 104
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 106
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 107
LocalVariableCouldBeFinal Local variable 'ugr' could be declared final 3 112
LocalVariableCouldBeFinal Local variable 'group' could be declared final 3 114
ConfusingTernary Avoid if (x != y) ..; else ..; 3 124137
LocalVariableCouldBeFinal Local variable 'rs' could be declared final 3 144
ShortVariable Avoid variables with short names like rs 3 144
AvoidInstantiatingObjectsInLoops Avoid instantiating new objects inside loops 3 144
ConstructorCallsOverridableMethod Overridable method 'getPermissions' called during object construction 1 150
LocalVariableCouldBeFinal Local variable 'ps' could be declared final 3 150
ShortVariable Avoid variables with short names like ps 3 150
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 176
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 180
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 203
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 207
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 231
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 3 231
LocalVariableCouldBeFinal Local variable 'set' could be declared final 3 233
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 236
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 238
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 3 251
MethodArgumentCouldBeFinal Parameter 'groupset' is not assigned and could be declared final 3 251
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 255
LocalVariableCouldBeFinal Local variable 'group' could be declared final 3 258
LocalVariableCouldBeFinal Local variable 'roles' could be declared final 3 260
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 261
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 263
MethodArgumentCouldBeFinal Parameter 'roleName' is not assigned and could be declared final 3 278
MethodArgumentCouldBeFinal Parameter 'groupName' is not assigned and could be declared final 3 278
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 282
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 284
MethodArgumentCouldBeFinal Parameter 'rolename' is not assigned and could be declared final 3 300
MethodArgumentCouldBeFinal Parameter 'groupset' is not assigned and could be declared final 3 300
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 304
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 306
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 3 319
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 3 331
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 335
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 337
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 351
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 3 351
LocalVariableCouldBeFinal Local variable 'set' could be declared final 3 353
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 356
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 358
MethodArgumentCouldBeFinal Parameter 'groupset' is not assigned and could be declared final 3 371
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 3 371
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 375
LocalVariableCouldBeFinal Local variable 'group' could be declared final 3 378
LocalVariableCouldBeFinal Local variable 'permissions' could be declared final 3 380
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 381
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 383
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 398
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 3 398
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 402
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 404
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 3 418
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 418
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 422
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 424
MethodArgumentCouldBeFinal Parameter 'permissionName' is not assigned and could be declared final 3 440
MethodArgumentCouldBeFinal Parameter 'groupset' is not assigned and could be declared final 3 440
DataflowAnomalyAnalysis Found 'DU'-anomaly for variable 'permission' (lines '445'-'466'). 5 445466
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 447
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 449
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 454
LocalVariableCouldBeFinal Local variable 'group' could be declared final 3 457
LocalVariableCouldBeFinal Local variable 'permissions' could be declared final 3 459
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 460
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 462
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 3 475
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 3 487
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 491
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 493
ConfusingTernary Avoid if (x != y) ..; else ..; 3 514515
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 514515

org/apache/fulcrum/security/model/turbine/TurbineModelManager.java

Rule Violation Priority Line
LongVariable Avoid excessively long variable names like GLOBAL_GROUP_ATTR_NAME 3 43
UnnecessaryModifier Unnecessary modifier 'public' on field 'GLOBAL_GROUP_NAME': the field is declared in an interface type 3 48
UnnecessaryModifier Unnecessary modifier 'public' on enum 'Privilege': the enum is declared in an interface type 3 5456
UnnecessaryModifier Unnecessary modifier 'public' on method 'getGlobalGroupName': the method is declared in an interface type 3 78

org/apache/fulcrum/security/model/turbine/entity/TurbinePermission.java

Rule Violation Priority Line
UnnecessaryModifier Unnecessary modifier 'public' on method 'getRoles': the method is declared in an interface type 3 43
UnnecessaryModifier Unnecessary modifier 'public' on method 'setRoles': the method is declared in an interface type 3 51
UnnecessaryModifier Unnecessary modifier 'public' on method 'addRole': the method is declared in an interface type 3 59
UnnecessaryModifier Unnecessary modifier 'public' on method 'removeRole': the method is declared in an interface type 3 67
UnnecessaryModifier Unnecessary modifier 'public' on method 'setRolesAsSet': the method is declared in an interface type 3 76
UnnecessaryModifier Unnecessary modifier 'public' on method 'getRolesAsSet': the method is declared in an interface type 3 84

org/apache/fulcrum/security/model/turbine/entity/TurbineRole.java

Rule Violation Priority Line
UnnecessaryModifier Unnecessary modifier 'public' on method 'getPermissions': the method is declared in an interface type 3 43
UnnecessaryModifier Unnecessary modifier 'public' on method 'getPermissionsAsSet': the method is declared in an interface type 3 50
UnnecessaryModifier Unnecessary modifier 'public' on method 'setPermissions': the method is declared in an interface type 3 58
UnnecessaryModifier Unnecessary modifier 'public' on method 'setPermissionsAsSet': the method is declared in an interface type 3 67
UnnecessaryModifier Unnecessary modifier 'public' on method 'addPermission': the method is declared in an interface type 3 74
UnnecessaryModifier Unnecessary modifier 'public' on method 'removePermission': the method is declared in an interface type 3 81

org/apache/fulcrum/security/model/turbine/entity/TurbineRolePermissionoff.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 3372
DataClass The class 'TurbineRolePermissionoff' is suspected to be a Data Class (WOC=0.000%, NOPA=0, NOAM=4, WMC=4) 3 3372
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 3 59
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 3 68

org/apache/fulcrum/security/model/turbine/entity/TurbineUserGroupRole.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 37204
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 86
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 3 97
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 3 108
CyclomaticComplexity The method 'equals(Object)' has a cyclomatic complexity of 12. 3 114162
MethodArgumentCouldBeFinal Parameter 'obj' is not assigned and could be declared final 3 114
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 118
ConfusingTernary Avoid if (x != y) ..; else ..; 3 120161
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 122
LocalVariableCouldBeFinal Local variable 'mObj' could be declared final 3 126
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 127
ConfusingTernary Avoid if (x != y) ..; else ..; 3 127137
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 129
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 131
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 136
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 138
ConfusingTernary Avoid if (x != y) ..; else ..; 3 138148
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 140
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 142
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 147
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 149
ConfusingTernary Avoid if (x != y) ..; else ..; 3 149159
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 151
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 153
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 158
LocalVariableCouldBeFinal Local variable 'hcBuilder' could be declared final 3 167
LocalVariableCouldBeFinal Local variable 'role' could be declared final 3 169
LocalVariableCouldBeFinal Local variable 'user' could be declared final 3 175
LocalVariableCouldBeFinal Local variable 'group' could be declared final 3 181
ShortVariable Avoid variables with short names like sb 3 193
LocalVariableCouldBeFinal Local variable 'sb' could be declared final 3 193
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 195
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 195
ConfusingTernary Avoid if (x != y) ..; else ..; 3 195
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 196
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 197
ConfusingTernary Avoid if (x != y) ..; else ..; 3 197
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 197
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 198
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 199
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 199
ConfusingTernary Avoid if (x != y) ..; else ..; 3 199

org/apache/fulcrum/security/model/turbine/entity/TurbineUserGroupRoleEntity.java

Rule Violation Priority Line
UnnecessaryModifier Unnecessary modifier 'public' on method 'getUserGroupRoleSet': the method is declared in an interface type 3 43
UnnecessaryModifier Unnecessary modifier 'public' on method 'setUserGroupRoleSet': the method is declared in an interface type 3 51
UnnecessaryModifier Unnecessary modifier 'public' on method 'addUserGroupRole': the method is declared in an interface type 3 59
UnnecessaryModifier Unnecessary modifier 'public' on method 'removeUserGroupRole': the method is declared in an interface type 3 67

org/apache/fulcrum/security/model/turbine/entity/impl/AbstractTurbineSecurityEntityImpl.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 3788
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 43
MissingOverride The method 'getUserGroupRoleSet()' is missing an @Override annotation. 3 5154
MethodArgumentCouldBeFinal Parameter 'userGroupRoleSet' is not assigned and could be declared final 3 62
MissingOverride The method 'setUserGroupRoleSet(Set)' is missing an @Override annotation. 3 6265
MethodArgumentCouldBeFinal Parameter 'userGroupRole' is not assigned and could be declared final 3 73
MissingOverride The method 'addUserGroupRole(TurbineUserGroupRole)' is missing an @Override annotation. 3 7376
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 75
MissingOverride The method 'removeUserGroupRole(TurbineUserGroupRole)' is missing an @Override annotation. 3 8487
MethodArgumentCouldBeFinal Parameter 'userGroupRole' is not assigned and could be declared final 3 84
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 86

org/apache/fulcrum/security/model/turbine/entity/impl/TurbineGroupImpl.java

Rule Violation Priority Line
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 3235
AtLeastOneConstructor Each class should declare at least one constructor 3 3235

org/apache/fulcrum/security/model/turbine/entity/impl/TurbinePermissionImpl.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 37120
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 37120
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 39
MissingOverride The method 'getRoles()' is missing an @Override annotation. 3 4657
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 50
MethodArgumentCouldBeFinal Parameter 'roleSet' is not assigned and could be declared final 3 65
MissingOverride The method 'setRoles(RoleSet)' is missing an @Override annotation. 3 6575
ConfusingTernary Avoid if (x != y) ..; else ..; 3 6774
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 3 83
MissingOverride The method 'addRole(Role)' is missing an @Override annotation. 3 8386
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 85
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 3 94
MissingOverride The method 'removeRole(Role)' is missing an @Override annotation. 3 9497
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 96
MethodArgumentCouldBeFinal Parameter 'roles' is not assigned and could be declared final 3 105
MissingOverride The method 'setRolesAsSet(Set)' is missing an @Override annotation. 3 105108
MissingOverride The method 'getRolesAsSet()' is missing an @Override annotation. 3 116119

org/apache/fulcrum/security/model/turbine/entity/impl/TurbineRoleImpl.java

Rule Violation Priority Line
MissingSerialVersionUID Classes implementing Serializable should set a serialVersionUID 3 36118
AtLeastOneConstructor Each class should declare at least one constructor 3 36118
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 38
MissingOverride The method 'getPermissions()' is missing an @Override annotation. 3 4556
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 49
MissingOverride The method 'getPermissionsAsSet()' is missing an @Override annotation. 3 6467
MethodArgumentCouldBeFinal Parameter 'permissionSet' is not assigned and could be declared final 3 75
MissingOverride The method 'setPermissions(PermissionSet)' is missing an @Override annotation. 3 7585
ConfusingTernary Avoid if (x != y) ..; else ..; 3 7784
MissingOverride The method 'setPermissionsAsSet(Set)' is missing an @Override annotation. 3 9497
MethodArgumentCouldBeFinal Parameter 'permissions' is not assigned and could be declared final 3 94
MissingOverride The method 'addPermission(Permission)' is missing an @Override annotation. 3 104107
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 3 104
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 106
MissingOverride The method 'removePermission(Permission)' is missing an @Override annotation. 3 114117
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 3 114
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 116

org/apache/fulcrum/security/model/turbine/entity/impl/TurbineUserImpl.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 33174
DataClass The class 'TurbineUserImpl' is suspected to be a Data Class (WOC=9.091%, NOPA=0, NOAM=10, WMC=11) 3 33174
MethodArgumentCouldBeFinal Parameter 'password' is not assigned and could be declared final 3 63
MethodArgumentCouldBeFinal Parameter 'firstName' is not assigned and could be declared final 3 85
MethodArgumentCouldBeFinal Parameter 'lastName' is not assigned and could be declared final 3 107
MethodArgumentCouldBeFinal Parameter 'email' is not assigned and could be declared final 3 129
MethodReturnsInternalArray Returning 'objectData' may expose an internal array. 3 145
MethodArgumentCouldBeFinal Parameter 'objectdata' is not assigned and could be declared final 3 154
ArrayIsStoredDirectly The user-supplied array 'objectdata' is stored directly. 3 154
OverrideBothEqualsAndHashcode Ensure you override both equals() and hashCode() 3 165

org/apache/fulcrum/security/spi/AbstractEntityManager.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 3362
MethodArgumentCouldBeFinal Parameter 'conf' is not assigned and could be declared final 3 41
MissingOverride The method 'configure(Configuration)' is missing an @Override annotation. 3 4144
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 43
MethodArgumentCouldBeFinal Parameter 'className' is not assigned and could be declared final 3 57

org/apache/fulcrum/security/spi/AbstractGroupManager.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 35192
LocalVariableCouldBeFinal Local variable 'group' could be declared final 3 60
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 60
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 63
MethodArgumentCouldBeFinal Parameter 'groupName' is not assigned and could be declared final 3 84
LocalVariableCouldBeFinal Local variable 'group' could be declared final 3 86
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 87
MethodArgumentCouldBeFinal Parameter 'name' is not assigned and could be declared final 3 103
LocalVariableCouldBeFinal Local variable 'group' could be declared final 3 106
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 106
MethodArgumentCouldBeFinal Parameter 'id' is not assigned and could be declared final 3 128
ShortVariable Avoid variables with short names like id 3 128
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 131
LocalVariableCouldBeFinal Local variable 'group' could be declared final 3 131
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 151173
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 151
UnusedAssignment The initializer for variable 'groupExists' is never used (overwritten on line 162) 3 153
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'groupExists' (lines '153'-'162'). 5 153162
DataflowAnomalyAnalysis Found 'DU'-anomaly for variable 'groupExists' (lines '153'-'173'). 5 153173
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 153
ConfusingTernary Avoid if (x != y) ..; else ..; 3 163172
MethodArgumentCouldBeFinal Parameter 'group' is not assigned and could be declared final 3 187

org/apache/fulcrum/security/spi/AbstractManager.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 41196
CommentDefaultAccessModifier To avoid mistakes add a comment at the beginning of the composed field if you want a default access modifier 3 43
DefaultPackage Use explicit scoping instead of the default package private level 3 43
RedundantFieldInitializer Avoid using redundant field initializer for 'composed' 3 43
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 45
RedundantFieldInitializer Avoid using redundant field initializer for 'manager' 3 45
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 46
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 47
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 48
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 49
MethodArgumentCouldBeFinal Parameter 'manager' is not assigned and could be declared final 3 148
NullAssignment Assigning an Object to null is a code smell. Consider refactoring. 3 161
MethodArgumentCouldBeFinal Parameter 'obj' is not assigned and could be declared final 3 167
MethodArgumentCouldBeFinal Parameter 'lookup' is not assigned and could be declared final 3 180
AvoidUncheckedExceptionsInSignatures A method or constructor should not explicitly declare unchecked exceptions in its 'throws' clause 3 180
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'component' (lines '182'-'186'). 5 182186
UnusedAssignment The initializer for variable 'component' is never used (overwritten on line 186) 3 182
DataflowAnomalyAnalysis Found 'DU'-anomaly for variable 'component' (lines '186'-'194'). 5 186194
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 1 190

org/apache/fulcrum/security/spi/AbstractPermissionManager.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 36196
LocalVariableCouldBeFinal Local variable 'permission' could be declared final 3 61
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 61
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 64
MethodArgumentCouldBeFinal Parameter 'permName' is not assigned and could be declared final 3 84
LocalVariableCouldBeFinal Local variable 'perm' could be declared final 3 86
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 87
MethodArgumentCouldBeFinal Parameter 'name' is not assigned and could be declared final 3 103
LocalVariableCouldBeFinal Local variable 'permission' could be declared final 3 106
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 106
ShortVariable Avoid variables with short names like id 3 128
MethodArgumentCouldBeFinal Parameter 'id' is not assigned and could be declared final 3 128
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 131
LocalVariableCouldBeFinal Local variable 'permission' could be declared final 3 131
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 151177
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 3 151
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'permissionExists' (lines '153'-'164'). 5 153164
UnusedAssignment The initializer for variable 'permissionExists' is never used (overwritten on line 164) 3 153
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 153
DataflowAnomalyAnalysis Found 'DU'-anomaly for variable 'permissionExists' (lines '153'-'177'). 5 153177
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 170
MethodArgumentCouldBeFinal Parameter 'permission' is not assigned and could be declared final 3 191

org/apache/fulcrum/security/spi/AbstractRoleManager.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 36213
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 66
LocalVariableCouldBeFinal Local variable 'role' could be declared final 3 66
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 69
MethodArgumentCouldBeFinal Parameter 'roleName' is not assigned and could be declared final 3 92
LocalVariableCouldBeFinal Local variable 'role' could be declared final 3 94
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 95
MethodArgumentCouldBeFinal Parameter 'name' is not assigned and could be declared final 3 116
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 119
LocalVariableCouldBeFinal Local variable 'role' could be declared final 3 119
MethodArgumentCouldBeFinal Parameter 'id' is not assigned and could be declared final 3 143
ShortVariable Avoid variables with short names like id 3 143
LocalVariableCouldBeFinal Local variable 'role' could be declared final 3 146
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 146
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 3 168
AvoidSynchronizedAtMethodLevel Use block level rather than method level synchronization 3 168195
PrematureDeclaration Avoid declaring a variable if it is unreferenced before a possible exit point. 3 170
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'roleExists' (lines '170'-'181'). 5 170181
DataflowAnomalyAnalysis Found 'DU'-anomaly for variable 'roleExists' (lines '170'-'195'). 5 170195
UnusedAssignment The initializer for variable 'roleExists' is never used (overwritten on line 181) 3 170
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 187
MethodArgumentCouldBeFinal Parameter 'role' is not assigned and could be declared final 3 209

org/apache/fulcrum/security/spi/AbstractUserManager.java

Rule Violation Priority Line
AtLeastOneConstructor Each class should declare at least one constructor 3 42337
FieldDeclarationsShouldBeAtStartOfClass Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. 3 55
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 55
FieldDeclarationsShouldBeAtStartOfClass Fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes. 3 56
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 56
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 3 62
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 64
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 3 79
MethodArgumentCouldBeFinal Parameter 'userName' is not assigned and could be declared final 3 102
MethodArgumentCouldBeFinal Parameter 'password' is not assigned and could be declared final 3 102
LocalVariableCouldBeFinal Local variable 'user' could be declared final 3 104
MethodArgumentCouldBeFinal Parameter 'name' is not assigned and could be declared final 3 110
LocalVariableCouldBeFinal Local variable 'user' could be declared final 3 113
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 113
MethodArgumentCouldBeFinal Parameter 'id' is not assigned and could be declared final 3 135
ShortVariable Avoid variables with short names like id 3 135
LocalVariableCouldBeFinal Local variable 'user' could be declared final 3 138
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 138
MethodArgumentCouldBeFinal Parameter 'password' is not assigned and could be declared final 3 163
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 3 163
MethodArgumentCouldBeFinal Parameter 'newPassword' is not assigned and could be declared final 3 194
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 3 194
MethodArgumentCouldBeFinal Parameter 'oldPassword' is not assigned and could be declared final 3 194
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 3 230
MethodArgumentCouldBeFinal Parameter 'password' is not assigned and could be declared final 3 230
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 259
LocalVariableCouldBeFinal Local variable 'user' could be declared final 3 259
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 262
MethodArgumentCouldBeFinal Parameter 'userName' is not assigned and could be declared final 3 283
LocalVariableCouldBeFinal Local variable 'user' could be declared final 3 285
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 286
MethodArgumentCouldBeFinal Parameter 'user' is not assigned and could be declared final 3 304
MethodArgumentCouldBeFinal Parameter 'password' is not assigned and could be declared final 3 304
AvoidCatchingGenericException Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 3 319

org/apache/fulcrum/security/util/DataBackendException.java

Rule Violation Priority Line
MethodArgumentCouldBeFinal Parameter 'msg' is not assigned and could be declared final 3 42
MethodArgumentCouldBeFinal Parameter 'msg' is not assigned and could be declared final 3 57
MethodArgumentCouldBeFinal Parameter 'nested' is not assigned and could be declared final 3 57

org/apache/fulcrum/security/util/EntityExistsException.java

Rule Violation Priority Line
MethodArgumentCouldBeFinal Parameter 'msg' is not assigned and could be declared final 3 42

org/apache/fulcrum/security/util/FulcrumSecurityException.java

Rule Violation Priority Line
MethodArgumentCouldBeFinal Parameter 'msg' is not assigned and could be declared final 3 41
MethodArgumentCouldBeFinal Parameter 'nested' is not assigned and could be declared final 3 56
MethodArgumentCouldBeFinal Parameter 'msg' is not assigned and could be declared final 3 56

org/apache/fulcrum/security/util/GroupSet.java

Rule Violation Priority Line
MethodArgumentCouldBeFinal Parameter 'groups' is not assigned and could be declared final 3 61
MethodArgumentCouldBeFinal Parameter 'groupName' is not assigned and could be declared final 3 77
MethodArgumentCouldBeFinal Parameter 'groupId' is not assigned and could be declared final 3 92
LocalVariableCouldBeFinal Local variable 'sb' could be declared final 3 106
ShortVariable Avoid variables with short names like sb 3 106
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 107

org/apache/fulcrum/security/util/PasswordMismatchException.java

Rule Violation Priority Line
MethodArgumentCouldBeFinal Parameter 'msg' is not assigned and could be declared final 3 42

org/apache/fulcrum/security/util/PermissionSet.java

Rule Violation Priority Line
MethodArgumentCouldBeFinal Parameter 'permissions' is not assigned and could be declared final 3 61
MethodArgumentCouldBeFinal Parameter 'permissionName' is not assigned and could be declared final 3 78
MethodArgumentCouldBeFinal Parameter 'permissionId' is not assigned and could be declared final 3 94
ShortVariable Avoid variables with short names like sb 3 108
LocalVariableCouldBeFinal Local variable 'sb' could be declared final 3 108
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 109

org/apache/fulcrum/security/util/RoleSet.java

Rule Violation Priority Line
MethodArgumentCouldBeFinal Parameter 'roles' is not assigned and could be declared final 3 61
MethodArgumentCouldBeFinal Parameter 'roleName' is not assigned and could be declared final 3 77
MethodArgumentCouldBeFinal Parameter 'roleId' is not assigned and could be declared final 3 92
ShortVariable Avoid variables with short names like sb 3 106
LocalVariableCouldBeFinal Local variable 'sb' could be declared final 3 106
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 107

org/apache/fulcrum/security/util/SecuritySet.java

Rule Violation Priority Line
AbstractNaming Abstract classes should be named AbstractXXX 3 48347
TooManyMethods This class has too many methods, consider refactoring it. 3 48347
RedundantFieldInitializer Avoid using redundant field initializer for 'nameMap' 3 53
UnusedAssignment The field initializer for 'nameMap' is never used (overwritten on line 63) 3 53
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 53
BeanMembersShouldSerialize Found non-transient, non-static member. Please mark as transient or provide accessors. 3 56
UnusedAssignment The field initializer for 'idMap' is never used (overwritten on line 64) 3 56
RedundantFieldInitializer Avoid using redundant field initializer for 'idMap' 3 56
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 63
UseDiamondOperator Explicit type arguments can be replaced by Diamond Operator 3 64
MethodArgumentCouldBeFinal Parameter 'name' is not assigned and could be declared final 3 114
SimplifiedTernary Ternary operators that can be simplified with || or && 3 116
MethodArgumentCouldBeFinal Parameter 'id' is not assigned and could be declared final 3 125
ShortVariable Avoid variables with short names like id 3 125
SimplifiedTernary Ternary operators that can be simplified with || or && 3 127
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 138
LocalVariableCouldBeFinal Local variable 'sbuf' could be declared final 3 160
LocalVariableCouldBeFinal Local variable 'it' could be declared final 3 162
LocalVariableCouldBeFinal Local variable 'se' could be declared final 3 163
ShortVariable Avoid variables with short names like se 3 163
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 165
LawOfDemeter Potential violation of Law of Demeter (object not created locally) 3 167
MethodArgumentCouldBeFinal Parameter 'o' is not assigned and could be declared final 3 182
ShortVariable Avoid variables with short names like o 3 182
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 186
MethodArgumentCouldBeFinal Parameter 'collection' is not assigned and could be declared final 3 209
MethodArgumentCouldBeFinal Parameter 'collection' is not assigned and could be declared final 3 215
ForLoopsMustUseBraces Avoid using for statements without curly braces 3 219220
ControlStatementBraces This statement should have braces 3 219220
LocalVariableCouldBeFinal Local variable 'o' could be declared final 3 219
MethodArgumentCouldBeFinal Parameter 'collection' is not assigned and could be declared final 3 232
LocalVariableCouldBeFinal Local variable 'object' could be declared final 3 234
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 238
MethodArgumentCouldBeFinal Parameter 'collection' is not assigned and could be declared final 3 245
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'changed' (lines '247'-'253'). 5 247253
LocalVariableCouldBeFinal Local variable 'object' could be declared final 3 248
LocalVariableCouldBeFinal Local variable 'result' could be declared final 3 250
DataflowAnomalyAnalysis Found 'DD'-anomaly for variable 'changed' (lines '253'-'253'). 5 253
MethodArgumentCouldBeFinal Parameter 'collection' is not assigned and could be declared final 3 261
AvoidThrowingRawExceptionTypes Avoid throwing raw exception types. 1 263
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 274
MethodArgumentCouldBeFinal Parameter 'o' is not assigned and could be declared final 3 284
ShortVariable Avoid variables with short names like o 3 284
SimplifyConditional No need to check for null before an instanceof 3 286
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 288
ShortVariable Avoid variables with short names like o 3 303
MethodArgumentCouldBeFinal Parameter 'o' is not assigned and could be declared final 3 303
LocalVariableCouldBeFinal Local variable 'res' could be declared final 3 307
OnlyOneReturn A method should have only one exit point, and that should be the last statement in the method 3 310
ShortVariable Avoid variables with short names like a 3 320
MethodArgumentCouldBeFinal Parameter 'a' is not assigned and could be declared final 3 320
LawOfDemeter Potential violation of Law of Demeter (method chain calls) 3 322
MethodArgumentCouldBeFinal Parameter 'name' is not assigned and could be declared final 3 332
MethodArgumentCouldBeFinal Parameter 'id' is not assigned and could be declared final 3 343
ShortVariable Avoid variables with short names like id 3 343

org/apache/fulcrum/security/util/UnknownEntityException.java

Rule Violation Priority Line
MethodArgumentCouldBeFinal Parameter 'msg' is not assigned and could be declared final 3 42
MethodArgumentCouldBeFinal Parameter 'nested' is not assigned and could be declared final 3 57
MethodArgumentCouldBeFinal Parameter 'msg' is not assigned and could be declared final 3 57

org/apache/fulcrum/security/util/UserSet.java

Rule Violation Priority Line
MethodArgumentCouldBeFinal Parameter 'users' is not assigned and could be declared final 3 58
MethodArgumentCouldBeFinal Parameter 'userName' is not assigned and could be declared final 3 74
MethodArgumentCouldBeFinal Parameter 'userId' is not assigned and could be declared final 3 89
ShortVariable Avoid variables with short names like sb 3 103
LocalVariableCouldBeFinal Local variable 'sb' could be declared final 3 103
ConsecutiveAppendsShouldReuse StringBuffer (or StringBuilder).append is called consecutively without reusing the target variable. 3 104