+1, I noticed it too. On Mon, Oct 8, 2012 at 4:54 PM, Vincent Massol <[email protected]> wrote: > Note: there seems to be a big bug in Checkstyle and it seems that it's > currently counting java.lang classes even though it should not. > See > https://sourceforge.net/tracker/?func=detail&aid=3575496&group_id=29721&atid=397078 > which I have just opened. > > I propose that while waiting for this bug to be fixed we use a specific > checkstyle exclude *only for this check* when needed and put in comment TODO > to remove it when > https://sourceforge.net/tracker/?func=detail&aid=3575496&group_id=29721&atid=397078 > is fixed. > > Thanks > -Vincent > > On Sep 10, 2012, at 4:59 PM, Vincent Massol <[email protected]> wrote: > >> Hi devs, >> >> I wanted to understand how Checkstyle computes the Class Fan out so I >> debugged it. >> >> Here are my findings: >> >> * Some classes are excluded by default: >> >> mIgnoredClassNames.add("boolean"); >> mIgnoredClassNames.add("byte"); >> mIgnoredClassNames.add("char"); >> mIgnoredClassNames.add("double"); >> mIgnoredClassNames.add("float"); >> mIgnoredClassNames.add("int"); >> mIgnoredClassNames.add("long"); >> mIgnoredClassNames.add("short"); >> mIgnoredClassNames.add("void"); >> mIgnoredClassNames.add("Boolean"); >> mIgnoredClassNames.add("Byte"); >> mIgnoredClassNames.add("Character"); >> mIgnoredClassNames.add("Double"); >> mIgnoredClassNames.add("Float"); >> mIgnoredClassNames.add("Integer"); >> mIgnoredClassNames.add("Long"); >> mIgnoredClassNames.add("Object"); >> mIgnoredClassNames.add("Short"); >> mIgnoredClassNames.add("String"); >> mIgnoredClassNames.add("StringBuffer"); >> mIgnoredClassNames.add("Void"); >> mIgnoredClassNames.add("ArrayIndexOutOfBoundsException"); >> mIgnoredClassNames.add("Exception"); >> mIgnoredClassNames.add("RuntimeException"); >> mIgnoredClassNames.add("IllegalArgumentException"); >> mIgnoredClassNames.add("IllegalStateException"); >> mIgnoredClassNames.add("IndexOutOfBoundsException"); >> mIgnoredClassNames.add("NullPointerException"); >> mIgnoredClassNames.add("Throwable"); >> mIgnoredClassNames.add("SecurityException"); >> mIgnoredClassNames.add("UnsupportedOperationException"); >> >> * All classes in java.lang.* are excluded too >> * Annotation classes are not counted >> * Classes in the same package are counted (they won't appear in import since >> it's in the same package so don't count imports to get class fan out) >> * Static method calls are not counted. So for example StringUtils from >> Commons Lang never counts for class Fan out >> * Enums are not counted (no new XXX() done. That's why static method calls >> are not counted too BTW) >> * Classes used in class extend or implement are not counted too. >> >> Hope it helps >> -Vincent >> > > _______________________________________________ > devs mailing list > [email protected] > http://lists.xwiki.org/mailman/listinfo/devs
-- Thomas Mortagne _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs

