PMD Results

The following document contains the results of PMD 5.0.2.

Files

org/andromda/metafacades/uml/EntityMetafacadeUtils.java

Violation Line
The class 'EntityMetafacadeUtils' has a Cyclomatic Complexity of 7 (Highest = 25). 22 - 905
All methods are static. Consider using Singleton instead. Alternatively, you could add a private constructor or make the class abstract to silence this warning. 23 - 905
Parameter 'modelElementName' is not assigned and could be declared final 40
Parameter 'separator' is not assigned and could be declared final 41
Local variable 'sqlName' could be declared final 47
Local variable 'iterator' could be declared final 48
Parameter 'prefix' is not assigned and could be declared final 78
Parameter 'element' is not assigned and could be declared final 79
Parameter 'name' is not assigned and could be declared final 80
Parameter 'nameMaxLength' is not assigned and could be declared final 81
Parameter 'separator' is not assigned and could be declared final 82
Parameter 'shortenSqlNamesMethod' is not assigned and could be declared final 83
Parameter 'element' is not assigned and could be declared final 111
Parameter 'name' is not assigned and could be declared final 112
Parameter 'nameMaxLength' is not assigned and could be declared final 113
Parameter 'suffix' is not assigned and could be declared final 114
Parameter 'separator' is not assigned and could be declared final 115
Parameter 'shortenSqlNamesMethod' is not assigned and could be declared final 116
Parameter 'element' is not assigned and could be declared final 142
Parameter 'name' is not assigned and could be declared final 143
Parameter 'nameMaxLength' is not assigned and could be declared final 144
Parameter 'separator' is not assigned and could be declared final 145
Parameter 'shortenSqlNamesMethod' is not assigned and could be declared final 146
Avoid reassigning parameters such as 'prefix' 176
Avoid reassigning parameters such as 'name' 178
Avoid reassigning parameters such as 'suffix' 180
Local variable 'value' could be declared final 186
Deeply nested if..then statements are hard to read 197 - 206
Do not use the short type 199
Do not use the short type 199
Deeply nested if..then statements are hard to read 207 - 212
Deeply nested if..then statements are hard to read 213 - 216
Avoid really long methods. 233 - 423
The method sortEntities() has an NPath complexity of 3096 233 - 423
The method 'sortEntities' has a Cyclomatic Complexity of 25. 233 - 423
Parameter 'ascending' is not assigned and could be declared final 235
Singleton is not thread safe 240 - 243
Useless parentheses. 245 - 246
Local variable 'unsorted' could be declared final 256
Local variable 'entity' could be declared final 257
Local variable 'entity' could be declared final 281
Substitute calls to size() == 0 (or size() != 0) with calls to isEmpty() 314
Avoid instantiating new objects inside loops 316
Local variable 'entity' could be declared final 317
Local variable 'ends' could be declared final 319
Local variable 'end' could be declared final 322
Local variable 'entityEnd' could be declared final 324
Local variable 'referencedPosition' could be declared final 326
Line too long 327
Local variable 'entity' could be declared final 348
Substitute calls to size() == 0 (or size() != 0) with calls to isEmpty() 354
Local variable 'entity' could be declared final 358
Prefer StringBuffer over += for concatenating strings 360
Line too long 388
Line too long 389
Avoid reassigning parameters such as 'name' 464
Avoid reassigning parameters such as 'name' 464
Parameter 'nameMaxLength' is not assigned and could be declared final 465
Parameter 'method' is not assigned and could be declared final 466
Do not use the short type 470
Local variable 'max' could be declared final 470
Avoid instantiating new objects inside loops 475
The method getIdentifiers() has an NPath complexity of 200 511 - 603
Local variable 'joinOrder' could be declared final 543
Local variable 'joinList' could be declared final 547
Local variable 'column' could be declared final 548
Local variable 'facade' could be declared final 550
Local variable 'assoc' could be declared final 554
Local variable 'attr' could be declared final 563
Line too long 572
Local variable 'facade' could be declared final 575
Local variable 'sorted' could be declared final 578
Line too long 592
The method getIdentifierAttributes() has an NPath complexity of 464 619 - 700
Local variable 'identifier' could be declared final 626
Local variable 'associationEnd' could be declared final 630
Local variable 'classifier' could be declared final 631
Local variable 'entityIdentifiers' could be declared final 634
Local variable 'joinOrder' could be declared final 648
Line too long 649
Local variable 'joinList' could be declared final 660
Local variable 'column' could be declared final 661
Local variable 'facade' could be declared final 663
Local variable 'assoc' could be declared final 667
Local variable 'attr' could be declared final 675
Avoid using if statements without curly braces 685 - 692
Local variable 'facade' could be declared final 686
Local variable 'replacement' could be declared final 724 - 726
Prefer StringBuffer over += for concatenating strings 734
Line too long 741
Parameter 'suffix' is not assigned and could be declared final 751
Parameter 'associationEnd' is not assigned and could be declared final 751
Parameter 'shortenSqlNamesMethod' is not assigned and could be declared final 751
Parameter 'maxLengthProperty' is not assigned and could be declared final 751
Parameter 'sqlNameSeparator' is not assigned and could be declared final 751
Local variable 'entity' could be declared final 765
Do not use the short type 779
Do not use the short type 779
Unnecessary wrapper object creation 779
Parameter 'proposedName' is not assigned and could be declared final 806
Avoid reassigning parameters such as 'proposedName' 825
Local variable 'randomInt' could be declared final 831
Local variable 'randomChar' could be declared final 832
Parameter 'entityOnly' is not assigned and could be declared final 860
Parameter 'classifiers' is not assigned and could be declared final 860
Avoid using implementation types like 'LinkedHashSet'; use the interface instead 860
Avoid using implementation types like 'LinkedHashSet'; use the interface instead 860
A method should have only one exit point, and that should be the last statement in the method 863
Avoid using if statements without curly braces 863
Local variable 'packages' could be declared final 865
Local variable 'classifier' could be declared final 866
These nested if statements could be combined 871 - 878
These nested if statements could be combined 873 - 877
Line too long 876
Substitute calls to size() == 0 (or size() != 0) with calls to isEmpty() 881
Local variable 'pkg' could be declared final 885
Avoid empty if statements 893 - 895
Avoid empty if statements 897 - 899

org/andromda/metafacades/uml/FilteredCollection.java

Violation Line
Abstract classes should be named AbstractXXX 18 - 39
Parameter 'collection' is not assigned and could be declared final 27
It is a good practice to call super() in a constructor 27 - 33

org/andromda/metafacades/uml/MetafacadeUtils.java

Violation Line
All methods are static. Consider using Singleton instead. Alternatively, you could add a private constructor or make the class abstract to silence this warning. 22 - 373
Parameter 'object' is not assigned and could be declared final 66
Parameter 'object' is not assigned and could be declared final 91
Parameter 'object' is not assigned and could be declared final 116
A method should have only one exit point, and that should be the last statement in the method 144
Useless parentheses. 144
Useless parentheses. 146
Found non-transient, non-static member. Please mark as transient or provide accessors. 167
Avoid variables with short names like a 179
Avoid variables with short names like b 180
Avoid if (x != y) ..; else ..; 182
Avoid if (x != y) ..; else ..; 183
Local variable 'parameter' could be declared final 203
Local variable 'classifier' could be declared final 206
Parameter 'arguments' is not assigned and could be declared final 245
Avoid variables with short names like at 259
Variables that are final and static should be all capitals, 'at' is not all capitals. 259
Variables that are final and static should be all capitals, 'period' is not all capitals. 260
Variables that are final and static should be all capitals, 'underscore' is not all capitals. 261
Avoid reassigning parameters such as 'name' 270
Avoid reassigning parameters such as 'name' 270
A method should have only one exit point, and that should be the last statement in the method 274
Avoid reassigning parameters such as 'name' 292
Avoid reassigning parameters such as 'name' 292
A method should have only one exit point, and that should be the last statement in the method 296
Parameter 'object' is not assigned and could be declared final 319
Local variable 'buffer' could be declared final 322
Local variable 'generalizableElementFacade' could be declared final 325
Local variable 'classifier' could be declared final 327
Local variable 'attribute' could be declared final 332
Local variable 'operation' could be declared final 340
Avoid variables with short names like md 356
Local variable 'md' could be declared final 356
Local variable 'hashBytes' could be declared final 357
Avoid empty catch blocks 366 - 369

org/andromda/metafacades/uml/NameMasker.java

Violation Line
All methods are static. Consider using Singleton instead. Alternatively, you could add a private constructor or make the class abstract to silence this warning. 14 - 118
Avoid reassigning parameters such as 'name' 73
Avoid reassigning parameters such as 'mask' 73
Avoid reassigning parameters such as 'name' 73
Avoid reassigning parameters such as 'name' 73
Avoid reassigning parameters such as 'name' 73
Avoid reassigning parameters such as 'name' 73
Avoid reassigning parameters such as 'name' 73
Avoid reassigning parameters such as 'name' 73
Avoid reassigning parameters such as 'name' 73
Avoid reassigning parameters such as 'name' 73
Avoid reassigning parameters such as 'name' 73

org/andromda/metafacades/uml/TypeMappings.java

Violation Line
Private field 'mappings' could be made final; it is only initialized in the declaration or constructor. 21
Found non-transient, non-static member. Please mark as transient or provide accessors. 21
Avoid using redundant field initializer for 'mappings' 21
Parameter 'mappings' is not assigned and could be declared final 28
Parameter 'arraySuffix' is not assigned and could be declared final 38
Parameter 'mappings' is not assigned and could be declared final 49
Parameter 'mappingsUri' is not assigned and could be declared final 60
Avoid using redundant field initializer for 'arraySuffix' 68
Found non-transient, non-static member. Please mark as transient or provide accessors. 68
Avoid reassigning parameters such as 'from' 77
Avoid reassigning parameters such as 'from' 77
Local variable 'initialFrom' could be declared final 80
Avoid variables with short names like to 82
Local variable 'isArray' could be declared final 93
Local variable 'toBuffer' could be declared final 101

org/andromda/metafacades/uml/UMLMetafacadeProperties.java

Violation Line
Avoid excessively long variable names like SHORTEN_SQL_NAMES_METHOD_TRUNCATE 155
Avoid excessively long variable names like SHORTEN_SQL_NAMES_METHOD_REMOVE_VOWELS 156
Avoid excessively long variable names like COMPOSITE_IDENTIFIER_TYPE_NAME_SUFIX 181
Avoid excessively long variable names like USE_ARRAYS_FOR_MULTIPLICITIES_OF_TYPE_MANY 233
Avoid excessively long variable names like MANAGEABLE_SERVICE_ACCESSOR_PATTERN 258

org/andromda/metafacades/uml/UMLMetafacadeUtils.java

Violation Line
The class 'UMLMetafacadeUtils' has a Cyclomatic Complexity of 12 (Highest = 125). 27 - 1156
Avoid really long classes. 27 - 1156
Variables that are final and static should be all capitals, 'logger' is not all capitals. 32
Parameter 'typeName' is not assigned and could be declared final 41
Parameter 'classifier' is not assigned and could be declared final 41
Parameter 'object' is not assigned and could be declared final 55
Local variable 'name' could be declared final 57 - 58
Deeply nested if..then statements are hard to read 68 - 71
Deeply nested if..then statements are hard to read 73 - 76
Deeply nested if..then statements are hard to read 80 - 84
The method populateReservedWords() has an NCSS line count of 109 92 - 206
Avoid really long methods. 92 - 206
Parameter 'name' is not assigned and could be declared final 213
Parameter 'lowerBound' is not assigned and could be declared final 243
Parameter 'kind' is not assigned and could be declared final 256
Parameter 'expression' is not assigned and could be declared final 256
Local variable 'pattern' could be declared final 258
Local variable 'matcher' could be declared final 259
Local variable 'implType' could be declared final 345
Parameter 'mef' is not assigned and could be declared final 367
Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 399
Parameter 'facade' is not assigned and could be declared final 415
Parameter 'enableTemplating' is not assigned and could be declared final 415
Variables that are final and static should be all capitals, 'namespaceScopeOperator' is not all capitals. 420
Avoid variables with short names like LT 422
Avoid variables with short names like GT 423
Parameter 'facade' is not assigned and could be declared final 433
Avoid reassigning parameters such as 'className' 433
Parameter 'enableTemplating' is not assigned and could be declared final 433
Avoid excessively long variable names like metafacadeNamespaceScopeOperator 441
Prefer StringBuffer over += for concatenating strings 444
Local variable 'size' could be declared final 477
Avoid variables with short names like i 478
Local variable 'parameter' could be declared final 479
Parameter 'enableTemplating' is not assigned and could be declared final 517
Parameter 'facade' is not assigned and could be declared final 517
Local variable 'parameterIterator' could be declared final 530 - 531
Parameter 'facade' is not assigned and could be declared final 558
Avoid excessively long variable names like metafacadeNamespaceScopeOperator 562
Prefer StringBuffer over += for concatenating strings 565
Parameter 'refOutput' is not assigned and could be declared final 586
Parameter 'outletFile' is not assigned and could be declared final 586
Parameter 'mef' is not assigned and could be declared final 586
A method should have only one exit point, and that should be the last statement in the method 591
Parameter 'facade' is not assigned and could be declared final 609
Parameter 'facade' is not assigned and could be declared final 620
Parameter 'useMany' is not assigned and could be declared final 620
Avoid reassigning parameters such as 'facade' 632
Avoid reassigning parameters such as 'facade' 632
Avoid reassigning parameters such as 'facade' 632
The method 'createConstructor' has a Cyclomatic Complexity of 125. 632 - 1031
The method createConstructor() has an NPath complexity of 2080565762 632 - 1031
The method createConstructor() has an NCSS line count of 223 632 - 1031
Parameter 'useMany' is not assigned and could be declared final 632
Avoid really long methods. 632 - 1031
Parameter 'parent' is not assigned and could be declared final 632
A method should have only one exit point, and that should be the last statement in the method 636
Local variable 'name' could be declared final 642
Local variable 'collectionType' could be declared final 645
The String literal " typeName=" appears 4 times in this file; the first occurrence is on line 665 665
Local variable 'classifier' could be declared final 699
Local variable 'attr' could be declared final 705
Local variable 'attr' could be declared final 723
Local variable 'attr' could be declared final 746
The String literal " type=" appears 4 times in this file; the first occurrence is on line 782 782
Local variable 'enumer' could be declared final 791
Local variable 'literals' could be declared final 793
Local variable 'literal' could be declared final 797
Local variable 'enumLiteral' could be declared final 800
Local variable 'attrib' could be declared final 805
Prefer StringBuffer over += for concatenating strings 814
Prefer StringBuffer over += for concatenating strings 818
Avoid if (x != y) ..; else ..; 834 - 857
Position literals first in String comparisons 836
Position literals first in String comparisons 836
The String literal "new " appears 9 times in this file; the first occurrence is on line 838 838
The String literal ">()" appears 4 times in this file; the first occurrence is on line 838 838
Position literals first in String comparisons 840
Position literals first in String comparisons 844
String.trim().length()==0 is an inefficient way to validate an empty String. 861
This call to String.startsWith can be rewritten using String.charAt(0) 863
Useless parentheses. 881
Useless parentheses. 885
Useless parentheses. 890
Useless parentheses. 927
Avoid if (x != y) ..; else ..; 927
Useless parentheses. 931
Avoid if (x != y) ..; else ..; 931
Prefer StringBuffer over += for concatenating strings 942
Prefer StringBuffer over += for concatenating strings 946
Avoid if (x != y) ..; else ..; 965 - 1019
Local variable 'spec' could be declared final 992
Local variable 'generalization' could be declared final 1003
Local variable 'spec' could be declared final 1004
Avoid catching generic exceptions such as NullPointerException, RuntimeException, Exception in try-catch block 1026
Avoid printStackTrace(); use a logger call instead. 1028
Parameter 'associationEnd' is not assigned and could be declared final 1043
Local variable 'otherEnd' could be declared final 1046
Line too long 1047
Line too long 1101
Useless parentheses. 1107
Line too long 1108
Useless parentheses. 1114
Avoid variables with short names like df 1130
Parameter 'format' is not assigned and could be declared final 1138
Singleton is not thread safe 1140 - 1143

org/andromda/metafacades/uml/UMLProfile.java

Violation Line
Variables that are final and static should be all capitals, 'profile' is not all capitals. 19
Line too long 69
Line too long 75
Avoid excessively long variable names like STEREOTYPE_APPLICATION_EXCEPTION 112
Avoid excessively long variable names like STEREOTYPE_FRONT_END_APPLICATION 162
Avoid excessively long variable names like TAGGEDVALUE_PERSISTENCE_COLUMN_LENGTH 255
Avoid excessively long variable names like TAGGEDVALUE_PERSISTENCE_COLUMN_INDEX 261
Avoid excessively long variable names like TAGGEDVALUE_PERSISTENCE_IMMUTABLE 267
Avoid excessively long variable names like TAGGEDVALUE_PERSISTENCE_FOREIGN_IDENTIFIER 275
Avoid excessively long variable names like TAGGEDVALUE_PERSISTENCE_ASSIGNED_IDENTIFIER 283
Avoid excessively long variable names like TAGGEDVALUE_PERSISTENCE_FOREIGN_KEY_CONSTRAINT_NAME 290
Avoid excessively long variable names like TAGGEDVALUE_PERSISTENCE_JOINCOLUMN_ORDER 297
Avoid excessively long variable names like TAGGEDVALUE_PERSISTENCE_ENUMERATION_MEMBER_VARIABLE 304
Avoid excessively long variable names like TAGGEDVALUE_PERSISTENCE_ENUMERATION_LITERAL_PARAMETERS 311
Avoid excessively long variable names like TAGGEDVALUE_PRESENTATION_CONTROLLER_USECASE 318
Avoid excessively long variable names like TAGGEDVALUE_PRESENTATION_TABLE_COLUMNS 325
Avoid excessively long variable names like TAGGEDVALUE_PRESENTATION_IS_TABLE 333
Avoid excessively long variable names like TAGGEDVALUE_PRESENTATION_USECASE_ACTIVITY 340
Avoid excessively long variable names like TAGGEDVALUE_MANAGEABLE_DISPLAY_NAME 382
Avoid excessively long variable names like TAGGEDVALUE_MANAGEABLE_MAXIMUM_LIST_SIZE 389
Avoid excessively long variable names like TAGGEDVALUE_MANAGEABLE_PAGE_SIZE 395
Avoid excessively long variable names like TAGGEDVALUE_MANAGEABLE_RESOLVEABLE 402
Avoid excessively long variable names like TAGGEDVALUE_PERSISTENCE_COLUMN_UNIQUE_GROUP 408
Avoid excessively long variable names like TAGGEDVALUE_PERSISTENCE_ASSOCIATION_END_UNIQUE_GROUP 414
Avoid excessively long variable names like TAGGEDVALUE_PERSISTENCE_ASSOCIATION_END_PRIMARY 422
Line too long 452
Line too long 488