It is recommended to use the JArchitect interactive UI capabilities
to make the most of JArchitect by mastering all aspects of your code.
Diagrams
Application Metrics
Note: Further Application Statistics are available.
|
Rules summary
32481This section lists all Rules violated, and Rules or Queries with Error- Number of Rules or Queries with Error (syntax error, exception thrown, time-out): 1
- Number of Rules violated: 48
Summary of Rules or Queries with Error (syntax error, exception thrown, time-out)
| Name | Group |
|---|---|
| Naming Conventions |
Summary of Rules violated
Rules can be checked live atdevelopment-time, from within
JArchitect. Online documentation.
JArchitect rules report too many flaws onexisting code base? Use the option
Recent Violations Only!
Some Critical Rules are violated. Critical Rulescan be used to break the build process if
violated. Online documentation.
Application Statistics
| Stat | # Occurences | Avg | StdDev | Max |
|---|---|---|---|---|
| Properties on interfaces | 157 interfaces | 0 | 0 | 0 properties on org.apache.wicket.ajax.AjaxRequestTarget$IJavaScriptResponse |
| Methods on interfaces | 157 interfaces | 3.48 | 4.57 | 39 methods on org.apache.wicket.settings.IResourceSettings |
| Arguments on methods on interfaces | 547 methods | 0.69 | 0.88 | 7 arguments on org.apache.wicket.core.util.resource.locator.IResourceStreamLocator.locate(Class,String,String,String,Locale,String,boolean) |
| Public properties on classes | 1,011 Classes | 0 | 0 | 0 public properties on org.apache.wicket.ajax.AbstractAjaxResponse$1 |
| Public methods on classes | 1,011 classes | 6.09 | 9.84 | 153 public methods on org.apache.wicket.Component |
| Arguments on public methods on classes | 6,157 methods | 0.92 | 1.02 | 8 arguments on org.apache.wicket.resource.TextTemplateResourceReference.TextTemplateResourceReference(Class,String,String,String,IModel,Locale,String,String) |
| BC instructions in non-abstract methods | 8,341 methods | 14.45 | 25.88 | 479 BC instructions in org.apache.wicket.markup.MergedMarkup.merge(IMarkupFragment,IMarkupFragment,int) |
| Cyclomatic complexity on non abstract Methods | 8,341 Methods | 1.83 | 2.37 | CC = 54 for org.apache.wicket.markup.MergedMarkup.merge(IMarkupFragment,IMarkupFragment,int) |
Projects Metrics
Clicking column header arrows sorts values.
Clicking column header title text redirect to the online Code Metric definition.
| Projects | # lines of code | # BC instruction | # Types | # Abstract Types | # lines of comment | % Comment | % Coverage | Afferent Coupling | Efferent Coupling | Relational Cohesion | Instability | Abstractness | Distance |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| wicket-core v1.0 | 27481 | 120551 | 1190 | 271 | 50759 | 64 | - | 0 | 341 | 4.17 | 1 | 0.23 | 0.16 |
Types Metrics : Code Quality
If you wish to define thresholds on types' Code Metrics, consider writing some Rule.
Clicking column header arrows sorts values.
Clicking column header title text redirect to the online Code Metric definition.
Types Metrics : Code Members and Inheritance
| Type Name | # Instance Methods | Nb Static Methods | Nb Properties | # Fields | # Children Classes | Depth Of Inheritance Tree | Type Package |
|---|
Types Metrics : Lack Of Cohesion Of Methods and Association Between Classes
| Type Name | Lack Of Cohesion Of Methods | Lack Of Cohesion Of Methods HS | Association Between Classes | Type Package |
|---|
| Code Quality | 1120 |
|
| Critical Rule warning: Types too big - critical |
warnif count > 0 from t in JustMyCode.Types where
t.NbLinesOfCode > 500 ||
t.NbBCInstructions > 3000
orderby t.NbLinesOfCode descending
select new { t, t.NbLinesOfCode, t.NbBCInstructions,
t.Methods, t.Fields }
// Types where NbLinesOfCode > 500 are extremely complex
// and should be split in a smaller group of types.
// See the definition of the NbLinesOfCode metric here
// http://www.jarchitect.com/Metrics.aspx#NbLinesOfCode
// In average, a line of code is compiled to around
// 6 BC instructions. This is why the code metric
// NbBCInstructions is used here, in case the
// code metric NbLinesOfCode is un-available because
// of missing code source files.
// See the definition of the NbBCInstructions metric here
// http://www.jarchitect.com/Metrics.aspx#NbBCInstructions
3 types matched
| types | # lines of code (LOC) | # ByteCode instructions | Methods | Fields | Full Name |
|---|---|---|---|---|---|
| Component | 866 | 3 866 | 197 methods | 59 fields | org.apache.wicket.Component |
| BaseWicketTester | 539 | 2 673 | 122 methods | 22 fields | org.apache.wicket.util.tester.BaseWicketTester |
| MarkupContainer | 520 | 2 117 | 61 methods | 3 fields | org.apache.wicket.MarkupContainer |
Statistics
| Stat | # lines of code (LOC) | # ByteCode instructions | Methods | Fields |
|---|---|---|---|---|
| Sum: | 1 925 | 8 656 | 0 | 0 |
| Average: | 641.67 | 2 885 | 0 | 0 |
| Minimum: | 520 | 2 117 | 0 | 0 |
| Maximum: | 866 | 3 866 | 0 | 0 |
| Standard deviation: | 158.82 | 729.64 | 0 | 0 |
| Variance: | 25 222 | 532 376 | 0 | 0 |
| Critical Rule warning: Methods too complex - critical |
warnif count > 0 from m in JustMyCode.Methods where
m.BCCyclomaticComplexity > 40 &&
m.BCNestingDepth > 5
orderby m.BCCyclomaticComplexity descending,
m.BCNestingDepth descending
select new { m, m.BCCyclomaticComplexity, m.BCNestingDepth }
// Methods with BCCyclomaticComplexity > 40 and BCNestingDepth > 4
// are really too complex and should be split
// in smaller methods, or even types.
// See the definition of the BCCyclomaticComplexity metric here
// http://www.jarchitect.com/Metrics.aspx#ILCC
// See the definition of the BCNestingDepth metric here
// http://www.jarchitect.com/Metrics.aspx#BCNestingDepth
3 methods matched
| methods | ByteCode Cyclomatic Complexity (BCCC) | ByteCode Nesting Depth | Full Name |
|---|---|---|---|
| merge(IMarkupFragment,IMarkupFragment,int) | 54 | 32 | org.apache.wicket.markup.MergedMarkup.merge(IMarkupFragment ,IMarkupFragment,int) |
| stripCommentsAndWhitespace(String) | 46 | 30 | org.apache.wicket.core.util.string.JavaScriptStripper .stripCommentsAndWhitespace(String) |
| parse(XMLTokener,boolean,JSONArray) | 46 | 19 | org.apache.wicket.ajax.json.JSONML.parse(XMLTokener,boolean,JSONArray) |
Statistics
| Stat | ByteCode Cyclomatic Complexity (BCCC) | ByteCode Nesting Depth |
|---|---|---|
| Sum: | 146 | 81 |
| Average: | 48.67 | 27 |
| Minimum: | 46 | 19 |
| Maximum: | 54 | 32 |
| Standard deviation: | 3.77 | 5.72 |
| Variance: | 14.22 | 32.67 |
| Rule warning: Quick summary of methods to refactor |
warnif count > 0 from m in JustMyCode.Methods where
// Code Metrics' definitions
m.NbLinesOfCode > 30 || // http://www.jarchitect.com/Metrics.aspx#NbLinesOfCode
m.NbBCInstructions > 200 || // http://www.jarchitect.com/Metrics.aspx#NbBCInstructions
m.CyclomaticComplexity > 20 || // http://www.jarchitect.com/Metrics.aspx#CC
m.BCCyclomaticComplexity > 50 || // http://www.jarchitect.com/Metrics.aspx#ILCC
m.BCNestingDepth > 5 || // http://www.jarchitect.com/Metrics.aspx#BCNestingDepth
m.NbParameters > 5 || // http://www.jarchitect.com/Metrics.aspx#NbParameters
m.NbVariables > 8 || // http://www.jarchitect.com/Metrics.aspx#NbVariables
m.NbOverloads > 6 // http://www.jarchitect.com/Metrics.aspx#NbOverloads
select new { m, m.NbLinesOfCode, m.NbBCInstructions, m.CyclomaticComplexity,
m.BCCyclomaticComplexity, m.BCNestingDepth,
m.NbParameters, m.NbVariables, m.NbOverloads }
287 methods matched
| methods | # lines of code (LOC) | # ByteCode instructions | Cyclomatic Complexity (CC) | ByteCode Cyclomatic Complexity (BCCC) | ByteCode Nesting Depth | # Parameters | # Variables | # Overloads | Full Name |
|---|---|---|---|---|---|---|---|---|---|
| renderComponentTag(ComponentTag) | 20 | 134 | 16 | 17 | 9 | 1 | 5 | 1 | org.apache.wicket.Component.renderComponentTag(ComponentTag) |
| getString(String,Component,IModel,Locale,String,String) | 19 | 103 | 11 | 8 | 2 | 6 | 3 | 5 | org.apache.wicket.Localizer.getString(String,Component,IModel,Locale ,String,String) |
| getStringIgnoreSettings(String,Component,IModel,Locale,String,String) | 40 | 218 | 33 | 32 | 12 | 6 | 6 | 2 | org.apache.wicket.Localizer.getStringIgnoreSettings(String,Component ,IModel,Locale,String,String) |
| renderNext(MarkupStream) | 43 | 177 | 13 | 11 | 4 | 1 | 6 | 1 | org.apache.wicket.MarkupContainer.renderNext(MarkupStream) |
| createAndAddComponentsForWicketTags() | 18 | 80 | 12 | 12 | 7 | 0 | 4 | 1 | org.apache.wicket.MarkupContainer.createAndAddComponentsForWicketTags( ) |
| checkRendering(MarkupContainer) | 41 | 109 | 11 | 10 | 2 | 1 | 9 | 1 | org.apache.wicket.Page.checkRendering(MarkupContainer) |
| set() | 18 | 96 | 9 | 9 | 6 | 0 | 8 | 1 | org.apache.wicket .RestartResponseAtInterceptPageException$InterceptData.set() |
| SharedResources$AutoResourceReference(Class,String,Locale,String ,String,IResource) | 3 | 11 | N/A | 1 | 0 | 6 | 0 | 2 | org.apache.wicket.SharedResources$AutoResourceReference .SharedResources$AutoResourceReference(Class,String,Locale,String ,String,IResource) |
| SharedResources$AutoResourceReference(Class,String,Locale,String ,String,IResource,SharedResources$1) | 1 | 9 | N/A | 1 | 0 | 7 | 0 | 2 | org.apache.wicket.SharedResources$AutoResourceReference .SharedResources$AutoResourceReference(Class,String,Locale,String ,String,IResource,SharedResources$1) |
| add(Class,String,Locale,String,String,IResource) | 2 | 17 | 1 | 1 | 0 | 6 | 1 | 3 | org.apache.wicket.SharedResources.add(Class,String,Locale,String ,String,IResource) |
| get(Class,String,Locale,String,String,boolean) | 1 | 11 | 1 | 1 | 0 | 6 | 0 | 1 | org.apache.wicket.SharedResources.get(Class,String,Locale,String ,String,boolean) |
| resolveClass(String) | 35 | 109 | 13 | 14 | 0 | 1 | 2 | 1 | org.apache.wicket.application.AbstractClassResolver.resolveClass (String) |
| match() | 60 | 422 | 51 | 39 | 20 | 0 | 7 | 1 | org.apache.wicket.application.WildcardMatcherHelper$Matcher.match() |
| scanLiteralPrefix() | 3 | 81 | 9 | 9 | 7 | 0 | 0 | 1 | org.apache.wicket.application.WildcardMatcherHelper$Matcher .scanLiteralPrefix() |
| lockPage(int) | 39 | 180 | 18 | 18 | 6 | 1 | 9 | 1 | org.apache.wicket.page.PageAccessSynchronizer.lockPage(int) |
| renderAjaxAttributes(Component,AjaxRequestAttributes) | 79 | 349 | 24 | 23 | 1 | 2 | 34 | 2 | org.apache.wicket.ajax.AbstractDefaultAjaxBehavior .renderAjaxAttributes(Component,AjaxRequestAttributes) |
| respond(IRequestCycle) | 21 | 97 | 4 | 5 | 0 | 1 | 10 | 1 | org.apache.wicket.ajax.AjaxRequestHandler.respond(IRequestCycle) |
| writeComponent(Response,String,Component,String) | 36 | 135 | 11 | 7 | 0 | 4 | 4 | 1 | org.apache.wicket.ajax.XmlAjaxResponse.writeComponent(Response,String ,Component,String) |
| rowToJSONArray(JSONTokener) | 15 | 66 | 15 | 10 | 6 | 1 | 3 | 1 | org.apache.wicket.ajax.json.CDL.rowToJSONArray(JSONTokener) |
| rowToString(JSONArray) | 19 | 95 | 13 | 13 | 10 | 1 | 7 | 1 | org.apache.wicket.ajax.json.CDL.rowToString(JSONArray) |
| toString(JSONObject) | 30 | 151 | 13 | 12 | 9 | 1 | 3 | 1 | org.apache.wicket.ajax.json.HTTP.toString(JSONObject) |
| put(Object) | 2 | 7 | 1 | 1 | 0 | 1 | 0 | 14 | org.apache.wicket.ajax.json.JSONArray.put(Object) |
| put(boolean) | 2 | 10 | 2 | 2 | 0 | 1 | 0 | 14 | org.apache.wicket.ajax.json.JSONArray.put(boolean) |
| put(Collection) | 2 | 9 | 1 | 1 | 0 | 1 | 0 | 14 | org.apache.wicket.ajax.json.JSONArray.put(Collection) |
| put(double) | 4 | 13 | 1 | 1 | 0 | 1 | 1 | 14 | org.apache.wicket.ajax.json.JSONArray.put(double) |
| put(int) | 2 | 9 | 1 | 1 | 0 | 1 | 0 | 14 | org.apache.wicket.ajax.json.JSONArray.put(int) |
| put(long) | 2 | 9 | 1 | 1 | 0 | 1 | 0 | 14 | org.apache.wicket.ajax.json.JSONArray.put(long) |
| put(Map) | 2 | 9 | 1 | 1 | 0 | 1 | 0 | 14 | org.apache.wicket.ajax.json.JSONArray.put(Map) |
| put(int,boolean) | 2 | 11 | 2 | 2 | 0 | 2 | 0 | 14 | org.apache.wicket.ajax.json.JSONArray.put(int,boolean) |
| put(int,Object) | 10 | 44 | 5 | 4 | 0 | 2 | 0 | 14 | org.apache.wicket.ajax.json.JSONArray.put(int,Object) |
| put(int,Collection) | 2 | 10 | 1 | 1 | 0 | 2 | 0 | 14 | org.apache.wicket.ajax.json.JSONArray.put(int,Collection) |
| put(int,double) | 2 | 10 | 1 | 1 | 0 | 2 | 0 | 14 | org.apache.wicket.ajax.json.JSONArray.put(int,double) |
| put(int,int) | 2 | 10 | 1 | 1 | 0 | 2 | 0 | 14 | org.apache.wicket.ajax.json.JSONArray.put(int,int) |
| put(int,long) | 2 | 10 | 1 | 1 | 0 | 2 | 0 | 14 | org.apache.wicket.ajax.json.JSONArray.put(int,long) |
| put(int,Map) | 2 | 10 | 1 | 1 | 0 | 2 | 0 | 14 | org.apache.wicket.ajax.json.JSONArray.put(int,Map) |
| parse(XMLTokener,boolean,JSONArray) | 117 | 357 | 66 | 46 | 19 | 3 | 8 | 1 | org.apache.wicket.ajax.json.JSONML.parse(XMLTokener,boolean,JSONArray) |
| toString(JSONArray) | 55 | 157 | 10 | 10 | 5 | 1 | 10 | 2 | org.apache.wicket.ajax.json.JSONML.toString(JSONArray) |
| toString(JSONObject) | 54 | 169 | 13 | 12 | 4 | 1 | 9 | 2 | org.apache.wicket.ajax.json.JSONML.toString(JSONObject) |
| JSONObject() | 3 | 8 | N/A | 1 | 0 | 0 | 0 | 9 | org.apache.wicket.ajax.json.JSONObject.JSONObject() |
| put(String,Object) | 8 | 24 | 4 | 3 | 0 | 2 | 0 | 7 | org.apache.wicket.ajax.json.JSONObject.put(String,Object) |
| put(String,boolean) | 2 | 11 | 2 | 2 | 0 | 2 | 0 | 7 | org.apache.wicket.ajax.json.JSONObject.put(String,boolean) |
| put(String,long) | 2 | 10 | 1 | 1 | 0 | 2 | 0 | 7 | org.apache.wicket.ajax.json.JSONObject.put(String,long) |
| wrap(Object) | 17 | 116 | 31 | 30 | 15 | 1 | 3 | 1 | org.apache.wicket.ajax.json.JSONObject.wrap(Object) |
| valueToString(Object) | 21 | 93 | 22 | 13 | 3 | 1 | 2 | 1 | org.apache.wicket.ajax.json.JSONObject.valueToString(Object) |
| testValidity(Object) | 8 | 35 | 10 | 8 | 6 | 1 | 0 | 1 | org.apache.wicket.ajax.json.JSONObject.testValidity(Object) |
| JSONObject(Map) | 8 | 35 | 4 | 4 | 1 | 1 | 3 | 9 | org.apache.wicket.ajax.json.JSONObject.JSONObject(Map) |
| writeValue(Writer,Object,int,int) | 33 | 123 | 14 | 13 | 1 | 4 | 2 | 1 | org.apache.wicket.ajax.json.JSONObject.writeValue(Writer,Object,int ,int) |
| JSONObject(JSONObject,String[]) | 4 | 24 | 3 | 3 | 0 | 2 | 2 | 9 | org.apache.wicket.ajax.json.JSONObject.JSONObject(JSONObject,String[]) |
| JSONObject(JSONTokener) | 34 | 68 | 19 | 11 | 2 | 1 | 2 | 9 | org.apache.wicket.ajax.json.JSONObject.JSONObject(JSONTokener) |
| JSONObject(Object) | 2 | 6 | 1 | 1 | 0 | 1 | 0 | 9 | org.apache.wicket.ajax.json.JSONObject.JSONObject(Object) |
| populateMap(Object) | 26 | 125 | 15 | 16 | 7 | 1 | 9 | 1 | org.apache.wicket.ajax.json.JSONObject.populateMap(Object) |
| JSONObject(Object,String[]) | 6 | 29 | 3 | 3 | 0 | 2 | 4 | 9 | org.apache.wicket.ajax.json.JSONObject.JSONObject(Object,String[]) |
| JSONObject(String) | 1 | 7 | 1 | 1 | 0 | 1 | 0 | 9 | org.apache.wicket.ajax.json.JSONObject.JSONObject(String) |
| JSONObject(String,Locale) | 17 | 72 | 5 | 5 | 0 | 2 | 9 | 9 | org.apache.wicket.ajax.json.JSONObject.JSONObject(String,Locale) |
| put(String,int) | 2 | 10 | 1 | 1 | 0 | 2 | 0 | 7 | org.apache.wicket.ajax.json.JSONObject.put(String,int) |
| put(String,double) | 2 | 10 | 1 | 1 | 0 | 2 | 0 | 7 | org.apache.wicket.ajax.json.JSONObject.put(String,double) |
| put(String,Collection) | 2 | 10 | 1 | 1 | 0 | 2 | 0 | 7 | org.apache.wicket.ajax.json.JSONObject.put(String,Collection) |
| put(String,Map) | 2 | 10 | 1 | 1 | 0 | 2 | 0 | 7 | org.apache.wicket.ajax.json.JSONObject.put(String,Map) |
| quote(String,Writer) | 46 | 119 | 19 | 18 | 6 | 2 | 5 | 2 | org.apache.wicket.ajax.json.JSONObject.quote(String,Writer) |
| stringToValue(String) | 23 | 95 | 24 | 19 | 9 | 1 | 5 | 1 | org.apache.wicket.ajax.json.JSONObject.stringToValue(String) |
| write(Writer,int,int) | 34 | 109 | 12 | 10 | 0 | 3 | 7 | 2 | org.apache.wicket.ajax.json.JSONObject.write(Writer,int,int) |
| JSONObject() | 1 | 6 | N/A | 1 | 0 | 0 | 0 | 9 | org.apache.wicket.ajax.json.JSONObject.JSONObject() |
| nextString(char) | 43 | 73 | 20 | 16 | 0 | 1 | 2 | 1 | org.apache.wicket.ajax.json.JSONTokener.nextString(char) |
| asArray(Map) | 29 | 129 | 10 | 10 | 1 | 1 | 16 | 1 | org.apache.wicket.ajax.json.JsonUtils.asArray(Map) |
| stringToValue(String) | 29 | 109 | 26 | 20 | 4 | 1 | 4 | 1 | org.apache.wicket.ajax.json.XML.stringToValue(String) |
| parse(XMLTokener,JSONObject,String) | 106 | 308 | 55 | 35 | 10 | 3 | 8 | 1 | org.apache.wicket.ajax.json.XML.parse(XMLTokener,JSONObject,String) |
| toString(Object,String) | 75 | 286 | 24 | 22 | 7 | 2 | 17 | 2 | org.apache.wicket.ajax.json.XML.toString(Object,String) |
| nextToken() | 57 | 94 | 41 | 26 | 1 | 0 | 3 | 1 | org.apache.wicket.ajax.json.XMLTokener.nextToken() |
| skipPast(String) | 31 | 79 | 13 | 9 | 1 | 1 | 8 | 1 | org.apache.wicket.ajax.json.XMLTokener.skipPast(String) |
| nextMeta() | 45 | 55 | 35 | 23 | 2 | 0 | 2 | 1 | org.apache.wicket.ajax.json.XMLTokener.nextMeta() |
| newPagingNavigationLink(String,IPageable,long) | 1 | 7 | 1 | 1 | 0 | 6 | 0 | 1 | org.apache.wicket.ajax.markup.html.navigation.paging .AjaxPagingNavigation.newPagingNavigationLink(String,IPageable,long) |
| mapHandler(IRequestHandler) | 40 | 181 | 22 | 14 | 3 | 1 | 16 | 1 | org.apache.wicket.core.request.mapper.AbstractBookmarkableMapper .mapHandler(IRequestHandler) |
| mapRequest(Request) | 25 | 130 | 12 | 10 | 5 | 1 | 11 | 1 | org.apache.wicket.core.request.mapper.BasicResourceReferenceMapper .mapRequest(Request) |
| mapHandler(IRequestHandler) | 47 | 170 | 17 | 14 | 7 | 1 | 14 | 1 | org.apache.wicket.core.request.mapper.BasicResourceReferenceMapper .mapHandler(IRequestHandler) |
| decryptUrl(Request,Url) | 31 | 121 | 12 | 11 | 0 | 2 | 12 | 1 | org.apache.wicket.core.request.mapper.CryptoMapper.decryptUrl(Request ,Url) |
| extractPageParameters(Request,Url) | 25 | 130 | 8 | 8 | 3 | 2 | 17 | 1 | org.apache.wicket.core.request.mapper.MountedMapper .extractPageParameters(Request,Url) |
| getMatchedSegmentSizes(Url) | 22 | 126 | 8 | 6 | 0 | 1 | 9 | 1 | org.apache.wicket.core.request.mapper.MountedMapper .getMatchedSegmentSizes(Url) |
| mapHandler(IRequestHandler) | 17 | 81 | 6 | 6 | 3 | 1 | 11 | 1 | org.apache.wicket.core.request.mapper.MountedMapper.mapHandler (IRequestHandler) |
| buildUrl(AbstractBookmarkableMapper$UrlInfo) | 21 | 122 | 6 | 6 | 0 | 1 | 10 | 1 | org.apache.wicket.core.request.mapper.MountedMapper.buildUrl (AbstractBookmarkableMapper$UrlInfo) |
| mapHandler(IRequestHandler) | 25 | 99 | 6 | 5 | 0 | 1 | 11 | 1 | org.apache.wicket.core.request.mapper.PageInstanceMapper.mapHandler (IRequestHandler) |
| mapHandler(IRequestHandler) | 16 | 92 | 8 | 6 | 0 | 1 | 9 | 1 | org.apache.wicket.core.request.mapper.ResourceMapper.mapHandler (IRequestHandler) |
| respond(IRequestCycle) | 25 | 112 | 17 | 15 | 7 | 1 | 8 | 1 | org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler .respond(IRequestCycle) |
| PageAndComponentProvider(IRequestablePage,IRequestableComponent ,PageParameters) | 5 | 16 | 2 | 2 | 0 | 3 | 0 | 8 | org.apache.wicket.core.request.handler.PageAndComponentProvider .PageAndComponentProvider(IRequestablePage,IRequestableComponent ,PageParameters) |
| PageAndComponentProvider(IRequestablePage,String) | 2 | 7 | 1 | 1 | 0 | 2 | 0 | 8 | org.apache.wicket.core.request.handler.PageAndComponentProvider .PageAndComponentProvider(IRequestablePage,String) |
| PageAndComponentProvider(IRequestablePage,IRequestableComponent) | 3 | 11 | 1 | 1 | 0 | 2 | 0 | 8 | org.apache.wicket.core.request.handler.PageAndComponentProvider .PageAndComponentProvider(IRequestablePage,IRequestableComponent) |
| PageAndComponentProvider(Class,PageParameters,String) | 2 | 8 | 1 | 1 | 0 | 3 | 0 | 8 | org.apache.wicket.core.request.handler.PageAndComponentProvider .PageAndComponentProvider(Class,PageParameters,String) |
| PageAndComponentProvider(Class,String) | 3 | 7 | N/A | 1 | 0 | 2 | 0 | 8 | org.apache.wicket.core.request.handler.PageAndComponentProvider .PageAndComponentProvider(Class,String) |
| PageAndComponentProvider(int,Class,Integer,String) | 2 | 10 | 1 | 1 | 0 | 4 | 0 | 8 | org.apache.wicket.core.request.handler.PageAndComponentProvider .PageAndComponentProvider(int,Class,Integer,String) |
| PageAndComponentProvider(Integer,Class,PageParameters,Integer,String) | 2 | 10 | 1 | 1 | 0 | 5 | 0 | 8 | org.apache.wicket.core.request.handler.PageAndComponentProvider .PageAndComponentProvider(Integer,Class,PageParameters,Integer,String) |
| PageAndComponentProvider(int,Integer,String) | 2 | 9 | 1 | 1 | 0 | 3 | 0 | 8 | org.apache.wicket.core.request.handler.PageAndComponentProvider .PageAndComponentProvider(int,Integer,String) |
| findSetter(Method,Class) | 21 | 112 | 11 | 9 | 3 | 2 | 10 | 1 | org.apache.wicket.core.util.lang.PropertyResolver$MethodGetAndSet .findSetter(Method,Class) |
| getObjectAndGetSetter(String,Object,int,Class) | 46 | 145 | 16 | 14 | 4 | 4 | 10 | 2 | org.apache.wicket.core.util.lang.PropertyResolver .getObjectAndGetSetter(String,Object,int,Class) |
| getGetAndSetter(String,Class) | 68 | 309 | 23 | 19 | 4 | 2 | 15 | 1 | org.apache.wicket.core.util.lang.PropertyResolver.getGetAndSetter (String,Class) |
| internalCheck(Object) | 100 | 348 | 35 | 28 | 5 | 1 | 34 | 1 | org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream .internalCheck(Object) |
| checkFields(Object,ObjectStreamClass) | 31 | 142 | 21 | 15 | 5 | 2 | 13 | 1 | org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream .checkFields(Object,ObjectStreamClass) |
| locate(Class,String,String,String,Locale,String,boolean) | 0 | 0 | 1 | 1 | 0 | 7 | 0 | 2 | org.apache.wicket.core.util.resource.locator.IResourceStreamLocator .locate(Class,String,String,String,Locale,String,boolean) |
| newResourceNameIterator(String,Locale,String,String,String,boolean) | 0 | 0 | 1 | 1 | 0 | 6 | 0 | 1 | org.apache.wicket.core.util.resource.locator.IResourceStreamLocator .newResourceNameIterator(String,Locale,String,String,String,boolean) |
| ResourceNameIterator(String,String,String,Locale,Iterable,boolean) | 11 | 56 | 5 | 6 | 3 | 6 | 2 | 1 | org.apache.wicket.core.util.resource.locator.ResourceNameIterator .ResourceNameIterator(String,String,String,Locale,Iterable,boolean) |
| hasNext() | 22 | 83 | 13 | 10 | 7 | 0 | 0 | 1 | org.apache.wicket.core.util.resource.locator.ResourceNameIterator .hasNext() |
| locate(Class,String,String,String,Locale,String,boolean) | 14 | 54 | 6 | 5 | 1 | 7 | 4 | 2 | org.apache.wicket.core.util.resource.locator.ResourceStreamLocator .locate(Class,String,String,String,Locale,String,boolean) |
Statistics
| Stat | # lines of code (LOC) | # ByteCode instructions | Cyclomatic Complexity (CC) | ByteCode Cyclomatic Complexity (BCCC) | ByteCode Nesting Depth | # Parameters | # Variables | # Overloads |
|---|---|---|---|---|---|---|---|---|
| Sum: | 4 911 | 21 292 | 2 215 | 2 095 | 715 | 626 | 1 172 | 1 433 |
| Average: | 17.11 | 74.19 | 11.6 | 7.3 | 2.49 | 2.18 | 4.08 | 4.99 |
| Minimum: | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 1 |
| Maximum: | 117 | 479 | 66 | 54 | 32 | 8 | 34 | 14 |
| Standard deviation: | 20.37 | 85.18 | 11.3 | 8.44 | 4.32 | 1.78 | 5.8 | 4.47 |
| Variance: | 415.07 | 7 255 | 127.64 | 71.32 | 18.68 | 3.17 | 33.67 | 20.01 |
| Rule warning: Methods too big |
warnif count > 0 from m in JustMyCode.Methods where
m.NbLinesOfCode > 30 ||
m.NbBCInstructions > 200
orderby m.NbLinesOfCode descending,
m.NbBCInstructions descending
select new { m, m.NbLinesOfCode, m.NbBCInstructions }
// Methods where NbLinesOfCode > 30 or NbBCInstructions > 200
// are extremely complex and should be split in smaller methods.
// See the definition of the NbLinesOfCode metric here
// http://www.jarchitect.com/Metrics.aspx#NbLinesOfCode
70 methods matched
| methods | # lines of code (LOC) | # ByteCode instructions | Full Name |
|---|---|---|---|
| parse(XMLTokener,boolean,JSONArray) | 117 | 357 | org.apache.wicket.ajax.json.JSONML.parse(XMLTokener,boolean,JSONArray) |
| merge(IMarkupFragment,IMarkupFragment,int) | 114 | 479 | org.apache.wicket.markup.MergedMarkup.merge(IMarkupFragment ,IMarkupFragment,int) |
| parse(XMLTokener,JSONObject,String) | 106 | 308 | org.apache.wicket.ajax.json.XML.parse(XMLTokener,JSONObject,String) |
| internalCheck(Object) | 100 | 348 | org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream .internalCheck(Object) |
| stripCommentsAndWhitespace(String) | 80 | 280 | org.apache.wicket.core.util.string.JavaScriptStripper .stripCommentsAndWhitespace(String) |
| renderAjaxAttributes(Component,AjaxRequestAttributes) | 79 | 349 | org.apache.wicket.ajax.AbstractDefaultAjaxBehavior .renderAjaxAttributes(Component,AjaxRequestAttributes) |
| toString(Object,String) | 75 | 286 | org.apache.wicket.ajax.json.XML.toString(Object,String) |
| getGetAndSetter(String,Class) | 68 | 309 | org.apache.wicket.core.util.lang.PropertyResolver.getGetAndSetter (String,Class) |
| next() | 63 | 326 | org.apache.wicket.markup.parser.XmlPullParser.next() |
| match() | 60 | 422 | org.apache.wicket.application.WildcardMatcherHelper$Matcher.match() |
| getTimeZone() | 57 | 264 | org.apache.wicket.protocol.http.ClientProperties.getTimeZone() |
| isValidAuthority(String) | 57 | 200 | org.apache.wicket.validation.validator.UrlValidator.isValidAuthority (String) |
| nextToken() | 57 | 94 | org.apache.wicket.ajax.json.XMLTokener.nextToken() |
| toString(JSONArray) | 55 | 157 | org.apache.wicket.ajax.json.JSONML.toString(JSONArray) |
| toString(JSONObject) | 54 | 169 | org.apache.wicket.ajax.json.JSONML.toString(JSONObject) |
| specialTagHandling(String,int,int) | 51 | 248 | org.apache.wicket.markup.parser.XmlPullParser.specialTagHandling (String,int,int) |
| clickLink(String,boolean) | 51 | 222 | org.apache.wicket.util.tester.BaseWicketTester.clickLink(String ,boolean) |
| newRequestWrapper(HttpServletRequest) | 47 | 273 | org.apache.wicket.protocol.http.servlet .XForwardedRequestWrapperFactory.newRequestWrapper(HttpServletRequest) |
| buildRequest() | 47 | 239 | org.apache.wicket.protocol.http.mock.MockHttpServletRequest .buildRequest() |
| mapHandler(IRequestHandler) | 47 | 170 | org.apache.wicket.core.request.mapper.BasicResourceReferenceMapper .mapHandler(IRequestHandler) |
| appendOptionHtml(AppendingStringBuffer,Object,int,String) | 46 | 226 | org.apache.wicket.markup.html.form.CheckBoxMultipleChoice .appendOptionHtml(AppendingStringBuffer,Object,int,String) |
| getObjectAndGetSetter(String,Object,int,Class) | 46 | 145 | org.apache.wicket.core.util.lang.PropertyResolver .getObjectAndGetSetter(String,Object,int,Class) |
| quote(String,Writer) | 46 | 119 | org.apache.wicket.ajax.json.JSONObject.quote(String,Writer) |
| isDocumentValid(String) | 45 | 101 | org.apache.wicket.protocol.http.documentvalidation .HtmlDocumentValidator.isDocumentValid(String) |
| nextMeta() | 45 | 55 | org.apache.wicket.ajax.json.XMLTokener.nextMeta() |
| processRequest(MockHttpServletRequest,IRequestHandler,boolean) | 44 | 220 | org.apache.wicket.util.tester.BaseWicketTester.processRequest (MockHttpServletRequest,IRequestHandler,boolean) |
| MultipartServletWebRequestImpl(HttpServletRequest,String,Bytes,String ,FileItemFactory) | 44 | 153 | org.apache.wicket.protocol.http.servlet.MultipartServletWebRequestImpl .MultipartServletWebRequestImpl(HttpServletRequest,String,Bytes,String ,FileItemFactory) |
| equals(Object) | 44 | 117 | org.apache.wicket.request.resource.PackageResource.equals(Object) |
| renderNext(MarkupStream) | 43 | 177 | org.apache.wicket.MarkupContainer.renderNext(MarkupStream) |
| nextString(char) | 43 | 73 | org.apache.wicket.ajax.json.JSONTokener.nextString(char) |
| createRequestData(IRequestLogger$RequestData ,IRequestLogger$SessionData) | 42 | 193 | org.apache.wicket.protocol.http.RequestLogger.createRequestData (IRequestLogger$RequestData,IRequestLogger$SessionData) |
| appendOptionHtml(AppendingStringBuffer,Object,int,String) | 41 | 278 | org.apache.wicket.markup.html.form.RadioChoice.appendOptionHtml (AppendingStringBuffer,Object,int,String) |
| checkRendering(MarkupContainer) | 41 | 109 | org.apache.wicket.Page.checkRendering(MarkupContainer) |
| getStringIgnoreSettings(String,Component,IModel,Locale,String,String) | 40 | 218 | org.apache.wicket.Localizer.getStringIgnoreSettings(String,Component ,IModel,Locale,String,String) |
| parseMarkup() | 40 | 197 | org.apache.wicket.markup.AbstractMarkupParser.parseMarkup() |
| mapHandler(IRequestHandler) | 40 | 181 | org.apache.wicket.core.request.mapper.AbstractBookmarkableMapper .mapHandler(IRequestHandler) |
| createTagsByAttribute(String,String,String,boolean) | 40 | 141 | org.apache.wicket.util.tester.TagTester.createTagsByAttribute(String ,String,String,boolean) |
| lockPage(int) | 39 | 180 | org.apache.wicket.page.PageAccessSynchronizer.lockPage(int) |
| setResponseHeaders(AbstractResource$ResourceResponse ,IResource$Attributes) | 39 | 148 | org.apache.wicket.request.resource.AbstractResource.setResponseHeaders (AbstractResource$ResourceResponse,IResource$Attributes) |
| respond(RequestCycle) | 37 | 240 | org.apache.wicket.request.handler.render.WebPageRenderer.respond (RequestCycle) |
| onComponentTag(ComponentTag) | 37 | 204 | org.apache.wicket.markup.parser.filter.InlineEnclosureHandler .onComponentTag(ComponentTag) |
| newResourceResponse(IResource$Attributes) | 37 | 105 | org.apache.wicket.request.resource.ResourceStreamResource .newResourceResponse(IResource$Attributes) |
| validateTag(Iterator,HtmlDocumentParser) | 36 | 232 | org.apache.wicket.protocol.http.documentvalidation .HtmlDocumentValidator.validateTag(Iterator,HtmlDocumentParser) |
| processDirective() | 36 | 199 | org.apache.wicket.protocol.http.documentvalidation.HtmlDocumentParser .processDirective() |
| onComponentTag(ComponentTag) | 36 | 196 | org.apache.wicket.markup.html.form.Check.onComponentTag(ComponentTag) |
| processRequest(ServletRequest,ServletResponse,FilterChain) | 36 | 162 | org.apache.wicket.protocol.http.WicketFilter.processRequest (ServletRequest,ServletResponse,FilterChain) |
| determineCardId(String) | 36 | 159 | org.apache.wicket.validation.validator.CreditCardValidator .determineCardId(String) |
| getString(Component) | 36 | 154 | org.apache.wicket.model.StringResourceModel.getString(Component) |
| writeComponent(Response,String,Component,String) | 36 | 135 | org.apache.wicket.ajax.XmlAjaxResponse.writeComponent(Response,String ,Component,String) |
| createTagByAttribute(String,String,String) | 36 | 128 | org.apache.wicket.util.tester.TagTester.createTagByAttribute(String ,String,String) |
| isNonClosedTag(String) | 36 | 109 | org.apache.wicket.protocol.http.documentvalidation .HtmlDocumentValidator.isNonClosedTag(String) |
| resolveClass(String) | 35 | 109 | org.apache.wicket.application.AbstractClassResolver.resolveClass (String) |
| validatePage(String,Class,String,boolean) | 34 | 145 | org.apache.wicket.util.tester.DiffUtil.validatePage(String,Class ,String,boolean) |
| AutoLinkResolver$PathInfo(String,MarkupContainer,MarkupStream) | 34 | 125 | org.apache.wicket.markup.resolver.AutoLinkResolver$PathInfo .AutoLinkResolver$PathInfo(String,MarkupContainer,MarkupStream) |
| write(Writer,int,int) | 34 | 109 | org.apache.wicket.ajax.json.JSONObject.write(Writer,int,int) |
| JSONObject(JSONTokener) | 34 | 68 | org.apache.wicket.ajax.json.JSONObject.JSONObject(JSONTokener) |
| newAutoComponent(String,AutoLinkResolver$PathInfo) | 33 | 161 | org.apache.wicket.markup.resolver .AutoLinkResolver$AnchorResolverDelegate.newAutoComponent(String ,AutoLinkResolver$PathInfo) |
| formatDate(StringBuilder,Calendar,boolean) | 33 | 131 | org.apache.wicket.protocol.http.mock.MockHttpServletResponse .formatDate(StringBuilder,Calendar,boolean) |
| writeValue(Writer,Object,int,int) | 33 | 123 | org.apache.wicket.ajax.json.JSONObject.writeValue(Writer,Object,int ,int) |
| setSrcAttribute(ComponentTag) | 32 | 119 | org.apache.wicket.markup.html.image.resource.LocalizedImageResource .setSrcAttribute(ComponentTag) |
| BrowserInfoForm(String) | 31 | 200 | org.apache.wicket.markup.html.pages.BrowserInfoForm.BrowserInfoForm (String) |
| getResourcePaths(String) | 31 | 151 | org.apache.wicket.protocol.http.mock.MockServletContext .getResourcePaths(String) |
| checkFields(Object,ObjectStreamClass) | 31 | 142 | org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream .checkFields(Object,ObjectStreamClass) |
| decryptUrl(Request,Url) | 31 | 121 | org.apache.wicket.core.request.mapper.CryptoMapper.decryptUrl(Request ,Url) |
| MarkupFragment(IMarkupFragment,int) | 31 | 119 | org.apache.wicket.markup.MarkupFragment.MarkupFragment(IMarkupFragment ,int) |
| shapeCoordinates(Shape) | 31 | 117 | org.apache.wicket.markup.html.link.ClientSideImageMap.shapeCoordinates (Shape) |
| init(boolean,FilterConfig) | 31 | 112 | org.apache.wicket.protocol.http.WicketFilter.init(boolean,FilterConfig ) |
| skipPast(String) | 31 | 79 | org.apache.wicket.ajax.json.XMLTokener.skipPast(String) |
| UserAgent() | 8 | 221 | org.apache.wicket.protocol.http.request.UserAgent.UserAgent() |
| OpenCloseTagExpander() | 1 | 284 | org.apache.wicket.markup.parser.filter.OpenCloseTagExpander .OpenCloseTagExpander() |
Statistics
| Stat | # lines of code (LOC) | # ByteCode instructions |
|---|---|---|
| Sum: | 3 187 | 13 190 |
| Average: | 45.53 | 188.43 |
| Minimum: | 1 | 55 |
| Maximum: | 117 | 479 |
| Standard deviation: | 20.33 | 85.25 |
| Variance: | 413.33 | 7 267 |
| Rule warning: Methods too complex |
warnif count > 0 from m in JustMyCode.Methods where
m.CyclomaticComplexity > 20 ||
m.BCCyclomaticComplexity > 40 ||
m.BCNestingDepth > 5
orderby m.CyclomaticComplexity descending,
m.BCCyclomaticComplexity descending,
m.BCNestingDepth descending
select new { m, m.CyclomaticComplexity,
m.BCCyclomaticComplexity,
m.BCNestingDepth }
// Methods where CyclomaticComplexity > 20
// or BCCyclomaticComplexity > 40
// or BCNestingDepth > 4
// are hard to understand and maintain
// and should be split in smaller methods.
// See the definition of the complexity metrics here:
// http://www.jarchitect.com/Metrics.aspx#CC
// http://www.jarchitect.com/Metrics.aspx#ILCC
// http://www.jarchitect.com/Metrics.aspx#BCNestingDepth
75 methods matched
| methods | Cyclomatic Complexity (CC) | ByteCode Cyclomatic Complexity (BCCC) | ByteCode Nesting Depth | Full Name |
|---|---|---|---|---|
| parse(XMLTokener,boolean,JSONArray) | 66 | 46 | 19 | org.apache.wicket.ajax.json.JSONML.parse(XMLTokener,boolean,JSONArray) |
| merge(IMarkupFragment,IMarkupFragment,int) | 60 | 54 | 32 | org.apache.wicket.markup.MergedMarkup.merge(IMarkupFragment ,IMarkupFragment,int) |
| parse(XMLTokener,JSONObject,String) | 55 | 35 | 10 | org.apache.wicket.ajax.json.XML.parse(XMLTokener,JSONObject,String) |
| match() | 51 | 39 | 20 | org.apache.wicket.application.WildcardMatcherHelper$Matcher.match() |
| stripCommentsAndWhitespace(String) | 46 | 46 | 30 | org.apache.wicket.core.util.string.JavaScriptStripper .stripCommentsAndWhitespace(String) |
| nextToken() | 41 | 26 | 1 | org.apache.wicket.ajax.json.XMLTokener.nextToken() |
| equals(Object) | 37 | 22 | 12 | org.apache.wicket.request.resource.PackageResource.equals(Object) |
| internalCheck(Object) | 35 | 28 | 5 | org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream .internalCheck(Object) |
| nextMeta() | 35 | 23 | 2 | org.apache.wicket.ajax.json.XMLTokener.nextMeta() |
| isNonClosedTag(String) | 35 | 18 | 0 | org.apache.wicket.protocol.http.documentvalidation .HtmlDocumentValidator.isNonClosedTag(String) |
| getStringIgnoreSettings(String,Component,IModel,Locale,String,String) | 33 | 32 | 12 | org.apache.wicket.Localizer.getStringIgnoreSettings(String,Component ,IModel,Locale,String,String) |
| isValidAuthority(String) | 33 | 23 | 7 | org.apache.wicket.validation.validator.UrlValidator.isValidAuthority (String) |
| wrap(Object) | 31 | 30 | 15 | org.apache.wicket.ajax.json.JSONObject.wrap(Object) |
| respond(RequestCycle) | 30 | 29 | 18 | org.apache.wicket.request.handler.render.WebPageRenderer.respond (RequestCycle) |
| next() | 30 | 21 | 7 | org.apache.wicket.markup.parser.XmlPullParser.next() |
| stringToValue(String) | 26 | 20 | 4 | org.apache.wicket.ajax.json.XML.stringToValue(String) |
| onComponentTag(ComponentTag) | 25 | 21 | 11 | org.apache.wicket.markup.parser.filter.InlineEnclosureHandler .onComponentTag(ComponentTag) |
| renderAjaxAttributes(Component,AjaxRequestAttributes) | 24 | 23 | 1 | org.apache.wicket.ajax.AbstractDefaultAjaxBehavior .renderAjaxAttributes(Component,AjaxRequestAttributes) |
| toString(Object,String) | 24 | 22 | 7 | org.apache.wicket.ajax.json.XML.toString(Object,String) |
| stringToValue(String) | 24 | 19 | 9 | org.apache.wicket.ajax.json.JSONObject.stringToValue(String) |
| specialTagHandling(String,int,int) | 24 | 15 | 5 | org.apache.wicket.markup.parser.XmlPullParser.specialTagHandling (String,int,int) |
| createTagsByAttribute(String,String,String,boolean) | 23 | 22 | 13 | org.apache.wicket.util.tester.TagTester.createTagsByAttribute(String ,String,String,boolean) |
| getGetAndSetter(String,Class) | 23 | 19 | 4 | org.apache.wicket.core.util.lang.PropertyResolver.getGetAndSetter (String,Class) |
| processRequest(MockHttpServletRequest,IRequestHandler,boolean) | 22 | 23 | 4 | org.apache.wicket.util.tester.BaseWicketTester.processRequest (MockHttpServletRequest,IRequestHandler,boolean) |
| mapHandler(IRequestHandler) | 22 | 14 | 3 | org.apache.wicket.core.request.mapper.AbstractBookmarkableMapper .mapHandler(IRequestHandler) |
| valueToString(Object) | 22 | 13 | 3 | org.apache.wicket.ajax.json.JSONObject.valueToString(Object) |
| getTimeZone() | 21 | 21 | 6 | org.apache.wicket.protocol.http.ClientProperties.getTimeZone() |
| createTagByAttribute(String,String,String) | 21 | 20 | 12 | org.apache.wicket.util.tester.TagTester.createTagByAttribute(String ,String,String) |
| checkFields(Object,ObjectStreamClass) | 21 | 15 | 5 | org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream .checkFields(Object,ObjectStreamClass) |
| quote(String,Writer) | 19 | 18 | 6 | org.apache.wicket.ajax.json.JSONObject.quote(String,Writer) |
| nextHeaderMarkup(MarkupStream) | 19 | 16 | 9 | org.apache.wicket.markup.html.panel.AssociatedMarkupSourcingStrategy .nextHeaderMarkup(MarkupStream) |
| parseMarkup() | 18 | 19 | 9 | org.apache.wicket.markup.AbstractMarkupParser.parseMarkup() |
| lockPage(int) | 18 | 18 | 6 | org.apache.wicket.page.PageAccessSynchronizer.lockPage(int) |
| equals(Object) | 18 | 14 | 6 | org.apache.wicket.request.resource.PackageResource$CacheKey.equals (Object) |
| respond(IRequestCycle) | 17 | 15 | 7 | org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler .respond(IRequestCycle) |
| mapHandler(IRequestHandler) | 17 | 14 | 7 | org.apache.wicket.core.request.mapper.BasicResourceReferenceMapper .mapHandler(IRequestHandler) |
| renderComponentTag(ComponentTag) | 16 | 17 | 9 | org.apache.wicket.Component.renderComponentTag(ComponentTag) |
| newAutoComponent(String,AutoLinkResolver$PathInfo) | 16 | 13 | 6 | org.apache.wicket.markup.resolver .AutoLinkResolver$AnchorResolverDelegate.newAutoComponent(String ,AutoLinkResolver$PathInfo) |
| onComponentTag(ComponentTag) | 16 | 12 | 7 | org.apache.wicket.markup.parser.filter.HtmlHeaderSectionHandler .onComponentTag(ComponentTag) |
| populateMap(Object) | 15 | 16 | 7 | org.apache.wicket.ajax.json.JSONObject.populateMap(Object) |
| getString(Component) | 15 | 15 | 6 | org.apache.wicket.model.StringResourceModel.getString(Component) |
| onComponentTag(ComponentTag) | 15 | 13 | 6 | org.apache.wicket.markup.parser.filter.WicketLinkTagHandler .onComponentTag(ComponentTag) |
| rowToJSONArray(JSONTokener) | 15 | 10 | 6 | org.apache.wicket.ajax.json.CDL.rowToJSONArray(JSONTokener) |
| rowToString(JSONArray) | 13 | 13 | 10 | org.apache.wicket.ajax.json.CDL.rowToString(JSONArray) |
| isSwitch(String) | 13 | 12 | 10 | org.apache.wicket.validation.validator.CreditCardValidator.isSwitch (String) |
| toString(JSONObject) | 13 | 12 | 9 | org.apache.wicket.ajax.json.HTTP.toString(JSONObject) |
| getMarkup() | 13 | 11 | 6 | org.apache.wicket.markup.html.internal.HtmlHeaderContainer.getMarkup() |
| onComponentTag(ComponentTag) | 13 | 11 | 6 | org.apache.wicket.markup.parser.filter.RelativePathPrefixHandler .onComponentTag(ComponentTag) |
| hasNext() | 13 | 10 | 7 | org.apache.wicket.core.util.resource.locator.ResourceNameIterator .hasNext() |
| renderUrl(Url,IRequestHandler) | 12 | 12 | 8 | org.apache.wicket.request.cycle.RequestCycle.renderUrl(Url ,IRequestHandler) |
| createAndAddComponentsForWicketTags() | 12 | 12 | 7 | org.apache.wicket.MarkupContainer.createAndAddComponentsForWicketTags( ) |
| onComponentTag(ComponentTag) | 12 | 12 | 7 | org.apache.wicket.markup.html.link.ExternalLink.onComponentTag (ComponentTag) |
| find(String) | 12 | 11 | 8 | org.apache.wicket.markup.Markup.find(String) |
| skipRawMarkup() | 11 | 10 | 8 | org.apache.wicket.markup.MarkupStream.skipRawMarkup() |
| isMaestro(String) | 11 | 10 | 8 | org.apache.wicket.validation.validator.CreditCardValidator.isMaestro (String) |
| isStopResourceSearch(Class) | 11 | 10 | 6 | org.apache.wicket.resource.loader.ComponentStringResourceLoader .isStopResourceSearch(Class) |
| hasNext() | 11 | 8 | 6 | org.apache.wicket.markup.MarkupIterator.hasNext() |
| postProcess(Markup) | 10 | 10 | 8 | org.apache.wicket.markup.parser.filter.StyleAndScriptIdentifier .postProcess(Markup) |
| onComponentTag(ComponentTag) | 10 | 10 | 7 | org.apache.wicket.markup.parser.filter.HeadForceTagIdHandler .onComponentTag(ComponentTag) |
| getInputAsArray() | 10 | 10 | 6 | org.apache.wicket.markup.html.form.upload.MultiFileUploadField .getInputAsArray() |
| isDiscoverCard(String) | 10 | 9 | 7 | org.apache.wicket.validation.validator.CreditCardValidator .isDiscoverCard(String) |
| find(String) | 10 | 9 | 6 | org.apache.wicket.markup.MarkupFragment.find(String) |
| onComponentTag(ComponentTag) | 10 | 9 | 6 | org.apache.wicket.markup.parser.filter.StyleAndScriptIdentifier .onComponentTag(ComponentTag) |
| testValidity(Object) | 10 | 8 | 6 | org.apache.wicket.ajax.json.JSONObject.testValidity(Object) |
| findAndRenderChildWicketTags(MarkupStream,ComponentTag) | 9 | 11 | 6 | org.apache.wicket.markup.resolver .WicketMessageResolver$MessageContainer.findAndRenderChildWicketTags (MarkupStream,ComponentTag) |
| getChildComponent(MarkupStream,MarkupContainer) | 9 | 11 | 6 | org.apache.wicket.markup.html.internal.Enclosure.getChildComponent (MarkupStream,MarkupContainer) |
| isValidXmlChar(int) | 9 | 10 | 8 | org.apache.wicket.response.filter.XmlCleaningResponseFilter .isValidXmlChar(int) |
| scanLiteralPrefix() | 9 | 9 | 7 | org.apache.wicket.application.WildcardMatcherHelper$Matcher .scanLiteralPrefix() |
| addCookie(Cookie) | 9 | 9 | 7 | org.apache.wicket.protocol.http.mock.MockHttpServletResponse.addCookie (Cookie) |
| set() | 9 | 9 | 6 | org.apache.wicket .RestartResponseAtInterceptPageException$InterceptData.set() |
| removeMarkupWhereBaseMarkupIsNoLongerInTheCache() | 9 | 9 | 6 | org.apache.wicket.markup.MarkupCache .removeMarkupWhereBaseMarkupIsNoLongerInTheCache() |
| onComponentTag(ComponentTag) | 9 | 9 | 6 | org.apache.wicket.markup.parser.filter.HtmlProblemFinder .onComponentTag(ComponentTag) |
| getErrorMessage(Throwable) | 9 | 8 | 6 | org.apache.wicket.markup.html.pages.ExceptionErrorPage.getErrorMessage (Throwable) |
| appendAnchor(ComponentTag,CharSequence) | N/A | 11 | 7 | org.apache.wicket.markup.html.link.Link.appendAnchor(ComponentTag ,CharSequence) |
| component(Component,IVisit) | N/A | 8 | 6 | org.apache.wicket.markup.html.form.Form$FormModelUpdateVisitor .component(Component,IVisit) |
Statistics
| Stat | Cyclomatic Complexity (CC) | ByteCode Cyclomatic Complexity (BCCC) | ByteCode Nesting Depth |
|---|---|---|---|
| Sum: | 1 495 | 1 272 | 597 |
| Average: | 20.48 | 16.96 | 7.96 |
| Minimum: | 9 | 8 | 0 |
| Maximum: | 66 | 54 | 32 |
| Standard deviation: | 12.62 | 9.42 | 5.17 |
| Variance: | 159.26 | 88.68 | 26.71 |
| Rule warning: Methods potentially poorly commented |
warnif count > 0 from m in JustMyCode.Methods where
m.PercentageComment < 20 &&
m.NbLinesOfCode > 20
orderby m.PercentageComment ascending
select new { m, m.PercentageComment, m.NbLinesOfCode, m.NbLinesOfComment }
// Methods where %Comment < 20 and that have
// at least 20 lines of code might need to be more commented.
// See the definition of the Comments metric here
// http://www.jarchitect.com/Metrics.aspx#PercentageComment
// http://www.jarchitect.com/Metrics.aspx#NbLinesOfComment
59 methods matched
| methods | Percentage Comment | # lines of code (LOC) | # lines of comment | Full Name |
|---|---|---|---|---|
| data_remove(int) | 0 | 21 | 0 | org.apache.wicket.Component.data_remove(int) |
| data_insert(int,Object) | 0 | 27 | 0 | org.apache.wicket.Component.data_insert(int,Object) |
| writeValue(Writer,Object,int,int) | 0 | 33 | 0 | org.apache.wicket.ajax.json.JSONObject.writeValue(Writer,Object,int ,int) |
| quote(String,Writer) | 0 | 46 | 0 | org.apache.wicket.ajax.json.JSONObject.quote(String,Writer) |
| getMatchedSegmentSizes(Url) | 0 | 22 | 0 | org.apache.wicket.core.request.mapper.MountedMapper .getMatchedSegmentSizes(Url) |
| toString() | 0 | 27 | 0 | org.apache.wicket.core.request.handler.logger.ListenerInterfaceLogData .toString() |
| findSetter(Method,Class) | 0 | 21 | 0 | org.apache.wicket.core.util.lang.PropertyResolver$MethodGetAndSet .findSetter(Method,Class) |
| beforeRender(Component) | 0 | 24 | 0 | org.apache.wicket.markup.html.border.BorderBehavior.beforeRender (Component) |
| shapeCoordinates(Shape) | 0 | 31 | 0 | org.apache.wicket.markup.html.link.ClientSideImageMap.shapeCoordinates (Shape) |
| createRequestData(IRequestLogger$RequestData ,IRequestLogger$SessionData) | 0 | 42 | 0 | org.apache.wicket.protocol.http.RequestLogger.createRequestData (IRequestLogger$RequestData,IRequestLogger$SessionData) |
| equals(Object) | 0 | 44 | 0 | org.apache.wicket.request.resource.PackageResource.equals(Object) |
| getCacheableResourceStream() | 0 | 24 | 0 | org.apache.wicket.resource.bundles.ConcatBundleResource .getCacheableResourceStream() |
| deserialize(byte[]) | 0 | 22 | 0 | org.apache.wicket.serialize.java.JavaSerializer.deserialize(byte[]) |
| newResourceResponse(IResource$Attributes) | 2 | 37 | 1 | org.apache.wicket.request.resource.ResourceStreamResource .newResourceResponse(IResource$Attributes) |
| populateMap(Object) | 3 | 26 | 1 | org.apache.wicket.ajax.json.JSONObject.populateMap(Object) |
| extractPageParameters(Request,Url) | 3 | 25 | 1 | org.apache.wicket.core.request.mapper.MountedMapper .extractPageParameters(Request,Url) |
| internalCheck(Object) | 4 | 100 | 5 | org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream .internalCheck(Object) |
| checkFields(Object,ObjectStreamClass) | 6 | 31 | 2 | org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream .checkFields(Object,ObjectStreamClass) |
| renderAjaxAttributes(Component,AjaxRequestAttributes) | 7 | 79 | 6 | org.apache.wicket.ajax.AbstractDefaultAjaxBehavior .renderAjaxAttributes(Component,AjaxRequestAttributes) |
| getBehaviorId(Behavior) | 8 | 21 | 2 | org.apache.wicket.Behaviors.getBehaviorId(Behavior) |
| getMarkup() | 8 | 21 | 2 | org.apache.wicket.markup.html.internal.HtmlHeaderContainer.getMarkup() |
| resolveClass(String) | 10 | 35 | 4 | org.apache.wicket.application.AbstractClassResolver.resolveClass (String) |
| mapHandler(IRequestHandler) | 10 | 25 | 3 | org.apache.wicket.core.request.mapper.PageInstanceMapper.mapHandler (IRequestHandler) |
| newResourceResponse(IResource$Attributes) | 10 | 25 | 3 | org.apache.wicket.request.resource.ByteArrayResource .newResourceResponse(IResource$Attributes) |
| toString() | 10 | 25 | 3 | org.apache.wicket.validation.ValidationError.toString() |
| filter(AppendingStringBuffer) | 11 | 23 | 3 | org.apache.wicket.response.filter.AjaxServerAndClientTimeFilter.filter (AppendingStringBuffer) |
| ConverterLocator() | 12 | 22 | 3 | org.apache.wicket.ConverterLocator.ConverterLocator() |
| internalMap(Exception) | 12 | 28 | 4 | org.apache.wicket.DefaultExceptionMapper.internalMap(Exception) |
| buildUrl(AbstractBookmarkableMapper$UrlInfo) | 12 | 21 | 3 | org.apache.wicket.core.request.mapper.MountedMapper.buildUrl (AbstractBookmarkableMapper$UrlInfo) |
| getGetAndSetter(String,Class) | 12 | 68 | 10 | org.apache.wicket.core.util.lang.PropertyResolver.getGetAndSetter (String,Class) |
| renderCombinedEventScripts() | 12 | 22 | 3 | org.apache.wicket.markup.head.ResourceAggregator .renderCombinedEventScripts() |
| filter(AppendingStringBuffer) | 12 | 21 | 3 | org.apache.wicket.response.filter.ServerAndClientTimeFilter.filter (AppendingStringBuffer) |
| toString(JSONArray) | 14 | 55 | 9 | org.apache.wicket.ajax.json.JSONML.toString(JSONArray) |
| nextToken() | 14 | 57 | 10 | org.apache.wicket.ajax.json.XMLTokener.nextToken() |
| mapHandler(IRequestHandler) | 14 | 40 | 7 | org.apache.wicket.core.request.mapper.AbstractBookmarkableMapper .mapHandler(IRequestHandler) |
| findLabelContent(MarkupStream,ComponentTag) | 14 | 23 | 4 | org.apache.wicket.markup.html.form.AutoLabelTextResolver$TextLabel .findLabelContent(MarkupStream,ComponentTag) |
| children_remove(int) | 15 | 28 | 5 | org.apache.wicket.MarkupContainer.children_remove(int) |
| parse(XMLTokener,boolean,JSONArray) | 15 | 117 | 21 | org.apache.wicket.ajax.json.JSONML.parse(XMLTokener,boolean,JSONArray) |
| generatePostParameters() | 15 | 22 | 4 | org.apache.wicket.protocol.http.servlet.ServletWebRequest .generatePostParameters() |
| toString(Object,String) | 16 | 75 | 15 | org.apache.wicket.ajax.json.XML.toString(Object,String) |
| nextMeta() | 16 | 45 | 9 | org.apache.wicket.ajax.json.XMLTokener.nextMeta() |
| mapRequest(Request) | 16 | 25 | 5 | org.apache.wicket.core.request.mapper.BasicResourceReferenceMapper .mapRequest(Request) |
| mapHandler(IRequestHandler) | 16 | 47 | 9 | org.apache.wicket.core.request.mapper.BasicResourceReferenceMapper .mapHandler(IRequestHandler) |
| BrowserInfoForm(String) | 16 | 31 | 6 | org.apache.wicket.markup.html.pages.BrowserInfoForm.BrowserInfoForm (String) |
| getItems(IItemFactory,Iterator,Iterator) | 16 | 21 | 4 | org.apache.wicket.markup.repeater.ReuseIfModelsEqualStrategy.getItems (IItemFactory,Iterator,Iterator) |
| requestTime(long) | 16 | 30 | 6 | org.apache.wicket.protocol.http.AbstractRequestLogger.requestTime(long ) |
| isNonClosedTag(String) | 16 | 36 | 7 | org.apache.wicket.protocol.http.documentvalidation .HtmlDocumentValidator.isNonClosedTag(String) |
| newResourceResponse(IResource$Attributes) | 16 | 21 | 4 | org.apache.wicket.resource.bundles.ConcatBundleResource .newResourceResponse(IResource$Attributes) |
| JSONArray(JSONTokener) | 17 | 23 | 5 | org.apache.wicket.ajax.json.JSONArray.JSONArray(JSONTokener) |
| onComponentTag(ComponentTag) | 17 | 37 | 8 | org.apache.wicket.markup.parser.filter.InlineEnclosureHandler .onComponentTag(ComponentTag) |
| buildRequest() | 17 | 47 | 10 | org.apache.wicket.protocol.http.mock.MockHttpServletRequest .buildRequest() |
| bubble(ComponentEvent) | 18 | 26 | 6 | org.apache.wicket.ComponentEventSender.bubble(ComponentEvent) |
| breadth(ComponentEvent) | 18 | 27 | 6 | org.apache.wicket.ComponentEventSender.breadth(ComponentEvent) |
| toString(JSONObject) | 18 | 54 | 12 | org.apache.wicket.ajax.json.JSONML.toString(JSONObject) |
| stripCommentsAndWhitespace(String) | 18 | 80 | 18 | org.apache.wicket.core.util.string.JavaScriptStripper .stripCommentsAndWhitespace(String) |
| isDocumentValid(String) | 18 | 45 | 10 | org.apache.wicket.protocol.http.documentvalidation .HtmlDocumentValidator.isDocumentValid(String) |
| depth(ComponentEvent) | 19 | 25 | 6 | org.apache.wicket.ComponentEventSender.depth(ComponentEvent) |
| JSONObject(JSONTokener) | 19 | 34 | 8 | org.apache.wicket.ajax.json.JSONObject.JSONObject(JSONTokener) |
| parse(XMLTokener,JSONObject,String) | 19 | 106 | 25 | org.apache.wicket.ajax.json.XML.parse(XMLTokener,JSONObject,String) |
Statistics
| Stat | Percentage Comment | # lines of code (LOC) | # lines of comment |
|---|---|---|---|
| Sum: | 607 | 2 216 | 301 |
| Average: | 10.29 | 37.56 | 5.1 |
| Minimum: | 0 | 21 | 0 |
| Maximum: | 19 | 117 | 25 |
| Standard deviation: | 6.79 | 21.97 | 5.19 |
| Variance: | 46.17 | 482.86 | 26.97 |
| Rule warning: Methods with too many parameters |
warnif count > 0 from m in JustMyCode.Methods where
m.NbParameters > 5
orderby m.NbParameters descending
select new { m, m.NbParameters }
// Methods where NbParameters > 5 might be painful to call
// and might degrade performance. You should prefer using
// additional properties/fields to the declaring type to
// handle numerous states. Another alternative is to provide
// a class or structure dedicated to handle arguments passing
// See the definition of the NbParameters metric here
// http://www.jarchitect.com/Metrics.aspx#NbParameters
26 methods matched
| methods | # Parameters | Full Name |
|---|---|---|
| TextTemplateResourceReference(Class,String,String,String,IModel,Locale ,String,String) | 8 | org.apache.wicket.resource.TextTemplateResourceReference .TextTemplateResourceReference(Class,String,String,String,IModel ,Locale,String,String) |
| SharedResources$AutoResourceReference(Class,String,Locale,String ,String,IResource,SharedResources$1) | 7 | org.apache.wicket.SharedResources$AutoResourceReference .SharedResources$AutoResourceReference(Class,String,Locale,String ,String,IResource,SharedResources$1) |
| locate(Class,String,String,String,Locale,String,boolean) | 7 | org.apache.wicket.core.util.resource.locator.IResourceStreamLocator .locate(Class,String,String,String,Locale,String,boolean) |
| locate(Class,String,String,String,Locale,String,boolean) | 7 | org.apache.wicket.core.util.resource.locator.ResourceStreamLocator .locate(Class,String,String,String,Locale,String,boolean) |
| locate(Class,String,String,String,Locale,String,boolean) | 7 | org.apache.wicket.core.util.resource.locator.caching .CachingResourceStreamLocator.locate(Class,String,String,String,Locale ,String,boolean) |
| getResourceReference(Class,String,Locale,String,String,boolean,boolean ) | 7 | org.apache.wicket.request.resource.ResourceReferenceRegistry .getResourceReference(Class,String,Locale,String,String,boolean ,boolean) |
| PackageTextTemplate(Class,String,String,String,Locale,String,String) | 7 | org.apache.wicket.util.template.PackageTextTemplate .PackageTextTemplate(Class,String,String,String,Locale,String,String) |
| getString(String,Component,IModel,Locale,String,String) | 6 | org.apache.wicket.Localizer.getString(String,Component,IModel,Locale ,String,String) |
| getStringIgnoreSettings(String,Component,IModel,Locale,String,String) | 6 | org.apache.wicket.Localizer.getStringIgnoreSettings(String,Component ,IModel,Locale,String,String) |
| SharedResources$AutoResourceReference(Class,String,Locale,String ,String,IResource) | 6 | org.apache.wicket.SharedResources$AutoResourceReference .SharedResources$AutoResourceReference(Class,String,Locale,String ,String,IResource) |
| add(Class,String,Locale,String,String,IResource) | 6 | org.apache.wicket.SharedResources.add(Class,String,Locale,String ,String,IResource) |
| get(Class,String,Locale,String,String,boolean) | 6 | org.apache.wicket.SharedResources.get(Class,String,Locale,String ,String,boolean) |
| newPagingNavigationLink(String,IPageable,long) | 6 | org.apache.wicket.ajax.markup.html.navigation.paging .AjaxPagingNavigation.newPagingNavigationLink(String,IPageable,long) |
| newResourceNameIterator(String,Locale,String,String,String,boolean) | 6 | org.apache.wicket.core.util.resource.locator.IResourceStreamLocator .newResourceNameIterator(String,Locale,String,String,String,boolean) |
| ResourceNameIterator(String,String,String,Locale,Iterable,boolean) | 6 | org.apache.wicket.core.util.resource.locator.ResourceNameIterator .ResourceNameIterator(String,String,String,Locale,Iterable,boolean) |
| newResourceNameIterator(String,Locale,String,String,String,boolean) | 6 | org.apache.wicket.core.util.resource.locator.ResourceStreamLocator .newResourceNameIterator(String,Locale,String,String,String,boolean) |
| newResourceNameIterator(String,Locale,String,String,Iterable,boolean) | 6 | org.apache.wicket.core.util.resource.locator.ResourceStreamLocator .newResourceNameIterator(String,Locale,String,String,Iterable,boolean) |
| newResourceNameIterator(String,Locale,String,String,String,boolean) | 6 | org.apache.wicket.core.util.resource.locator.caching .CachingResourceStreamLocator.newResourceNameIterator(String,Locale ,String,String,String,boolean) |
| WicketMessageResolver$MessageContainer$1 (WicketMessageResolver$MessageContainer,String,Map,Map,String ,MarkupStream) | 6 | org.apache.wicket.markup.resolver .WicketMessageResolver$MessageContainer$1 .WicketMessageResolver$MessageContainer$1 (WicketMessageResolver$MessageContainer,String,Map,Map,String ,MarkupStream) |
| forReference(ResourceReference,PageParameters,String,boolean,String ,String) | 6 | org.apache.wicket.markup.head.JavaScriptHeaderItem.forReference (ResourceReference,PageParameters,String,boolean,String,String) |
| internalRenderJavaScriptReference(Response,String,String,boolean ,String,String) | 6 | org.apache.wicket.markup.head.JavaScriptHeaderItem .internalRenderJavaScriptReference(Response,String,String,boolean ,String,String) |
| JavaScriptReferenceHeaderItem(ResourceReference,PageParameters,String ,boolean,String,String) | 6 | org.apache.wicket.markup.head.JavaScriptReferenceHeaderItem .JavaScriptReferenceHeaderItem(ResourceReference,PageParameters,String ,boolean,String,String) |
| LocalizedImageResource$SimpleStaticResourceReference(Class,String ,Locale,String,String,IResource) | 6 | org.apache.wicket.markup.html.image.resource .LocalizedImageResource$SimpleStaticResourceReference .LocalizedImageResource$SimpleStaticResourceReference(Class,String ,Locale,String,String,IResource) |
| ErrorAttributes(Integer,String,String,String,Class,Throwable) | 6 | org.apache.wicket.protocol.http.servlet.ErrorAttributes .ErrorAttributes(Integer,String,String,String,Class,Throwable) |
| _getResourceReference(String,String,Locale,String,String,boolean) | 6 | org.apache.wicket.request.resource.ResourceReferenceRegistry ._getResourceReference(String,String,Locale,String,String,boolean) |
| ConcatResourceBundleReference<T>(Class,String,Locale,String,String ,List) | 6 | org.apache.wicket.resource.bundles.ConcatResourceBundleReference .ConcatResourceBundleReference<T>(Class,String,Locale,String,String ,List) |
Statistics
| Stat | # Parameters |
|---|---|
| Sum: | 164 |
| Average: | 6.31 |
| Minimum: | 6 |
| Maximum: | 8 |
| Standard deviation: | 0.54 |
| Variance: | 0.29 |
| Rule warning: Methods with too many local variables |
warnif count > 0 from m in JustMyCode.Methods where
m.NbVariables > 15
orderby m.NbVariables descending
select new { m, m.NbVariables }
// Methods where NbVariables > 8 are hard to understand and maintain.
// Methods where NbVariables > 15 are extremely complex
// and should be split in smaller methods.
// See the definition of the Nbvariables metric here
// http://www.jarchitect.com/Metrics.aspx#Nbvariables
12 methods matched
| methods | # Variables | Full Name |
|---|---|---|
| renderAjaxAttributes(Component,AjaxRequestAttributes) | 34 | org.apache.wicket.ajax.AbstractDefaultAjaxBehavior .renderAjaxAttributes(Component,AjaxRequestAttributes) |
| internalCheck(Object) | 34 | org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream .internalCheck(Object) |
| merge(IMarkupFragment,IMarkupFragment,int) | 24 | org.apache.wicket.markup.MergedMarkup.merge(IMarkupFragment ,IMarkupFragment,int) |
| isValidAuthority(String) | 24 | org.apache.wicket.validation.validator.UrlValidator.isValidAuthority (String) |
| getTimeZone() | 23 | org.apache.wicket.protocol.http.ClientProperties.getTimeZone() |
| getResourcePaths(String) | 20 | org.apache.wicket.protocol.http.mock.MockServletContext .getResourcePaths(String) |
| clickLink(String,boolean) | 19 | org.apache.wicket.util.tester.BaseWicketTester.clickLink(String ,boolean) |
| buildRequest() | 18 | org.apache.wicket.protocol.http.mock.MockHttpServletRequest .buildRequest() |
| toString(Object,String) | 17 | org.apache.wicket.ajax.json.XML.toString(Object,String) |
| extractPageParameters(Request,Url) | 17 | org.apache.wicket.core.request.mapper.MountedMapper .extractPageParameters(Request,Url) |
| asArray(Map) | 16 | org.apache.wicket.ajax.json.JsonUtils.asArray(Map) |
| mapHandler(IRequestHandler) | 16 | org.apache.wicket.core.request.mapper.AbstractBookmarkableMapper .mapHandler(IRequestHandler) |
Statistics
| Stat | # Variables |
|---|---|
| Sum: | 262 |
| Average: | 21.83 |
| Minimum: | 16 |
| Maximum: | 34 |
| Standard deviation: | 6.11 |
| Variance: | 37.31 |
| Rule warning: Methods with too many overloads |
warnif count > 0 from m in JustMyCode.Methods where
m.NbOverloads > 6
orderby m.NbOverloads descending
select new { m, m.NbOverloads }
// Methods where NbOverloads > 6 might
// be a problem to maintain and provoke higher coupling
// than necessary.
// See the definition of the NbOverloads metric here
// http://www.jarchitect.com/Metrics.aspx#NbOverloads
124 methods matched
| methods | # Overloads | Full Name |
|---|---|---|
| put(Object) | 14 | org.apache.wicket.ajax.json.JSONArray.put(Object) |
| put(boolean) | 14 | org.apache.wicket.ajax.json.JSONArray.put(boolean) |
| put(Collection) | 14 | org.apache.wicket.ajax.json.JSONArray.put(Collection) |
| put(double) | 14 | org.apache.wicket.ajax.json.JSONArray.put(double) |
| put(int) | 14 | org.apache.wicket.ajax.json.JSONArray.put(int) |
| put(long) | 14 | org.apache.wicket.ajax.json.JSONArray.put(long) |
| put(Map) | 14 | org.apache.wicket.ajax.json.JSONArray.put(Map) |
| put(int,boolean) | 14 | org.apache.wicket.ajax.json.JSONArray.put(int,boolean) |
| put(int,Object) | 14 | org.apache.wicket.ajax.json.JSONArray.put(int,Object) |
| put(int,Collection) | 14 | org.apache.wicket.ajax.json.JSONArray.put(int,Collection) |
| put(int,double) | 14 | org.apache.wicket.ajax.json.JSONArray.put(int,double) |
| put(int,int) | 14 | org.apache.wicket.ajax.json.JSONArray.put(int,int) |
| put(int,long) | 14 | org.apache.wicket.ajax.json.JSONArray.put(int,long) |
| put(int,Map) | 14 | org.apache.wicket.ajax.json.JSONArray.put(int,Map) |
| ListChoice<T>(String) | 12 | org.apache.wicket.markup.html.form.ListChoice.ListChoice<T>(String) |
| ListChoice<T>(String,IModel,List,IChoiceRenderer,int) | 12 | org.apache.wicket.markup.html.form.ListChoice.ListChoice<T>(String ,IModel,List,IChoiceRenderer,int) |
| ListChoice<T>(String,List) | 12 | org.apache.wicket.markup.html.form.ListChoice.ListChoice<T>(String ,List) |
| ListChoice<T>(String,List,IChoiceRenderer) | 12 | org.apache.wicket.markup.html.form.ListChoice.ListChoice<T>(String ,List,IChoiceRenderer) |
| ListChoice<T>(String,IModel,List) | 12 | org.apache.wicket.markup.html.form.ListChoice.ListChoice<T>(String ,IModel,List) |
| ListChoice<T>(String,IModel,List,int) | 12 | org.apache.wicket.markup.html.form.ListChoice.ListChoice<T>(String ,IModel,List,int) |
| ListChoice<T>(String,IModel,List,IChoiceRenderer) | 12 | org.apache.wicket.markup.html.form.ListChoice.ListChoice<T>(String ,IModel,List,IChoiceRenderer) |
| ListChoice<T>(String,IModel) | 12 | org.apache.wicket.markup.html.form.ListChoice.ListChoice<T>(String ,IModel) |
| ListChoice<T>(String,IModel,IModel,IChoiceRenderer,int) | 12 | org.apache.wicket.markup.html.form.ListChoice.ListChoice<T>(String ,IModel,IModel,IChoiceRenderer,int) |
| ListChoice<T>(String,IModel,IModel) | 12 | org.apache.wicket.markup.html.form.ListChoice.ListChoice<T>(String ,IModel,IModel) |
| ListChoice<T>(String,IModel,IChoiceRenderer) | 12 | org.apache.wicket.markup.html.form.ListChoice.ListChoice<T>(String ,IModel,IChoiceRenderer) |
| ListChoice<T>(String,IModel,IModel,IChoiceRenderer) | 12 | org.apache.wicket.markup.html.form.ListChoice.ListChoice<T>(String ,IModel,IModel,IChoiceRenderer) |
| ListMultipleChoice<T>(String) | 11 | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice<T>(String) |
| ListMultipleChoice<T>(String,List) | 11 | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice<T>(String,List) |
| ListMultipleChoice<T>(String,List,int) | 11 | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice<T>(String,List,int) |
| ListMultipleChoice<T>(String,List,IChoiceRenderer) | 11 | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice<T>(String,List,IChoiceRenderer) |
| ListMultipleChoice<T>(String,IModel,List) | 11 | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice<T>(String,IModel,List) |
| ListMultipleChoice<T>(String,IModel,List,IChoiceRenderer) | 11 | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice<T>(String,IModel,List,IChoiceRenderer) |
| ListMultipleChoice<T>(String,IModel) | 11 | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice<T>(String,IModel) |
| ListMultipleChoice<T>(String,IModel,IModel) | 11 | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice<T>(String,IModel,IModel) |
| ListMultipleChoice<T>(String,IModel,IChoiceRenderer) | 11 | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice<T>(String,IModel,IChoiceRenderer) |
| ListMultipleChoice<T>(String,IModel,IModel,IChoiceRenderer) | 11 | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice<T>(String,IModel,IModel,IChoiceRenderer) |
| ListMultipleChoice<T>() | 11 | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice<T>() |
| AbstractSingleSelectChoice<T>(String) | 10 | org.apache.wicket.markup.html.form.AbstractSingleSelectChoice .AbstractSingleSelectChoice<T>(String) |
| AbstractSingleSelectChoice<T>(String,List) | 10 | org.apache.wicket.markup.html.form.AbstractSingleSelectChoice .AbstractSingleSelectChoice<T>(String,List) |
| AbstractSingleSelectChoice<T>(String,List,IChoiceRenderer) | 10 | org.apache.wicket.markup.html.form.AbstractSingleSelectChoice .AbstractSingleSelectChoice<T>(String,List,IChoiceRenderer) |
| AbstractSingleSelectChoice<T>(String,IModel,List) | 10 | org.apache.wicket.markup.html.form.AbstractSingleSelectChoice .AbstractSingleSelectChoice<T>(String,IModel,List) |
| AbstractSingleSelectChoice<T>(String,IModel,List,IChoiceRenderer) | 10 | org.apache.wicket.markup.html.form.AbstractSingleSelectChoice .AbstractSingleSelectChoice<T>(String,IModel,List,IChoiceRenderer) |
| AbstractSingleSelectChoice<T>(String,IModel) | 10 | org.apache.wicket.markup.html.form.AbstractSingleSelectChoice .AbstractSingleSelectChoice<T>(String,IModel) |
| AbstractSingleSelectChoice<T>(String,IModel,IModel) | 10 | org.apache.wicket.markup.html.form.AbstractSingleSelectChoice .AbstractSingleSelectChoice<T>(String,IModel,IModel) |
| AbstractSingleSelectChoice<T>(String,IModel,IChoiceRenderer) | 10 | org.apache.wicket.markup.html.form.AbstractSingleSelectChoice .AbstractSingleSelectChoice<T>(String,IModel,IChoiceRenderer) |
| AbstractSingleSelectChoice<T>(String,IModel,IModel,IChoiceRenderer) | 10 | org.apache.wicket.markup.html.form.AbstractSingleSelectChoice .AbstractSingleSelectChoice<T>(String,IModel,IModel,IChoiceRenderer) |
| AbstractSingleSelectChoice<T>() | 10 | org.apache.wicket.markup.html.form.AbstractSingleSelectChoice .AbstractSingleSelectChoice<T>() |
| JSONObject() | 9 | org.apache.wicket.ajax.json.JSONObject.JSONObject() |
| JSONObject(Map) | 9 | org.apache.wicket.ajax.json.JSONObject.JSONObject(Map) |
| JSONObject(JSONObject,String[]) | 9 | org.apache.wicket.ajax.json.JSONObject.JSONObject(JSONObject,String[]) |
| JSONObject(JSONTokener) | 9 | org.apache.wicket.ajax.json.JSONObject.JSONObject(JSONTokener) |
| JSONObject(Object) | 9 | org.apache.wicket.ajax.json.JSONObject.JSONObject(Object) |
| JSONObject(Object,String[]) | 9 | org.apache.wicket.ajax.json.JSONObject.JSONObject(Object,String[]) |
| JSONObject(String) | 9 | org.apache.wicket.ajax.json.JSONObject.JSONObject(String) |
| JSONObject(String,Locale) | 9 | org.apache.wicket.ajax.json.JSONObject.JSONObject(String,Locale) |
| JSONObject() | 9 | org.apache.wicket.ajax.json.JSONObject.JSONObject() |
| AbstractChoice<T,E>(String) | 9 | org.apache.wicket.markup.html.form.AbstractChoice.AbstractChoice<T,E> (String) |
| AbstractChoice<T,E>(String,IModel,IChoiceRenderer) | 9 | org.apache.wicket.markup.html.form.AbstractChoice.AbstractChoice<T,E> (String,IModel,IChoiceRenderer) |
| AbstractChoice<T,E>(String,List) | 9 | org.apache.wicket.markup.html.form.AbstractChoice.AbstractChoice<T,E> (String,List) |
| AbstractChoice<T,E>(String,List,IChoiceRenderer) | 9 | org.apache.wicket.markup.html.form.AbstractChoice.AbstractChoice<T,E> (String,List,IChoiceRenderer) |
| AbstractChoice<T,E>(String,IModel,List) | 9 | org.apache.wicket.markup.html.form.AbstractChoice.AbstractChoice<T,E> (String,IModel,List) |
| AbstractChoice<T,E>(String,IModel,IModel,IChoiceRenderer) | 9 | org.apache.wicket.markup.html.form.AbstractChoice.AbstractChoice<T,E> (String,IModel,IModel,IChoiceRenderer) |
| AbstractChoice<T,E>(String,IModel,List,IChoiceRenderer) | 9 | org.apache.wicket.markup.html.form.AbstractChoice.AbstractChoice<T,E> (String,IModel,List,IChoiceRenderer) |
| AbstractChoice<T,E>(String,IModel) | 9 | org.apache.wicket.markup.html.form.AbstractChoice.AbstractChoice<T,E> (String,IModel) |
| AbstractChoice<T,E>(String,IModel,IModel) | 9 | org.apache.wicket.markup.html.form.AbstractChoice.AbstractChoice<T,E> (String,IModel,IModel) |
| CheckBoxMultipleChoice<T>(String) | 9 | org.apache.wicket.markup.html.form.CheckBoxMultipleChoice .CheckBoxMultipleChoice<T>(String) |
| CheckBoxMultipleChoice<T>(String,List) | 9 | org.apache.wicket.markup.html.form.CheckBoxMultipleChoice .CheckBoxMultipleChoice<T>(String,List) |
| CheckBoxMultipleChoice<T>(String,List,IChoiceRenderer) | 9 | org.apache.wicket.markup.html.form.CheckBoxMultipleChoice .CheckBoxMultipleChoice<T>(String,List,IChoiceRenderer) |
| CheckBoxMultipleChoice<T>(String,IModel,List) | 9 | org.apache.wicket.markup.html.form.CheckBoxMultipleChoice .CheckBoxMultipleChoice<T>(String,IModel,List) |
| CheckBoxMultipleChoice<T>(String,IModel,List,IChoiceRenderer) | 9 | org.apache.wicket.markup.html.form.CheckBoxMultipleChoice .CheckBoxMultipleChoice<T>(String,IModel,List,IChoiceRenderer) |
| CheckBoxMultipleChoice<T>(String,IModel) | 9 | org.apache.wicket.markup.html.form.CheckBoxMultipleChoice .CheckBoxMultipleChoice<T>(String,IModel) |
| CheckBoxMultipleChoice<T>(String,IModel,IModel) | 9 | org.apache.wicket.markup.html.form.CheckBoxMultipleChoice .CheckBoxMultipleChoice<T>(String,IModel,IModel) |
| CheckBoxMultipleChoice<T>(String,IModel,IChoiceRenderer) | 9 | org.apache.wicket.markup.html.form.CheckBoxMultipleChoice .CheckBoxMultipleChoice<T>(String,IModel,IChoiceRenderer) |
| CheckBoxMultipleChoice<T>(String,IModel,IModel,IChoiceRenderer) | 9 | org.apache.wicket.markup.html.form.CheckBoxMultipleChoice .CheckBoxMultipleChoice<T>(String,IModel,IModel,IChoiceRenderer) |
| DropDownChoice<T>(String) | 9 | org.apache.wicket.markup.html.form.DropDownChoice.DropDownChoice<T> (String) |
| DropDownChoice<T>(String,List) | 9 | org.apache.wicket.markup.html.form.DropDownChoice.DropDownChoice<T> (String,List) |
| DropDownChoice<T>(String,List,IChoiceRenderer) | 9 | org.apache.wicket.markup.html.form.DropDownChoice.DropDownChoice<T> (String,List,IChoiceRenderer) |
| DropDownChoice<T>(String,IModel,List) | 9 | org.apache.wicket.markup.html.form.DropDownChoice.DropDownChoice<T> (String,IModel,List) |
| DropDownChoice<T>(String,IModel,List,IChoiceRenderer) | 9 | org.apache.wicket.markup.html.form.DropDownChoice.DropDownChoice<T> (String,IModel,List,IChoiceRenderer) |
| DropDownChoice<T>(String,IModel) | 9 | org.apache.wicket.markup.html.form.DropDownChoice.DropDownChoice<T> (String,IModel) |
| DropDownChoice<T>(String,IModel,IModel) | 9 | org.apache.wicket.markup.html.form.DropDownChoice.DropDownChoice<T> (String,IModel,IModel) |
| DropDownChoice<T>(String,IModel,IChoiceRenderer) | 9 | org.apache.wicket.markup.html.form.DropDownChoice.DropDownChoice<T> (String,IModel,IChoiceRenderer) |
| DropDownChoice<T>(String,IModel,IModel,IChoiceRenderer) | 9 | org.apache.wicket.markup.html.form.DropDownChoice.DropDownChoice<T> (String,IModel,IModel,IChoiceRenderer) |
| ListMultipleChoice(String) | 9 | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice(String) |
| ListMultipleChoice(String,List) | 9 | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice(String,List) |
| ListMultipleChoice(String,List,IChoiceRenderer) | 9 | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice(String,List,IChoiceRenderer) |
| ListMultipleChoice(String,IModel,List) | 9 | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice(String,IModel,List) |
| ListMultipleChoice(String,IModel,List,IChoiceRenderer) | 9 | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice(String,IModel,List,IChoiceRenderer) |
| ListMultipleChoice(String,IModel) | 9 | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice(String,IModel) |
| ListMultipleChoice(String,IModel,IModel) | 9 | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice(String,IModel,IModel) |
| ListMultipleChoice(String,IModel,IChoiceRenderer) | 9 | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice(String,IModel,IChoiceRenderer) |
| ListMultipleChoice(String,IModel,IModel,IChoiceRenderer) | 9 | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice(String,IModel,IModel,IChoiceRenderer) |
| RadioChoice<T>(String) | 9 | org.apache.wicket.markup.html.form.RadioChoice.RadioChoice<T>(String) |
| RadioChoice<T>(String,List) | 9 | org.apache.wicket.markup.html.form.RadioChoice.RadioChoice<T>(String ,List) |
| RadioChoice<T>(String,List,IChoiceRenderer) | 9 | org.apache.wicket.markup.html.form.RadioChoice.RadioChoice<T>(String ,List,IChoiceRenderer) |
| RadioChoice<T>(String,IModel,List) | 9 | org.apache.wicket.markup.html.form.RadioChoice.RadioChoice<T>(String ,IModel,List) |
| RadioChoice<T>(String,IModel,List,IChoiceRenderer) | 9 | org.apache.wicket.markup.html.form.RadioChoice.RadioChoice<T>(String ,IModel,List,IChoiceRenderer) |
| RadioChoice<T>(String,IModel) | 9 | org.apache.wicket.markup.html.form.RadioChoice.RadioChoice<T>(String ,IModel) |
| RadioChoice<T>(String,IModel,IModel) | 9 | org.apache.wicket.markup.html.form.RadioChoice.RadioChoice<T>(String ,IModel,IModel) |
| RadioChoice<T>(String,IModel,IChoiceRenderer) | 9 | org.apache.wicket.markup.html.form.RadioChoice.RadioChoice<T>(String ,IModel,IChoiceRenderer) |
Statistics
| Stat | # Overloads |
|---|---|
| Sum: | 1 224 |
| Average: | 9.87 |
| Minimum: | 7 |
| Maximum: | 14 |
| Standard deviation: | 1.93 |
| Variance: | 3.73 |
| Rule warning: Types with too many methods |
warnif count > 0 from t in JustMyCode.Types where
t.Methods.Count() > 20
orderby t.Methods.Count() descending
select new { t, t.InstanceMethods, t.StaticMethods }
// Types where Methods.Count() > 20 might be hard to
// understand and maintain
// but there might be cases where it is relevant
// to have a high number of methods.
45 types matched
| types | InstanceMethods | StaticMethods | Full Name |
|---|---|---|---|
| Component | 197 methods | 0 method | org.apache.wicket.Component |
| BaseWicketTester | 113 methods | 9 methods | org.apache.wicket.util.tester.BaseWicketTester |
| Application | 96 methods | 4 methods | org.apache.wicket.Application |
| MockHttpServletRequest | 87 methods | 0 method | org.apache.wicket.protocol.http.mock.MockHttpServletRequest |
| ClientProperties | 83 methods | 0 method | org.apache.wicket.protocol.http.ClientProperties |
| Form<T> | 74 methods | 7 methods | org.apache.wicket.markup.html.form.Form |
| FormComponent<T> | 60 methods | 3 methods | org.apache.wicket.markup.html.form.FormComponent |
| MarkupContainer | 57 methods | 4 methods | org.apache.wicket.MarkupContainer |
| ComponentTag | 60 methods | 0 method | org.apache.wicket.markup.ComponentTag |
| JSONObject | 45 methods | 12 methods | org.apache.wicket.ajax.json.JSONObject |
| MockHttpServletResponse | 48 methods | 4 methods | org.apache.wicket.protocol.http.mock.MockHttpServletResponse |
| Session | 46 methods | 3 methods | org.apache.wicket.Session |
| Page | 47 methods | 1 method | org.apache.wicket.Page |
| BufferedHttpServletResponse | 42 methods | 3 methods | org.apache.wicket.protocol.http.BufferedHttpServletResponse |
| JSONArray | 44 methods | 0 method | org.apache.wicket.ajax.json.JSONArray |
| RequestCycle | 41 methods | 2 methods | org.apache.wicket.request.cycle.RequestCycle |
| WebApplication | 40 methods | 1 method | org.apache.wicket.protocol.http.WebApplication |
| IResourceSettings | 39 methods | 0 method | org.apache.wicket.settings.IResourceSettings |
| ResourceSettings | 39 methods | 0 method | org.apache.wicket.settings.def.ResourceSettings |
| XmlTag | 35 methods | 0 method | org.apache.wicket.markup.parser.XmlTag |
| BrowserInfoForm$ClientPropertiesBean | 34 methods | 0 method | org.apache.wicket.markup.html.pages .BrowserInfoForm$ClientPropertiesBean |
| WicketTester | 33 methods | 1 method | org.apache.wicket.util.tester.WicketTester |
| MockWebResponse | 32 methods | 0 method | org.apache.wicket.mock.MockWebResponse |
| MarkupStream | 32 methods | 0 method | org.apache.wicket.markup.MarkupStream |
| AbstractAjaxResponse | 25 methods | 4 methods | org.apache.wicket.ajax.AbstractAjaxResponse |
| MarkupResourceStream | 29 methods | 0 method | org.apache.wicket.markup.MarkupResourceStream |
| MockWebRequest | 28 methods | 0 method | org.apache.wicket.mock.MockWebRequest |
| AjaxRequestHandler | 27 methods | 1 method | org.apache.wicket.ajax.AjaxRequestHandler |
| AbstractRequestLogger | 28 methods | 0 method | org.apache.wicket.protocol.http.AbstractRequestLogger |
| AbstractResource$ResourceResponse | 28 methods | 0 method | org.apache.wicket.request.resource.AbstractResource$ResourceResponse |
| AjaxRequestAttributes | 27 methods | 0 method | org.apache.wicket.ajax.attributes.AjaxRequestAttributes |
| MockServletContext | 27 methods | 0 method | org.apache.wicket.protocol.http.mock.MockServletContext |
| ListView<T> | 25 methods | 1 method | org.apache.wicket.markup.html.list.ListView |
| BufferedWebResponse | 24 methods | 2 methods | org.apache.wicket.protocol.http.BufferedWebResponse |
| FormTester | 21 methods | 5 methods | org.apache.wicket.util.tester.FormTester |
| IRequestLogger$RequestData | 24 methods | 0 method | org.apache.wicket.protocol.http.IRequestLogger$RequestData |
| ServletWebRequest | 22 methods | 2 methods | org.apache.wicket.protocol.http.servlet.ServletWebRequest |
| PackageResource | 22 methods | 2 methods | org.apache.wicket.request.resource.PackageResource |
| FeedbackMessages | 22 methods | 0 method | org.apache.wicket.feedback.FeedbackMessages |
| HttpSessionStore | 21 methods | 1 method | org.apache.wicket.session.HttpSessionStore |
| HeaderBufferingWebResponse | 22 methods | 0 method | org.apache.wicket.protocol.http.HeaderBufferingWebResponse |
| WicketFilter | 21 methods | 1 method | org.apache.wicket.protocol.http.WicketFilter |
| CreditCardValidator | 22 methods | 0 method | org.apache.wicket.validation.validator.CreditCardValidator |
| AbstractDefaultAjaxBehavior | 21 methods | 0 method | org.apache.wicket.ajax.AbstractDefaultAjaxBehavior |
| Link<T> | 21 methods | 0 method | org.apache.wicket.markup.html.link.Link |
Statistics
| Stat | InstanceMethods | StaticMethods |
|---|---|---|
| Sum: | 0 | 0 |
| Average: | 0 | 0 |
| Minimum: | 0 | 0 |
| Maximum: | 0 | 0 |
| Standard deviation: | 0 | 0 |
| Variance: | 0 | 0 |
| Rule warning: Types with too many fields |
warnif count > 0 from t in JustMyCode.Types where
t.Fields.Count() > 20 &&
!t.IsEnumeration
orderby t.Fields.Count() descending
select new { t, t.InstanceFields, t.StaticFields, t.SizeOfInst }
// Types where Fields.Count() > 20 and not IsEnumeration
// might be hard to understand and maintain
// but there might be cases where it is relevant
// to have a high number of fields.
7 types matched
| types | InstanceFields | StaticFields | Size of instance | Full Name |
|---|---|---|---|---|
| Component | 8 fields | 51 fields | 32 | org.apache.wicket.Component |
| Application | 43 fields | 3 fields | 172 | org.apache.wicket.Application |
| ClientProperties | 41 fields | 1 field | 164 | org.apache.wicket.protocol.http.ClientProperties |
| UrlValidator | 3 fields | 30 fields | 12 | org.apache.wicket.validation.validator.UrlValidator |
| MockHttpServletRequest | 20 fields | 3 fields | 80 | org.apache.wicket.protocol.http.mock.MockHttpServletRequest |
| BaseWicketTester | 21 fields | 1 field | 84 | org.apache.wicket.util.tester.BaseWicketTester |
| ResourceSettings | 21 fields | 0 field | 84 | org.apache.wicket.settings.def.ResourceSettings |
Statistics
| Stat | InstanceFields | StaticFields | Size of instance |
|---|---|---|---|
| Sum: | 0 | 0 | 628 |
| Average: | 0 | 0 | 89.71 |
| Minimum: | 0 | 0 | 12 |
| Maximum: | 0 | 0 | 172 |
| Standard deviation: | 0 | 0 | 55.83 |
| Variance: | 0 | 0 | 3 117 |
| Rule warning: Types with poor cohesion |
warnif count > 0 from t in JustMyCode.Types where
(t.LCOM > 0.8 || t.LCOMHS > 0.95) &&
t.NbFields > 10 &&
t.NbMethods >10
orderby t.LCOM descending, t.LCOMHS descending
select new { t, t.LCOM, t.LCOMHS,
t.NbMethods, t.NbFields }
// Types where LCOM > 0.8 and NbFields > 10
// and NbMethods >10 might be problematic.
// However, it is very hard to avoid such
// non-cohesive types. The LCOMHS metric
// is often considered as more efficient to
// detect non-cohesive types.
// See the definition of the LCOM metric here
// http://www.jarchitect.com/Metrics.aspx#LCOM
22 types matched
| types | Lack of Cohesion Of Methods (LCOM) | LCOM Henderson-Sellers (LCOMHS) | # Methods | # Fields | Full Name |
|---|---|---|---|---|---|
| ClientProperties | 0.97 | 0.98 | 84 | 42 | org.apache.wicket.protocol.http.ClientProperties |
| Application | 0.97 | 0.98 | 102 | 46 | org.apache.wicket.Application |
| Component | 0.95 | 0.95 | 200 | 59 | org.apache.wicket.Component |
| MockHttpServletRequest | 0.94 | 0.95 | 89 | 23 | org.apache.wicket.protocol.http.mock.MockHttpServletRequest |
| BaseWicketTester | 0.94 | 0.95 | 128 | 22 | org.apache.wicket.util.tester.BaseWicketTester |
| Form<T> | 0.92 | 0.93 | 84 | 14 | org.apache.wicket.markup.html.form.Form |
| Session | 0.92 | 0.93 | 51 | 16 | org.apache.wicket.Session |
| ResourceSettings | 0.91 | 0.94 | 40 | 21 | org.apache.wicket.settings.def.ResourceSettings |
| BrowserInfoForm$ClientPropertiesBean | 0.91 | 0.93 | 35 | 17 | org.apache.wicket.markup.html.pages .BrowserInfoForm$ClientPropertiesBean |
| AjaxRequestAttributes | 0.9 | 0.94 | 28 | 16 | org.apache.wicket.ajax.attributes.AjaxRequestAttributes |
| RequestCycle | 0.9 | 0.92 | 45 | 11 | org.apache.wicket.request.cycle.RequestCycle |
| AbstractResource$ResourceResponse | 0.89 | 0.93 | 29 | 13 | org.apache.wicket.request.resource.AbstractResource$ResourceResponse |
| MockHttpServletResponse | 0.89 | 0.91 | 54 | 18 | org.apache.wicket.protocol.http.mock.MockHttpServletResponse |
| Page | 0.88 | 0.9 | 53 | 12 | org.apache.wicket.Page |
| BufferedHttpServletResponse | 0.88 | 0.89 | 46 | 11 | org.apache.wicket.protocol.http.BufferedHttpServletResponse |
| FeedbackMessage | 0.88 | 0.93 | 18 | 13 | org.apache.wicket.feedback.FeedbackMessage |
| MarkupResourceStream | 0.87 | 0.9 | 32 | 13 | org.apache.wicket.markup.MarkupResourceStream |
| IRequestLogger$RequestData | 0.86 | 0.9 | 25 | 11 | org.apache.wicket.protocol.http.IRequestLogger$RequestData |
| AbstractAjaxResponse | 0.84 | 0.87 | 31 | 12 | org.apache.wicket.ajax.AbstractAjaxResponse |
| ComponentTag | 0.83 | 0.85 | 64 | 14 | org.apache.wicket.markup.ComponentTag |
| DefaultButtonImageResource | 0.82 | 0.87 | 18 | 14 | org.apache.wicket.markup.html.image.resource .DefaultButtonImageResource |
| UrlValidator | 0.81 | 0.87 | 16 | 33 | org.apache.wicket.validation.validator.UrlValidator |
Statistics
| Stat | Lack of Cohesion Of Methods (LCOM) | LCOM Henderson-Sellers (LCOMHS) | # Methods | # Fields |
|---|---|---|---|---|
| Sum: | 19.67 | 20.2 | 1 272 | 451 |
| Average: | 0.89 | 0.92 | 57.82 | 20.5 |
| Minimum: | 0.81 | 0.85 | 16 | 11 |
| Maximum: | 0.97 | 0.98 | 200 | 59 |
| Standard deviation: | 0.043 | 0.035 | 42.54 | 12.67 |
| Variance: | 0.0019 | 0.0012 | 1 809 | 160.43 |
| Object Oriented Design | 060 |
|
| Rule warning: Base class should not use derivatives |
warnif count > 0
from baseClass in JustMyCode.Types
where baseClass.IsClass && baseClass.NbChildren > 0 // <-- for optimization!
let derivedClassesUsed = baseClass.DerivedTypes.UsedBy(baseClass)
where derivedClassesUsed.Count() > 0
select new { baseClass, derivedClassesUsed }
10 types matched
| types | derivedClassesUsed | Full Name |
|---|---|---|
| AttributeModifier | 2 types | org.apache.wicket.AttributeModifier |
| Component | 3 types | org.apache.wicket.Component |
| MarkupContainer | 1 type | org.apache.wicket.MarkupContainer |
| AjaxFormComponentUpdatingBehavior | 1 type | org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior |
| CheckingObjectOutputStream$ObjectOutputAdaptor | 1 type | org.apache.wicket.core.util.objects.checker .CheckingObjectOutputStream$ObjectOutputAdaptor |
| AbstractHeaderRenderStrategy | 1 type | org.apache.wicket.markup.renderStrategy.AbstractHeaderRenderStrategy |
| CssHeaderItem | 3 types | org.apache.wicket.markup.head.CssHeaderItem |
| JavaScriptHeaderItem | 3 types | org.apache.wicket.markup.head.JavaScriptHeaderItem |
| MultipartServletWebRequest | 1 type | org.apache.wicket.protocol.http.servlet.MultipartServletWebRequest |
| ServletWebRequest | 3 types | org.apache.wicket.protocol.http.servlet.ServletWebRequest |
Statistics
| Stat | derivedClassesUsed |
|---|---|
| Sum: | 0 |
| Average: | 0 |
| Minimum: | 0 |
| Maximum: | 0 |
| Standard deviation: | 0 |
| Variance: | 0 |
| Rule warning: Class shouldn't be too deep in inheritance tree |
warnif count > 0 from t in JustMyCode.Types
where t.IsClass
let baseClasses = t.BaseClasses.ExceptThirdParty()
// Warn for classes with 3 or more base classes.
// Notice that we don't count third-party classes
// because this rule concerns your code design,
// not third-party libraries consumed design.
where baseClasses.Count() >= 3
select new { t, baseClasses,
// The metric value DepthOfInheritance takes account
// of third-party base classes
t.DepthOfInheritance }
// Branches too long in the derivation should be avoided.
// See the definition of the DepthOfInheritance metric here
// http://www.jarchitect.com/Metrics.aspx#DIT
168 types matched
| types | baseClasses | Depth of inheritance | Full Name |
|---|---|---|---|
| AttributeModifier$1 | 3 types | 4 | org.apache.wicket.AttributeModifier$1 |
| FencedFeedbackPanel | 5 types | 6 | org.apache.wicket.feedback.FencedFeedbackPanel |
| MockHomePage | 4 types | 5 | org.apache.wicket.mock.MockHomePage |
| AbstractAjaxResponse$AjaxHtmlHeaderContainer | 5 types | 6 | org.apache.wicket.ajax.AbstractAjaxResponse$AjaxHtmlHeaderContainer |
| AbstractAjaxTimerBehavior | 3 types | 4 | org.apache.wicket.ajax.AbstractAjaxTimerBehavior |
| AjaxEventBehavior | 3 types | 4 | org.apache.wicket.ajax.AjaxEventBehavior |
| AjaxNewWindowNotifyingBehavior | 3 types | 4 | org.apache.wicket.ajax.AjaxNewWindowNotifyingBehavior |
| AjaxSelfUpdatingTimerBehavior | 4 types | 5 | org.apache.wicket.ajax.AjaxSelfUpdatingTimerBehavior |
| WicketAjaxDebugJQueryResourceReference | 3 types | 4 | org.apache.wicket.ajax.WicketAjaxDebugJQueryResourceReference |
| WicketAjaxJQueryResourceReference | 3 types | 4 | org.apache.wicket.ajax.WicketAjaxJQueryResourceReference |
| WicketEventJQueryResourceReference | 3 types | 4 | org.apache.wicket.ajax.WicketEventJQueryResourceReference |
| AjaxFormChoiceComponentUpdatingBehavior | 5 types | 6 | org.apache.wicket.ajax.form.AjaxFormChoiceComponentUpdatingBehavior |
| AjaxFormComponentUpdatingBehavior | 4 types | 5 | org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior |
| AjaxFormSubmitBehavior | 4 types | 5 | org.apache.wicket.ajax.form.AjaxFormSubmitBehavior |
| AjaxFormValidatingBehavior$FormValidateVisitor$1 | 6 types | 7 | org.apache.wicket.ajax.form .AjaxFormValidatingBehavior$FormValidateVisitor$1 |
| AjaxFormValidatingBehavior | 5 types | 6 | org.apache.wicket.ajax.form.AjaxFormValidatingBehavior |
| OnChangeAjaxBehavior | 5 types | 6 | org.apache.wicket.ajax.form.OnChangeAjaxBehavior |
| AjaxFallbackLink$1 | 4 types | 5 | org.apache.wicket.ajax.markup.html.AjaxFallbackLink$1 |
| AjaxFallbackLink<T> | 5 types | 6 | org.apache.wicket.ajax.markup.html.AjaxFallbackLink |
| AjaxLink$1 | 4 types | 5 | org.apache.wicket.ajax.markup.html.AjaxLink$1 |
| AjaxLink<T> | 4 types | 5 | org.apache.wicket.ajax.markup.html.AjaxLink |
| AjaxButton$1 | 5 types | 6 | org.apache.wicket.ajax.markup.html.form.AjaxButton$1 |
| AjaxButton | 6 types | 7 | org.apache.wicket.ajax.markup.html.form.AjaxButton |
| AjaxCheckBox$1 | 5 types | 6 | org.apache.wicket.ajax.markup.html.form.AjaxCheckBox$1 |
| AjaxCheckBox | 6 types | 7 | org.apache.wicket.ajax.markup.html.form.AjaxCheckBox |
| AjaxFallbackButton$1 | 5 types | 6 | org.apache.wicket.ajax.markup.html.form.AjaxFallbackButton$1 |
| AjaxFallbackButton | 6 types | 7 | org.apache.wicket.ajax.markup.html.form.AjaxFallbackButton |
| AjaxSubmitLink$1 | 5 types | 6 | org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1 |
| AjaxSubmitLink | 5 types | 6 | org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink |
| AjaxPagingNavigation | 6 types | 7 | org.apache.wicket.ajax.markup.html.navigation.paging .AjaxPagingNavigation |
| AjaxPagingNavigationBehavior | 4 types | 5 | org.apache.wicket.ajax.markup.html.navigation.paging .AjaxPagingNavigationBehavior |
| AjaxPagingNavigationIncrementLink$1 | 5 types | 6 | org.apache.wicket.ajax.markup.html.navigation.paging .AjaxPagingNavigationIncrementLink$1 |
| AjaxPagingNavigationIncrementLink | 6 types | 7 | org.apache.wicket.ajax.markup.html.navigation.paging .AjaxPagingNavigationIncrementLink |
| AjaxPagingNavigationLink$1 | 5 types | 6 | org.apache.wicket.ajax.markup.html.navigation.paging .AjaxPagingNavigationLink$1 |
| AjaxPagingNavigationLink | 6 types | 7 | org.apache.wicket.ajax.markup.html.navigation.paging .AjaxPagingNavigationLink |
| AjaxPagingNavigator | 5 types | 6 | org.apache.wicket.ajax.markup.html.navigation.paging .AjaxPagingNavigator |
| HomePageMapper | 3 types | 5 | org.apache.wicket.core.request.mapper.HomePageMapper |
| AutoLinkResolver$AutolinkBookmarkablePageLink<T> | 6 types | 7 | org.apache.wicket.markup.resolver .AutoLinkResolver$AutolinkBookmarkablePageLink |
| AutoLinkResolver$AutolinkExternalLink | 5 types | 6 | org.apache.wicket.markup.resolver .AutoLinkResolver$AutolinkExternalLink |
| AutoLinkResolver$ResourceReferenceAutolink | 3 types | 4 | org.apache.wicket.markup.resolver .AutoLinkResolver$ResourceReferenceAutolink |
| NoopOutputTransformerContainer | 3 types | 4 | org.apache.wicket.markup.transformer.NoopOutputTransformerContainer |
| XsltOutputTransformerContainer | 3 types | 4 | org.apache.wicket.markup.transformer.XsltOutputTransformerContainer |
| HeaderResponseContainer | 3 types | 4 | org.apache.wicket.markup.head.filter.HeaderResponseContainer |
| GenericWebPage<T> | 4 types | 5 | org.apache.wicket.markup.html.GenericWebPage |
| HeaderPartContainer | 3 types | 4 | org.apache.wicket.markup.html.HeaderPartContainer |
| TransparentWebMarkupContainer | 3 types | 4 | org.apache.wicket.markup.html.TransparentWebMarkupContainer |
| WebPage | 3 types | 4 | org.apache.wicket.markup.html.WebPage |
| EnclosureContainer | 3 types | 4 | org.apache.wicket.markup.html.basic.EnclosureContainer |
| Body | 3 types | 4 | org.apache.wicket.markup.html.border.Body |
| Border$BorderBodyContainer | 3 types | 4 | org.apache.wicket.markup.html.border.Border$BorderBodyContainer |
| Border | 3 types | 4 | org.apache.wicket.markup.html.border.Border |
| BorderPanel | 4 types | 5 | org.apache.wicket.markup.html.border.BorderPanel |
| BoxBorder | 4 types | 5 | org.apache.wicket.markup.html.border.BoxBorder |
| PageView$3 | 5 types | 6 | org.apache.wicket.markup.html.debug.PageView$3 |
| PageView | 4 types | 5 | org.apache.wicket.markup.html.debug.PageView |
| Enclosure | 3 types | 4 | org.apache.wicket.markup.html.internal.Enclosure |
| HtmlHeaderContainer | 4 types | 5 | org.apache.wicket.markup.html.internal.HtmlHeaderContainer |
| InlineEnclosure | 4 types | 5 | org.apache.wicket.markup.html.internal.InlineEnclosure |
| AbstractLink | 3 types | 4 | org.apache.wicket.markup.html.link.AbstractLink |
| BookmarkablePageLink<T> | 5 types | 6 | org.apache.wicket.markup.html.link.BookmarkablePageLink |
| ClientSideImageMap | 4 types | 5 | org.apache.wicket.markup.html.link.ClientSideImageMap |
| DownloadLink | 5 types | 6 | org.apache.wicket.markup.html.link.DownloadLink |
| ExternalLink | 4 types | 5 | org.apache.wicket.markup.html.link.ExternalLink |
| InlineFrame | 3 types | 4 | org.apache.wicket.markup.html.link.InlineFrame |
| Link<T> | 4 types | 5 | org.apache.wicket.markup.html.link.Link |
| PopupCloseLink$ClosePopupPage | 4 types | 5 | org.apache.wicket.markup.html.link.PopupCloseLink$ClosePopupPage |
| PopupCloseLink<T> | 5 types | 6 | org.apache.wicket.markup.html.link.PopupCloseLink |
| ResourceLink<T> | 5 types | 6 | org.apache.wicket.markup.html.link.ResourceLink |
| StatelessLink<T> | 5 types | 6 | org.apache.wicket.markup.html.link.StatelessLink |
| AbstractItem | 3 types | 4 | org.apache.wicket.markup.html.list.AbstractItem |
| ListItem<T> | 5 types | 6 | org.apache.wicket.markup.html.list.ListItem |
| ListView$1 | 5 types | 6 | org.apache.wicket.markup.html.list.ListView$1 |
| ListView$2 | 5 types | 6 | org.apache.wicket.markup.html.list.ListView$2 |
| ListView$3 | 5 types | 6 | org.apache.wicket.markup.html.list.ListView$3 |
| ListView<T> | 4 types | 5 | org.apache.wicket.markup.html.list.ListView |
| Loop | 4 types | 5 | org.apache.wicket.markup.html.list.Loop |
| LoopItem | 4 types | 5 | org.apache.wicket.markup.html.list.LoopItem |
| OddEvenListItem<T> | 6 types | 7 | org.apache.wicket.markup.html.list.OddEvenListItem |
| PageableListView<T> | 5 types | 6 | org.apache.wicket.markup.html.list.PageableListView |
| PropertyListView<T> | 5 types | 6 | org.apache.wicket.markup.html.list.PropertyListView |
| AbstractErrorPage | 4 types | 5 | org.apache.wicket.markup.html.pages.AbstractErrorPage |
| AccessDeniedPage | 5 types | 6 | org.apache.wicket.markup.html.pages.AccessDeniedPage |
| BrowserInfoForm$1 | 4 types | 5 | org.apache.wicket.markup.html.pages.BrowserInfoForm$1 |
| BrowserInfoForm | 4 types | 5 | org.apache.wicket.markup.html.pages.BrowserInfoForm |
| BrowserInfoPage$3 | 5 types | 6 | org.apache.wicket.markup.html.pages.BrowserInfoPage$3 |
| BrowserInfoPage | 4 types | 5 | org.apache.wicket.markup.html.pages.BrowserInfoPage |
| ExceptionErrorPage$1 | 5 types | 6 | org.apache.wicket.markup.html.pages.ExceptionErrorPage$1 |
| ExceptionErrorPage | 5 types | 6 | org.apache.wicket.markup.html.pages.ExceptionErrorPage |
| InternalErrorPage | 5 types | 6 | org.apache.wicket.markup.html.pages.InternalErrorPage |
| PageExpiredErrorPage | 5 types | 6 | org.apache.wicket.markup.html.pages.PageExpiredErrorPage |
| RedirectPage | 4 types | 5 | org.apache.wicket.markup.html.pages.RedirectPage |
| ComponentFeedbackPanel | 5 types | 6 | org.apache.wicket.markup.html.panel.ComponentFeedbackPanel |
| EmptyPanel | 4 types | 5 | org.apache.wicket.markup.html.panel.EmptyPanel |
| FeedbackPanel$1 | 3 types | 4 | org.apache.wicket.markup.html.panel.FeedbackPanel$1 |
| FeedbackPanel$MessageListView | 5 types | 6 | org.apache.wicket.markup.html.panel.FeedbackPanel$MessageListView |
| FeedbackPanel | 4 types | 5 | org.apache.wicket.markup.html.panel.FeedbackPanel |
| Fragment | 3 types | 4 | org.apache.wicket.markup.html.panel.Fragment |
| GenericPanel<T> | 4 types | 5 | org.apache.wicket.markup.html.panel.GenericPanel |
| Panel | 3 types | 4 | org.apache.wicket.markup.html.panel.Panel |
| AbstractCheckSelector$1 | 3 types | 4 | org.apache.wicket.markup.html.form.AbstractCheckSelector$1 |
Statistics
| Stat | baseClasses | Depth of inheritance |
|---|---|---|
| Sum: | 0 | 936 |
| Average: | 0 | 5.57 |
| Minimum: | 0 | 4 |
| Maximum: | 0 | 9 |
| Standard deviation: | 0 | 1.26 |
| Variance: | 0 | 1.59 |
| Rule warning: Class with no descendant should be final if possible |
warnif count > 0 from t in JustMyCode.Types where
t.IsClass &&
t.NbChildren ==0 &&
!t.IsFinal &&
!t.IsStatic
// && !t.IsPublic <-- You might want to add this condition
// if you are developping a framework
// with classes that are intended to be
// sub-classed by your clients.
orderby t.NbLinesOfCode descending
select new { t, t.NbLinesOfCode }
728 types matched
| types | # lines of code (LOC) | Full Name |
|---|---|---|
| JSONObject | 481 | org.apache.wicket.ajax.json.JSONObject |
| MockHttpServletRequest | 335 | org.apache.wicket.protocol.http.mock.MockHttpServletRequest |
| XML | 254 | org.apache.wicket.ajax.json.XML |
| JSONML | 231 | org.apache.wicket.ajax.json.JSONML |
| JSONArray | 184 | org.apache.wicket.ajax.json.JSONArray |
| XMLTokener | 184 | org.apache.wicket.ajax.json.XMLTokener |
| HtmlDocumentValidator | 182 | org.apache.wicket.protocol.http.documentvalidation .HtmlDocumentValidator |
| ClientProperties | 169 | org.apache.wicket.protocol.http.ClientProperties |
| MockHttpServletResponse | 162 | org.apache.wicket.protocol.http.mock.MockHttpServletResponse |
| RequestCycle | 159 | org.apache.wicket.request.cycle.RequestCycle |
| MergedMarkup | 145 | org.apache.wicket.markup.MergedMarkup |
| TagTester | 144 | org.apache.wicket.util.tester.TagTester |
| MarkupCache | 142 | org.apache.wicket.markup.MarkupCache |
| BufferedHttpServletResponse | 137 | org.apache.wicket.protocol.http.BufferedHttpServletResponse |
| UrlValidator | 130 | org.apache.wicket.validation.validator.UrlValidator |
| CreditCardValidator | 126 | org.apache.wicket.validation.validator.CreditCardValidator |
| Localizer | 124 | org.apache.wicket.Localizer |
| FormTester | 122 | org.apache.wicket.util.tester.FormTester |
| PageWindowManager | 118 | org.apache.wicket.pageStore.PageWindowManager |
| MockServletContext | 115 | org.apache.wicket.protocol.http.mock.MockServletContext |
| CheckBoxMultipleChoice<T> | 113 | org.apache.wicket.markup.html.form.CheckBoxMultipleChoice |
| MarkupStream | 112 | org.apache.wicket.markup.MarkupStream |
| RadioChoice<T> | 109 | org.apache.wicket.markup.html.form.RadioChoice |
| XmlTag | 108 | org.apache.wicket.markup.parser.XmlTag |
| WicketTester | 107 | org.apache.wicket.util.tester.WicketTester |
| AjaxRequestHandler | 99 | org.apache.wicket.ajax.AjaxRequestHandler |
| DiskDataStore | 99 | org.apache.wicket.pageStore.DiskDataStore |
| MultipartServletWebRequestImpl | 98 | org.apache.wicket.protocol.http.servlet.MultipartServletWebRequestImpl |
| DefaultPageStore | 94 | org.apache.wicket.pageStore.DefaultPageStore |
| WildcardMatcherHelper$Matcher | 93 | org.apache.wicket.application.WildcardMatcherHelper$Matcher |
| CDL | 91 | org.apache.wicket.ajax.json.CDL |
| ReloadingClassLoader | 89 | org.apache.wicket.application.ReloadingClassLoader |
| JavaScriptStripper | 89 | org.apache.wicket.core.util.string.JavaScriptStripper |
| StringResourceModel | 89 | org.apache.wicket.model.StringResourceModel |
| ConcatBundleResource | 88 | org.apache.wicket.resource.bundles.ConcatBundleResource |
| ResourceAggregator | 87 | org.apache.wicket.markup.head.ResourceAggregator |
| HtmlDocumentParser | 87 | org.apache.wicket.protocol.http.documentvalidation.HtmlDocumentParser |
| HttpSessionStore | 85 | org.apache.wicket.session.HttpSessionStore |
| BufferedWebResponse | 85 | org.apache.wicket.protocol.http.BufferedWebResponse |
| BasicResourceReferenceMapper | 84 | org.apache.wicket.core.request.mapper.BasicResourceReferenceMapper |
| ExceptionErrorPage | 80 | org.apache.wicket.markup.html.pages.ExceptionErrorPage |
| WebClientInfo | 78 | org.apache.wicket.protocol.http.request.WebClientInfo |
| XForwardedRequestWrapperFactory | 77 | org.apache.wicket.protocol.http.servlet .XForwardedRequestWrapperFactory |
| PageAccessSynchronizer | 76 | org.apache.wicket.page.PageAccessSynchronizer |
| BorderBehavior | 76 | org.apache.wicket.markup.html.border.BorderBehavior |
| MockWebResponse | 75 | org.apache.wicket.mock.MockWebResponse |
| WicketObjects | 74 | org.apache.wicket.core.util.lang.WicketObjects |
| ResourceSettings | 74 | org.apache.wicket.settings.def.ResourceSettings |
| CookieUtils | 74 | org.apache.wicket.util.cookies.CookieUtils |
| WicketMessageResolver$MessageContainer | 73 | org.apache.wicket.markup.resolver .WicketMessageResolver$MessageContainer |
| MarkupFactory | 71 | org.apache.wicket.markup.MarkupFactory |
| ResourceReferenceRegistry | 71 | org.apache.wicket.request.resource.ResourceReferenceRegistry |
| PropertiesFactory | 71 | org.apache.wicket.resource.PropertiesFactory |
| DiskDataStore$SessionEntry | 70 | org.apache.wicket.pageStore.DiskDataStore$SessionEntry |
| WebPageRenderer | 68 | org.apache.wicket.request.handler.render.WebPageRenderer |
| Cookie | 65 | org.apache.wicket.ajax.json.Cookie |
| ListenerInterfaceLogData | 65 | org.apache.wicket.core.request.handler.logger.ListenerInterfaceLogData |
| Check<T> | 65 | org.apache.wicket.markup.html.form.Check |
| MarkupFragment | 64 | org.apache.wicket.markup.MarkupFragment |
| XForwardedRequestWrapper | 62 | org.apache.wicket.protocol.http.servlet.XForwardedRequestWrapper |
| MockWebRequest | 61 | org.apache.wicket.mock.MockWebRequest |
| ResourceMapper | 61 | org.apache.wicket.core.request.mapper.ResourceMapper |
| TagStack | 61 | org.apache.wicket.markup.parser.TagStack |
| DefaultExceptionMapper | 60 | org.apache.wicket.DefaultExceptionMapper |
| CryptoMapper | 60 | org.apache.wicket.core.request.mapper.CryptoMapper |
| ClientSideImageMap | 60 | org.apache.wicket.markup.html.link.ClientSideImageMap |
| MultiFileUploadField | 60 | org.apache.wicket.markup.html.form.upload.MultiFileUploadField |
| Radio<T> | 58 | org.apache.wicket.markup.html.form.Radio |
| RequestLogger | 57 | org.apache.wicket.protocol.http.RequestLogger |
| MarkupResourceStream | 56 | org.apache.wicket.markup.MarkupResourceStream |
| HttpsMapper | 56 | org.apache.wicket.protocol.https.HttpsMapper |
| RequestListenerInterface | 55 | org.apache.wicket.RequestListenerInterface |
| PageStoreManager$SessionEntry | 55 | org.apache.wicket.page.PageStoreManager$SessionEntry |
| BrowserInfoForm$ClientPropertiesBean | 55 | org.apache.wicket.markup.html.pages .BrowserInfoForm$ClientPropertiesBean |
| WicketTesterHelper | 54 | org.apache.wicket.util.tester.WicketTesterHelper |
| ListenerInterfaceRequestHandler | 53 | org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler |
| DefaultButtonImageResource | 53 | org.apache.wicket.markup.html.image.resource .DefaultButtonImageResource |
| AsynchronousDataStore | 53 | org.apache.wicket.pageStore.AsynchronousDataStore |
| UrlResourceStream | 52 | org.apache.wicket.core.util.resource.UrlResourceStream |
| GridView<T> | 52 | org.apache.wicket.markup.repeater.data.GridView |
| AbstractResource$ResourceResponse | 51 | org.apache.wicket.request.resource.AbstractResource$ResourceResponse |
| HTTP | 50 | org.apache.wicket.ajax.json.HTTP |
| PopupSettings | 48 | org.apache.wicket.markup.html.link.PopupSettings |
| DefaultPageStore$SerializedPagesCache | 48 | org.apache.wicket.pageStore.DefaultPageStore$SerializedPagesCache |
| PageInstanceMapper | 47 | org.apache.wicket.core.request.mapper.PageInstanceMapper |
| ComponentHierarchyIterator | 47 | org.apache.wicket.util.iterator.ComponentHierarchyIterator |
| FormComponent$MessageSource | 46 | org.apache.wicket.markup.html.form.FormComponent$MessageSource |
| WicketLinkTagHandler | 46 | org.apache.wicket.markup.parser.filter.WicketLinkTagHandler |
| FileUpload | 45 | org.apache.wicket.markup.html.form.upload.FileUpload |
| SecurePackageResourceGuard | 43 | org.apache.wicket.markup.html.SecurePackageResourceGuard |
| ContextRelativeResource | 42 | org.apache.wicket.request.resource.ContextRelativeResource |
| MarkupContainer$ChildList | 41 | org.apache.wicket.MarkupContainer$ChildList |
| PackageMapper | 41 | org.apache.wicket.core.request.mapper.PackageMapper |
| TagUtils | 41 | org.apache.wicket.markup.TagUtils |
| FileUploadField | 41 | org.apache.wicket.markup.html.form.upload.FileUploadField |
| PageAndComponentProvider | 39 | org.apache.wicket.core.request.handler.PageAndComponentProvider |
| AutoLabelTextResolver$TextLabel | 39 | org.apache.wicket.markup.html.form.AutoLabelTextResolver$TextLabel |
| Border$BorderBodyContainer | 38 | org.apache.wicket.markup.html.border.Border$BorderBodyContainer |
| CheckGroup<T> | 38 | org.apache.wicket.markup.html.form.CheckGroup |
| PackageResource$CacheKey | 38 | org.apache.wicket.request.resource.PackageResource$CacheKey |
Statistics
| Stat | # lines of code (LOC) |
|---|---|
| Sum: | 15 472 |
| Average: | 21.25 |
| Minimum: | 0 |
| Maximum: | 481 |
| Standard deviation: | 36.82 |
| Variance: | 1 355 |
| Rule warning: Avoid the Singleton pattern |
warnif count > 0
from t in Application.Types
where !t.IsStatic && !t.IsAbstract && t.IsClass
// All ctors of a singleton are private
where t.Constructors.Where(ctor => !ctor.IsPrivate).Count() == 0
// A singleton contains one static field of its parent type, to reference the unique instance
let staticFieldInstances = t.StaticFields.WithFieldType(t)
where staticFieldInstances.Count() == 1
select new { t, staticFieldInstance = staticFieldInstances.First() }
// The Singleton pattern consists in syntactically enforcing that a class
// has just one unique instance.
// At first glance, this pattern looks appealing and it is widely used.
// However, we discourage you from using singleton classes because experience
// shows that singletons often result in less testable and less maintainable code.
// More details available in these discussions:
// http://adamschepis.com/blog/2011/05/02/im-adam-and-im-a-recovering-singleton-addict/
8 types matched
| types | staticFieldInstance | Full Name |
|---|---|---|
| WicketAjaxDebugJQueryResourceReference | INSTANCE | org.apache.wicket.ajax.WicketAjaxDebugJQueryResourceReference |
| WicketAjaxJQueryResourceReference | INSTANCE | org.apache.wicket.ajax.WicketAjaxJQueryResourceReference |
| WicketEventJQueryResourceReference | INSTANCE | org.apache.wicket.ajax.WicketEventJQueryResourceReference |
| EmptyAjaxRequestHandler | instance | org.apache.wicket.core.request.handler.EmptyAjaxRequestHandler |
| DefaultMarkupSourcingStrategy | instance | org.apache.wicket.markup.html.panel.DefaultMarkupSourcingStrategy |
| JQueryResourceReference | INSTANCE | org.apache.wicket.resource.JQueryResourceReference |
| NullResponse | instance | org.apache.wicket.response.NullResponse |
| Result | PASS | org.apache.wicket.util.tester.Result |
Statistics
| Stat | staticFieldInstance |
|---|---|
| Sum: | 0 |
| Average: | 0 |
| Minimum: | 0 |
| Maximum: | 0 |
| Standard deviation: | 0 |
| Variance: | 0 |
| Rule warning: Don't assign static fields from instance methods |
// Assigning static fields from instance methods leads to
// poorly maintainable and non thread-safe code.
// It is advised to assign static fields inline or from class constructor.
warnif count > 0
from f in Application.Fields where
f.IsStatic &&
!f.IsLiteral &&
!f.IsInitOnly &&
!f.IsGeneratedByCompiler &&
// Contract API define such a insideContractEvaluation static field
f.Name != "insideContractEvaluation"
let assignedBy = f.MethodsAssigningMe.Where(m => !m.IsStatic)
where assignedBy .Count() > 0
select new { f, assignedBy }
1 fields matched
| field | assignedBy | Full Name |
|---|---|---|
| META_INF_RESOURCES_SUPPORTED | 1 method | org.apache.wicket.request.resource.MetaInfStaticResourceReference .META_INF_RESOURCES_SUPPORTED |
Statistics
| Stat | assignedBy |
|---|---|
| Sum: | 0 |
| Average: | 0 |
| Minimum: | 0 |
| Maximum: | 0 |
| Standard deviation: | 0 |
| Variance: | 0 |
| Rule warning: Avoid empty interfaces |
warnif count > 0 from t in JustMyCode.Types where
t.IsInterface &&
t.NbMethods == 0
select new { t, t.TypesThatImplementMe }
// Interfaces define members that provide a behavior
// or usage contract. The functionality described by
// the interface can be adopted by any type,
// regardless of where the type appears in the
// inheritance hierarchy. A type implements an
// interface by providing implementations for the
// interface's members. An empty interface does not
// define any members, and as such, does not define
// a contract that can be implemented.
// If your design includes empty interfaces that
// types are expected to implement, you are probably
// using an interface as a marker, or a way of
// identifying a group of types. If this identification
// will occur at runtime, the correct way to accomplish
// this is to use a custom attribute. Use the presence
// or absence of the attribute, or the attribute's
// properties, to identify the target types. If the
// identification must occurs at compile time, then using
// an empty interface is acceptable.
4 types matched
| types | TypesThatImplementMe | Full Name |
|---|---|---|
| IRequestListener | 19 types | org.apache.wicket.IRequestListener |
| IFeedback | 3 types | org.apache.wicket.feedback.IFeedback |
| DocumentElement | 3 types | org.apache.wicket.protocol.http.documentvalidation.DocumentElement |
| INullAcceptingValidator<T> | 1 type | org.apache.wicket.validation.INullAcceptingValidator |
Statistics
| Stat | TypesThatImplementMe |
|---|---|
| Sum: | 0 |
| Average: | 0 |
| Minimum: | 0 |
| Maximum: | 0 |
| Standard deviation: | 0 |
| Variance: | 0 |
| Design | 040 |
|
| Rule warning: Avoid packages with few types |
warnif count > 0 from n in JustMyCode.Packages
let types = n.ChildTypes.Where(t => !t.IsGeneratedByCompiler)
where
types.Count() < 5
orderby types.Count() ascending
select new { n, types }
// Make sure that there is a logical organization
// to each of your packages, and that there is a
// valid reason for putting types in a sparsely
// populated package. Packages should contain
// types that are used together in most scenarios.
// When their applications are mutually exclusive,
// types should be located in separate packages
27 packages matched
| packages | types | Full Name |
|---|---|---|
| org.apache.wicket.css | 1 type | org.apache.wicket.css |
| org.apache.wicket.authentication | 1 type | org.apache.wicket.authentication |
| org.apache.wicket.authorization.strategies | 1 type | org.apache.wicket.authorization.strategies |
| org.apache.wicket.core.request | 1 type | org.apache.wicket.core.request |
| org.apache.wicket.core.util.file | 1 type | org.apache.wicket.core.util.file |
| org.apache.wicket.markup.head.internal | 1 type | org.apache.wicket.markup.head.internal |
| org.apache.wicket.markup.html.include | 1 type | org.apache.wicket.markup.html.include |
| org.apache.wicket.serialize | 1 type | org.apache.wicket.serialize |
| org.apache.wicket.util.reference | 1 type | org.apache.wicket.util.reference |
| org.apache.wicket.javascript | 2 types | org.apache.wicket.javascript |
| org.apache.wicket.authentication.strategy | 2 types | org.apache.wicket.authentication.strategy |
| org.apache.wicket.authorization.strategies.action | 2 types | org.apache.wicket.authorization.strategies.action |
| org.apache.wicket.core.util.crypt | 2 types | org.apache.wicket.core.util.crypt |
| org.apache.wicket.core.util.string.interpolator | 2 types | org.apache.wicket.core.util.string.interpolator |
| org.apache.wicket.markup.repeater.util | 2 types | org.apache.wicket.markup.repeater.util |
| org.apache.wicket.protocol.http.request | 2 types | org.apache.wicket.protocol.http.request |
| org.apache.wicket.request.component | 2 types | org.apache.wicket.request.component |
| org.apache.wicket.request.handler.render | 2 types | org.apache.wicket.request.handler.render |
| org.apache.wicket.util.cookies | 2 types | org.apache.wicket.util.cookies |
| org.apache.wicket.authorization.strategies.page | 3 types | org.apache.wicket.authorization.strategies.page |
| org.apache.wicket.core.util.io | 3 types | org.apache.wicket.core.util.io |
| org.apache.wicket.response | 3 types | org.apache.wicket.response |
| org.apache.wicket.event | 4 types | org.apache.wicket.event |
| org.apache.wicket.core.request.handler.logger | 4 types | org.apache.wicket.core.request.handler.logger |
| org.apache.wicket.markup.loader | 4 types | org.apache.wicket.markup.loader |
| org.apache.wicket.markup.html.basic | 4 types | org.apache.wicket.markup.html.basic |
| org.apache.wicket.markup.html.image | 4 types | org.apache.wicket.markup.html.image |
Statistics
| Stat | types |
|---|---|
| Sum: | 0 |
| Average: | 0 |
| Minimum: | 0 |
| Maximum: | 0 |
| Standard deviation: | 0 |
| Variance: | 0 |
| Rule warning: Nested types should not be visible |
warnif count > 0 from t in JustMyCode.Types where
t.IsNested &&
!t.IsGeneratedByCompiler &&
!t.IsPrivate
select new { t, t.NbLinesOfCode, t.Visibility }
// A nested type is a type declared within the
// scope of another type. Nested types are useful
// for encapsulating private implementation details
// of the containing type. Used for this purpose,
// nested types should not be externally visible.
// Do not use externally visible nested types for
// logical grouping or to avoid name collisions;
// instead, use packages.
45 types matched
| types | # lines of code (LOC) | Visibility | Full Name |
|---|---|---|---|
| RestartResponseAtInterceptPageException$InterceptData | 30 | Internal | org.apache.wicket .RestartResponseAtInterceptPageException$InterceptData |
| FencedFeedbackPanel$2 | 4 | Internal | org.apache.wicket.feedback.FencedFeedbackPanel$2 |
| PageAccessSynchronizer$PageLock | 8 | Public | org.apache.wicket.page.PageAccessSynchronizer$PageLock |
| ISessionStore$BindListener | N/A | Public | org.apache.wicket.session.ISessionStore$BindListener |
| ISessionStore$UnboundListener | N/A | Public | org.apache.wicket.session.ISessionStore$UnboundListener |
| AjaxChannel$Type | N/A | Public | org.apache.wicket.ajax.AjaxChannel$Type |
| AjaxRequestHandler$1 | 17 | Internal | org.apache.wicket.ajax.AjaxRequestHandler$1 |
| AjaxRequestTarget$AbstractListener | 4 | Public | org.apache.wicket.ajax.AjaxRequestTarget$AbstractListener |
| AjaxRequestTarget$IJavaScriptResponse | N/A | Public | org.apache.wicket.ajax.AjaxRequestTarget$IJavaScriptResponse |
| AjaxRequestTarget$IListener | N/A | Public | org.apache.wicket.ajax.AjaxRequestTarget$IListener |
| AjaxRequestTarget$ITargetRespondListener | N/A | Public | org.apache.wicket.ajax.AjaxRequestTarget$ITargetRespondListener |
| AjaxRequestAttributes$Method | N/A | Public | org.apache.wicket.ajax.attributes.AjaxRequestAttributes$Method |
| RenderPageRequestHandler$RedirectPolicy | N/A | Public | org.apache.wicket.core.request.handler .RenderPageRequestHandler$RedirectPolicy |
| PropertyResolver$IClassCache | N/A | Public | org.apache.wicket.core.util.lang.PropertyResolver$IClassCache |
| PropertyResolver$IGetAndSet | N/A | Public | org.apache.wicket.core.util.lang.PropertyResolver$IGetAndSet |
| IObjectChecker$Result$Status | N/A | Public | org.apache.wicket.core.util.objects.checker .IObjectChecker$Result$Status |
| IObjectChecker$Result | 11 | Public | org.apache.wicket.core.util.objects.checker.IObjectChecker$Result |
| MarkupCache$ICache<K,V> | N/A | Public | org.apache.wicket.markup.MarkupCache$ICache |
| AutoLinkResolver$AutolinkBookmarkablePageLink<T> | 10 | Public | org.apache.wicket.markup.resolver .AutoLinkResolver$AutolinkBookmarkablePageLink |
| AutoLinkResolver$IAutolinkResolverDelegate | N/A | Public | org.apache.wicket.markup.resolver .AutoLinkResolver$IAutolinkResolverDelegate |
| AutoLinkResolver$PathInfo | 48 | Public | org.apache.wicket.markup.resolver.AutoLinkResolver$PathInfo |
| ComponentResolvers$ResolverFilter | N/A | Public | org.apache.wicket.markup.resolver.ComponentResolvers$ResolverFilter |
| ResourceAggregator$RecordedHeaderItem | 8 | Public | org.apache.wicket.markup.head.ResourceAggregator$RecordedHeaderItem |
| ResourceAggregator$RecordedHeaderItemLocation | 9 | Public | org.apache.wicket.markup.head .ResourceAggregator$RecordedHeaderItemLocation |
| FilteringHeaderResponse$IHeaderResponseFilter | N/A | Public | org.apache.wicket.markup.head.filter .FilteringHeaderResponse$IHeaderResponseFilter |
| BrowserInfoForm$ClientPropertiesBean | 55 | Public | org.apache.wicket.markup.html.pages .BrowserInfoForm$ClientPropertiesBean |
| Form$MethodMismatchResponse | N/A | Public | org.apache.wicket.markup.html.form.Form$MethodMismatchResponse |
| Form$ValidationVisitor | 11 | Public | org.apache.wicket.markup.html.form.Form$ValidationVisitor |
| IXmlPullParser$HttpTagType | N/A | Public | org.apache.wicket.markup.parser.IXmlPullParser$HttpTagType |
| XmlTag$TagType | N/A | Public | org.apache.wicket.markup.parser.XmlTag$TagType |
| XmlTag$TextSegment | 8 | Internal | org.apache.wicket.markup.parser.XmlTag$TextSegment |
| PageWindowManager$PageWindow | 7 | Public | org.apache.wicket.pageStore.PageWindowManager$PageWindow |
| IRequestLogger$ISessionLogInfo | N/A | Public | org.apache.wicket.protocol.http.IRequestLogger$ISessionLogInfo |
| IRequestLogger$RequestData | 31 | Public | org.apache.wicket.protocol.http.IRequestLogger$RequestData |
| IRequestLogger$SessionData | 24 | Public | org.apache.wicket.protocol.http.IRequestLogger$SessionData |
| AbstractResource$WriteCallback | 3 | Public | org.apache.wicket.request.resource.AbstractResource$WriteCallback |
| IResource$Attributes | 12 | Public | org.apache.wicket.request.resource.IResource$Attributes |
| ResourceReference$Key | 25 | Public | org.apache.wicket.request.resource.ResourceReference$Key |
| ResourceReference$UrlAttributes | 16 | Public | org.apache.wicket.request.resource.ResourceReference$UrlAttributes |
| IExceptionSettings$AjaxErrorStrategy | N/A | Public | org.apache.wicket.settings.IExceptionSettings$AjaxErrorStrategy |
| IExceptionSettings$ThreadDumpStrategy | N/A | Public | org.apache.wicket.settings.IExceptionSettings$ThreadDumpStrategy |
| IExceptionSettings$UnexpectedExceptionDisplay | 2 | Public | org.apache.wicket.settings .IExceptionSettings$UnexpectedExceptionDisplay |
| IRequestCycleSettings$RenderStrategy | N/A | Public | org.apache.wicket.settings.IRequestCycleSettings$RenderStrategy |
| FormTester$ChoiceSelector | 40 | Public | org.apache.wicket.util.tester.FormTester$ChoiceSelector |
| WicketTesterHelper$ComponentData | 1 | Public | org.apache.wicket.util.tester.WicketTesterHelper$ComponentData |
Statistics
| Stat | # lines of code (LOC) | Visibility |
|---|---|---|
| Sum: | 384 | 0 |
| Average: | 16.7 | 0 |
| Minimum: | 1 | 0 |
| Maximum: | 55 | 0 |
| Standard deviation: | 14.71 | 0 |
| Variance: | 216.47 | 0 |
| Rule warning: Instances size shouldn't be too big |
warnif count > 0 from t in JustMyCode.Types where
t.SizeOfInst > 64
orderby t.SizeOfInst descending
select new { t, t.SizeOfInst, t.InstanceFields }
// Types where SizeOfInst > 64 might degrade performance
// (depending on the number of instances created at runtime)
// and might be hard to maintain. However it is not a rule
// since sometime there is no alternative .
// Notice that a class with a large SizeOfInst value
// doesn't necessarily have a lot of instance fields.
// It might derive from a class with a large SizeOfInst value.
// See the definition of the SizeOfInst metric here
// http://www.jarchitect.com/Metrics.aspx#SizeOfInst
26 types matched
| types | Size of instance | InstanceFields | Full Name |
|---|---|---|---|
| BaseWicketTester$1 | 208 | 1 field | org.apache.wicket.util.tester.BaseWicketTester$1 |
| MockApplication | 204 | 0 field | org.apache.wicket.mock.MockApplication |
| WebApplication | 204 | 8 fields | org.apache.wicket.protocol.http.WebApplication |
| Application | 172 | 43 fields | org.apache.wicket.Application |
| ClientProperties | 164 | 41 fields | org.apache.wicket.protocol.http.ClientProperties |
| ResourceSettings | 84 | 21 fields | org.apache.wicket.settings.def.ResourceSettings |
| BaseWicketTester | 84 | 21 fields | org.apache.wicket.util.tester.BaseWicketTester |
| WicketTester | 84 | 0 field | org.apache.wicket.util.tester.WicketTester |
| MockHttpServletRequest | 80 | 20 fields | org.apache.wicket.protocol.http.mock.MockHttpServletRequest |
| AutoLinkResolver$AutolinkBookmarkablePageLink<T> | 72 | 1 field | org.apache.wicket.markup.resolver .AutoLinkResolver$AutolinkBookmarkablePageLink |
| DownloadLink | 72 | 3 fields | org.apache.wicket.markup.html.link.DownloadLink |
| ResourceLink<T> | 72 | 3 fields | org.apache.wicket.markup.html.link.ResourceLink |
| CheckBoxMultipleChoice<T> | 72 | 2 fields | org.apache.wicket.markup.html.form.CheckBoxMultipleChoice |
| RadioChoice<T> | 72 | 2 fields | org.apache.wicket.markup.html.form.RadioChoice |
| MultiFileUploadField | 72 | 5 fields | org.apache.wicket.markup.html.form.upload.MultiFileUploadField |
| AjaxPagingNavigationIncrementLink | 68 | 0 field | org.apache.wicket.ajax.markup.html.navigation.paging .AjaxPagingNavigationIncrementLink |
| AjaxPagingNavigationLink | 68 | 0 field | org.apache.wicket.ajax.markup.html.navigation.paging .AjaxPagingNavigationLink |
| BookmarkablePageLink<T> | 68 | 2 fields | org.apache.wicket.markup.html.link.BookmarkablePageLink |
| ListView$1 | 68 | 2 fields | org.apache.wicket.markup.html.list.ListView$1 |
| ListView$2 | 68 | 2 fields | org.apache.wicket.markup.html.list.ListView$2 |
| ListView$3 | 68 | 2 fields | org.apache.wicket.markup.html.list.ListView$3 |
| ExceptionErrorPage$1 | 68 | 2 fields | org.apache.wicket.markup.html.pages.ExceptionErrorPage$1 |
| ListChoice<T> | 68 | 1 field | org.apache.wicket.markup.html.form.ListChoice |
| PagingNavigationIncrementLink<T> | 68 | 2 fields | org.apache.wicket.markup.html.navigation.paging .PagingNavigationIncrementLink |
| PagingNavigationLink<T> | 68 | 2 fields | org.apache.wicket.markup.html.navigation.paging.PagingNavigationLink |
| GridView<T> | 68 | 2 fields | org.apache.wicket.markup.repeater.data.GridView |
Statistics
| Stat | Size of instance | InstanceFields |
|---|---|---|
| Sum: | 2 464 | 0 |
| Average: | 94.77 | 0 |
| Minimum: | 68 | 0 |
| Maximum: | 208 | 0 |
| Standard deviation: | 47.64 | 0 |
| Variance: | 2 269 | 0 |
| Rule warning: Don't use obsolete types, methods or fields |
warnif count > 0
let obsoleteTypes = Types.Where(t => t.IsObsolete)
let obsoleteMethods = Methods.Where(m => m.IsObsolete).ToHashSet()
let obsoleteFields = Fields.Where(f => f.IsObsolete)
from m in JustMyCode.Methods.UsingAny(obsoleteTypes).Union(
JustMyCode.Methods.UsingAny(obsoleteMethods)).Union(
JustMyCode.Methods.UsingAny(obsoleteFields))
let obsoleteTypesUsed = obsoleteTypes.UsedBy(m)
// Optimization: MethodsCalled + Intersect() is faster than using obsoleteMethods.UsedBy()
let obsoleteMethodsUsed = m.MethodsCalled.Intersect(obsoleteMethods)
let obsoleteFieldsUsed = obsoleteFields.UsedBy(m)
select new { m, obsoleteTypesUsed, obsoleteMethodsUsed, obsoleteFieldsUsed }
5 methods matched
| methods | obsoleteTypesUsed | obsoleteMethodsUsed | obsoleteFieldsUsed | Full Name |
|---|---|---|---|---|
| updateAjaxAttributesBackwardCompatibility(AjaxRequestAttributes) | 0 type | 4 methods | 0 field | org.apache.wicket.ajax.AbstractDefaultAjaxBehavior .updateAjaxAttributesBackwardCompatibility(AjaxRequestAttributes) |
| getChannel() | 0 type | 1 method | 0 field | org.apache.wicket.ajax.markup.html.AjaxFallbackLink$1.getChannel() |
| getChannel() | 0 type | 1 method | 0 field | org.apache.wicket.ajax.markup.html.form.AjaxButton$1.getChannel() |
| getChannel() | 0 type | 1 method | 0 field | org.apache.wicket.ajax.markup.html.form.AjaxFallbackButton$1 .getChannel() |
| HomePageMapper(ClassProvider) | 0 type | 1 method | 0 field | org.apache.wicket.core.request.mapper.HomePageMapper.HomePageMapper (ClassProvider) |
Statistics
| Stat | obsoleteTypesUsed | obsoleteMethodsUsed | obsoleteFieldsUsed |
|---|---|---|---|
| Sum: | 0 | 0 | 0 |
| Average: | 0 | 0 | 0 |
| Minimum: | 0 | 0 | 0 |
| Maximum: | 0 | 0 | 0 |
| Standard deviation: | 0 | 0 | 0 |
| Variance: | 0 | 0 | 0 |
| Architecture and Layering | 330 |
|
| Rule warning: Avoid packages mutually dependent |
warnif count > 0
// Foreach pair of package mutually dependent, this rule lists pairs.
// The pair { first, second } is formatted to show that first package shouldn't use the second package.
// The first/second order is inferred from the number of types used by each other.
// The first package is using less types of the second.
// It means that the first package is certainly at a lower level in the architecture, than the second.
//
// To explore the coupling between two packages mutually dependent:
// 1) export the first package to the vertical header of the dependency matrix
// 2) export the second package to the horizontal header of the dependency matrix
// 3) double-click the black cell
// 4) in the matrix command bar, click the button: Remove empty Row(s) en Column(s)
// At this point, the dependency matrix shows types involved into the coupling.
//
// Following this rule is useful to avoid packages dependency cycles.
// Optimization: restreint application projects set
// If some packages are mutually dependent
// - They must be declared in the same project
// - The parent project must ContainsPackageDependencyCycle
from project in Application.Projects.Where(a => a.ContainsPackageDependencyCycle != null && a.ContainsPackageDependencyCycle.Value)
// hashset is used to avoid reporting both A <-> B and B <-> A
let hashset = new HashSet<IPackage>()
// Optimization: restreint packages set
// If a package doesn't have a Level value, it must be in a dependency cycle
// or it must be using directly or indirectly a dependency cycle.
let packagesSuspect = project.ChildPackages.Where(n => n.Level == null)
from nA in packagesSuspect
// Select PACKAGES mutually dependent with nA
let unused = hashset.Add(nA) // Populate hashset
let packagesMutuallyDependentWith_nA = nA.PackagesUsed.Using(nA)
.Except(hashset) // <-- avoid reporting both A <-> B and B <-> A
where packagesMutuallyDependentWith_nA.Count() > 0
from nB in packagesMutuallyDependentWith_nA
// nA and nB are mutually dependent
// Select first the one that shouldn't use the other.
// The first package is inferred from the fact that it is using less types of the second.
let typesOfBUsedByA = nB.ChildTypes.UsedBy(nA)
let typesOfAUsedByB = nA.ChildTypes.UsedBy(nB)
let first = (typesOfBUsedByA.Count() > typesOfAUsedByB.Count()) ? nB : nA
let second = (first == nA) ? nB : nA
let typesOfFirstUsedBySecond = (first == nA) ? typesOfAUsedByB : typesOfBUsedByA
let typesOfSecondUsedByFirst = (first == nA) ? typesOfBUsedByA : typesOfAUsedByB
select new { first, shouldntUse = second, typesOfFirstUsedBySecond, typesOfSecondUsedByFirst }
96 packages matched
| packages | shouldntUse | typesOfFirstUsedBySecond | typesOfSecondUsedByFirst | Full Name |
|---|---|---|---|---|
| org.apache.wicket.application | org.apache.wicket | 7 types | 3 types | org.apache.wicket.application |
| org.apache.wicket.authorization | org.apache.wicket | 4 types | 2 types | org.apache.wicket.authorization |
| org.apache.wicket.settings | org.apache.wicket | 14 types | 5 types | org.apache.wicket.settings |
| org.apache.wicket | org.apache.wicket.request.cycle | 6 types | 4 types | org.apache.wicket |
| org.apache.wicket.page | org.apache.wicket | 6 types | 3 types | org.apache.wicket.page |
| org.apache.wicket | org.apache.wicket.protocol.http | 12 types | 4 types | org.apache.wicket |
| org.apache.wicket | org.apache.wicket.session | 5 types | 3 types | org.apache.wicket |
| org.apache.wicket | org.apache.wicket.response.filter | 2 types | 1 type | org.apache.wicket |
| org.apache.wicket | org.apache.wicket.core.util.lang | 5 types | 2 types | org.apache.wicket |
| org.apache.wicket.markup | org.apache.wicket | 12 types | 4 types | org.apache.wicket.markup |
| org.apache.wicket | org.apache.wicket.markup.resolver | 6 types | 6 types | org.apache.wicket |
| org.apache.wicket | org.apache.wicket.markup.parser.filter | 5 types | 5 types | org.apache.wicket |
| org.apache.wicket | org.apache.wicket.core.util.resource | 2 types | 1 type | org.apache.wicket |
| org.apache.wicket | org.apache.wicket.markup.html.image.resource | 6 types | 1 type | org.apache.wicket |
| org.apache.wicket.settings.def | org.apache.wicket | 12 types | 9 types | org.apache.wicket.settings.def |
| org.apache.wicket.request.resource | org.apache.wicket | 6 types | 3 types | org.apache.wicket.request.resource |
| org.apache.wicket.core.request.mapper | org.apache.wicket | 8 types | 4 types | org.apache.wicket.core.request.mapper |
| org.apache.wicket | org.apache.wicket.markup.html | 6 types | 2 types | org.apache.wicket |
| org.apache.wicket.markup.head | org.apache.wicket | 9 types | 2 types | org.apache.wicket.markup.head |
| org.apache.wicket.model | org.apache.wicket | 7 types | 6 types | org.apache.wicket.model |
| org.apache.wicket | org.apache.wicket.behavior | 8 types | 4 types | org.apache.wicket |
| org.apache.wicket | org.apache.wicket.feedback | 5 types | 1 type | org.apache.wicket |
| org.apache.wicket | org.apache.wicket.core.util.string | 1 type | 1 type | org.apache.wicket |
| org.apache.wicket | org.apache.wicket.ajax | 5 types | 1 type | org.apache.wicket |
| org.apache.wicket | org.apache.wicket.markup.html.panel | 5 types | 2 types | org.apache.wicket |
| org.apache.wicket | org.apache.wicket.markup.html.internal | 5 types | 1 type | org.apache.wicket |
| org.apache.wicket | org.apache.wicket.response | 1 type | 1 type | org.apache.wicket |
| org.apache.wicket.core.request.handler | org.apache.wicket | 9 types | 7 types | org.apache.wicket.core.request.handler |
| org.apache.wicket | org.apache.wicket.markup.html.pages | 6 types | 1 type | org.apache.wicket |
| org.apache.wicket.pageStore | org.apache.wicket | 5 types | 1 type | org.apache.wicket.pageStore |
| org.apache.wicket | org.apache.wicket.markup.html.form | 11 types | 2 types | org.apache.wicket |
| org.apache.wicket | org.apache.wicket.markup.html.link | 12 types | 1 type | org.apache.wicket |
| org.apache.wicket | org.apache.wicket.request.handler.render | 2 types | 1 type | org.apache.wicket |
| org.apache.wicket | org.apache.wicket.resource.loader | 4 types | 1 type | org.apache.wicket |
| org.apache.wicket | org.apache.wicket.core.util.string.interpolator | 1 type | 1 type | org.apache.wicket |
| org.apache.wicket | org.apache.wicket.util.iterator | 2 types | 1 type | org.apache.wicket |
| org.apache.wicket.behavior | org.apache.wicket.markup | 1 type | 1 type | org.apache.wicket.behavior |
| org.apache.wicket.css | org.apache.wicket.resource | 1 type | 1 type | org.apache.wicket.css |
| org.apache.wicket.feedback | org.apache.wicket.markup.html.panel | 5 types | 1 type | org.apache.wicket.feedback |
| org.apache.wicket.javascript | org.apache.wicket.resource | 1 type | 1 type | org.apache.wicket.javascript |
| org.apache.wicket.page | org.apache.wicket.pageStore | 1 type | 1 type | org.apache.wicket.page |
| org.apache.wicket.session | org.apache.wicket.protocol.http | 2 types | 2 types | org.apache.wicket.session |
| org.apache.wicket.ajax.attributes | org.apache.wicket.ajax | 6 types | 1 type | org.apache.wicket.ajax.attributes |
| org.apache.wicket.ajax | org.apache.wicket.protocol.http | 5 types | 1 type | org.apache.wicket.ajax |
| org.apache.wicket.core.request.handler | org.apache.wicket.core.request.mapper | 10 types | 2 types | org.apache.wicket.core.request.handler |
| org.apache.wicket.core.request.mapper | org.apache.wicket.protocol.http | 4 types | 3 types | org.apache.wicket.core.request.mapper |
| org.apache.wicket.core.request.handler | org.apache.wicket.core.request.handler.logger | 2 types | 2 types | org.apache.wicket.core.request.handler |
| org.apache.wicket.protocol.http | org.apache.wicket.core.request.handler | 2 types | 1 type | org.apache.wicket.protocol.http |
| org.apache.wicket.core.request.handler | org.apache.wicket.request.handler.render | 3 types | 1 type | org.apache.wicket.core.request.handler |
| org.apache.wicket.core.request.handler | org.apache.wicket.request.cycle | 5 types | 1 type | org.apache.wicket.core.request.handler |
| org.apache.wicket.request.handler.resource | org.apache.wicket.core.request.handler.logger | 3 types | 2 types | org.apache.wicket.request.handler.resource |
| org.apache.wicket.core.util.lang | org.apache.wicket.model | 2 types | 1 type | org.apache.wicket.core.util.lang |
| org.apache.wicket.core.util.resource | org.apache.wicket.core.util.resource.locator | 1 type | 1 type | org.apache.wicket.core.util.resource |
| org.apache.wicket.core.util.resource | org.apache.wicket.protocol.http | 1 type | 1 type | org.apache.wicket.core.util.resource |
| org.apache.wicket.core.util.resource.locator | org.apache.wicket.settings | 1 type | 1 type | org.apache.wicket.core.util.resource.locator |
| org.apache.wicket.markup | org.apache.wicket.markup.parser | 7 types | 6 types | org.apache.wicket.markup |
| org.apache.wicket.markup.parser.filter | org.apache.wicket.markup | 16 types | 10 types | org.apache.wicket.markup.parser.filter |
| org.apache.wicket.settings | org.apache.wicket.markup | 2 types | 1 type | org.apache.wicket.settings |
| org.apache.wicket.markup | org.apache.wicket.markup.loader | 10 types | 2 types | org.apache.wicket.markup |
| org.apache.wicket.markup | org.apache.wicket.markup.html.form | 4 types | 1 type | org.apache.wicket.markup |
| org.apache.wicket.markup.renderStrategy | org.apache.wicket.markup.html.internal | 2 types | 2 types | org.apache.wicket.markup.renderStrategy |
| org.apache.wicket.markup.renderStrategy | org.apache.wicket.markup.html | 2 types | 1 type | org.apache.wicket.markup.renderStrategy |
| org.apache.wicket.settings | org.apache.wicket.markup.resolver | 4 types | 1 type | org.apache.wicket.settings |
| org.apache.wicket.markup.resolver | org.apache.wicket.protocol.http | 1 type | 1 type | org.apache.wicket.markup.resolver |
| org.apache.wicket.markup.html | org.apache.wicket.markup.resolver | 3 types | 1 type | org.apache.wicket.markup.html |
| org.apache.wicket.markup.resolver | org.apache.wicket.markup.parser.filter | 1 type | 1 type | org.apache.wicket.markup.resolver |
| org.apache.wicket.markup.resolver | org.apache.wicket.markup.html.internal | 3 types | 1 type | org.apache.wicket.markup.resolver |
| org.apache.wicket.markup.head | org.apache.wicket.request.resource | 1 type | 1 type | org.apache.wicket.markup.head |
| org.apache.wicket.markup.head | org.apache.wicket.resource.bundles | 2 types | 1 type | org.apache.wicket.markup.head |
| org.apache.wicket.settings | org.apache.wicket.markup.head | 2 types | 1 type | org.apache.wicket.settings |
| org.apache.wicket.markup.head | org.apache.wicket.markup.html | 2 types | 1 type | org.apache.wicket.markup.head |
| org.apache.wicket.markup.head | org.apache.wicket.resource | 4 types | 1 type | org.apache.wicket.markup.head |
| org.apache.wicket.settings | org.apache.wicket.markup.html | 2 types | 1 type | org.apache.wicket.settings |
| org.apache.wicket.protocol.http | org.apache.wicket.markup.html | 2 types | 1 type | org.apache.wicket.protocol.http |
| org.apache.wicket.markup.html | org.apache.wicket.markup.html.internal | 2 types | 1 type | org.apache.wicket.markup.html |
| org.apache.wicket.markup.html | org.apache.wicket.markup.html.link | 2 types | 1 type | org.apache.wicket.markup.html |
| org.apache.wicket.markup.html.list | org.apache.wicket.markup.repeater | 2 types | 1 type | org.apache.wicket.markup.html.list |
| org.apache.wicket.markup.html.list | org.apache.wicket.markup.html.navigation.paging | 2 types | 2 types | org.apache.wicket.markup.html.list |
| org.apache.wicket.protocol.http | org.apache.wicket.markup.html.pages | 2 types | 1 type | org.apache.wicket.protocol.http |
| org.apache.wicket.validation | org.apache.wicket.markup.html.form | 6 types | 1 type | org.apache.wicket.validation |
| org.apache.wicket.markup.html.form | org.apache.wicket.markup.html.form.validation | 3 types | 2 types | org.apache.wicket.markup.html.form |
| org.apache.wicket.markup.html.navigation.paging | org.apache.wicket.markup.repeater | 2 types | 1 type | org.apache.wicket.markup.html.navigation.paging |
| org.apache.wicket.model.util | org.apache.wicket.model | 4 types | 2 types | org.apache.wicket.model.util |
| org.apache.wicket.request.cycle | org.apache.wicket.protocol.http | 2 types | 1 type | org.apache.wicket.request.cycle |
| org.apache.wicket.protocol.http | org.apache.wicket.request.handler.render | 2 types | 2 types | org.apache.wicket.protocol.http |
| org.apache.wicket.request.resource | org.apache.wicket.protocol.http | 4 types | 1 type | org.apache.wicket.request.resource |
| org.apache.wicket.protocol.http | org.apache.wicket.protocol.http.servlet | 4 types | 4 types | org.apache.wicket.protocol.http |
| org.apache.wicket.protocol.http | org.apache.wicket.protocol.http.request | 1 type | 1 type | org.apache.wicket.protocol.http |
| org.apache.wicket.request.cycle | org.apache.wicket.request.resource | 1 type | 1 type | org.apache.wicket.request.cycle |
| org.apache.wicket.request.resource | org.apache.wicket.settings | 1 type | 1 type | org.apache.wicket.request.resource |
| org.apache.wicket.request.resource | org.apache.wicket.request.resource.caching | 2 types | 2 types | org.apache.wicket.request.resource |
| org.apache.wicket.request.resource.caching | org.apache.wicket.request.resource.caching.version | 1 type | 1 type | org.apache.wicket.request.resource.caching |
| org.apache.wicket.resource | org.apache.wicket.settings | 2 types | 2 types | org.apache.wicket.resource |
| org.apache.wicket.util.template | org.apache.wicket.resource | 2 types | 1 type | org.apache.wicket.util.template |
| org.apache.wicket.resource.loader | org.apache.wicket.settings | 1 type | 1 type | org.apache.wicket.resource.loader |
| org.apache.wicket.response.filter | org.apache.wicket.settings | 1 type | 1 type | org.apache.wicket.response.filter |
Statistics
| Stat | shouldntUse | typesOfFirstUsedBySecond | typesOfSecondUsedByFirst |
|---|---|---|---|
| Sum: | 0 | 0 | 0 |
| Average: | 0 | 0 | 0 |
| Minimum: | 0 | 0 | 0 |
| Maximum: | 0 | 0 | 0 |
| Standard deviation: | 0 | 0 | 0 |
| Variance: | 0 | 0 | 0 |
| Rule warning: Avoid packages dependency cycles |
warnif count > 0
// This query lists all application packages dependency cyles.
// Each row shows a different cycle, prefixed with a package entangled in the cycle.
//
// To browse a cycle on the dependency graph or the dependency matrix, just right click
// a cycle cell and export packages matched to the dependency graph or matrix!
//
// In the matrix, dependency cycles are represented with red squares and black cells.
// To browse easily dependency cycles, the Matrix comes with the option:
// --> Display Direct and Indirect Dependencies
//
// Optimization: restreint application projects set
// If some packages are mutually dependent
// - They must be declared in the same project
// - The parent project must ContainsPackageDependencyCycle
from project in Application.Projects
.Where(a => a.ContainsPackageDependencyCycle != null &&
a.ContainsPackageDependencyCycle.Value)
// Optimization: restreint packages set
// A package involved in a cycle necessarily have a null Level.
let packagesSuspect = project.ChildPackages.Where(n => n.Level == null)
// hashset is used to avoid iterating again on packages already caught in a cycle.
let hashset = new HashSet<IPackage>()
from suspect in packagesSuspect
// By commenting this line, the query matches all packages involved in a cycle.
where !hashset.Contains(suspect)
// Define 2 code metrics
// - Packages depth of is using indirectly the suspect package.
// - Packages depth of is used by the suspect package indirectly.
// Note: for direct usage the depth is equal to 1.
let packagesUserDepth = packagesSuspect.DepthOfIsUsing(suspect)
let packagesUsedDepth = packagesSuspect.DepthOfIsUsedBy(suspect)
// Select PACKAGES that are both using and used by packageSuspect
let usersAndUsed = from n in packagesSuspect where
packagesUserDepth[n] > 0 &&
packagesUsedDepth[n] > 0
select n
where usersAndUsed.Count() > 0
// Here we've found package(s) both using and used by the suspect package.
// A cycle involving the suspect package is found!
let cycle = usersAndUsed.Append(suspect)
// Fill hashset with packages in the cycle.
// .ToArray() is needed to force the iterating process.
let unused1 = (from n in cycle let unused2 = hashset.Add(n) select n).ToArray()
select new { suspect, cycle }
1 packages matched
| package | cycle | Full Name |
|---|---|---|
| org.apache.wicket | 74 packages | org.apache.wicket |
Statistics
| Stat | cycle |
|---|---|
| Sum: | 0 |
| Average: | 0 |
| Minimum: | 0 |
| Maximum: | 0 |
| Standard deviation: | 0 |
| Variance: | 0 |
| Rule warning: Projects with poor cohesion (RelationalCohesion) |
warnif count > 0 from a in Application.Projects where
a.NbTypes > 20 && // Relational Cohesion metrics is relevant only if there are several types
(a.RelationalCohesion < 1.5 ||
a.RelationalCohesion > 4.0)
select new { a, a.NbTypes, a.RelationalCohesion }
// As classes inside an project should be strongly related,
// the cohesion should be high. On the other hand, a value
// which is too high may indicate over-coupling. A good range
// for RelationalCohesion is 1.5 to 4.0.
// See the definition of the RelationalCohesion metric here
// http://www.jarchitect.com/Metrics.aspx#RelationalCohesion
1 projects matched
| project | # Types | Relational cohesion | Full Name |
|---|---|---|---|
| wicket-core | 1 190 | 4.17 | wicket-core |
Statistics
| Stat | # Types | Relational cohesion |
|---|---|---|
| Sum: | 1 190 | 4.17 |
| Average: | 1 190 | 4.17 |
| Minimum: | 1 190 | 4.17 |
| Maximum: | 1 190 | 4.17 |
| Standard deviation: | 0 | 0 |
| Variance: | 0 | 0 |
| Best Practices | 370 |
|
| Critical Rule warning: Prefer primitive types to boxed primitives |
warnif count > 0
let BoxedTypes = ThirdParty.Types.WithFullNameIn(
"java.lang.Integer",
"java.lang.Double",
"java.lang.Boolean")
from m in Application.Methods.UsingAny(BoxedTypes)
select m
//Use primitives in preference to boxed primitives whenever you
//have the choice. Primitive types are simpler and faster. If you must use boxed
//primitives, be careful! Autoboxing reduces the verbosity, but not the danger, of
//using boxed primitives. When your program compares two boxed primitives
//with the == operator, it does an identity comparison, which is almost certainly not
//what you want.
174 methods matched
| methods | Full Name |
|---|---|
| urlFor(Behavior,RequestListenerInterface,PageParameters) | org.apache.wicket.Component.urlFor(Behavior,RequestListenerInterface ,PageParameters) |
| getMarkupIdImpl() | org.apache.wicket.Component.getMarkupIdImpl() |
| getMarkupId(boolean) | org.apache.wicket.Component.getMarkupId(boolean) |
| setMarkupIdImpl(Object) | org.apache.wicket.Component.setMarkupIdImpl(Object) |
| ConverterLocator() | org.apache.wicket.ConverterLocator.ConverterLocator() |
| toString() | org.apache.wicket.MetaDataEntry.toString() |
| component(Component,IVisit) | org.apache.wicket.Page$3.component(Component,IVisit) |
| isPageStateless() | org.apache.wicket.Page.isPageStateless() |
| getId() | org.apache.wicket.Page.getId() |
| peekPageStateless() | org.apache.wicket.Page.peekPageStateless() |
| onBeforeRender() | org.apache.wicket.Page.onBeforeRender() |
| resolveClass(String) | org.apache.wicket.application.AbstractClassResolver.resolveClass (String) |
| InvalidBehaviorIdException(Component,int) | org.apache.wicket.behavior.InvalidBehaviorIdException .InvalidBehaviorIdException(Component,int) |
| getLevelAsString() | org.apache.wicket.feedback.FeedbackMessage.getLevelAsString() |
| FeedbackMessage() | org.apache.wicket.feedback.FeedbackMessage.FeedbackMessage() |
| FencedFeedbackPanel(String,Component,IFeedbackMessageFilter) | org.apache.wicket.feedback.FencedFeedbackPanel.FencedFeedbackPanel (String,Component,IFeedbackMessageFilter) |
| onRemove() | org.apache.wicket.feedback.FencedFeedbackPanel.onRemove() |
| getPage(int) | org.apache.wicket.mock.MockPageManager.getPage(int) |
| touchPage(IManageablePage) | org.apache.wicket.mock.MockPageManager.touchPage(IManageablePage) |
| setStatus(int) | org.apache.wicket.mock.MockWebResponse.setStatus(int) |
| sendError(int,String) | org.apache.wicket.mock.MockWebResponse.sendError(int,String) |
| lockPage(int) | org.apache.wicket.page.PageAccessSynchronizer.lockPage(int) |
| unlockPage(int) | org.apache.wicket.page.PageAccessSynchronizer.unlockPage(int) |
| internalUnlockPages(Integer) | org.apache.wicket.page.PageAccessSynchronizer.internalUnlockPages (Integer) |
| isBookmarkable(Class) | org.apache.wicket.session.DefaultPageFactory.isBookmarkable(Class) |
| getPageId() | org.apache.wicket.ajax.AjaxRequestHandler.getPageId() |
| getRenderCount() | org.apache.wicket.ajax.AjaxRequestHandler.getRenderCount() |
| toJSONObject(String) | org.apache.wicket.ajax.json.Cookie.toJSONObject(String) |
| getBoolean(int) | org.apache.wicket.ajax.json.JSONArray.getBoolean(int) |
| getDouble(int) | org.apache.wicket.ajax.json.JSONArray.getDouble(int) |
| getInt(int) | org.apache.wicket.ajax.json.JSONArray.getInt(int) |
| put(boolean) | org.apache.wicket.ajax.json.JSONArray.put(boolean) |
| put(double) | org.apache.wicket.ajax.json.JSONArray.put(double) |
| put(int) | org.apache.wicket.ajax.json.JSONArray.put(int) |
| put(int,boolean) | org.apache.wicket.ajax.json.JSONArray.put(int,boolean) |
| put(int,double) | org.apache.wicket.ajax.json.JSONArray.put(int,double) |
| put(int,int) | org.apache.wicket.ajax.json.JSONArray.put(int,int) |
| put(String,boolean) | org.apache.wicket.ajax.json.JSONObject.put(String,boolean) |
| testValidity(Object) | org.apache.wicket.ajax.json.JSONObject.testValidity(Object) |
| doubleToString(double) | org.apache.wicket.ajax.json.JSONObject.doubleToString(double) |
| getBoolean(String) | org.apache.wicket.ajax.json.JSONObject.getBoolean(String) |
| getDouble(String) | org.apache.wicket.ajax.json.JSONObject.getDouble(String) |
| getInt(String) | org.apache.wicket.ajax.json.JSONObject.getInt(String) |
| increment(String) | org.apache.wicket.ajax.json.JSONObject.increment(String) |
| put(String,int) | org.apache.wicket.ajax.json.JSONObject.put(String,int) |
| put(String,double) | org.apache.wicket.ajax.json.JSONObject.put(String,double) |
| quote(String,Writer) | org.apache.wicket.ajax.json.JSONObject.quote(String,Writer) |
| stringToValue(String) | org.apache.wicket.ajax.json.JSONObject.stringToValue(String) |
| nextString(char) | org.apache.wicket.ajax.json.JSONTokener.nextString(char) |
| key(String) | org.apache.wicket.ajax.json.JSONWriter.key(String) |
| value(double) | org.apache.wicket.ajax.json.JSONWriter.value(double) |
| stringToValue(String) | org.apache.wicket.ajax.json.XML.stringToValue(String) |
| nextMeta() | org.apache.wicket.ajax.json.XMLTokener.nextMeta() |
| getPageInfo(IPageRequestHandler) | org.apache.wicket.core.request.mapper.AbstractBookmarkableMapper .getPageInfo(IPageRequestHandler) |
| next() | org.apache.wicket.core.request.mapper .CryptoMapper$HashedSegmentGenerator.next() |
| mapHandler(IRequestHandler) | org.apache.wicket.core.request.mapper.MountedMapper.mapHandler (IRequestHandler) |
| mapRequest(Request) | org.apache.wicket.core.request.mapper.PageInstanceMapper.mapRequest (Request) |
| mapHandler(IRequestHandler) | org.apache.wicket.core.request.mapper.PageInstanceMapper.mapHandler (IRequestHandler) |
| invokeListener() | org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler .invokeListener() |
| PageAndComponentProvider(int,Class,Integer,String) | org.apache.wicket.core.request.handler.PageAndComponentProvider .PageAndComponentProvider(int,Class,Integer,String) |
| PageAndComponentProvider(int,Integer,String) | org.apache.wicket.core.request.handler.PageAndComponentProvider .PageAndComponentProvider(int,Integer,String) |
| PageProvider(IRequestablePage) | org.apache.wicket.core.request.handler.PageProvider.PageProvider (IRequestablePage) |
| resolvePageInstance(Integer,Class,PageParameters,Integer) | org.apache.wicket.core.request.handler.PageProvider .resolvePageInstance(Integer,Class,PageParameters,Integer) |
| isNewPageInstance() | org.apache.wicket.core.request.handler.PageProvider.isNewPageInstance( ) |
| getStoredPage(int) | org.apache.wicket.core.request.handler.PageProvider.getStoredPage(int) |
| hasPageInstance() | org.apache.wicket.core.request.handler.PageProvider.hasPageInstance() |
| ListenerInterfaceLogData(IPageAndComponentProvider ,RequestListenerInterface,Integer) | org.apache.wicket.core.request.handler.logger.ListenerInterfaceLogData .ListenerInterfaceLogData(IPageAndComponentProvider ,RequestListenerInterface,Integer) |
| PageLogData(Page) | org.apache.wicket.core.request.handler.logger.PageLogData.PageLogData (Page) |
| getValue(Object) | org.apache.wicket.core.util.lang.PropertyResolver$ArrayLengthGetSet .getValue(Object) |
| getTargetClass() | org.apache.wicket.core.util.lang.PropertyResolver$ArrayLengthGetSet .getTargetClass() |
| PropertyResolver$ArrayPropertyGetSet(Method,int) | org.apache.wicket.core.util.lang.PropertyResolver$ArrayPropertyGetSet .PropertyResolver$ArrayPropertyGetSet(Method,int) |
| findSetter(Method,Class) | org.apache.wicket.core.util.lang.PropertyResolver$ArrayPropertyGetSet .findSetter(Method,Class) |
| getGetAndSetter(String,Class) | org.apache.wicket.core.util.lang.PropertyResolver.getGetAndSetter (String,Class) |
| internalCheck(Object) | org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream .internalCheck(Object) |
| checkFields(Object,ObjectStreamClass) | org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream .checkFields(Object,ObjectStreamClass) |
| CheckingObjectOutputStream() | org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream .CheckingObjectOutputStream() |
| resolveAutomaticLink(AutoLinkResolver$PathInfo,String,ComponentTag) | org.apache.wicket.markup.resolver.AutoLinkResolver .resolveAutomaticLink(AutoLinkResolver$PathInfo,String,ComponentTag) |
| acceptAbsolutePath(String) | org.apache.wicket.markup.html.SecurePackageResourceGuard .acceptAbsolutePath(String) |
| next() | org.apache.wicket.markup.html.list.ListView$4.next() |
| onPopulate() | org.apache.wicket.markup.html.list.ListView.onPopulate() |
| next() | org.apache.wicket.markup.html.list.Loop$1.next() |
| Loop(String,int) | org.apache.wicket.markup.html.list.Loop.Loop(String,int) |
| getIterations() | org.apache.wicket.markup.html.list.Loop.getIterations() |
| merge(ClientProperties) | org.apache.wicket.markup.html.pages .BrowserInfoForm$ClientPropertiesBean.merge(ClientProperties) |
| BrowserInfoForm$ClientPropertiesBean() | org.apache.wicket.markup.html.pages .BrowserInfoForm$ClientPropertiesBean .BrowserInfoForm$ClientPropertiesBean() |
| getInt(String) | org.apache.wicket.markup.html.pages .BrowserInfoForm$ClientPropertiesBean.getInt(String) |
| convertToObject(String,Locale) | org.apache.wicket.markup.html.form.CheckBox$CheckBoxConverter .convertToObject(String,Locale) |
| convertToString(Boolean,Locale) | org.apache.wicket.markup.html.form.CheckBox$CheckBoxConverter .convertToString(Boolean,Locale) |
| onComponentTag(ComponentTag) | org.apache.wicket.markup.html.form.CheckBox.onComponentTag (ComponentTag) |
| getIdValue(Object,int) | org.apache.wicket.markup.html.form.ChoiceRenderer.getIdValue(Object ,int) |
| component(Component,IVisit) | org.apache.wicket.markup.html.form.Form$10.component(Component,IVisit) |
| component(Component,IVisit) | org.apache.wicket.markup.html.form.Form$7.component(Component,IVisit) |
| isMultiPart() | org.apache.wicket.markup.html.form.Form.isMultiPart() |
| anyFormComponentError() | org.apache.wicket.markup.html.form.Form.anyFormComponentError() |
| component(FormComponent,IVisit) | org.apache.wicket.markup.html.form.FormComponent$1IsValidVisitor .component(FormComponent,IVisit) |
| isValid() | org.apache.wicket.markup.html.form.FormComponent.isValid() |
| inputAsInt() | org.apache.wicket.markup.html.form.FormComponent.inputAsInt() |
| inputAsInt(int) | org.apache.wicket.markup.html.form.FormComponent.inputAsInt(int) |
| inputAsIntArray() | org.apache.wicket.markup.html.form.FormComponent.inputAsIntArray() |
| isRetainDisabledSelected() | org.apache.wicket.markup.html.form.ListMultipleChoice .isRetainDisabledSelected() |
Statistics
| Stat |
|---|
| Sum: |
| Average: |
| Minimum: |
| Maximum: |
| Standard deviation: |
| Variance: |
| Critical Rule warning: Always override hashcode when you override equals |
warnif count > 0
from t in Types where !t.IsThirdParty && t.Methods.Where(a=>a.Name=="equals(Object)").Count()>0
&& t.Methods.Where(a=>a.Name=="hashCode()").Count()==0
select t
1 types matched
| type | Full Name |
|---|---|
| JSONObject$Null | org.apache.wicket.ajax.json.JSONObject$Null |
Statistics
| Stat |
|---|
| Sum: |
| Average: |
| Minimum: |
| Maximum: |
| Standard deviation: |
| Variance: |
| Critical Rule warning: Always override toString |
warnif count > 0
from t in Types where !t.IsThirdParty && t.IsClass && t.Methods.Where(a=>a.Name=="toString()").Count()==0
select t
//While java.lang.Object provides an implementation of the toString method,
//the string that it returns is generally not what the user of your class wants to see. I
911 types matched
| types | Full Name |
|---|---|
| Application$1 | org.apache.wicket.Application$1 |
| Application$2 | org.apache.wicket.Application$2 |
| Application$3 | org.apache.wicket.Application$3 |
| Application$DefaultExceptionMapperProvider | org.apache.wicket.Application$DefaultExceptionMapperProvider |
| Application$DefaultRequestCycleProvider | org.apache.wicket.Application$DefaultRequestCycleProvider |
| Application | org.apache.wicket.Application |
| ApplicationListenerCollection$1 | org.apache.wicket.ApplicationListenerCollection$1 |
| ApplicationListenerCollection$2 | org.apache.wicket.ApplicationListenerCollection$2 |
| ApplicationListenerCollection | org.apache.wicket.ApplicationListenerCollection |
| AttributeModifier$1 | org.apache.wicket.AttributeModifier$1 |
| BehaviorInstantiationListenerCollection$1 | org.apache.wicket.BehaviorInstantiationListenerCollection$1 |
| BehaviorInstantiationListenerCollection | org.apache.wicket.BehaviorInstantiationListenerCollection |
| Behaviors$BehaviorIdList | org.apache.wicket.Behaviors$BehaviorIdList |
| Behaviors | org.apache.wicket.Behaviors |
| Component$1 | org.apache.wicket.Component$1 |
| Component$2 | org.apache.wicket.Component$2 |
| Component$3 | org.apache.wicket.Component$3 |
| Component$4 | org.apache.wicket.Component$4 |
| Component$5 | org.apache.wicket.Component$5 |
| Component$6 | org.apache.wicket.Component$6 |
| Component$7 | org.apache.wicket.Component$7 |
| ComponentEvent<T> | org.apache.wicket.ComponentEvent |
| ComponentEventSender$1 | org.apache.wicket.ComponentEventSender$1 |
| ComponentEventSender$ComponentEventVisitor<T> | org.apache.wicket.ComponentEventSender$ComponentEventVisitor |
| ComponentEventSender | org.apache.wicket.ComponentEventSender |
| ConverterLocator$1 | org.apache.wicket.ConverterLocator$1 |
| ConverterLocator$DefaultConverter<C> | org.apache.wicket.ConverterLocator$DefaultConverter |
| ConverterLocator | org.apache.wicket.ConverterLocator |
| DefaultExceptionMapper$1 | org.apache.wicket.DefaultExceptionMapper$1 |
| DefaultExceptionMapper | org.apache.wicket.DefaultExceptionMapper |
| DefaultMapperContext | org.apache.wicket.DefaultMapperContext |
| DefaultPageManagerProvider | org.apache.wicket.DefaultPageManagerProvider |
| Localizer$1 | org.apache.wicket.Localizer$1 |
| Localizer$ClassMetaDatabase | org.apache.wicket.Localizer$ClassMetaDatabase |
| Localizer | org.apache.wicket.Localizer |
| MarkupContainer$1 | org.apache.wicket.MarkupContainer$1 |
| MarkupContainer$2 | org.apache.wicket.MarkupContainer$2 |
| MarkupContainer$3 | org.apache.wicket.MarkupContainer$3 |
| MarkupContainer$4 | org.apache.wicket.MarkupContainer$4 |
| MarkupContainer$5 | org.apache.wicket.MarkupContainer$5 |
| MarkupContainer$6 | org.apache.wicket.MarkupContainer$6 |
| MarkupContainer$ChildList | org.apache.wicket.MarkupContainer$ChildList |
| NonResettingRestartException | org.apache.wicket.NonResettingRestartException |
| Page$1 | org.apache.wicket.Page$1 |
| Page$2 | org.apache.wicket.Page$2 |
| Page$3 | org.apache.wicket.Page$3 |
| Page$4 | org.apache.wicket.Page$4 |
| Page$5 | org.apache.wicket.Page$5 |
| PageReference | org.apache.wicket.PageReference |
| ResourceBundles | org.apache.wicket.ResourceBundles |
| RestartResponseAtInterceptPageException$1 | org.apache.wicket.RestartResponseAtInterceptPageException$1 |
| RestartResponseAtInterceptPageException$InterceptData$1 | org.apache.wicket .RestartResponseAtInterceptPageException$InterceptData$1 |
| RestartResponseAtInterceptPageException$InterceptData | org.apache.wicket .RestartResponseAtInterceptPageException$InterceptData |
| RestartResponseAtInterceptPageException | org.apache.wicket.RestartResponseAtInterceptPageException |
| RestartResponseException | org.apache.wicket.RestartResponseException |
| Session$1 | org.apache.wicket.Session$1 |
| Session$PageAccessSynchronizerProvider | org.apache.wicket.Session$PageAccessSynchronizerProvider |
| Session | org.apache.wicket.Session |
| SessionListenerCollection$1 | org.apache.wicket.SessionListenerCollection$1 |
| SessionListenerCollection | org.apache.wicket.SessionListenerCollection |
| SharedResources$1 | org.apache.wicket.SharedResources$1 |
| SharedResources$AutoResourceReference | org.apache.wicket.SharedResources$AutoResourceReference |
| SharedResources | org.apache.wicket.SharedResources |
| SystemMapper$1 | org.apache.wicket.SystemMapper$1 |
| SystemMapper$HomePageProvider<C> | org.apache.wicket.SystemMapper$HomePageProvider |
| SystemMapper$ParentFolderPlaceholderProvider | org.apache.wicket.SystemMapper$ParentFolderPlaceholderProvider |
| SystemMapper | org.apache.wicket.SystemMapper |
| ThreadContext | org.apache.wicket.ThreadContext |
| WicketRuntimeException | org.apache.wicket.WicketRuntimeException |
| AbstractClassResolver | org.apache.wicket.application.AbstractClassResolver |
| ComponentInitializationListenerCollection$1 | org.apache.wicket.application .ComponentInitializationListenerCollection$1 |
| ComponentInitializationListenerCollection | org.apache.wicket.application .ComponentInitializationListenerCollection |
| ComponentInstantiationListenerCollection$1 | org.apache.wicket.application .ComponentInstantiationListenerCollection$1 |
| ComponentInstantiationListenerCollection | org.apache.wicket.application.ComponentInstantiationListenerCollection |
| ComponentOnAfterRenderListenerCollection$1 | org.apache.wicket.application .ComponentOnAfterRenderListenerCollection$1 |
| ComponentOnAfterRenderListenerCollection | org.apache.wicket.application.ComponentOnAfterRenderListenerCollection |
| ComponentOnBeforeRenderListenerCollection$1 | org.apache.wicket.application .ComponentOnBeforeRenderListenerCollection$1 |
| ComponentOnBeforeRenderListenerCollection | org.apache.wicket.application .ComponentOnBeforeRenderListenerCollection |
| CompoundClassResolver | org.apache.wicket.application.CompoundClassResolver |
| DefaultClassResolver | org.apache.wicket.application.DefaultClassResolver |
| HeaderContributorListenerCollection$1 | org.apache.wicket.application.HeaderContributorListenerCollection$1 |
| HeaderContributorListenerCollection | org.apache.wicket.application.HeaderContributorListenerCollection |
| ReloadingClassLoader$1 | org.apache.wicket.application.ReloadingClassLoader$1 |
| ReloadingClassLoader | org.apache.wicket.application.ReloadingClassLoader |
| WildcardMatcherHelper$Matcher | org.apache.wicket.application.WildcardMatcherHelper$Matcher |
| WildcardMatcherHelper | org.apache.wicket.application.WildcardMatcherHelper |
| AbstractAjaxBehavior | org.apache.wicket.behavior.AbstractAjaxBehavior |
| Behavior | org.apache.wicket.behavior.Behavior |
| InvalidBehaviorIdException | org.apache.wicket.behavior.InvalidBehaviorIdException |
| ComponentFeedbackMessageFilter | org.apache.wicket.feedback.ComponentFeedbackMessageFilter |
| ContainerFeedbackMessageFilter | org.apache.wicket.feedback.ContainerFeedbackMessageFilter |
| DefaultCleanupFeedbackMessageFilter | org.apache.wicket.feedback.DefaultCleanupFeedbackMessageFilter |
| ErrorLevelFeedbackMessageFilter | org.apache.wicket.feedback.ErrorLevelFeedbackMessageFilter |
| FeedbackCollector$1 | org.apache.wicket.feedback.FeedbackCollector$1 |
| FeedbackCollector | org.apache.wicket.feedback.FeedbackCollector |
| FeedbackMessagesModel | org.apache.wicket.feedback.FeedbackMessagesModel |
| FencedFeedbackPanel$1 | org.apache.wicket.feedback.FencedFeedbackPanel$1 |
| FencedFeedbackPanel$2$1 | org.apache.wicket.feedback.FencedFeedbackPanel$2$1 |
| FencedFeedbackPanel$2$2 | org.apache.wicket.feedback.FencedFeedbackPanel$2$2 |
| FencedFeedbackPanel$2 | org.apache.wicket.feedback.FencedFeedbackPanel$2 |
Statistics
| Stat |
|---|
| Sum: |
| Average: |
| Minimum: |
| Maximum: |
| Standard deviation: |
| Variance: |
| Critical Rule warning: Prefer interfaces to abstract classes |
warnif count > 0
from t in Types where !t.IsThirdParty && t.IsAbstract
select t
114 types matched
| types | Full Name |
|---|---|
| Application | org.apache.wicket.Application |
| Component | org.apache.wicket.Component |
| MarkupContainer | org.apache.wicket.MarkupContainer |
| MetaDataKey<T> | org.apache.wicket.MetaDataKey |
| Page | org.apache.wicket.Page |
| Session | org.apache.wicket.Session |
| AbstractClassResolver | org.apache.wicket.application.AbstractClassResolver |
| AbstractAjaxBehavior | org.apache.wicket.behavior.AbstractAjaxBehavior |
| Behavior | org.apache.wicket.behavior.Behavior |
| AbstractPageManager | org.apache.wicket.page.AbstractPageManager |
| RequestAdapter | org.apache.wicket.page.RequestAdapter |
| AbstractAjaxResponse | org.apache.wicket.ajax.AbstractAjaxResponse |
| AbstractAjaxTimerBehavior | org.apache.wicket.ajax.AbstractAjaxTimerBehavior |
| AbstractDefaultAjaxBehavior | org.apache.wicket.ajax.AbstractDefaultAjaxBehavior |
| AjaxEventBehavior | org.apache.wicket.ajax.AjaxEventBehavior |
| AjaxNewWindowNotifyingBehavior | org.apache.wicket.ajax.AjaxNewWindowNotifyingBehavior |
| XmlAjaxResponse | org.apache.wicket.ajax.XmlAjaxResponse |
| AjaxFormChoiceComponentUpdatingBehavior | org.apache.wicket.ajax.form.AjaxFormChoiceComponentUpdatingBehavior |
| AjaxFormComponentUpdatingBehavior | org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior |
| AjaxFormSubmitBehavior | org.apache.wicket.ajax.form.AjaxFormSubmitBehavior |
| OnChangeAjaxBehavior | org.apache.wicket.ajax.form.OnChangeAjaxBehavior |
| AjaxFallbackLink<T> | org.apache.wicket.ajax.markup.html.AjaxFallbackLink |
| AjaxLink<T> | org.apache.wicket.ajax.markup.html.AjaxLink |
| AjaxButton | org.apache.wicket.ajax.markup.html.form.AjaxButton |
| AjaxCheckBox | org.apache.wicket.ajax.markup.html.form.AjaxCheckBox |
| AjaxFallbackButton | org.apache.wicket.ajax.markup.html.form.AjaxFallbackButton |
| AjaxSubmitLink | org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink |
| AuthorizationException | org.apache.wicket.authorization.AuthorizationException |
| AbstractPageAuthorizationStrategy | org.apache.wicket.authorization.strategies.page .AbstractPageAuthorizationStrategy |
| SimplePageAuthorizationStrategy | org.apache.wicket.authorization.strategies.page .SimplePageAuthorizationStrategy |
| ClientInfo | org.apache.wicket.core.request.ClientInfo |
| AbstractBookmarkableMapper | org.apache.wicket.core.request.mapper.AbstractBookmarkableMapper |
| AbstractComponentMapper | org.apache.wicket.core.request.mapper.AbstractComponentMapper |
| AbstractResourceReferenceMapper | org.apache.wicket.core.request.mapper.AbstractResourceReferenceMapper |
| PropertyResolver$AbstractGetAndSet | org.apache.wicket.core.util.lang.PropertyResolver$AbstractGetAndSet |
| AbstractObjectChecker | org.apache.wicket.core.util.objects.checker.AbstractObjectChecker |
| CheckingObjectOutputStream$ObjectOutputAdaptor | org.apache.wicket.core.util.objects.checker .CheckingObjectOutputStream$ObjectOutputAdaptor |
| AbstractResourceStreamReference | org.apache.wicket.core.util.resource.locator.caching .AbstractResourceStreamReference |
| AbstractMarkupParser | org.apache.wicket.markup.AbstractMarkupParser |
| MarkupElement | org.apache.wicket.markup.MarkupElement |
| AbstractHeaderRenderStrategy | org.apache.wicket.markup.renderStrategy.AbstractHeaderRenderStrategy |
| DeepChildFirstVisitor | org.apache.wicket.markup.renderStrategy.DeepChildFirstVisitor |
| AutoLinkResolver$AbstractAutolinkResolverDelegate | org.apache.wicket.markup.resolver .AutoLinkResolver$AbstractAutolinkResolverDelegate |
| AbstractOutputTransformerContainer | org.apache.wicket.markup.transformer .AbstractOutputTransformerContainer |
| AbstractTransformerBehavior | org.apache.wicket.markup.transformer.AbstractTransformerBehavior |
| CssHeaderItem | org.apache.wicket.markup.head.CssHeaderItem |
| HeaderItem | org.apache.wicket.markup.head.HeaderItem |
| JavaScriptHeaderItem | org.apache.wicket.markup.head.JavaScriptHeaderItem |
| AbstractHeaderResponseFilter | org.apache.wicket.markup.head.filter.AbstractHeaderResponseFilter |
| HeaderResponse | org.apache.wicket.markup.head.internal.HeaderResponse |
| DecoratingHeaderResponse | org.apache.wicket.markup.html.DecoratingHeaderResponse |
| Border | org.apache.wicket.markup.html.border.Border |
| BorderPanel | org.apache.wicket.markup.html.border.BorderPanel |
| ResponseBufferZone | org.apache.wicket.markup.html.internal.ResponseBufferZone |
| AbstractLink | org.apache.wicket.markup.html.link.AbstractLink |
| Link<T> | org.apache.wicket.markup.html.link.Link |
| StatelessLink<T> | org.apache.wicket.markup.html.link.StatelessLink |
| ListView<T> | org.apache.wicket.markup.html.list.ListView |
| Loop | org.apache.wicket.markup.html.list.Loop |
| PageableListView<T> | org.apache.wicket.markup.html.list.PageableListView |
| PropertyListView<T> | org.apache.wicket.markup.html.list.PropertyListView |
| AbstractErrorPage | org.apache.wicket.markup.html.pages.AbstractErrorPage |
| AbstractMarkupSourcingStrategy | org.apache.wicket.markup.html.panel.AbstractMarkupSourcingStrategy |
| AssociatedMarkupSourcingStrategy | org.apache.wicket.markup.html.panel.AssociatedMarkupSourcingStrategy |
| Panel | org.apache.wicket.markup.html.panel.Panel |
| AbstractCheckSelector | org.apache.wicket.markup.html.form.AbstractCheckSelector |
| AbstractChoice<T,E> | org.apache.wicket.markup.html.form.AbstractChoice |
| AbstractSingleSelectChoice<T> | org.apache.wicket.markup.html.form.AbstractSingleSelectChoice |
| AbstractSubmitLink | org.apache.wicket.markup.html.form.AbstractSubmitLink |
| AbstractTextComponent<T> | org.apache.wicket.markup.html.form.AbstractTextComponent |
| Form$ValidationVisitor | org.apache.wicket.markup.html.form.Form$ValidationVisitor |
| FormComponent<T> | org.apache.wicket.markup.html.form.FormComponent |
| FormComponentPanel<T> | org.apache.wicket.markup.html.form.FormComponentPanel |
| LabeledWebMarkupContainer | org.apache.wicket.markup.html.form.LabeledWebMarkupContainer |
| AbstractFormValidator | org.apache.wicket.markup.html.form.validation.AbstractFormValidator |
| BlobImageResource | org.apache.wicket.markup.html.image.resource.BlobImageResource |
| RenderedDynamicImageResource | org.apache.wicket.markup.html.image.resource .RenderedDynamicImageResource |
| AbstractMarkupFilter | org.apache.wicket.markup.parser.AbstractMarkupFilter |
| AbstractPageableView<T> | org.apache.wicket.markup.repeater.AbstractPageableView |
| AbstractRepeater | org.apache.wicket.markup.repeater.AbstractRepeater |
| RefreshingView<T> | org.apache.wicket.markup.repeater.RefreshingView |
| DataView<T> | org.apache.wicket.markup.repeater.data.DataView |
| DataViewBase<T> | org.apache.wicket.markup.repeater.data.DataViewBase |
| GridView<T> | org.apache.wicket.markup.repeater.data.GridView |
| ArrayIteratorAdapter<T> | org.apache.wicket.markup.repeater.util.ArrayIteratorAdapter |
| ModelIteratorAdapter<T> | org.apache.wicket.markup.repeater.util.ModelIteratorAdapter |
| AbstractPropertyModel<T> | org.apache.wicket.model.AbstractPropertyModel |
| AbstractReadOnlyModel<T> | org.apache.wicket.model.AbstractReadOnlyModel |
| AbstractWrapModel<T> | org.apache.wicket.model.AbstractWrapModel |
| ChainingModel<T> | org.apache.wicket.model.ChainingModel |
| LoadableDetachableModel<T> | org.apache.wicket.model.LoadableDetachableModel |
| GenericBaseModel<T> | org.apache.wicket.model.util.GenericBaseModel |
| AbstractRequestLogger | org.apache.wicket.protocol.http.AbstractRequestLogger |
| BufferedWebResponse$Action | org.apache.wicket.protocol.http.BufferedWebResponse$Action |
| BufferedWebResponse$MetaDataAction | org.apache.wicket.protocol.http.BufferedWebResponse$MetaDataAction |
| WebApplication | org.apache.wicket.protocol.http.WebApplication |
| AbstractRequestWrapperFactory | org.apache.wicket.protocol.http.servlet.AbstractRequestWrapperFactory |
| MultipartServletWebRequest | org.apache.wicket.protocol.http.servlet.MultipartServletWebRequest |
| AbstractRequestCycleListener | org.apache.wicket.request.cycle.AbstractRequestCycleListener |
| PageRenderer | org.apache.wicket.request.handler.render.PageRenderer |
Statistics
| Stat |
|---|
| Sum: |
| Average: |
| Minimum: |
| Maximum: |
| Standard deviation: |
| Variance: |
| Critical Rule warning: Use interfaces only to define types |
warnif count > 0
from t in Types where !t.IsThirdParty && t.IsInterface && t.NbMethods==0
select t
4 types matched
| types | Full Name |
|---|---|
| IRequestListener | org.apache.wicket.IRequestListener |
| IFeedback | org.apache.wicket.feedback.IFeedback |
| DocumentElement | org.apache.wicket.protocol.http.documentvalidation.DocumentElement |
| INullAcceptingValidator<T> | org.apache.wicket.validation.INullAcceptingValidator |
Statistics
| Stat |
|---|
| Sum: |
| Average: |
| Minimum: |
| Maximum: |
| Standard deviation: |
| Variance: |
| Critical Rule warning: Avoid using raw types |
warnif count > 0
let rawTypes = ThirdParty.Types.WithFullNameIn(
"java.util.Collection")
from m in Application.Methods.UsingAny(rawTypes)
select m
22 methods matched
| methods | Full Name |
|---|---|
| internalUnlockPages(Integer) | org.apache.wicket.page.PageAccessSynchronizer.internalUnlockPages (Integer) |
| detach(IRequestCycle) | org.apache.wicket.ajax.AbstractAjaxResponse.detach(IRequestCycle) |
| containsPage() | org.apache.wicket.ajax.AbstractAjaxResponse.containsPage() |
| writeEvaluations(Response,String,Collection) | org.apache.wicket.ajax.XmlAjaxResponse.writeEvaluations(Response ,String,Collection) |
| JSONArray(Collection) | org.apache.wicket.ajax.json.JSONArray.JSONArray(Collection) |
| getBehaviors() | org.apache.wicket.markup.ComponentTag.getBehaviors() |
| removeMarkupWhereBaseMarkupIsNoLongerInTheCache() | org.apache.wicket.markup.MarkupCache .removeMarkupWhereBaseMarkupIsNoLongerInTheCache() |
| onComponentTag(ComponentTag) | org.apache.wicket.markup.html.form.Check.onComponentTag(ComponentTag) |
| component(Check,IVisit) | org.apache.wicket.markup.html.form.CheckGroup$1.component(Check,IVisit ) |
| updateCollectionModel(FormComponent)<S> | org.apache.wicket.markup.html.form.FormComponent.updateCollectionModel (FormComponent)<S> |
| getModelValue() | org.apache.wicket.markup.html.form.ListMultipleChoice.getModelValue() |
| addRetainedDisabled(ArrayList) | org.apache.wicket.markup.html.form.ListMultipleChoice .addRetainedDisabled(ArrayList) |
| convertValue(String[]) | org.apache.wicket.markup.html.form.upload.MultiFileUploadField .convertValue(String[]) |
| onDetach() | org.apache.wicket.markup.html.form.upload.MultiFileUploadField .onDetach() |
| getLiveSessions() | org.apache.wicket.protocol.http.AbstractRequestLogger.getLiveSessions( ) |
| isCookiesEnabled() | org.apache.wicket.protocol.http.ClientProperties.isCookiesEnabled() |
| loadStringResource(Form,String,Locale,String,String) | org.apache.wicket.resource.loader.ValidatorStringResourceLoader .loadStringResource(Form,String,Locale,String,String) |
| replaceFilterSet(Collection) | org.apache.wicket.util.iterator.AbstractHierarchyIteratorWithFilter .replaceFilterSet(Collection) |
| executeListener(Component) | org.apache.wicket.util.tester.BaseWicketTester.executeListener (Component) |
| assertEquals(Collection,Collection) | org.apache.wicket.util.tester.WicketTesterHelper.assertEquals (Collection,Collection) |
| asLined(Collection) | org.apache.wicket.util.tester.WicketTesterHelper.asLined(Collection) |
| failWithVerboseMessage(Collection,Collection) | org.apache.wicket.util.tester.WicketTesterHelper .failWithVerboseMessage(Collection,Collection) |
Statistics
| Stat |
|---|
| Sum: |
| Average: |
| Minimum: |
| Maximum: |
| Standard deviation: |
| Variance: |
| Critical Rule warning: Do not raise generic exception |
warnif count > 0 from m in Methods
let depth0 = m.DepthOfCreateA("java.lang.Exception".AllowNoMatch())
where depth0 == 1
select new { m, depth0 }
2 methods matched
| methods | depth0 | Full Name |
|---|---|---|
| JSONException(String) | 1 | org.apache.wicket.ajax.json.JSONException.JSONException(String) |
| JSONException(Throwable) | 1 | org.apache.wicket.ajax.json.JSONException.JSONException(Throwable) |
Statistics
| Stat | depth0 |
|---|---|
| Sum: | 2 |
| Average: | 1 |
| Minimum: | 1 |
| Maximum: | 1 |
| Standard deviation: | 0 |
| Variance: | 0 |
| Dead Code | 030 |
|
| Rule warning: Potentially dead Types |
warnif count > 0
// Filter procedure for types that should'nt be considered as dead
let canTypeBeConsideredAsDeadProc = new Func<IType, bool>(
t => !t.IsPublic && // Public types might be used by client applications of your projects.
t.Name != "Program" &&
!t.IsGeneratedByCompiler
)
// Select types unused
let typesUnused =
from t in JustMyCode.Types where
t.NbTypesUsingMe == 0 && canTypeBeConsideredAsDeadProc(t)
select t
// Dead types = types used only by unused types (recursive)
let deadTypesMetric = typesUnused.FillIterative(
types => from t in codeBase.Application.Types.UsedByAny(types).Except(types)
where canTypeBeConsideredAsDeadProc(t) &&
t.TypesUsingMe.Intersect(types).Count() == t.NbTypesUsingMe
select t)
from t in deadTypesMetric.DefinitionDomain
select new { t, t.TypesUsingMe, depth = deadTypesMetric[t] }
2 types matched
| types | TypesUsingMe | depth | Full Name |
|---|---|---|---|
| BufferedHttpServletResponse | 0 type | 0 | org.apache.wicket.protocol.http.BufferedHttpServletResponse |
| BufferedWebResponse$CloseAction | 0 type | 0 | org.apache.wicket.protocol.http.BufferedWebResponse$CloseAction |
Statistics
| Stat | TypesUsingMe | depth |
|---|---|---|
| Sum: | 0 | 0 |
| Average: | 0 | 0 |
| Minimum: | 0 | 0 |
| Maximum: | 0 | 0 |
| Standard deviation: | 0 | 0 |
| Variance: | 0 | 0 |
| Rule warning: Potentially dead Methods |
warnif count > 0
// Filter procedure for methods that should'nt be considered as dead
let canMethodBeConsideredAsDeadProc = new Func<IMethod, bool>(
m => !m.IsPubliclyVisible && // Public methods might be used by client applications of your projects.
!m.IsEntryPoint && // Main() method is not used by-design.
!m.IsClassConstructor && // The BC code never explicitely calls class constructors.
!(m.IsConstructor && // Don't take account of protected ctor that might be call by a derived ctors.
m.IsProtected) &&
!m.IsGeneratedByCompiler)
// Get methods unused
let methodsUnused =
from m in JustMyCode.Methods where
m.NbMethodsCallingMe == 0 &&
canMethodBeConsideredAsDeadProc(m)
select m
// Dead methods = methods used only by unused methods (recursive)
let deadMethodsMetric = methodsUnused.FillIterative(
methods => // Unique loop, just to let a chance to build the hashset.
from o in (new object()).ToEnumerable()
// Use a hashet to make Intersect calls much faster!
let hashset = methods.ToHashSet()
from m in codeBase.Application.Methods.UsedByAny(methods).Except(methods)
where canMethodBeConsideredAsDeadProc(m) &&
// Select methods called only by methods already considered as dead
hashset.Intersect(m.MethodsCallingMe).Count() == m.NbMethodsCallingMe
select m)
from m in JustMyCode.Methods.Intersect(deadMethodsMetric.DefinitionDomain)
select new { m, m.MethodsCallingMe, depth = deadMethodsMetric[m] }
471 methods matched
| methods | MethodsCallingMe | depth | Full Name |
|---|---|---|---|
| onInstantiation(Component) | 0 method | 0 | org.apache.wicket.Application$1.onInstantiation(Component) |
| onDetach(RequestCycle) | 0 method | 0 | org.apache.wicket.Application$2.onDetach(RequestCycle) |
| onEndRequest(RequestCycle) | 0 method | 0 | org.apache.wicket.Application$2.onEndRequest(RequestCycle) |
| newValue(String,String) | 0 method | 0 | org.apache.wicket.AttributeModifier$1.newValue(String,String) |
| compare(Component,Object) | 0 method | 0 | org.apache.wicket.Component$3.compare(Component,Object) |
| getSource() | 0 method | 0 | org.apache.wicket.ComponentEvent.getSource() |
| getType() | 0 method | 0 | org.apache.wicket.ComponentEvent.getType() |
| getPayload() | 0 method | 0 | org.apache.wicket.ComponentEvent.getPayload() |
| dontBroadcastDeeper() | 0 method | 0 | org.apache.wicket.ComponentEvent.dontBroadcastDeeper() |
| stop() | 0 method | 0 | org.apache.wicket.ComponentEvent.stop() |
| convertToObject(String,Locale) | 0 method | 0 | org.apache.wicket.ConverterLocator$DefaultConverter.convertToObject (String,Locale) |
| convertToString(Object,Locale) | 0 method | 0 | org.apache.wicket.ConverterLocator$DefaultConverter.convertToString (Object,Locale) |
| hasNext() | 0 method | 0 | org.apache.wicket.MarkupContainer$1.hasNext() |
| remove() | 0 method | 0 | org.apache.wicket.MarkupContainer$1.remove() |
| size() | 0 method | 0 | org.apache.wicket.MarkupContainer$ChildList.size() |
| add(int,Object) | 0 method | 0 | org.apache.wicket.MarkupContainer$ChildList.add(int,Object) |
| createAndAddComponentsForWicketTags() | 0 method | 0 | org.apache.wicket.MarkupContainer.createAndAddComponentsForWicketTags( ) |
| getCompatibilityScore(Request) | 0 method | 0 | org.apache.wicket.RestartResponseAtInterceptPageException$1 .getCompatibilityScore(Request) |
| matchedData(Request) | 2 methods | 1 | org.apache.wicket.RestartResponseAtInterceptPageException$1 .matchedData(Request) |
| mapHandler(IRequestHandler) | 0 method | 0 | org.apache.wicket.RestartResponseAtInterceptPageException$1.mapHandler (IRequestHandler) |
| mapRequest(Request) | 0 method | 0 | org.apache.wicket.RestartResponseAtInterceptPageException$1.mapRequest (Request) |
| clear() | 1 method | 1 | org.apache.wicket .RestartResponseAtInterceptPageException$InterceptData.clear() |
| getOriginalUrl() | 0 method | 0 | org.apache.wicket .RestartResponseAtInterceptPageException$InterceptData.getOriginalUrl( ) |
| getPostParameters() | 0 method | 0 | org.apache.wicket .RestartResponseAtInterceptPageException$InterceptData .getPostParameters() |
| getResource() | 0 method | 0 | org.apache.wicket.SharedResources$AutoResourceReference.getResource() |
| onChange() | 0 method | 0 | org.apache.wicket.application.ReloadingClassLoader$1.onChange() |
| FencedFeedbackPanel$2$1(FencedFeedbackPanel$2,Component) | 1 method | 1 | org.apache.wicket.feedback.FencedFeedbackPanel$2$1 .FencedFeedbackPanel$2$1(FencedFeedbackPanel$2,Component) |
| shouldRecurseInto(Component) | 0 method | 0 | org.apache.wicket.feedback.FencedFeedbackPanel$2$1.shouldRecurseInto (Component) |
| FencedFeedbackPanel$2$2(FencedFeedbackPanel$2,Component) | 1 method | 1 | org.apache.wicket.feedback.FencedFeedbackPanel$2$2 .FencedFeedbackPanel$2$2(FencedFeedbackPanel$2,Component) |
| shouldRecurseInto(Component) | 0 method | 0 | org.apache.wicket.feedback.FencedFeedbackPanel$2$2.shouldRecurseInto (Component) |
| collectMessages(Component,IFeedbackMessageFilter) | 0 method | 0 | org.apache.wicket.feedback.FencedFeedbackPanel$2.collectMessages (Component,IFeedbackMessageFilter) |
| accept(FeedbackMessage) | 0 method | 0 | org.apache.wicket.feedback.IFeedbackMessageFilter$1.accept (FeedbackMessage) |
| accept(FeedbackMessage) | 0 method | 0 | org.apache.wicket.feedback.IFeedbackMessageFilter$2.accept (FeedbackMessage) |
| getPage(int) | 0 method | 0 | org.apache.wicket.page.PageAccessSynchronizer$2.getPage(int) |
| touchPage(IManageablePage) | 0 method | 0 | org.apache.wicket.page.PageAccessSynchronizer$2.touchPage (IManageablePage) |
| commitRequest() | 0 method | 0 | org.apache.wicket.page.PageAccessSynchronizer$2.commitRequest() |
| writeObject(ObjectOutputStream) | 0 method | 0 | org.apache.wicket.page.PageStoreManager$SessionEntry.writeObject (ObjectOutputStream) |
| readObject(ObjectInputStream) | 0 method | 0 | org.apache.wicket.page.PageStoreManager$SessionEntry.readObject (ObjectInputStream) |
| render(HeaderItem) | 0 method | 0 | org.apache.wicket.ajax.AbstractAjaxResponse$AjaxHeaderResponse.render (HeaderItem) |
| getRealResponse() | 0 method | 0 | org.apache.wicket.ajax.AbstractAjaxResponse$AjaxHeaderResponse .getRealResponse() |
| newHeaderResponse() | 0 method | 0 | org.apache.wicket.ajax.AbstractAjaxResponse$AjaxHtmlHeaderContainer .newHeaderResponse() |
| AjaxRequestHandler$1$1(AjaxRequestHandler$1,Response) | 1 method | 1 | org.apache.wicket.ajax.AjaxRequestHandler$1$1.AjaxRequestHandler$1$1 (AjaxRequestHandler$1,Response) |
| addJavaScript(String) | 0 method | 0 | org.apache.wicket.ajax.AjaxRequestHandler$1$1.addJavaScript(String) |
| fireOnAfterRespondListeners(Response) | 0 method | 0 | org.apache.wicket.ajax.AjaxRequestHandler$1 .fireOnAfterRespondListeners(Response) |
| fireOnBeforeRespondListeners() | 0 method | 0 | org.apache.wicket.ajax.AjaxRequestHandler$1 .fireOnBeforeRespondListeners() |
| WicketAjaxDebugJQueryResourceReference() | 0 method | 0 | org.apache.wicket.ajax.WicketAjaxDebugJQueryResourceReference .WicketAjaxDebugJQueryResourceReference() |
| WicketAjaxJQueryResourceReference() | 0 method | 0 | org.apache.wicket.ajax.WicketAjaxJQueryResourceReference .WicketAjaxJQueryResourceReference() |
| WicketEventJQueryResourceReference() | 0 method | 0 | org.apache.wicket.ajax.WicketEventJQueryResourceReference .WicketEventJQueryResourceReference() |
| getPrecondition(Component) | 0 method | 0 | org.apache.wicket.ajax.form.AjaxFormChoiceComponentUpdatingBehavior$1 .getPrecondition(Component) |
| getForm() | 0 method | 0 | org.apache.wicket.ajax.form.AjaxFormSubmitBehavior$1.getForm() |
| getDefaultFormProcessing() | 0 method | 0 | org.apache.wicket.ajax.form.AjaxFormSubmitBehavior$1 .getDefaultFormProcessing() |
| onError() | 0 method | 0 | org.apache.wicket.ajax.form.AjaxFormSubmitBehavior$1.onError() |
| onSubmit() | 0 method | 0 | org.apache.wicket.ajax.form.AjaxFormSubmitBehavior$1.onSubmit() |
| onAfterSubmit() | 0 method | 0 | org.apache.wicket.ajax.form.AjaxFormSubmitBehavior$1.onAfterSubmit() |
| updateAjaxAttributes(AjaxRequestAttributes) | 0 method | 0 | org.apache.wicket.ajax.form .AjaxFormValidatingBehavior$FormValidateVisitor$1.updateAjaxAttributes (AjaxRequestAttributes) |
| clone() | 0 method | 0 | org.apache.wicket.ajax.json.JSONObject$Null.clone() |
| equals(Object) | 0 method | 0 | org.apache.wicket.ajax.json.JSONObject$Null.equals(Object) |
| toString() | 0 method | 0 | org.apache.wicket.ajax.json.JSONObject$Null.toString() |
| JsonUtils() | 0 method | 0 | org.apache.wicket.ajax.json.JsonUtils.JsonUtils() |
| onEvent(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.AjaxFallbackLink$1.onEvent (AjaxRequestTarget) |
| onComponentTag(ComponentTag) | 0 method | 0 | org.apache.wicket.ajax.markup.html.AjaxFallbackLink$1.onComponentTag (ComponentTag) |
| getChannel() | 0 method | 0 | org.apache.wicket.ajax.markup.html.AjaxFallbackLink$1.getChannel() |
| updateAjaxAttributes(AjaxRequestAttributes) | 0 method | 0 | org.apache.wicket.ajax.markup.html.AjaxFallbackLink$1 .updateAjaxAttributes(AjaxRequestAttributes) |
| onEvent(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.AjaxLink$1.onEvent (AjaxRequestTarget) |
| updateAjaxAttributes(AjaxRequestAttributes) | 0 method | 0 | org.apache.wicket.ajax.markup.html.AjaxLink$1.updateAjaxAttributes (AjaxRequestAttributes) |
| onSubmit(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxButton$1.onSubmit (AjaxRequestTarget) |
| onAfterSubmit(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxButton$1.onAfterSubmit (AjaxRequestTarget) |
| onError(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxButton$1.onError (AjaxRequestTarget) |
| getChannel() | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxButton$1.getChannel() |
| updateAjaxAttributes(AjaxRequestAttributes) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxButton$1 .updateAjaxAttributes(AjaxRequestAttributes) |
| getDefaultProcessing() | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxButton$1 .getDefaultProcessing() |
| updateAjaxAttributes(AjaxRequestAttributes) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxCheckBox$1 .updateAjaxAttributes(AjaxRequestAttributes) |
| onUpdate(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxCheckBox$1.onUpdate (AjaxRequestTarget) |
| onSubmit(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxFallbackButton$1.onSubmit (AjaxRequestTarget) |
| onAfterSubmit(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxFallbackButton$1 .onAfterSubmit(AjaxRequestTarget) |
| onError(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxFallbackButton$1.onError (AjaxRequestTarget) |
| getChannel() | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxFallbackButton$1 .getChannel() |
| getDefaultProcessing() | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxFallbackButton$1 .getDefaultProcessing() |
| updateAjaxAttributes(AjaxRequestAttributes) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxFallbackButton$1 .updateAjaxAttributes(AjaxRequestAttributes) |
| onError(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1.onError (AjaxRequestTarget) |
| findForm() | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1.findForm() |
| onComponentTag(ComponentTag) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1 .onComponentTag(ComponentTag) |
| getDefaultProcessing() | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1 .getDefaultProcessing() |
| updateAjaxAttributes(AjaxRequestAttributes) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1 .updateAjaxAttributes(AjaxRequestAttributes) |
| onSubmit(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1.onSubmit (AjaxRequestTarget) |
| onAfterSubmit(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1.onAfterSubmit (AjaxRequestTarget) |
| updateAjaxAttributes(AjaxRequestAttributes) | 0 method | 0 | org.apache.wicket.ajax.markup.html.navigation.paging .AjaxPagingNavigationIncrementLink$1.updateAjaxAttributes (AjaxRequestAttributes) |
| updateAjaxAttributes(AjaxRequestAttributes) | 0 method | 0 | org.apache.wicket.ajax.markup.html.navigation.paging .AjaxPagingNavigationLink$1.updateAjaxAttributes(AjaxRequestAttributes ) |
| isInstantiationAuthorized(Class) | 0 method | 0 | org.apache.wicket.authorization.IAuthorizationStrategy$1 .isInstantiationAuthorized(Class) |
| isActionAuthorized(Component,Action) | 0 method | 0 | org.apache.wicket.authorization.IAuthorizationStrategy$1 .isActionAuthorized(Component,Action) |
| onUnauthorizedInstantiation(Component) | 0 method | 0 | org.apache.wicket.authorization.strategies.page .SimplePageAuthorizationStrategy$1.onUnauthorizedInstantiation (Component) |
| toString() | 0 method | 0 | org.apache.wicket.core.request.mapper.MountedMapper$MountPathSegment .toString() |
| EmptyAjaxRequestHandler() | 0 method | 0 | org.apache.wicket.core.request.handler.EmptyAjaxRequestHandler .EmptyAjaxRequestHandler() |
| SerializableChecker$WicketNotSerializableException(String,Throwable) | 0 method | 0 | org.apache.wicket.core.util.io .SerializableChecker$WicketNotSerializableException .SerializableChecker$WicketNotSerializableException(String,Throwable) |
| getField() | 0 method | 0 | org.apache.wicket.core.util.lang.PropertyResolver$AbstractGetAndSet .getField() |
| getGetter() | 0 method | 0 | org.apache.wicket.core.util.lang.PropertyResolver$AbstractGetAndSet .getGetter() |
| getSetter() | 0 method | 0 | org.apache.wicket.core.util.lang.PropertyResolver$AbstractGetAndSet .getSetter() |
| getTargetClass() | 0 method | 0 | org.apache.wicket.core.util.lang.PropertyResolver$AbstractGetAndSet .getTargetClass() |
| getValue(Object) | 0 method | 0 | org.apache.wicket.core.util.lang.PropertyResolver$ArrayGetSet.getValue (Object) |
| setValue(Object,Object,PropertyResolverConverter) | 0 method | 0 | org.apache.wicket.core.util.lang.PropertyResolver$ArrayGetSet.setValue (Object,Object,PropertyResolverConverter) |
Statistics
| Stat | MethodsCallingMe | depth |
|---|---|---|
| Sum: | 0 | 36 |
| Average: | 0 | 0.076 |
| Minimum: | 0 | 0 |
| Maximum: | 0 | 2 |
| Standard deviation: | 0 | 0.31 |
| Variance: | 0 | 0.096 |
| Rule warning: Potentially dead Fields |
warnif count > 0
from f in JustMyCode.Fields where
f.NbMethodsUsingMe == 0 &&
!f.IsPublic && // Although not recommended, public fields might be used by client applications of your projects.
!f.IsLiteral && // The BC code never explicitely uses literal fields.
!f.IsEnumValue // The BC code never explicitely uses enumeration value.
select f
575 fields matched
| fields | Full Name |
|---|---|
| serialVersionUID | org.apache.wicket.AttributeModifier$1.serialVersionUID |
| serialVersionUID | org.apache.wicket.AttributeModifier.serialVersionUID |
| serialVersionUID | org.apache.wicket.Behaviors$BehaviorIdList.serialVersionUID |
| serialVersionUID | org.apache.wicket.Behaviors.serialVersionUID |
| serialVersionUID | org.apache.wicket.Component$1.serialVersionUID |
| serialVersionUID | org.apache.wicket.Component$2.serialVersionUID |
| serialVersionUID | org.apache.wicket.Component$3.serialVersionUID |
| serialVersionUID | org.apache.wicket.Component$4.serialVersionUID |
| serialVersionUID | org.apache.wicket.Component$5.serialVersionUID |
| serialVersionUID | org.apache.wicket.Component$6.serialVersionUID |
| serialVersionUID | org.apache.wicket.Component.serialVersionUID |
| FLAG_UNUSED0 | org.apache.wicket.Component.FLAG_UNUSED0 |
| FLAG_UNUSED1 | org.apache.wicket.Component.FLAG_UNUSED1 |
| FLAG_UNUSED2 | org.apache.wicket.Component.FLAG_UNUSED2 |
| FLAG_UNUSED3 | org.apache.wicket.Component.FLAG_UNUSED3 |
| FLAG_AUTO | org.apache.wicket.Component.FLAG_AUTO |
| FLAG_ESCAPE_MODEL_STRINGS | org.apache.wicket.Component.FLAG_ESCAPE_MODEL_STRINGS |
| FLAG_VERSIONED | org.apache.wicket.Component.FLAG_VERSIONED |
| FLAG_VISIBLE | org.apache.wicket.Component.FLAG_VISIBLE |
| FLAG_RENDER_BODY_ONLY | org.apache.wicket.Component.FLAG_RENDER_BODY_ONLY |
| FLAG_IGNORE_ATTRIBUTE_MODIFIER | org.apache.wicket.Component.FLAG_IGNORE_ATTRIBUTE_MODIFIER |
| FLAG_ENABLED | org.apache.wicket.Component.FLAG_ENABLED |
| FLAG_RESERVED1 | org.apache.wicket.Component.FLAG_RESERVED1 |
| FLAG_RESERVED2 | org.apache.wicket.Component.FLAG_RESERVED2 |
| FLAG_RESERVED3 | org.apache.wicket.Component.FLAG_RESERVED3 |
| FLAG_RESERVED4 | org.apache.wicket.Component.FLAG_RESERVED4 |
| FLAG_HAS_BEEN_RENDERED | org.apache.wicket.Component.FLAG_HAS_BEEN_RENDERED |
| FLAG_IS_RENDER_ALLOWED | org.apache.wicket.Component.FLAG_IS_RENDER_ALLOWED |
| FLAG_OUTPUT_MARKUP_ID | org.apache.wicket.Component.FLAG_OUTPUT_MARKUP_ID |
| FLAG_PLACEHOLDER | org.apache.wicket.Component.FLAG_PLACEHOLDER |
| FLAG_RESERVED5 | org.apache.wicket.Component.FLAG_RESERVED5 |
| FLAG_INITIALIZED | org.apache.wicket.Component.FLAG_INITIALIZED |
| FLAG_NOTUSED7 | org.apache.wicket.Component.FLAG_NOTUSED7 |
| FLAG_RESERVED8 | org.apache.wicket.Component.FLAG_RESERVED8 |
| FLAG_MODEL_SET | org.apache.wicket.Component.FLAG_MODEL_SET |
| FLAG_REMOVING_FROM_HIERARCHY | org.apache.wicket.Component.FLAG_REMOVING_FROM_HIERARCHY |
| FLAG_RENDERING | org.apache.wicket.Component.FLAG_RENDERING |
| FLAG_PREPARED_FOR_RENDER | org.apache.wicket.Component.FLAG_PREPARED_FOR_RENDER |
| FLAG_AFTER_RENDERING | org.apache.wicket.Component.FLAG_AFTER_RENDERING |
| FLAG_VISIBILITY_ALLOWED | org.apache.wicket.Component.FLAG_VISIBILITY_ALLOWED |
| FLAG_DETACHING | org.apache.wicket.Component.FLAG_DETACHING |
| MARKUP_ID_ATTR_NAME | org.apache.wicket.Component.MARKUP_ID_ATTR_NAME |
| RFLAG_ENABLED_IN_HIERARCHY_VALUE | org.apache.wicket.Component.RFLAG_ENABLED_IN_HIERARCHY_VALUE |
| RFLAG_ENABLED_IN_HIERARCHY_SET | org.apache.wicket.Component.RFLAG_ENABLED_IN_HIERARCHY_SET |
| RFLAG_VISIBLE_IN_HIEARARCHY_VALUE | org.apache.wicket.Component.RFLAG_VISIBLE_IN_HIEARARCHY_VALUE |
| RFLAG_VISIBLE_IN_HIERARCHY_SET | org.apache.wicket.Component.RFLAG_VISIBLE_IN_HIERARCHY_SET |
| RFLAG_CONFIGURED | org.apache.wicket.Component.RFLAG_CONFIGURED |
| RFLAG_BEFORE_RENDER_SUPER_CALL_VERIFIED | org.apache.wicket.Component.RFLAG_BEFORE_RENDER_SUPER_CALL_VERIFIED |
| RFLAG_INITIALIZE_SUPER_CALL_VERIFIED | org.apache.wicket.Component.RFLAG_INITIALIZE_SUPER_CALL_VERIFIED |
| serialVersionUID | org.apache.wicket.ConverterLocator$DefaultConverter.serialVersionUID |
| serialVersionUID | org.apache.wicket.ConverterLocator.serialVersionUID |
| NULL_VALUE | org.apache.wicket.Localizer.NULL_VALUE |
| serialVersionUID | org.apache.wicket.MarkupContainer$ChildList.serialVersionUID |
| serialVersionUID | org.apache.wicket.MarkupContainer.serialVersionUID |
| serialVersionUID | org.apache.wicket.MetaDataEntry.serialVersionUID |
| serialVersionUID | org.apache.wicket.MetaDataKey.serialVersionUID |
| serialVersionUID | org.apache.wicket.NonResettingRestartException.serialVersionUID |
| FLAG_IS_DIRTY | org.apache.wicket.Page.FLAG_IS_DIRTY |
| FLAG_PREVENT_DIRTY | org.apache.wicket.Page.FLAG_PREVENT_DIRTY |
| FLAG_STATELESS_HINT | org.apache.wicket.Page.FLAG_STATELESS_HINT |
| FLAG_WAS_CREATED_BOOKMARKABLE | org.apache.wicket.Page.FLAG_WAS_CREATED_BOOKMARKABLE |
| serialVersionUID | org.apache.wicket.Page.serialVersionUID |
| serialVersionUID | org.apache.wicket.PageReference.serialVersionUID |
| serialVersionUID | org.apache.wicket .RestartResponseAtInterceptPageException$InterceptData$1 .serialVersionUID |
| serialVersionUID | org.apache.wicket .RestartResponseAtInterceptPageException$InterceptData .serialVersionUID |
| serialVersionUID | org.apache.wicket.RestartResponseAtInterceptPageException .serialVersionUID |
| serialVersionUID | org.apache.wicket.RestartResponseException.serialVersionUID |
| serialVersionUID | org.apache.wicket.Session$PageAccessSynchronizerProvider .serialVersionUID |
| serialVersionUID | org.apache.wicket.Session.serialVersionUID |
| serialVersionUID | org.apache.wicket.SharedResources$AutoResourceReference .serialVersionUID |
| serialVersionUID | org.apache.wicket.WicketRuntimeException.serialVersionUID |
| serialVersionUID | org.apache.wicket.application .ComponentInitializationListenerCollection.serialVersionUID |
| serialVersionUID | org.apache.wicket.application.ComponentInstantiationListenerCollection .serialVersionUID |
| serialVersionUID | org.apache.wicket.application.ComponentOnAfterRenderListenerCollection .serialVersionUID |
| serialVersionUID | org.apache.wicket.application .ComponentOnBeforeRenderListenerCollection.serialVersionUID |
| serialVersionUID | org.apache.wicket.application.HeaderContributorListenerCollection .serialVersionUID |
| serialVersionUID | org.apache.wicket.behavior.AbstractAjaxBehavior.serialVersionUID |
| serialVersionUID | org.apache.wicket.behavior.AttributeAppender.serialVersionUID |
| serialVersionUID | org.apache.wicket.behavior.Behavior.serialVersionUID |
| serialVersionUID | org.apache.wicket.behavior.InvalidBehaviorIdException.serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.ComponentFeedbackMessageFilter .serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.ContainerFeedbackMessageFilter .serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.DefaultCleanupFeedbackMessageFilter .serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.ErrorLevelFeedbackMessageFilter .serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.FeedbackMessage.serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.FeedbackMessages.serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.FeedbackMessagesModel.serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.FencedFeedbackPanel$1.serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.FencedFeedbackPanel$2.serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.FencedFeedbackPanel.serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.IFeedbackMessageFilter$1.serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.IFeedbackMessageFilter$2.serialVersionUID |
| serialVersionUID | org.apache.wicket.mock.MockHomePage.serialVersionUID |
| serialVersionUID | org.apache.wicket.page.CouldNotLockPageException.serialVersionUID |
| serialVersionUID | org.apache.wicket.page.DefaultPageManagerContext$1.serialVersionUID |
| serialVersionUID | org.apache.wicket.page.PageAccessSynchronizer$1.serialVersionUID |
| serialVersionUID | org.apache.wicket.page.PageAccessSynchronizer.serialVersionUID |
| ATTRIBUTE_NAME | org.apache.wicket.page.PageStoreManager$PersistentRequestAdapter .ATTRIBUTE_NAME |
| serialVersionUID | org.apache.wicket.page.PageStoreManager$SessionEntry.serialVersionUID |
| serialVersionUID | org.apache.wicket.session.HttpSessionStore$SessionBindingListener .serialVersionUID |
Statistics
| Stat |
|---|
| Sum: |
| Average: |
| Minimum: |
| Maximum: |
| Standard deviation: |
| Variance: |
| Visibility | 040 |
|
| Rule warning: Methods that could have a lower visibility |
warnif count > 0 from m in JustMyCode.Methods where
m.Visibility != m.OptimalVisibility &&
// Eliminate default constructor from the result.
// Whatever the visibility of the declaring class,
// default constructors are public and introduce noise
// in the current rule.
!( m.IsConstructor && m.IsPublic && m.NbParameters == 0) &&
// Don't decrease the visibility of Main() methods.
!m.IsEntryPoint
select new { m,
m.Visibility ,
CouldBeDeclared = m.OptimalVisibility,
m.MethodsCallingMe }
5,781 methods matched
| methods | Visibility | CouldBeDeclared | MethodsCallingMe | Full Name |
|---|---|---|---|---|
| Application$1(Application) | Public | Internal | 1 method | org.apache.wicket.Application$1.Application$1(Application) |
| onInstantiation(Component) | Public | Private | 0 method | org.apache.wicket.Application$1.onInstantiation(Component) |
| Application$2(Application) | Public | Internal | 1 method | org.apache.wicket.Application$2.Application$2(Application) |
| onDetach(RequestCycle) | Public | Private | 0 method | org.apache.wicket.Application$2.onDetach(RequestCycle) |
| onEndRequest(RequestCycle) | Public | Private | 0 method | org.apache.wicket.Application$2.onEndRequest(RequestCycle) |
| get(RequestCycleContext) | Public | Private | 1 method | org.apache.wicket.Application$DefaultRequestCycleProvider.get (RequestCycleContext) |
| getRequestCycleSettings() | Public | Internal | 18 methods | org.apache.wicket.Application.getRequestCycleSettings() |
| get() | Public | Internal | 122 methods | org.apache.wicket.Application.get() |
| usesDevelopmentConfig() | Public | Internal | 6 methods | org.apache.wicket.Application.usesDevelopmentConfig() |
| exists() | Public | Internal | 35 methods | org.apache.wicket.Application.exists() |
| getJavaScriptLibrarySettings() | Public | Internal | 9 methods | org.apache.wicket.Application.getJavaScriptLibrarySettings() |
| getSecuritySettings() | Public | Internal | 7 methods | org.apache.wicket.Application.getSecuritySettings() |
| getRequestLogger() | Public | Internal | 11 methods | org.apache.wicket.Application.getRequestLogger() |
| get(String) | Public | Internal | 3 methods | org.apache.wicket.Application.get(String) |
| getApplicationKeys() | Public | Private | 0 method | org.apache.wicket.Application.getApplicationKeys() |
| getComponentInstantiationListeners() | Public | Internal | 2 methods | org.apache.wicket.Application.getComponentInstantiationListeners() |
| getConfigurationType() | Public | Private | 3 methods | org.apache.wicket.Application.getConfigurationType() |
| getResourceSettings() | Public | Internal | 56 methods | org.apache.wicket.Application.getResourceSettings() |
| getMarkupSettings() | Public | Internal | 13 methods | org.apache.wicket.Application.getMarkupSettings() |
| getExceptionSettings() | Public | Internal | 5 methods | org.apache.wicket.Application.getExceptionSettings() |
| getDebugSettings() | Public | Internal | 17 methods | org.apache.wicket.Application.getDebugSettings() |
| getApplicationKey() | Public | Internal | 3 methods | org.apache.wicket.Application.getApplicationKey() |
| getHomePage() | Public | Internal | 3 methods | org.apache.wicket.Application.getHomePage() |
| getConverterLocator() | Public | Internal | 4 methods | org.apache.wicket.Application.getConverterLocator() |
| getMetaData(MetaDataKey) | Public | Private | 0 method | org.apache.wicket.Application.getMetaData(MetaDataKey) |
| getName() | Public | Internal | 9 methods | org.apache.wicket.Application.getName() |
| getRequestLoggerSettings() | Public | Internal | 4 methods | org.apache.wicket.Application.getRequestLoggerSettings() |
| newRequestLogger() | Protected | Private | 1 method | org.apache.wicket.Application.newRequestLogger() |
| getSessionStore() | Public | Internal | 8 methods | org.apache.wicket.Application.getSessionStore() |
| internalGetPageManager() | Public | Internal | 4 methods | org.apache.wicket.Application.internalGetPageManager() |
| initializeComponents() | Public | Private | 1 method | org.apache.wicket.Application.initializeComponents() |
| getApplicationSettings() | Public | Internal | 18 methods | org.apache.wicket.Application.getApplicationSettings() |
| newSession(Request,Response) | Public | Private | 1 method | org.apache.wicket.Application.newSession(Request,Response) |
| onDestroy() | Protected | Private | 1 method | org.apache.wicket.Application.onDestroy() |
| getFrameworkSettings() | Public | Internal | 6 methods | org.apache.wicket.Application.getFrameworkSettings() |
| getPageSettings() | Public | Internal | 6 methods | org.apache.wicket.Application.getPageSettings() |
| newConverterLocator() | Protected | Private | 1 method | org.apache.wicket.Application.newConverterLocator() |
| newResourceReferenceRegistry() | Protected | Private | 1 method | org.apache.wicket.Application.newResourceReferenceRegistry() |
| newSharedResources(ResourceReferenceRegistry) | Protected | Private | 1 method | org.apache.wicket.Application.newSharedResources (ResourceReferenceRegistry) |
| newResourceBundles(ResourceReferenceRegistry) | Protected | Private | 1 method | org.apache.wicket.Application.newResourceBundles (ResourceReferenceRegistry) |
| setRootRequestMapper(IRequestMapper) | Public | Private | 2 methods | org.apache.wicket.Application.setRootRequestMapper(IRequestMapper) |
| newPageFactory() | Protected | Private | 1 method | org.apache.wicket.Application.newPageFactory() |
| getRequestCycleListeners() | Public | Private | 1 method | org.apache.wicket.Application.getRequestCycleListeners() |
| getExceptionMapperProvider() | Public | Private | 1 method | org.apache.wicket.Application.getExceptionMapperProvider() |
| getSessionStoreProvider() | Public | Private | 1 method | org.apache.wicket.Application.getSessionStoreProvider() |
| getRootRequestMapper() | Public | Internal | 5 methods | org.apache.wicket.Application.getRootRequestMapper() |
| initApplication() | Public | Internal | 2 methods | org.apache.wicket.Application.initApplication() |
| validateInit() | Protected | Private | 1 method | org.apache.wicket.Application.validateInit() |
| getPageRendererProvider() | Public | Internal | 3 methods | org.apache.wicket.Application.getPageRendererProvider() |
| getPageManagerProvider() | Public | Private | 1 method | org.apache.wicket.Application.getPageManagerProvider() |
| setName(String) | Public | Internal | 2 methods | org.apache.wicket.Application.setName(String) |
| getMimeType(String) | Public | Internal | 5 methods | org.apache.wicket.Application.getMimeType(String) |
| onEvent(IEvent) | Public | Private | 0 method | org.apache.wicket.Application.onEvent(IEvent) |
| getHeaderContributorListenerCollection() | Public | Internal | 1 method | org.apache.wicket.Application.getHeaderContributorListenerCollection() |
| getInitializers() | Public | Internal | 1 method | org.apache.wicket.Application.getInitializers() |
| getApplicationListeners() | Public | Private | 0 method | org.apache.wicket.Application.getApplicationListeners() |
| getSessionListeners() | Public | Private | 0 method | org.apache.wicket.Application.getSessionListeners() |
| getBehaviorInstantiationListeners() | Public | Internal | 1 method | org.apache.wicket.Application.getBehaviorInstantiationListeners() |
| getComponentInitializationListeners() | Public | Internal | 1 method | org.apache.wicket.Application.getComponentInitializationListeners() |
| getComponentPreOnBeforeRenderListeners() | Public | Internal | 1 method | org.apache.wicket.Application.getComponentPreOnBeforeRenderListeners() |
| getComponentPostOnBeforeRenderListeners() | Public | Internal | 1 method | org.apache.wicket.Application.getComponentPostOnBeforeRenderListeners( ) |
| getComponentOnAfterRenderListeners() | Public | Internal | 1 method | org.apache.wicket.Application.getComponentOnAfterRenderListeners() |
| setApplicationSettings(IApplicationSettings) | Public | Private | 0 method | org.apache.wicket.Application.setApplicationSettings (IApplicationSettings) |
| setJavaScriptLibrarySettings(IJavaScriptLibrarySettings) | Public | Private | 0 method | org.apache.wicket.Application.setJavaScriptLibrarySettings (IJavaScriptLibrarySettings) |
| setDebugSettings(IDebugSettings) | Public | Private | 0 method | org.apache.wicket.Application.setDebugSettings(IDebugSettings) |
| setExceptionSettings(IExceptionSettings) | Public | Private | 0 method | org.apache.wicket.Application.setExceptionSettings(IExceptionSettings) |
| setFrameworkSettings(IFrameworkSettings) | Public | Private | 0 method | org.apache.wicket.Application.setFrameworkSettings(IFrameworkSettings) |
| setPageSettings(IPageSettings) | Public | Private | 0 method | org.apache.wicket.Application.setPageSettings(IPageSettings) |
| setRequestCycleSettings(IRequestCycleSettings) | Public | Private | 0 method | org.apache.wicket.Application.setRequestCycleSettings (IRequestCycleSettings) |
| setMarkupSettings(IMarkupSettings) | Public | Private | 0 method | org.apache.wicket.Application.setMarkupSettings(IMarkupSettings) |
| setRequestLoggerSettings(IRequestLoggerSettings) | Public | Private | 0 method | org.apache.wicket.Application.setRequestLoggerSettings (IRequestLoggerSettings) |
| setResourceSettings(IResourceSettings) | Public | Private | 0 method | org.apache.wicket.Application.setResourceSettings(IResourceSettings) |
| setSecuritySettings(ISecuritySettings) | Public | Private | 0 method | org.apache.wicket.Application.setSecuritySettings(ISecuritySettings) |
| getStoreSettings() | Public | Internal | 1 method | org.apache.wicket.Application.getStoreSettings() |
| setStoreSettings(IStoreSettings) | Public | Private | 0 method | org.apache.wicket.Application.setStoreSettings(IStoreSettings) |
| getPageManagerContext() | Protected | Private | 1 method | org.apache.wicket.Application.getPageManagerContext() |
| setPageRendererProvider(IPageRendererProvider) | Public | Internal | 2 methods | org.apache.wicket.Application.setPageRendererProvider (IPageRendererProvider) |
| getResourceReferenceRegistry() | Public | Internal | 8 methods | org.apache.wicket.Application.getResourceReferenceRegistry() |
| getSharedResources() | Public | Private | 0 method | org.apache.wicket.Application.getSharedResources() |
| getResourceBundles() | Public | Internal | 3 methods | org.apache.wicket.Application.getResourceBundles() |
| getPageFactory() | Public | Internal | 4 methods | org.apache.wicket.Application.getPageFactory() |
| getMapperContext() | Public | Internal | 3 methods | org.apache.wicket.Application.getMapperContext() |
| newMapperContext() | Protected | Private | 1 method | org.apache.wicket.Application.newMapperContext() |
| fetchCreateAndSetSession(RequestCycle) | Public | Internal | 1 method | org.apache.wicket.Application.fetchCreateAndSetSession(RequestCycle) |
| getRequestCycleProvider() | Public | Internal | 2 methods | org.apache.wicket.Application.getRequestCycleProvider() |
| setRequestCycleProvider(IRequestCycleProvider) | Public | Internal | 1 method | org.apache.wicket.Application.setRequestCycleProvider (IRequestCycleProvider) |
| createRequestCycle(Request,Response) | Public | Internal | 2 methods | org.apache.wicket.Application.createRequestCycle(Request,Response) |
| setHeaderResponseDecorator(IHeaderResponseDecorator) | Public | Private | 0 method | org.apache.wicket.Application.setHeaderResponseDecorator (IHeaderResponseDecorator) |
| decorateHeaderResponse(IHeaderResponse) | Public | Internal | 1 method | org.apache.wicket.Application.decorateHeaderResponse(IHeaderResponse) |
| usesDeploymentConfig() | Public | Internal | 1 method | org.apache.wicket.Application.usesDeploymentConfig() |
| ApplicationListenerCollection$1(ApplicationListenerCollection ,Application) | Public | Internal | 1 method | org.apache.wicket.ApplicationListenerCollection$1 .ApplicationListenerCollection$1(ApplicationListenerCollection ,Application) |
| notify(IApplicationListener) | Public | Private | 1 method | org.apache.wicket.ApplicationListenerCollection$1.notify (IApplicationListener) |
| ApplicationListenerCollection$2(ApplicationListenerCollection ,Application) | Public | Internal | 1 method | org.apache.wicket.ApplicationListenerCollection$2 .ApplicationListenerCollection$2(ApplicationListenerCollection ,Application) |
| notify(IApplicationListener) | Public | Private | 1 method | org.apache.wicket.ApplicationListenerCollection$2.notify (IApplicationListener) |
| onBeforeDestroyed(Application) | Public | Internal | 1 method | org.apache.wicket.ApplicationListenerCollection.onBeforeDestroyed (Application) |
| onAfterInitialized(Application) | Public | Internal | 1 method | org.apache.wicket.ApplicationListenerCollection.onAfterInitialized (Application) |
| AttributeModifier$1(String,IModel) | Public | Internal | 1 method | org.apache.wicket.AttributeModifier$1.AttributeModifier$1(String ,IModel) |
| newValue(String,String) | Protected | Private | 0 method | org.apache.wicket.AttributeModifier$1.newValue(String,String) |
| AttributeModifier(String,boolean,IModel) | Public | Private | 0 method | org.apache.wicket.AttributeModifier.AttributeModifier(String,boolean ,IModel) |
| AttributeModifier(String,IModel) | Public | Internal | 6 methods | org.apache.wicket.AttributeModifier.AttributeModifier(String,IModel) |
Statistics
| Stat | Visibility | CouldBeDeclared | MethodsCallingMe |
|---|---|---|---|
| Sum: | 0 | 0 | 0 |
| Average: | 0 | 0 | 0 |
| Minimum: | 0 | 0 | 0 |
| Maximum: | 0 | 0 | 0 |
| Standard deviation: | 0 | 0 | 0 |
| Variance: | 0 | 0 | 0 |
| Rule warning: Fields that could have a lower visibility |
warnif count > 0 from f in JustMyCode.Fields where
f.Visibility != f.OptimalVisibility
select new { f,
f.Visibility ,
CouldBeDeclared = f.OptimalVisibility,
f.MethodsUsingMe }
193 fields matched
| fields | Visibility | CouldBeDeclared | MethodsUsingMe | Full Name |
|---|---|---|---|---|
| CONFIGURATION | Public | Private | 0 method | org.apache.wicket.Application.CONFIGURATION |
| VALUELESS_ATTRIBUTE_ADD | Public | Private | 2 methods | org.apache.wicket.AttributeModifier.VALUELESS_ATTRIBUTE_ADD |
| VALUELESS_ATTRIBUTE_REMOVE | Public | Private | 3 methods | org.apache.wicket.AttributeModifier.VALUELESS_ATTRIBUTE_REMOVE |
| ENABLE | Public | Protected | 5 methods | org.apache.wicket.Component.ENABLE |
| PATH_SEPARATOR | Public | Private | 0 method | org.apache.wicket.Component.PATH_SEPARATOR |
| PARENT_PATH | Public | Private | 0 method | org.apache.wicket.Component.PARENT_PATH |
| RENDER | Public | Protected | 3 methods | org.apache.wicket.Component.RENDER |
| FLAG_INHERITABLE_MODEL | Public | Private | 0 method | org.apache.wicket.Component.FLAG_INHERITABLE_MODEL |
| FLAG_RESERVED1 | Protected | Private | 0 method | org.apache.wicket.Component.FLAG_RESERVED1 |
| FLAG_RESERVED2 | Protected | Private | 0 method | org.apache.wicket.Component.FLAG_RESERVED2 |
| FLAG_RESERVED3 | Protected | Private | 0 method | org.apache.wicket.Component.FLAG_RESERVED3 |
| FLAG_RESERVED4 | Protected | Private | 0 method | org.apache.wicket.Component.FLAG_RESERVED4 |
| FLAG_RESERVED5 | Protected | Private | 0 method | org.apache.wicket.Component.FLAG_RESERVED5 |
| FLAG_INITIALIZED | Protected | Private | 0 method | org.apache.wicket.Component.FLAG_INITIALIZED |
| FLAG_RESERVED8 | Protected | Private | 0 method | org.apache.wicket.Component.FLAG_RESERVED8 |
| FLAG_REMOVING_FROM_HIERARCHY | Protected | Private | 0 method | org.apache.wicket.Component.FLAG_REMOVING_FROM_HIERARCHY |
| ADDED_AT_KEY | Public | Internal | 4 methods | org.apache.wicket.Component.ADDED_AT_KEY |
| CONSTRUCTED_AT_KEY | Public | Internal | 4 methods | org.apache.wicket.Component.CONSTRUCTED_AT_KEY |
| generatedMarkupId | Public | Private | 7 methods | org.apache.wicket.Component.generatedMarkupId |
| data | Public | Private | 28 methods | org.apache.wicket.Component.data |
| application | Protected | Private | 5 methods | org.apache.wicket.DefaultPageManagerProvider.application |
| index | Public | Private | 6 methods | org.apache.wicket.MarkupContainer$1.index |
| key | Public | Internal | 4 methods | org.apache.wicket.MetaDataEntry.key |
| object | Public | Internal | 5 methods | org.apache.wicket.MetaDataEntry.object |
| listenerInterfaceClass | Public | Private | 2 methods | org.apache.wicket.RequestListenerInterface.listenerInterfaceClass |
| MAPPER | Public | Internal | 2 methods | org.apache.wicket.RestartResponseAtInterceptPageException.MAPPER |
| SESSION_ATTRIBUTE_NAME | Public | Private | 0 method | org.apache.wicket.Session.SESSION_ATTRIBUTE_NAME |
| ESC | Public | Private | 0 method | org.apache.wicket.application.WildcardMatcherHelper.ESC |
| PATHSEP | Public | Private | 0 method | org.apache.wicket.application.WildcardMatcherHelper.PATHSEP |
| STAR | Public | Private | 0 method | org.apache.wicket.application.WildcardMatcherHelper.STAR |
| UNDEFINED | Public | Private | 0 method | org.apache.wicket.feedback.FeedbackMessage.UNDEFINED |
| DEBUG | Public | Private | 0 method | org.apache.wicket.feedback.FeedbackMessage.DEBUG |
| INFO | Public | Private | 0 method | org.apache.wicket.feedback.FeedbackMessage.INFO |
| SUCCESS | Public | Private | 0 method | org.apache.wicket.feedback.FeedbackMessage.SUCCESS |
| WARNING | Public | Private | 0 method | org.apache.wicket.feedback.FeedbackMessage.WARNING |
| ERROR | Public | Private | 0 method | org.apache.wicket.feedback.FeedbackMessage.ERROR |
| FATAL | Public | Private | 0 method | org.apache.wicket.feedback.FeedbackMessage.FATAL |
| header | Protected | Private | 8 methods | org.apache.wicket.ajax.AbstractAjaxResponse.header |
| domReadyJavaScripts | Protected | Private | 6 methods | org.apache.wicket.ajax.AbstractAjaxResponse.domReadyJavaScripts |
| prependJavaScripts | Protected | Private | 6 methods | org.apache.wicket.ajax.AbstractAjaxResponse.prependJavaScripts |
| appendJavaScripts | Protected | Private | 6 methods | org.apache.wicket.ajax.AbstractAjaxResponse.appendJavaScripts |
| componentsFrozen | Protected | Private | 2 methods | org.apache.wicket.ajax.AbstractAjaxResponse.componentsFrozen |
| INDICATOR | Public | Private | 1 method | org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.INDICATOR |
| listenersFrozen | Protected | Private | 4 methods | org.apache.wicket.ajax.AjaxRequestHandler.listenersFrozen |
| respondersFrozen | Protected | Private | 2 methods | org.apache.wicket.ajax.AjaxRequestHandler.respondersFrozen |
| START_ROOT_ELEMENT | Public | Private | 0 method | org.apache.wicket.ajax.XmlAjaxResponse.START_ROOT_ELEMENT |
| END_ROOT_ELEMENT | Public | Private | 0 method | org.apache.wicket.ajax.XmlAjaxResponse.END_ROOT_ELEMENT |
| XML_DATA_TYPE | Public | Private | 0 method | org.apache.wicket.ajax.attributes.AjaxRequestAttributes.XML_DATA_TYPE |
| EVENT_NAME | Public | Private | 0 method | org.apache.wicket.ajax.form.OnChangeAjaxBehavior.EVENT_NAME |
| CRLF | Public | Private | 0 method | org.apache.wicket.ajax.json.HTTP.CRLF |
| NULL | Public | Internal | 11 methods | org.apache.wicket.ajax.json.JSONObject.NULL |
| LT | Public | Internal | 8 methods | org.apache.wicket.ajax.json.XML.LT |
| SLASH | Public | Internal | 7 methods | org.apache.wicket.ajax.json.XML.SLASH |
| GT | Public | Internal | 12 methods | org.apache.wicket.ajax.json.XML.GT |
| BANG | Public | Internal | 5 methods | org.apache.wicket.ajax.json.XML.BANG |
| QUEST | Public | Internal | 5 methods | org.apache.wicket.ajax.json.XML.QUEST |
| EQ | Public | Internal | 5 methods | org.apache.wicket.ajax.json.XML.EQ |
| AMP | Public | Internal | 2 methods | org.apache.wicket.ajax.json.XML.AMP |
| APOS | Public | Internal | 2 methods | org.apache.wicket.ajax.json.XML.APOS |
| QUOT | Public | Internal | 2 methods | org.apache.wicket.ajax.json.XML.QUOT |
| entity | Public | Private | 7 methods | org.apache.wicket.ajax.json.XMLTokener.entity |
| RENDER | Public | Private | 0 method | org.apache.wicket.authorization.Action.RENDER |
| ENABLE | Public | Private | 0 method | org.apache.wicket.authorization.Action.ENABLE |
| pageParametersEncoder | Protected | Private | 3 methods | org.apache.wicket.core.request.mapper.BasicResourceReferenceMapper .pageParametersEncoder |
| cachingStrategy | Protected | Private | 2 methods | org.apache.wicket.core.request.mapper.BasicResourceReferenceMapper .cachingStrategy |
| SUCCESS | Public | Internal | 6 methods | org.apache.wicket.core.util.objects.checker.IObjectChecker$Result .SUCCESS |
| status | Public | Internal | 3 methods | org.apache.wicket.core.util.objects.checker.IObjectChecker$Result .status |
| reason | Public | Internal | 3 methods | org.apache.wicket.core.util.objects.checker.IObjectChecker$Result .reason |
| cause | Public | Internal | 2 methods | org.apache.wicket.core.util.objects.checker.IObjectChecker$Result .cause |
| in | Public | Private | 4 methods | org.apache.wicket.core.util.resource.WebExternalResourceStream.in |
| INSTANCE | Public | Internal | 2 methods | org.apache.wicket.core.util.resource.locator.caching .NullResourceStreamReference.INSTANCE |
| INLINE_OPEN_TAG | Public | Private | 0 method | org.apache.wicket.core.util.string.CssUtils.INLINE_OPEN_TAG |
| INLINE_CLOSE_TAG | Public | Private | 0 method | org.apache.wicket.core.util.string.CssUtils.INLINE_CLOSE_TAG |
| SCRIPT_CONTENT_PREFIX | Public | Private | 0 method | org.apache.wicket.core.util.string.JavaScriptUtils .SCRIPT_CONTENT_PREFIX |
| SCRIPT_CONTENT_SUFFIX | Public | Private | 0 method | org.apache.wicket.core.util.string.JavaScriptUtils .SCRIPT_CONTENT_SUFFIX |
| SCRIPT_OPEN_TAG | Public | Private | 0 method | org.apache.wicket.core.util.string.JavaScriptUtils.SCRIPT_OPEN_TAG |
| SCRIPT_CLOSE_TAG | Public | Private | 0 method | org.apache.wicket.core.util.string.JavaScriptUtils.SCRIPT_CLOSE_TAG |
| CONDITIONAL_COMMENT_OPENING | Public | Private | 2 methods | org.apache.wicket.markup.AbstractMarkupParser .CONDITIONAL_COMMENT_OPENING |
| RENDER_RAW | Public | Private | 0 method | org.apache.wicket.markup.ComponentTag.RENDER_RAW |
| xmlTag | Protected | Private | 11 methods | org.apache.wicket.markup.HtmlSpecialTag.xmlTag |
| NO_MARKUP | Public | Internal | 10 methods | org.apache.wicket.markup.Markup.NO_MARKUP |
| WICKET | Public | Private | 0 method | org.apache.wicket.markup.MarkupParser.WICKET |
| WICKET_XHTML_DTD | Public | Private | 0 method | org.apache.wicket.markup.MarkupResourceStream.WICKET_XHTML_DTD |
| HTML_MARKUP_TYPE | Public | Internal | 2 methods | org.apache.wicket.markup.MarkupType.HTML_MARKUP_TYPE |
| XML_MIME | Public | Private | 0 method | org.apache.wicket.markup.MarkupType.XML_MIME |
| HTML_MIME | Public | Private | 0 method | org.apache.wicket.markup.MarkupType.HTML_MIME |
| ATTRIBUTES_SEPARATORS | Public | Private | 5 methods | org.apache.wicket.markup.TagUtils.ATTRIBUTES_SEPARATORS |
| autoEnable | Public | Private | 2 methods | org.apache.wicket.markup.resolver .AutoLinkResolver$AutolinkBookmarkablePageLink.autoEnable |
| FRAGMENT | Public | Private | 0 method | org.apache.wicket.markup.resolver.FragmentResolver.FRAGMENT |
| HEAD | Public | Private | 0 method | org.apache.wicket.markup.resolver.HtmlHeaderResolver.HEAD |
| CHILD | Public | Private | 0 method | org.apache.wicket.markup.resolver.MarkupInheritanceResolver.CHILD |
| EXTEND | Public | Private | 0 method | org.apache.wicket.markup.resolver.MarkupInheritanceResolver.EXTEND |
| CONTAINER | Public | Private | 0 method | org.apache.wicket.markup.resolver.WicketContainerResolver.CONTAINER |
| MESSAGE | Public | Private | 0 method | org.apache.wicket.markup.resolver.WicketMessageResolver.MESSAGE |
| HEADER_FILTER_NAME | Public | Private | 0 method | org.apache.wicket.markup.head.filter .JavaScriptFilteredIntoFooterHeaderResponse.HEADER_FILTER_NAME |
| rendering | Protected | Private | 4 methods | org.apache.wicket.markup.html.border.Border$BorderBodyContainer .rendering |
| BODY | Public | Private | 0 method | org.apache.wicket.markup.html.border.Border.BODY |
| BORDER | Public | Private | 0 method | org.apache.wicket.markup.html.border.Border.BORDER |
| path | Public | Internal | 4 methods | org.apache.wicket.markup.html.debug.PageView$ComponentData.path |
| size | Public | Internal | 2 methods | org.apache.wicket.markup.html.debug.PageView$ComponentData.size |
Statistics
| Stat | Visibility | CouldBeDeclared | MethodsUsingMe |
|---|---|---|---|
| Sum: | 0 | 0 | 0 |
| Average: | 0 | 0 | 0 |
| Minimum: | 0 | 0 | 0 |
| Maximum: | 0 | 0 | 0 |
| Standard deviation: | 0 | 0 | 0 |
| Variance: | 0 | 0 | 0 |
| Rule warning: Fields should be declared as private |
warnif count > 0 from f in Application.Fields where
!f.IsPrivate &&
// These conditions filter cases where fields
// doesn't represent state that should be encapsulated.
!f.IsGeneratedByCompiler &&
!f.IsSpecialName &&
!f.IsInitOnly &&
!f.IsLiteral &&
!f.IsEnumValue
select new { f, f.SizeOfInst }
33 fields matched
| fields | Size of instance | Full Name |
|---|---|---|
| generatedMarkupId | 4 | org.apache.wicket.Component.generatedMarkupId |
| data | 4 | org.apache.wicket.Component.data |
| index | 4 | org.apache.wicket.MarkupContainer$1.index |
| object | 4 | org.apache.wicket.MetaDataEntry.object |
| MAPPER | N/A | org.apache.wicket.RestartResponseAtInterceptPageException.MAPPER |
| clientInfo | 4 | org.apache.wicket.Session.clientInfo |
| header | 4 | org.apache.wicket.ajax.AbstractAjaxResponse.header |
| componentsFrozen | 4 | org.apache.wicket.ajax.AbstractAjaxResponse.componentsFrozen |
| listenersFrozen | 4 | org.apache.wicket.ajax.AjaxRequestHandler.listenersFrozen |
| respondersFrozen | 4 | org.apache.wicket.ajax.AjaxRequestHandler.respondersFrozen |
| mode | 4 | org.apache.wicket.ajax.json.JSONWriter.mode |
| writer | 4 | org.apache.wicket.ajax.json.JSONWriter.writer |
| in | 4 | org.apache.wicket.core.util.resource.WebExternalResourceStream.in |
| autoEnable | N/A | org.apache.wicket.markup.resolver .AutoLinkResolver$AutolinkBookmarkablePageLink.autoEnable |
| rendering | 4 | org.apache.wicket.markup.html.border.Border$BorderBodyContainer .rendering |
| value | 4 | org.apache.wicket.markup.html.debug.PageView$ComponentData.value |
| parameters | 4 | org.apache.wicket.markup.html.link.BookmarkablePageLink.parameters |
| RETAIN_DISABLED_META_KEY | N/A | org.apache.wicket.markup.html.form.ListMultipleChoice .RETAIN_DISABLED_META_KEY |
| pageable | 4 | org.apache.wicket.markup.html.navigation.paging.PagingNavigation .pageable |
| labelProvider | 4 | org.apache.wicket.markup.html.navigation.paging.PagingNavigation .labelProvider |
| name | 4 | org.apache.wicket.markup.parser.XmlTag.name |
| namespace | 4 | org.apache.wicket.markup.parser.XmlTag.namespace |
| text | 4 | org.apache.wicket.markup.parser.XmlTag.text |
| type | 4 | org.apache.wicket.markup.parser.XmlTag.type |
| wicketFilter | 4 | org.apache.wicket.protocol.http.WicketServlet.wicketFilter |
| SHOW_EXCEPTION_PAGE | 0 | org.apache.wicket.settings.def.ExceptionSettings.SHOW_EXCEPTION_PAGE |
| component | 4 | org.apache.wicket.util.tester.ComponentInPage.component |
| isInstantiated | 4 | org.apache.wicket.util.tester.ComponentInPage.isInstantiated |
| count | 4 | org.apache.wicket.util.tester .FormTester$ChoiceSelector$SearchOptionByIndexVisitor.count |
| path | 4 | org.apache.wicket.util.tester.WicketTesterHelper$ComponentData.path |
| type | 4 | org.apache.wicket.util.tester.WicketTesterHelper$ComponentData.type |
| value | 4 | org.apache.wicket.util.tester.WicketTesterHelper$ComponentData.value |
| defaultSchemes | 4 | org.apache.wicket.validation.validator.UrlValidator.defaultSchemes |
Statistics
| Stat | Size of instance |
|---|---|
| Sum: | 116 |
| Average: | 3.87 |
| Minimum: | 0 |
| Maximum: | 4 |
| Standard deviation: | 0.72 |
| Variance: | 0.52 |
| Rule warning: Constructors of abstract classes should be declared as protected or private |
// Constructors of an abstract class can only be accessed from this class and derived class.
// Declaring such a constructor with another visibility level is useless and potentially misleading.
warnif count > 0
from t in Application.Types where
t.IsClass &&
t.IsAbstract
let ctors = t.Constructors.Where(c => !c.IsProtected && !c.IsPrivate)
where ctors.Count() > 0
select new { t, ctors }
// Notice that if a constructor of an abstract class is declared as private,
// it can only be accessed from derived classes nested in the abstract class.
107 types matched
| types | ctors | Full Name |
|---|---|---|
| Application | 1 method | org.apache.wicket.Application |
| Component | 2 methods | org.apache.wicket.Component |
| MarkupContainer | 2 methods | org.apache.wicket.MarkupContainer |
| MetaDataKey<T> | 1 method | org.apache.wicket.MetaDataKey |
| Session | 1 method | org.apache.wicket.Session |
| AbstractClassResolver | 1 method | org.apache.wicket.application.AbstractClassResolver |
| AbstractAjaxBehavior | 1 method | org.apache.wicket.behavior.AbstractAjaxBehavior |
| Behavior | 1 method | org.apache.wicket.behavior.Behavior |
| AbstractPageManager | 1 method | org.apache.wicket.page.AbstractPageManager |
| RequestAdapter | 1 method | org.apache.wicket.page.RequestAdapter |
| AbstractAjaxResponse | 1 method | org.apache.wicket.ajax.AbstractAjaxResponse |
| AbstractAjaxTimerBehavior | 1 method | org.apache.wicket.ajax.AbstractAjaxTimerBehavior |
| AbstractDefaultAjaxBehavior | 1 method | org.apache.wicket.ajax.AbstractDefaultAjaxBehavior |
| AjaxEventBehavior | 1 method | org.apache.wicket.ajax.AjaxEventBehavior |
| AjaxNewWindowNotifyingBehavior | 2 methods | org.apache.wicket.ajax.AjaxNewWindowNotifyingBehavior |
| XmlAjaxResponse | 1 method | org.apache.wicket.ajax.XmlAjaxResponse |
| AjaxFormChoiceComponentUpdatingBehavior | 1 method | org.apache.wicket.ajax.form.AjaxFormChoiceComponentUpdatingBehavior |
| AjaxFormComponentUpdatingBehavior | 1 method | org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior |
| AjaxFormSubmitBehavior | 2 methods | org.apache.wicket.ajax.form.AjaxFormSubmitBehavior |
| OnChangeAjaxBehavior | 1 method | org.apache.wicket.ajax.form.OnChangeAjaxBehavior |
| AjaxFallbackLink<T> | 2 methods | org.apache.wicket.ajax.markup.html.AjaxFallbackLink |
| AjaxLink<T> | 2 methods | org.apache.wicket.ajax.markup.html.AjaxLink |
| AjaxButton | 4 methods | org.apache.wicket.ajax.markup.html.form.AjaxButton |
| AjaxCheckBox | 2 methods | org.apache.wicket.ajax.markup.html.form.AjaxCheckBox |
| AjaxFallbackButton | 2 methods | org.apache.wicket.ajax.markup.html.form.AjaxFallbackButton |
| AjaxSubmitLink | 2 methods | org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink |
| AuthorizationException | 4 methods | org.apache.wicket.authorization.AuthorizationException |
| AbstractPageAuthorizationStrategy | 1 method | org.apache.wicket.authorization.strategies.page .AbstractPageAuthorizationStrategy |
| SimplePageAuthorizationStrategy | 1 method | org.apache.wicket.authorization.strategies.page .SimplePageAuthorizationStrategy |
| ClientInfo | 1 method | org.apache.wicket.core.request.ClientInfo |
| AbstractBookmarkableMapper | 1 method | org.apache.wicket.core.request.mapper.AbstractBookmarkableMapper |
| AbstractComponentMapper | 1 method | org.apache.wicket.core.request.mapper.AbstractComponentMapper |
| AbstractResourceReferenceMapper | 1 method | org.apache.wicket.core.request.mapper.AbstractResourceReferenceMapper |
| PropertyResolver$AbstractGetAndSet | 1 method | org.apache.wicket.core.util.lang.PropertyResolver$AbstractGetAndSet |
| CheckingObjectOutputStream$ObjectOutputAdaptor | 1 method | org.apache.wicket.core.util.objects.checker .CheckingObjectOutputStream$ObjectOutputAdaptor |
| AbstractResourceStreamReference | 1 method | org.apache.wicket.core.util.resource.locator.caching .AbstractResourceStreamReference |
| AbstractMarkupParser | 3 methods | org.apache.wicket.markup.AbstractMarkupParser |
| MarkupElement | 1 method | org.apache.wicket.markup.MarkupElement |
| AbstractHeaderRenderStrategy | 1 method | org.apache.wicket.markup.renderStrategy.AbstractHeaderRenderStrategy |
| DeepChildFirstVisitor | 1 method | org.apache.wicket.markup.renderStrategy.DeepChildFirstVisitor |
| AutoLinkResolver$AbstractAutolinkResolverDelegate | 1 method | org.apache.wicket.markup.resolver .AutoLinkResolver$AbstractAutolinkResolverDelegate |
| AbstractOutputTransformerContainer | 2 methods | org.apache.wicket.markup.transformer .AbstractOutputTransformerContainer |
| AbstractTransformerBehavior | 1 method | org.apache.wicket.markup.transformer.AbstractTransformerBehavior |
| HeaderItem | 1 method | org.apache.wicket.markup.head.HeaderItem |
| AbstractHeaderResponseFilter | 1 method | org.apache.wicket.markup.head.filter.AbstractHeaderResponseFilter |
| HeaderResponse | 1 method | org.apache.wicket.markup.head.internal.HeaderResponse |
| DecoratingHeaderResponse | 1 method | org.apache.wicket.markup.html.DecoratingHeaderResponse |
| Border | 2 methods | org.apache.wicket.markup.html.border.Border |
| BorderPanel | 2 methods | org.apache.wicket.markup.html.border.BorderPanel |
| ResponseBufferZone | 1 method | org.apache.wicket.markup.html.internal.ResponseBufferZone |
| AbstractLink | 2 methods | org.apache.wicket.markup.html.link.AbstractLink |
| Link<T> | 2 methods | org.apache.wicket.markup.html.link.Link |
| StatelessLink<T> | 1 method | org.apache.wicket.markup.html.link.StatelessLink |
| ListView<T> | 3 methods | org.apache.wicket.markup.html.list.ListView |
| Loop | 2 methods | org.apache.wicket.markup.html.list.Loop |
| PageableListView<T> | 2 methods | org.apache.wicket.markup.html.list.PageableListView |
| PropertyListView<T> | 3 methods | org.apache.wicket.markup.html.list.PropertyListView |
| AbstractMarkupSourcingStrategy | 1 method | org.apache.wicket.markup.html.panel.AbstractMarkupSourcingStrategy |
| AssociatedMarkupSourcingStrategy | 1 method | org.apache.wicket.markup.html.panel.AssociatedMarkupSourcingStrategy |
| Panel | 2 methods | org.apache.wicket.markup.html.panel.Panel |
| AbstractCheckSelector | 1 method | org.apache.wicket.markup.html.form.AbstractCheckSelector |
| AbstractChoice<T,E> | 9 methods | org.apache.wicket.markup.html.form.AbstractChoice |
| AbstractSingleSelectChoice<T> | 9 methods | org.apache.wicket.markup.html.form.AbstractSingleSelectChoice |
| AbstractSubmitLink | 4 methods | org.apache.wicket.markup.html.form.AbstractSubmitLink |
| AbstractTextComponent<T> | 2 methods | org.apache.wicket.markup.html.form.AbstractTextComponent |
| Form$ValidationVisitor | 1 method | org.apache.wicket.markup.html.form.Form$ValidationVisitor |
| FormComponent<T> | 2 methods | org.apache.wicket.markup.html.form.FormComponent |
| FormComponentPanel<T> | 2 methods | org.apache.wicket.markup.html.form.FormComponentPanel |
| LabeledWebMarkupContainer | 2 methods | org.apache.wicket.markup.html.form.LabeledWebMarkupContainer |
| AbstractFormValidator | 1 method | org.apache.wicket.markup.html.form.validation.AbstractFormValidator |
| BlobImageResource | 2 methods | org.apache.wicket.markup.html.image.resource.BlobImageResource |
| RenderedDynamicImageResource | 2 methods | org.apache.wicket.markup.html.image.resource .RenderedDynamicImageResource |
| AbstractMarkupFilter | 2 methods | org.apache.wicket.markup.parser.AbstractMarkupFilter |
| AbstractPageableView<T> | 2 methods | org.apache.wicket.markup.repeater.AbstractPageableView |
| AbstractRepeater | 2 methods | org.apache.wicket.markup.repeater.AbstractRepeater |
| RefreshingView<T> | 2 methods | org.apache.wicket.markup.repeater.RefreshingView |
| DataViewBase<T> | 1 method | org.apache.wicket.markup.repeater.data.DataViewBase |
| GridView<T> | 1 method | org.apache.wicket.markup.repeater.data.GridView |
| ArrayIteratorAdapter<T> | 1 method | org.apache.wicket.markup.repeater.util.ArrayIteratorAdapter |
| ModelIteratorAdapter<T> | 1 method | org.apache.wicket.markup.repeater.util.ModelIteratorAdapter |
| AbstractPropertyModel<T> | 1 method | org.apache.wicket.model.AbstractPropertyModel |
| AbstractReadOnlyModel<T> | 1 method | org.apache.wicket.model.AbstractReadOnlyModel |
| AbstractWrapModel<T> | 1 method | org.apache.wicket.model.AbstractWrapModel |
| ChainingModel<T> | 1 method | org.apache.wicket.model.ChainingModel |
| LoadableDetachableModel<T> | 2 methods | org.apache.wicket.model.LoadableDetachableModel |
| GenericBaseModel<T> | 1 method | org.apache.wicket.model.util.GenericBaseModel |
| AbstractRequestLogger | 1 method | org.apache.wicket.protocol.http.AbstractRequestLogger |
| BufferedWebResponse$Action | 1 method | org.apache.wicket.protocol.http.BufferedWebResponse$Action |
| BufferedWebResponse$MetaDataAction | 1 method | org.apache.wicket.protocol.http.BufferedWebResponse$MetaDataAction |
| WebApplication | 1 method | org.apache.wicket.protocol.http.WebApplication |
| AbstractRequestWrapperFactory | 1 method | org.apache.wicket.protocol.http.servlet.AbstractRequestWrapperFactory |
| MultipartServletWebRequest | 2 methods | org.apache.wicket.protocol.http.servlet.MultipartServletWebRequest |
| AbstractRequestCycleListener | 1 method | org.apache.wicket.request.cycle.AbstractRequestCycleListener |
| PageRenderer | 1 method | org.apache.wicket.request.handler.render.PageRenderer |
| ResourceLogData | 1 method | org.apache.wicket.request.handler.resource.ResourceLogData |
| AbstractResource$WriteCallback | 1 method | org.apache.wicket.request.resource.AbstractResource$WriteCallback |
| AbstractResource | 1 method | org.apache.wicket.request.resource.AbstractResource |
| ClassScanner | 1 method | org.apache.wicket.request.resource.ClassScanner |
| DynamicImageResource | 2 methods | org.apache.wicket.request.resource.DynamicImageResource |
| ResourceReference | 4 methods | org.apache.wicket.request.resource.ResourceReference |
Statistics
| Stat | ctors |
|---|---|
| Sum: | 0 |
| Average: | 0 |
| Minimum: | 0 |
| Maximum: | 0 |
| Standard deviation: | 0 |
| Variance: | 0 |
| Purity - Immutability - Side-Effects | 130 |
|
| Rule warning: Fields should be marked as ReadOnly when possible |
warnif count > 0
from f in JustMyCode.Fields where
f.IsImmutable &&
!f.IsInitOnly &&
!f.IsGeneratedByCompiler
select new { f, f.SizeOfInst }
// A field that matches the condition IsImmutable
// is a field that is assigned only by constructors
// of its class.
// For an instance field, this means its value
// will remain constant throught the lifetime
// of the object.
// For a static field, this means its value will
// remain constant throught the lifetime of the
// program.
// In both cases, such field can safely be marked
68 fields matched
| fields | Size of instance | Full Name |
|---|---|---|
| method | 4 | org.apache.wicket.RequestListenerInterface.method |
| reporter | 4 | org.apache.wicket.feedback.FeedbackMessage.reporter |
| cookies | 4 | org.apache.wicket.mock.MockWebRequest.cookies |
| headers | 4 | org.apache.wicket.mock.MockWebRequest.headers |
| postRequestParameters | 4 | org.apache.wicket.mock.MockWebRequest.postRequestParameters |
| functionParameterName | 4 | org.apache.wicket.ajax.attributes.CallbackParameter .functionParameterName |
| ajaxParameterName | 4 | org.apache.wicket.ajax.attributes.CallbackParameter.ajaxParameterName |
| ajaxParameterCode | 4 | org.apache.wicket.ajax.attributes.CallbackParameter.ajaxParameterCode |
| cause | 4 | org.apache.wicket.ajax.json.JSONException.cause |
| reader | 4 | org.apache.wicket.ajax.json.JSONTokener.reader |
| logger | N/A | org.apache.wicket.core.request.mapper.AbstractBookmarkableMapper .logger |
| characters | 4 | org.apache.wicket.core.request.mapper .CryptoMapper$HashedSegmentGenerator.characters |
| segmentIndex | 4 | org.apache.wicket.core.request.mapper.MountedMapper$MountPathSegment .segmentIndex |
| behaviorClass | 4 | org.apache.wicket.core.request.handler.logger.ListenerInterfaceLogData .behaviorClass |
| submittingComponentClass | 4 | org.apache.wicket.core.request.handler.logger.ListenerInterfaceLogData .submittingComponentClass |
| submittingComponentPath | 4 | org.apache.wicket.core.request.handler.logger.ListenerInterfaceLogData .submittingComponentPath |
| KEY | N/A | org.apache.wicket.core.util.crypt.KeyInSessionSunJceCryptFactory.KEY |
| available | N/A | org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream .available |
| LOOKUP_METHOD | N/A | org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream .LOOKUP_METHOD |
| GET_CLASS_DATA_LAYOUT_METHOD | N/A | org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream .GET_CLASS_DATA_LAYOUT_METHOD |
| GET_NUM_OBJ_FIELDS_METHOD | N/A | org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream .GET_NUM_OBJ_FIELDS_METHOD |
| GET_OBJ_FIELD_VALUES_METHOD | N/A | org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream .GET_OBJ_FIELD_VALUES_METHOD |
| GET_FIELD_METHOD | N/A | org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream .GET_FIELD_METHOD |
| HAS_WRITE_REPLACE_METHOD_METHOD | N/A | org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream .HAS_WRITE_REPLACE_METHOD_METHOD |
| INVOKE_WRITE_REPLACE_METHOD | N/A | org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream .INVOKE_WRITE_REPLACE_METHOD |
| resourceStream | 4 | org.apache.wicket.core.util.resource.PackageResourceStream .resourceStream |
| locator | 4 | org.apache.wicket.core.util.string.interpolator .ConvertingPropertyVariableInterpolator.locator |
| locale | 4 | org.apache.wicket.core.util.string.interpolator .ConvertingPropertyVariableInterpolator.locale |
| wrapped | 4 | org.apache.wicket.markup.head.PriorityHeaderItem.wrapped |
| wrapped | 4 | org.apache.wicket.markup.head.filter.FilteredHeaderItem.wrapped |
| filterName | 4 | org.apache.wicket.markup.head.filter.FilteredHeaderItem.filterName |
| areas | 4 | org.apache.wicket.markup.html.link.ClientSideImageMap.areas |
| fileNameModel | 4 | org.apache.wicket.markup.html.link.DownloadLink.fileNameModel |
| displayFlags | 4 | org.apache.wicket.markup.html.link.PopupSettings.displayFlags |
| instance | N/A | org.apache.wicket.markup.html.panel.DefaultMarkupSourcingStrategy .instance |
| markupId | 4 | org.apache.wicket.markup.html.panel.FragmentMarkupSourcingStrategy .markupId |
| form | 4 | org.apache.wicket.markup.html.form.AbstractSubmitLink.form |
| httpTagType | 4 | org.apache.wicket.markup.parser.XmlTag.httpTagType |
| queue | 4 | org.apache.wicket.markup.parser.filter.ConditionalCommentFilter.queue |
| skipByLevelMap | 4 | org.apache.wicket.markup.parser.filter.ConditionalCommentFilter .skipByLevelMap |
| level | 4 | org.apache.wicket.markup.parser.filter.ConditionalCommentFilter.level |
| SAFE_CHILD_ID_PATTERN | N/A | org.apache.wicket.markup.repeater.AbstractRepeater .SAFE_CHILD_ID_PATTERN |
| instance | N/A | org.apache.wicket.markup.repeater.ReuseIfModelsEqualStrategy.instance |
| INSTANCE | N/A | org.apache.wicket.markup.repeater.data.EmptyDataProvider.INSTANCE |
| REQUEST_DATA | N/A | org.apache.wicket.protocol.http.AbstractRequestLogger.REQUEST_DATA |
| SESSION_DATA | N/A | org.apache.wicket.protocol.http.AbstractRequestLogger.SESSION_DATA |
| DAYS | N/A | org.apache.wicket.protocol.http.mock.MockHttpServletResponse.DAYS |
| MONTHS | N/A | org.apache.wicket.protocol.http.mock.MockHttpServletResponse.MONTHS |
| webappRoot | 4 | org.apache.wicket.protocol.http.mock.MockServletContext.webappRoot |
| totalBytes | 4 | org.apache.wicket.protocol.http.servlet.MultipartServletWebRequestImpl .totalBytes |
| timeStarted | 4 | org.apache.wicket.protocol.http.servlet.UploadInfo.timeStarted |
| totalBytes | 4 | org.apache.wicket.protocol.http.servlet.UploadInfo.totalBytes |
| dateFormats | 4 | org.apache.wicket.protocol.http.servlet.XForwardedRequestWrapper .dateFormats |
| headers | 4 | org.apache.wicket.protocol.http.servlet.XForwardedRequestWrapper .headers |
| array | 4 | org.apache.wicket.request.resource.ByteArrayResource.array |
| scanner | 4 | org.apache.wicket.request.resource.ResourceReferenceRegistry.scanner |
| stream | 4 | org.apache.wicket.request.resource.ResourceStreamResource.stream |
| parameters | 4 | org.apache.wicket.request.resource.caching.ResourceUrl.parameters |
| initializers | 4 | org.apache.wicket.resource.loader.InitializerStringResourceLoader .initializers |
| original | 4 | org.apache.wicket.response.ByteArrayResponse.original |
| log | N/A | org.apache.wicket.response.filter.AjaxServerAndClientTimeFilter.log |
| stack | 4 | org.apache.wicket.util.iterator.AbstractHierarchyIterator.stack |
| cookies | 4 | org.apache.wicket.util.tester .BaseWicketTester$WicketTesterServletWebResponse.cookies |
| httpSession | 4 | org.apache.wicket.util.tester.BaseWicketTester.httpSession |
| originalFeedbackMessageCleanupFilter | 4 | org.apache.wicket.util.tester.BaseWicketTester .originalFeedbackMessageCleanupFilter |
| failOnUnknown | 4 | org.apache.wicket.validation.validator.CreditCardValidator .failOnUnknown |
| format | 4 | org.apache.wicket.validation.validator.DateValidator.format |
| options | 4 | org.apache.wicket.validation.validator.UrlValidator.options |
Statistics
| Stat | Size of instance |
|---|---|
| Sum: | 196 |
| Average: | 4 |
| Minimum: | 4 |
| Maximum: | 4 |
| Standard deviation: | 0 |
| Variance: | 0 |
| Rule warning: Avoid static fields with a mutable field type |
warnif count > 0
from f in Application.Fields
where f.IsStatic && !f.IsEnumValue && !f.IsGeneratedByCompiler && !f.IsLiteral
let fieldType = f.FieldType
where fieldType != null &&
!fieldType.IsThirdParty &&
!fieldType.IsInterface &&
!fieldType.IsImmutable
select new { f,
mutableFieldType = fieldType ,
isFieldImmutable = f.IsImmutable,
isFieldIsReadOnly = f.IsInitOnly }
// static fields should be used to hold only constant and immutable states.
52 fields matched
| fields | mutableFieldType | isFieldImmutable | isFieldIsReadOnly | Full Name |
|---|---|---|---|---|
| ENABLE | Action | True | True | org.apache.wicket.Component.ENABLE |
| RENDER | Action | True | True | org.apache.wicket.Component.RENDER |
| MARKUP_ID_KEY | MetaDataKey<T> | True | True | org.apache.wicket.Component.MARKUP_ID_KEY |
| FEEDBACK_KEY | MetaDataKey<T> | True | True | org.apache.wicket.Component.FEEDBACK_KEY |
| ADDED_AT_KEY | MetaDataKey<T> | True | True | org.apache.wicket.Component.ADDED_AT_KEY |
| CONSTRUCTED_AT_KEY | MetaDataKey<T> | True | True | org.apache.wicket.Component.CONSTRUCTED_AT_KEY |
| FEEDBACK_LIST | MetaDataKey<T> | True | True | org.apache.wicket.Component.FEEDBACK_LIST |
| INTERFACE | RequestListenerInterface | True | True | org.apache.wicket.IRedirectListener.INTERFACE |
| INTERFACE | RequestListenerInterface | True | True | org.apache.wicket.IResourceListener.INTERFACE |
| key | MetaDataKey<T> | True | True | org.apache.wicket .RestartResponseAtInterceptPageException$InterceptData.key |
| INTERFACE | RequestListenerInterface | True | True | org.apache.wicket.behavior.IBehaviorListener.INTERFACE |
| FENCE_KEY | MetaDataKey<T> | True | True | org.apache.wicket.feedback.FencedFeedbackPanel.FENCE_KEY |
| INDICATOR | ResourceReference | True | True | org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.INDICATOR |
| INSTANCE | WicketAjaxDebugJQueryResourceReference | True | True | org.apache.wicket.ajax.WicketAjaxDebugJQueryResourceReference.INSTANCE |
| INSTANCE | WicketAjaxJQueryResourceReference | True | True | org.apache.wicket.ajax.WicketAjaxJQueryResourceReference.INSTANCE |
| INSTANCE | WicketEventJQueryResourceReference | True | True | org.apache.wicket.ajax.WicketEventJQueryResourceReference.INSTANCE |
| CHOICE_JS | ResourceReference | True | True | org.apache.wicket.ajax.form.AjaxFormChoiceComponentUpdatingBehavior .CHOICE_JS |
| instance | EmptyAjaxRequestHandler | True | True | org.apache.wicket.core.request.handler.EmptyAjaxRequestHandler .instance |
| KEY | MetaDataKey<T> | True | False | org.apache.wicket.core.util.crypt.KeyInSessionSunJceCryptFactory.KEY |
| DUMMY_OUTPUT_STREAM | CheckingObjectOutputStream$NoopOutputStream | True | True | org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream .DUMMY_OUTPUT_STREAM |
| SUCCESS | IObjectChecker$Result | True | True | org.apache.wicket.core.util.objects.checker.IObjectChecker$Result .SUCCESS |
| INSTANCE | NullResourceStreamReference | True | True | org.apache.wicket.core.util.resource.locator.caching .NullResourceStreamReference.INSTANCE |
| NO_MARKUP | Markup | True | True | org.apache.wicket.markup.Markup.NO_MARKUP |
| HTML_MARKUP_TYPE | MarkupType | True | True | org.apache.wicket.markup.MarkupType.HTML_MARKUP_TYPE |
| DEFAULT_ATTRIBUTE_RESOLVER | AutoLinkResolver$TagReferenceResolver | True | True | org.apache.wicket.markup.resolver.AutoLinkResolver .DEFAULT_ATTRIBUTE_RESOLVER |
| INSTANCE | NoHeaderItem | True | True | org.apache.wicket.markup.head.NoHeaderItem.INSTANCE |
| RESPONSE_KEY | MetaDataKey<T> | True | True | org.apache.wicket.markup.head.filter.FilteringHeaderResponse .RESPONSE_KEY |
| RENDER_KEY | MetaDataKey<T> | True | True | org.apache.wicket.markup.html.debug.PageView.RENDER_KEY |
| INTERFACE | RequestListenerInterface | True | True | org.apache.wicket.markup.html.link.ILinkListener.INTERFACE |
| instance | DefaultMarkupSourcingStrategy | True | False | org.apache.wicket.markup.html.panel.DefaultMarkupSourcingStrategy .instance |
| JS | ResourceReference | True | True | org.apache.wicket.markup.html.form.AbstractCheckSelector.JS |
| INTERFACE | RequestListenerInterface | True | True | org.apache.wicket.markup.html.form.IFormSubmitListener.INTERFACE |
| INTERFACE | RequestListenerInterface | True | True | org.apache.wicket.markup.html.form.IOnChangeListener.INTERFACE |
| RETAIN_DISABLED_META_KEY | MetaDataKey<T> | False | False | org.apache.wicket.markup.html.form.ListMultipleChoice .RETAIN_DISABLED_META_KEY |
| JS | ResourceReference | True | True | org.apache.wicket.markup.html.form.upload.MultiFileUploadField.JS |
| RELATIVE_PATH_BEHAVIOR | Behavior | True | True | org.apache.wicket.markup.parser.filter.RelativePathPrefixHandler .RELATIVE_PATH_BEHAVIOR |
| INSTANCE | EmptyDataProvider<T> | True | False | org.apache.wicket.markup.repeater.data.EmptyDataProvider.INSTANCE |
| REQUEST_DATA | MetaDataKey<T> | True | False | org.apache.wicket.protocol.http.AbstractRequestLogger.REQUEST_DATA |
| SESSION_DATA | MetaDataKey<T> | True | False | org.apache.wicket.protocol.http.AbstractRequestLogger.SESSION_DATA |
| BROWSER_WAS_POLLED_KEY | MetaDataKey<T> | True | True | org.apache.wicket.protocol.http.WebSession.BROWSER_WAS_POLLED_KEY |
| FIRST_HANDLER_KEY | MetaDataKey<T> | True | True | org.apache.wicket.request.cycle.PageRequestHandlerTracker .FIRST_HANDLER_KEY |
| LAST_HANDLER_KEY | MetaDataKey<T> | True | True | org.apache.wicket.request.cycle.PageRequestHandlerTracker .LAST_HANDLER_KEY |
| CACHE_KEY | MetaDataKey<T> | True | True | org.apache.wicket.request.resource.caching.version .RequestCycleCachedResourceVersion.CACHE_KEY |
| INSTANCE | JQueryResourceReference | True | True | org.apache.wicket.resource.JQueryResourceReference.INSTANCE |
| EMPTY_PROPERTIES | Properties | True | True | org.apache.wicket.resource.Properties.EMPTY_PROPERTIES |
| instance | NullResponse | True | True | org.apache.wicket.response.NullResponse.instance |
| INSTANCE | EmptySrcAttributeCheckFilter | True | True | org.apache.wicket.response.filter.EmptySrcAttributeCheckFilter .INSTANCE |
| SHOW_EXCEPTION_PAGE | IExceptionSettings$UnexpectedExceptionDisplay | True | True | org.apache.wicket.settings.IExceptionSettings.SHOW_EXCEPTION_PAGE |
| SHOW_INTERNAL_ERROR_PAGE | IExceptionSettings$UnexpectedExceptionDisplay | True | True | org.apache.wicket.settings.IExceptionSettings.SHOW_INTERNAL_ERROR_PAGE |
| SHOW_NO_EXCEPTION_PAGE | IExceptionSettings$UnexpectedExceptionDisplay | True | True | org.apache.wicket.settings.IExceptionSettings.SHOW_NO_EXCEPTION_PAGE |
| PASS | Result | True | True | org.apache.wicket.util.tester.Result.PASS |
| INSTANCE | EmailAddressValidator | True | True | org.apache.wicket.validation.validator.EmailAddressValidator.INSTANCE |
Statistics
| Stat | mutableFieldType | isFieldImmutable | isFieldIsReadOnly |
|---|---|---|---|
| Sum: | 0 | 0 | 0 |
| Average: | 0 | 0 | 0 |
| Minimum: | 0 | 0 | 0 |
| Maximum: | 0 | 0 | 0 |
| Standard deviation: | 0 | 0 | 0 |
| Variance: | 0 | 0 | 0 |
| Rule warning: A field must not be assigned from outside its parent hierarchy types |
warnif count > 0
from f in JustMyCode.Fields.Where(f =>
!f.IsPrivate && !f.IsGeneratedByCompiler &&
!f.IsImmutable && !f.IsEnumValue)
let methodsAssignerOutsideOfMyType = f.MethodsAssigningMe.Where(
m =>!m.IsGeneratedByCompiler &&
m.ParentType != f.ParentType &&
!m.ParentType.DeriveFrom(f.ParentType) )
where methodsAssignerOutsideOfMyType.Count() > 0
select new { f, methodsAssignerOutsideOfMyType }
10 fields matched
| fields | methodsAssignerOutsideOfMyType | Full Name |
|---|---|---|
| object | 1 method | org.apache.wicket.MetaDataEntry.object |
| listenersFrozen | 3 methods | org.apache.wicket.ajax.AjaxRequestHandler.listenersFrozen |
| value | 2 methods | org.apache.wicket.markup.html.debug.PageView$ComponentData.value |
| name | 1 method | org.apache.wicket.markup.parser.XmlTag.name |
| namespace | 1 method | org.apache.wicket.markup.parser.XmlTag.namespace |
| component | 2 methods | org.apache.wicket.util.tester.ComponentInPage.component |
| isInstantiated | 1 method | org.apache.wicket.util.tester.ComponentInPage.isInstantiated |
| path | 1 method | org.apache.wicket.util.tester.WicketTesterHelper$ComponentData.path |
| type | 1 method | org.apache.wicket.util.tester.WicketTesterHelper$ComponentData.type |
| value | 2 methods | org.apache.wicket.util.tester.WicketTesterHelper$ComponentData.value |
Statistics
| Stat | methodsAssignerOutsideOfMyType |
|---|---|
| Sum: | 0 |
| Average: | 0 |
| Minimum: | 0 |
| Maximum: | 0 |
| Standard deviation: | 0 |
| Variance: | 0 |
| Naming Conventions | 551 |
|
| Rule warning: Instance fields should begin with a lower character |
warnif count > 0 from f in Application.Fields where
!f.NameLike (@"^[a-z]") &&
!f.IsStatic &&
!f.IsLiteral &&
!f.IsGeneratedByCompiler &&
!f.IsSpecialName
select new { f, f.SizeOfInst }
// This naming convention provokes debate.
// Don't hesitate to customize the regex of
// NameLike to your preference.
3 fields matched
| fields | Size of instance | Full Name |
|---|---|---|
| __form | 4 | org.apache.wicket.ajax.form.AjaxFormSubmitBehavior.__form |
| VALUE_SEPARATOR | 4 | org.apache.wicket.authentication.strategy .DefaultAuthenticationStrategy.VALUE_SEPARATOR |
| SHOW_EXCEPTION_PAGE | 0 | org.apache.wicket.settings.def.ExceptionSettings.SHOW_EXCEPTION_PAGE |
Statistics
| Stat | Size of instance |
|---|---|
| Sum: | 8 |
| Average: | 2.67 |
| Minimum: | 0 |
| Maximum: | 4 |
| Standard deviation: | 1.89 |
| Variance: | 3.56 |
| Rule warning: Methods name should begin with an lower character |
warnif count > 0 from m in JustMyCode.Methods where
!m.NameLike (@"^[a-z]") &&
!m.IsSpecialName &&
!m.IsGeneratedByCompiler && !m.IsConstructor
select m
// The name of a regular method should
// begin with an Upper letter.
48 methods matched
| methods | Full Name |
|---|---|
| MetaDataKey() | org.apache.wicket.MetaDataKey.MetaDataKey() |
| AutoLinkResolver$AutolinkBookmarkablePageLink(String,Class ,PageParameters,String) | org.apache.wicket.markup.resolver .AutoLinkResolver$AutolinkBookmarkablePageLink .AutoLinkResolver$AutolinkBookmarkablePageLink(String,Class ,PageParameters,String) |
| Link(String,IModel) | org.apache.wicket.markup.html.link.Link.Link(String,IModel) |
| Link(String) | org.apache.wicket.markup.html.link.Link.Link(String) |
| ListView(String,List) | org.apache.wicket.markup.html.list.ListView.ListView(String,List) |
| ChoiceRenderer() | org.apache.wicket.markup.html.form.ChoiceRenderer.ChoiceRenderer() |
| FormComponent(String) | org.apache.wicket.markup.html.form.FormComponent.FormComponent(String) |
| FormComponent(String,IModel) | org.apache.wicket.markup.html.form.FormComponent.FormComponent(String ,IModel) |
| ListMultipleChoice(String) | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice(String) |
| ListMultipleChoice(String,List) | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice(String,List) |
| ListMultipleChoice(String,List,IChoiceRenderer) | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice(String,List,IChoiceRenderer) |
| ListMultipleChoice(String,IModel,List) | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice(String,IModel,List) |
| ListMultipleChoice(String,IModel,List,IChoiceRenderer) | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice(String,IModel,List,IChoiceRenderer) |
| ListMultipleChoice(String,IModel) | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice(String,IModel) |
| ListMultipleChoice(String,IModel,IModel) | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice(String,IModel,IModel) |
| ListMultipleChoice(String,IModel,IChoiceRenderer) | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice(String,IModel,IChoiceRenderer) |
| ListMultipleChoice(String,IModel,IModel,IChoiceRenderer) | org.apache.wicket.markup.html.form.ListMultipleChoice .ListMultipleChoice(String,IModel,IModel,IChoiceRenderer) |
| TextField(String,IModel,Class) | org.apache.wicket.markup.html.form.TextField.TextField(String,IModel ,Class) |
| TextField(String) | org.apache.wicket.markup.html.form.TextField.TextField(String) |
| TextField(String,Class) | org.apache.wicket.markup.html.form.TextField.TextField(String,Class) |
| TextField(String,IModel) | org.apache.wicket.markup.html.form.TextField.TextField(String,IModel) |
| PagingNavigationIncrementLink(String,IPageable,int) | org.apache.wicket.markup.html.navigation.paging .PagingNavigationIncrementLink.PagingNavigationIncrementLink(String ,IPageable,int) |
| PagingNavigationLink(String,IPageable,long) | org.apache.wicket.markup.html.navigation.paging.PagingNavigationLink .PagingNavigationLink(String,IPageable,long) |
| Item(String,int,IModel) | org.apache.wicket.markup.repeater.Item.Item(String,int,IModel) |
| RefreshingView(String,IModel) | org.apache.wicket.markup.repeater.RefreshingView.RefreshingView(String ,IModel) |
| RefreshingView(String) | org.apache.wicket.markup.repeater.RefreshingView.RefreshingView(String ) |
| DataViewBase(String,IDataProvider) | org.apache.wicket.markup.repeater.data.DataViewBase.DataViewBase (String,IDataProvider) |
| AbstractReadOnlyModel() | org.apache.wicket.model.AbstractReadOnlyModel.AbstractReadOnlyModel() |
| ChainingModel(Object) | org.apache.wicket.model.ChainingModel.ChainingModel(Object) |
| CompoundPropertyModel(IModel) | org.apache.wicket.model.CompoundPropertyModel.CompoundPropertyModel (IModel) |
| CompoundPropertyModel(Object) | org.apache.wicket.model.CompoundPropertyModel.CompoundPropertyModel (Object) |
| LoadableDetachableModel() | org.apache.wicket.model.LoadableDetachableModel .LoadableDetachableModel() |
| Model(Serializable) | org.apache.wicket.model.Model.Model(Serializable) |
| Model() | org.apache.wicket.model.Model.Model() |
| PropertyModel(Object,String) | org.apache.wicket.model.PropertyModel.PropertyModel(Object,String) |
| CollectionModel(Collection) | org.apache.wicket.model.util.CollectionModel.CollectionModel (Collection) |
| GenericBaseModel() | org.apache.wicket.model.util.GenericBaseModel.GenericBaseModel() |
| MapModel(Map) | org.apache.wicket.model.util.MapModel.MapModel(Map) |
| WildcardCollectionModel(Collection) | org.apache.wicket.model.util.WildcardCollectionModel .WildcardCollectionModel(Collection) |
| WildcardListModel(List) | org.apache.wicket.model.util.WildcardListModel.WildcardListModel(List) |
| WildcardSetModel(Set) | org.apache.wicket.model.util.WildcardSetModel.WildcardSetModel(Set) |
| _registerResourceReference(ResourceReference) | org.apache.wicket.request.resource.ResourceReferenceRegistry ._registerResourceReference(ResourceReference) |
| _getResourceReference(String,String,Locale,String,String,boolean) | org.apache.wicket.request.resource.ResourceReferenceRegistry ._getResourceReference(String,String,Locale,String,String,boolean) |
| IteratorFilter() | org.apache.wicket.util.iterator.IteratorFilter.IteratorFilter() |
| ClassReference(Class) | org.apache.wicket.util.reference.ClassReference.ClassReference(Class) |
| ValidatorAdapter(IValidator) | org.apache.wicket.validation.ValidatorAdapter.ValidatorAdapter (IValidator) |
| RangeValidator(Comparable,Comparable) | org.apache.wicket.validation.validator.RangeValidator.RangeValidator (Comparable,Comparable) |
| RangeValidator() | org.apache.wicket.validation.validator.RangeValidator.RangeValidator() |
Statistics
| Stat |
|---|
| Sum: |
| Average: |
| Minimum: |
| Maximum: |
| Standard deviation: |
| Variance: |
| Rule warning: Avoid types with name too long |
warnif count > 0 from t in Application.Types
where !t.IsGeneratedByCompiler
where t.SimpleName.Length > 35
select new { t, t.SimpleName }
125 types matched
| types | SimpleName | Full Name |
|---|---|---|
| Application$DefaultExceptionMapperProvider | Application$DefaultExceptionMapperProvider | org.apache.wicket.Application$DefaultExceptionMapperProvider |
| Application$DefaultRequestCycleProvider | Application$DefaultRequestCycleProvider | org.apache.wicket.Application$DefaultRequestCycleProvider |
| BehaviorInstantiationListenerCollection$1 | BehaviorInstantiationListenerCollection$1 | org.apache.wicket.BehaviorInstantiationListenerCollection$1 |
| BehaviorInstantiationListenerCollection | BehaviorInstantiationListenerCollection | org.apache.wicket.BehaviorInstantiationListenerCollection |
| ComponentEventSender$ComponentEventVisitor<T> | ComponentEventSender$ComponentEventVisitor | org.apache.wicket.ComponentEventSender$ComponentEventVisitor |
| RestartResponseAtInterceptPageException$1 | RestartResponseAtInterceptPageException$1 | org.apache.wicket.RestartResponseAtInterceptPageException$1 |
| RestartResponseAtInterceptPageException$InterceptData$1 | RestartResponseAtInterceptPageException$InterceptData$1 | org.apache.wicket .RestartResponseAtInterceptPageException$InterceptData$1 |
| RestartResponseAtInterceptPageException$InterceptData | RestartResponseAtInterceptPageException$InterceptData | org.apache.wicket .RestartResponseAtInterceptPageException$InterceptData |
| RestartResponseAtInterceptPageException | RestartResponseAtInterceptPageException | org.apache.wicket.RestartResponseAtInterceptPageException |
| Session$PageAccessSynchronizerProvider | Session$PageAccessSynchronizerProvider | org.apache.wicket.Session$PageAccessSynchronizerProvider |
| SharedResources$AutoResourceReference | SharedResources$AutoResourceReference | org.apache.wicket.SharedResources$AutoResourceReference |
| SystemMapper$ParentFolderPlaceholderProvider | SystemMapper$ParentFolderPlaceholderProvider | org.apache.wicket.SystemMapper$ParentFolderPlaceholderProvider |
| ComponentInitializationListenerCollection$1 | ComponentInitializationListenerCollection$1 | org.apache.wicket.application .ComponentInitializationListenerCollection$1 |
| ComponentInitializationListenerCollection | ComponentInitializationListenerCollection | org.apache.wicket.application .ComponentInitializationListenerCollection |
| ComponentInstantiationListenerCollection$1 | ComponentInstantiationListenerCollection$1 | org.apache.wicket.application .ComponentInstantiationListenerCollection$1 |
| ComponentInstantiationListenerCollection | ComponentInstantiationListenerCollection | org.apache.wicket.application.ComponentInstantiationListenerCollection |
| ComponentOnAfterRenderListenerCollection$1 | ComponentOnAfterRenderListenerCollection$1 | org.apache.wicket.application .ComponentOnAfterRenderListenerCollection$1 |
| ComponentOnAfterRenderListenerCollection | ComponentOnAfterRenderListenerCollection | org.apache.wicket.application.ComponentOnAfterRenderListenerCollection |
| ComponentOnBeforeRenderListenerCollection$1 | ComponentOnBeforeRenderListenerCollection$1 | org.apache.wicket.application .ComponentOnBeforeRenderListenerCollection$1 |
| ComponentOnBeforeRenderListenerCollection | ComponentOnBeforeRenderListenerCollection | org.apache.wicket.application .ComponentOnBeforeRenderListenerCollection |
| HeaderContributorListenerCollection$1 | HeaderContributorListenerCollection$1 | org.apache.wicket.application.HeaderContributorListenerCollection$1 |
| MockApplication$MockPageManagerProvider | MockApplication$MockPageManagerProvider | org.apache.wicket.mock.MockApplication$MockPageManagerProvider |
| MockApplication$MockSessionStoreProvider | MockApplication$MockSessionStoreProvider | org.apache.wicket.mock.MockApplication$MockSessionStoreProvider |
| PageStoreManager$PersistentRequestAdapter | PageStoreManager$PersistentRequestAdapter | org.apache.wicket.page.PageStoreManager$PersistentRequestAdapter |
| HttpSessionStore$SessionBindingListener | HttpSessionStore$SessionBindingListener | org.apache.wicket.session.HttpSessionStore$SessionBindingListener |
| AbstractAjaxResponse$AjaxHeaderResponse | AbstractAjaxResponse$AjaxHeaderResponse | org.apache.wicket.ajax.AbstractAjaxResponse$AjaxHeaderResponse |
| AbstractAjaxResponse$AjaxHtmlHeaderContainer | AbstractAjaxResponse$AjaxHtmlHeaderContainer | org.apache.wicket.ajax.AbstractAjaxResponse$AjaxHtmlHeaderContainer |
| AjaxRequestTarget$IJavaScriptResponse | AjaxRequestTarget$IJavaScriptResponse | org.apache.wicket.ajax.AjaxRequestTarget$IJavaScriptResponse |
| AjaxRequestTarget$ITargetRespondListener | AjaxRequestTarget$ITargetRespondListener | org.apache.wicket.ajax.AjaxRequestTarget$ITargetRespondListener |
| WicketAjaxDebugJQueryResourceReference | WicketAjaxDebugJQueryResourceReference | org.apache.wicket.ajax.WicketAjaxDebugJQueryResourceReference |
| AjaxFormChoiceComponentUpdatingBehavior$1 | AjaxFormChoiceComponentUpdatingBehavior$1 | org.apache.wicket.ajax.form.AjaxFormChoiceComponentUpdatingBehavior$1 |
| AjaxFormChoiceComponentUpdatingBehavior | AjaxFormChoiceComponentUpdatingBehavior | org.apache.wicket.ajax.form.AjaxFormChoiceComponentUpdatingBehavior |
| AjaxFormValidatingBehavior$FormValidateVisitor$1 | AjaxFormValidatingBehavior$FormValidateVisitor$1 | org.apache.wicket.ajax.form .AjaxFormValidatingBehavior$FormValidateVisitor$1 |
| AjaxFormValidatingBehavior$FormValidateVisitor | AjaxFormValidatingBehavior$FormValidateVisitor | org.apache.wicket.ajax.form .AjaxFormValidatingBehavior$FormValidateVisitor |
| IUnauthorizedComponentInstantiationListener | IUnauthorizedComponentInstantiationListener | org.apache.wicket.authorization .IUnauthorizedComponentInstantiationListener |
| CryptoMapper$ApplicationCryptProvider | CryptoMapper$ApplicationCryptProvider | org.apache.wicket.core.request.mapper .CryptoMapper$ApplicationCryptProvider |
| BookmarkableListenerInterfaceRequestHandler | BookmarkableListenerInterfaceRequestHandler | org.apache.wicket.core.request.handler .BookmarkableListenerInterfaceRequestHandler |
| ListenerInvocationNotAllowedException | ListenerInvocationNotAllowedException | org.apache.wicket.core.request.handler .ListenerInvocationNotAllowedException |
| RenderPageRequestHandler$RedirectPolicy | RenderPageRequestHandler$RedirectPolicy | org.apache.wicket.core.request.handler .RenderPageRequestHandler$RedirectPolicy |
| SerializableChecker$ObjectSerializationChecker | SerializableChecker$ObjectSerializationChecker | org.apache.wicket.core.util.io .SerializableChecker$ObjectSerializationChecker |
| SerializableChecker$WicketNotSerializableException | SerializableChecker$WicketNotSerializableException | org.apache.wicket.core.util.io .SerializableChecker$WicketNotSerializableException |
| PropertyResolver$ArrayPropertyGetSet | PropertyResolver$ArrayPropertyGetSet | org.apache.wicket.core.util.lang.PropertyResolver$ArrayPropertyGetSet |
| WicketObjects$ReplaceObjectInputStream | WicketObjects$ReplaceObjectInputStream | org.apache.wicket.core.util.lang .WicketObjects$ReplaceObjectInputStream |
| WicketObjects$ReplaceObjectOutputStream | WicketObjects$ReplaceObjectOutputStream | org.apache.wicket.core.util.lang .WicketObjects$ReplaceObjectOutputStream |
| WicketObjects$SerializingObjectSizeOfStrategy | WicketObjects$SerializingObjectSizeOfStrategy | org.apache.wicket.core.util.lang .WicketObjects$SerializingObjectSizeOfStrategy |
| CheckingObjectOutputStream$1InterceptingObjectOutputStream | CheckingObjectOutputStream$1InterceptingObjectOutputStream | org.apache.wicket.core.util.objects.checker .CheckingObjectOutputStream$1InterceptingObjectOutputStream |
| CheckingObjectOutputStream$NoopOutputStream | CheckingObjectOutputStream$NoopOutputStream | org.apache.wicket.core.util.objects.checker .CheckingObjectOutputStream$NoopOutputStream |
| CheckingObjectOutputStream$ObjectCheckException | CheckingObjectOutputStream$ObjectCheckException | org.apache.wicket.core.util.objects.checker .CheckingObjectOutputStream$ObjectCheckException |
| CheckingObjectOutputStream$ObjectOutputAdaptor | CheckingObjectOutputStream$ObjectOutputAdaptor | org.apache.wicket.core.util.objects.checker .CheckingObjectOutputStream$ObjectOutputAdaptor |
| CheckingObjectOutputStream$TraceSlot | CheckingObjectOutputStream$TraceSlot | org.apache.wicket.core.util.objects.checker .CheckingObjectOutputStream$TraceSlot |
| StyleAndVariationResourceNameIterator | StyleAndVariationResourceNameIterator | org.apache.wicket.core.util.resource.locator .StyleAndVariationResourceNameIterator |
| ConvertingPropertyVariableInterpolator | ConvertingPropertyVariableInterpolator | org.apache.wicket.core.util.string.interpolator .ConvertingPropertyVariableInterpolator |
| MarkupCache$DefaultCacheImplementation<K,V> | MarkupCache$DefaultCacheImplementation | org.apache.wicket.markup.MarkupCache$DefaultCacheImplementation |
| AutoLinkResolver$AbstractAutolinkResolverDelegate | AutoLinkResolver$AbstractAutolinkResolverDelegate | org.apache.wicket.markup.resolver .AutoLinkResolver$AbstractAutolinkResolverDelegate |
| AutoLinkResolver$AnchorResolverDelegate | AutoLinkResolver$AnchorResolverDelegate | org.apache.wicket.markup.resolver .AutoLinkResolver$AnchorResolverDelegate |
| AutoLinkResolver$AutolinkBookmarkablePageLink<T> | AutoLinkResolver$AutolinkBookmarkablePageLink | org.apache.wicket.markup.resolver .AutoLinkResolver$AutolinkBookmarkablePageLink |
| AutoLinkResolver$AutolinkExternalLink | AutoLinkResolver$AutolinkExternalLink | org.apache.wicket.markup.resolver .AutoLinkResolver$AutolinkExternalLink |
| AutoLinkResolver$IAutolinkResolverDelegate | AutoLinkResolver$IAutolinkResolverDelegate | org.apache.wicket.markup.resolver .AutoLinkResolver$IAutolinkResolverDelegate |
| AutoLinkResolver$ITagReferenceResolver | AutoLinkResolver$ITagReferenceResolver | org.apache.wicket.markup.resolver .AutoLinkResolver$ITagReferenceResolver |
| AutoLinkResolver$ResourceReferenceAutolink | AutoLinkResolver$ResourceReferenceAutolink | org.apache.wicket.markup.resolver .AutoLinkResolver$ResourceReferenceAutolink |
| AutoLinkResolver$ResourceReferenceResolverDelegate | AutoLinkResolver$ResourceReferenceResolverDelegate | org.apache.wicket.markup.resolver .AutoLinkResolver$ResourceReferenceResolverDelegate |
| AutoLinkResolver$TagReferenceResolver | AutoLinkResolver$TagReferenceResolver | org.apache.wicket.markup.resolver .AutoLinkResolver$TagReferenceResolver |
| WicketMessageResolver$MessageContainer$1 | WicketMessageResolver$MessageContainer$1 | org.apache.wicket.markup.resolver .WicketMessageResolver$MessageContainer$1 |
| WicketMessageResolver$MessageContainer | WicketMessageResolver$MessageContainer | org.apache.wicket.markup.resolver .WicketMessageResolver$MessageContainer |
| AbstractOutputTransformerContainer$1 | AbstractOutputTransformerContainer$1 | org.apache.wicket.markup.transformer .AbstractOutputTransformerContainer$1 |
| AbstractOutputTransformerContainer$2 | AbstractOutputTransformerContainer$2 | org.apache.wicket.markup.transformer .AbstractOutputTransformerContainer$2 |
| PriorityFirstComparator$HeaderItemType | PriorityFirstComparator$HeaderItemType | org.apache.wicket.markup.head.PriorityFirstComparator$HeaderItemType |
| ResourceAggregator$RecordedHeaderItem | ResourceAggregator$RecordedHeaderItem | org.apache.wicket.markup.head.ResourceAggregator$RecordedHeaderItem |
| ResourceAggregator$RecordedHeaderItemLocation | ResourceAggregator$RecordedHeaderItemLocation | org.apache.wicket.markup.head .ResourceAggregator$RecordedHeaderItemLocation |
| CssAndPageAcceptingHeaderResponseFilter | CssAndPageAcceptingHeaderResponseFilter | org.apache.wicket.markup.head.filter .CssAndPageAcceptingHeaderResponseFilter |
| FilteringHeaderResponse$IHeaderResponseFilter | FilteringHeaderResponse$IHeaderResponseFilter | org.apache.wicket.markup.head.filter .FilteringHeaderResponse$IHeaderResponseFilter |
| JavaScriptAcceptingHeaderResponseFilter | JavaScriptAcceptingHeaderResponseFilter | org.apache.wicket.markup.head.filter .JavaScriptAcceptingHeaderResponseFilter |
| JavaScriptFilteredIntoFooterHeaderResponse | JavaScriptFilteredIntoFooterHeaderResponse | org.apache.wicket.markup.head.filter .JavaScriptFilteredIntoFooterHeaderResponse |
| SecurePackageResourceGuard$SearchPattern | SecurePackageResourceGuard$SearchPattern | org.apache.wicket.markup.html.SecurePackageResourceGuard$SearchPattern |
| SecurePackageResourceGuard$SimpleCache | SecurePackageResourceGuard$SimpleCache | org.apache.wicket.markup.html.SecurePackageResourceGuard$SimpleCache |
| HtmlHeaderContainer$HeaderStreamState | HtmlHeaderContainer$HeaderStreamState | org.apache.wicket.markup.html.internal .HtmlHeaderContainer$HeaderStreamState |
| BrowserInfoForm$ClientPropertiesBean | BrowserInfoForm$ClientPropertiesBean | org.apache.wicket.markup.html.pages .BrowserInfoForm$ClientPropertiesBean |
| AbstractTextComponent$ITextFormatProvider | AbstractTextComponent$ITextFormatProvider | org.apache.wicket.markup.html.form .AbstractTextComponent$ITextFormatProvider |
| FormComponentFeedbackBorder$ErrorIndicator | FormComponentFeedbackBorder$ErrorIndicator | org.apache.wicket.markup.html.form.validation .FormComponentFeedbackBorder$ErrorIndicator |
| DefaultButtonImageResourceFactory$Parser | DefaultButtonImageResourceFactory$Parser | org.apache.wicket.markup.html.image.resource .DefaultButtonImageResourceFactory$Parser |
| LocalizedImageResource$ImageValueParser | LocalizedImageResource$ImageValueParser | org.apache.wicket.markup.html.image.resource .LocalizedImageResource$ImageValueParser |
| LocalizedImageResource$SimpleStaticResourceReference | LocalizedImageResource$SimpleStaticResourceReference | org.apache.wicket.markup.html.image.resource .LocalizedImageResource$SimpleStaticResourceReference |
| WicketMessageTagHandler$AttributeLocalizer | WicketMessageTagHandler$AttributeLocalizer | org.apache.wicket.markup.parser.filter .WicketMessageTagHandler$AttributeLocalizer |
| AbstractPageableView$CappedIteratorAdapter<T> | AbstractPageableView$CappedIteratorAdapter | org.apache.wicket.markup.repeater .AbstractPageableView$CappedIteratorAdapter |
| ComponentPropertyModel$AssignmentWrapper<P> | ComponentPropertyModel$AssignmentWrapper | org.apache.wicket.model.ComponentPropertyModel$AssignmentWrapper |
| CompoundPropertyModel$AttachedCompoundPropertyModel<C> | CompoundPropertyModel$AttachedCompoundPropertyModel | org.apache.wicket.model .CompoundPropertyModel$AttachedCompoundPropertyModel |
| StringResourceModel$AssignmentWrapper | StringResourceModel$AssignmentWrapper | org.apache.wicket.model.StringResourceModel$AssignmentWrapper |
| AsynchronousDataStore$PageSavingRunnable | AsynchronousDataStore$PageSavingRunnable | org.apache.wicket.pageStore.AsynchronousDataStore$PageSavingRunnable |
| DefaultPageStore$SerializedPagesCache | DefaultPageStore$SerializedPagesCache | org.apache.wicket.pageStore.DefaultPageStore$SerializedPagesCache |
| PageWindowManager$PageWindowInternal | PageWindowManager$PageWindowInternal | org.apache.wicket.pageStore.PageWindowManager$PageWindowInternal |
| BufferedWebResponse$ClearCookieAction | BufferedWebResponse$ClearCookieAction | org.apache.wicket.protocol.http.BufferedWebResponse$ClearCookieAction |
| BufferedWebResponse$SendRedirectAction | BufferedWebResponse$SendRedirectAction | org.apache.wicket.protocol.http.BufferedWebResponse$SendRedirectAction |
| BufferedWebResponse$SetContentLengthAction | BufferedWebResponse$SetContentLengthAction | org.apache.wicket.protocol.http .BufferedWebResponse$SetContentLengthAction |
| BufferedWebResponse$SetContentTypeAction | BufferedWebResponse$SetContentTypeAction | org.apache.wicket.protocol.http .BufferedWebResponse$SetContentTypeAction |
| BufferedWebResponse$SetDateHeaderAction | BufferedWebResponse$SetDateHeaderAction | org.apache.wicket.protocol.http .BufferedWebResponse$SetDateHeaderAction |
| BufferedWebResponse$WriteCharSequenceAction | BufferedWebResponse$WriteCharSequenceAction | org.apache.wicket.protocol.http .BufferedWebResponse$WriteCharSequenceAction |
| WebApplication$DefaultAjaxRequestTargetProvider | WebApplication$DefaultAjaxRequestTargetProvider | org.apache.wicket.protocol.http .WebApplication$DefaultAjaxRequestTargetProvider |
| WebApplication$WebPageRendererProvider | WebApplication$WebPageRendererProvider | org.apache.wicket.protocol.http.WebApplication$WebPageRendererProvider |
| WebApplication$WebSessionStoreProvider | WebApplication$WebSessionStoreProvider | org.apache.wicket.protocol.http.WebApplication$WebSessionStoreProvider |
| WebApplicationFactoryCreationException | WebApplicationFactoryCreationException | org.apache.wicket.protocol.http.WebApplicationFactoryCreationException |
Statistics
| Stat | SimpleName |
|---|---|
| Sum: | 0 |
| Average: | 0 |
| Minimum: | 0 |
| Maximum: | 0 |
| Standard deviation: | 0 |
| Variance: | 0 |
| Query error: Avoid methods with name too long |
Content of the Rule or Query
warnif count > 0 from m in Application.Methods where
!m.IsGeneratedByCompiler &&
((!m.IsSpecialName && m.SimpleName.Length > 35)
select new { m, m.SimpleName }
// The regex matches methods with name longer
// than 35 characters.
// Method Name doesn't contain the type and package
// prefix, FullName does.
// The regex computes the method name length from
// the beginning until the first open parenthesis
// or first lower than (for generic methods).
// Explicit Interface Implementation methods are
// discarded because their names are prefixed
// with the interface name.
| Rule warning: Avoid fields with name too long |
warnif count > 0 from f in Application.Fields where
!f.IsGeneratedByCompiler &&
f.Name.Length > 35
select f
// The regex matches fields with name longer
// than 35 characters.
// Field Name doesn't contain the type and
// package prefix, FullName does.
16 fields matched
| fields | Full Name |
|---|---|
| componentPostOnBeforeRenderListeners | org.apache.wicket.Application.componentPostOnBeforeRenderListeners |
| RFLAG_BEFORE_RENDER_SUPER_CALL_VERIFIED | org.apache.wicket.Component.RFLAG_BEFORE_RENDER_SUPER_CALL_VERIFIED |
| RFLAG_INITIALIZE_SUPER_CALL_VERIFIED | org.apache.wicket.Component.RFLAG_INITIALIZE_SUPER_CALL_VERIFIED |
| BEFORE_SEND_HANDLER_FUNCTION_TEMPLATE | org.apache.wicket.ajax.AbstractDefaultAjaxBehavior .BEFORE_SEND_HANDLER_FUNCTION_TEMPLATE |
| FLAG_CONVERT_EMPTY_INPUT_STRING_TO_NULL | org.apache.wicket.markup.html.form.FormComponent .FLAG_CONVERT_EMPTY_INPUT_STRING_TO_NULL |
| WICKET_RELATIVE_PATH_PREFIX_CONTAINER_ID | org.apache.wicket.markup.parser.filter.RelativePathPrefixHandler .WICKET_RELATIVE_PATH_PREFIX_CONTAINER_ID |
| proprietaryIECssExpressionsSupported | org.apache.wicket.protocol.http.ClientProperties .proprietaryIECssExpressionsSupported |
| quirkCssBackgroundAttachmentUseFixed | org.apache.wicket.protocol.http.ClientProperties .quirkCssBackgroundAttachmentUseFixed |
| quirkIETablePercentWidthScrollbarError | org.apache.wicket.protocol.http.ClientProperties .quirkIETablePercentWidthScrollbarError |
| quirkMozillaPerformanceLargeDomRemove | org.apache.wicket.protocol.http.ClientProperties .quirkMozillaPerformanceLargeDomRemove |
| linePreciseReportingOnAddComponentEnabled | org.apache.wicket.settings.def.DebugSettings .linePreciseReportingOnAddComponentEnabled |
| linePreciseReportingOnNewComponentEnabled | org.apache.wicket.settings.def.DebugSettings .linePreciseReportingOnNewComponentEnabled |
| errorHandlingStrategyDuringAjaxRequests | org.apache.wicket.settings.def.ExceptionSettings .errorHandlingStrategyDuringAjaxRequests |
| throwExceptionOnMissingXmlDeclaration | org.apache.wicket.settings.def.MarkupSettings .throwExceptionOnMissingXmlDeclaration |
| unauthorizedComponentInstantiationListener | org.apache.wicket.settings.def.SecuritySettings .unauthorizedComponentInstantiationListener |
| originalFeedbackMessageCleanupFilter | org.apache.wicket.util.tester.BaseWicketTester .originalFeedbackMessageCleanupFilter |
Statistics
| Stat |
|---|
| Sum: |
| Average: |
| Minimum: |
| Maximum: |
| Standard deviation: |
| Variance: |
| Rule warning: Avoid having different types with same name |
// Such practice typically creates confusion,
// and type naming collision inside a source file.
warnif count > 0
// This rule matches also collisions between
// application and third-party types sharing a same name.
let groups = JustMyCode.Types.Union(ThirdParty.Types)
// Discard nested types, whose name is
// prefixed with the parent type name.
.Where(t => !t.IsNested)
// Group types by name.
.GroupBy(t => t.Name)
from @group in groups
where @group.Count() > 1
// Let's see if types with the same name are declared
// in different packages.
// (t.FullName is {packageName}.{typeName} )
let groupsFullName = @group.GroupBy(t => t.FullName)
where groupsFullName.Count() > 1
// If several types with same name are declared in different packages
// eliminate the case where all types are declared in third-party projects.
let types= groupsFullName.SelectMany(g => g)
where types.Any(t => !t.IsThirdParty)
// Uncomment this line, to only gets naming collision involving
// both application adn third-party types.
// && types.Any(t => t.IsThirdParty)
orderby types.Count() descending
select new { t = types.First(),
// In the 'types' column, make sure to group matched types
// by parent projects and parent packages.
types
}
3 types matched
| types | types | Full Name |
|---|---|---|
| Cookie | 2 types | org.apache.wicket.ajax.json.Cookie |
| UrlUtils | 2 types | org.apache.wicket.core.util.string.UrlUtils |
| Properties | 2 types | org.apache.wicket.resource.Properties |
Statistics
| Stat | types |
|---|---|
| Sum: | 0 |
| Average: | 0 |
| Minimum: | 0 |
| Maximum: | 0 |
| Standard deviation: | 0 |
| Variance: | 0 |
| Source Files Organization | 410 |
|
| Rule warning: Avoid defining multiple types in a source file |
warnif count > 0
// Build a lookup indexed by source files, values being a sequence of types defined in the source file.
let lookup = Application.Types.Where(t =>
t.SourceFileDeclAvailable &&
// except nested types and types generated by compilers!
!t.IsGeneratedByCompiler &&
!t.IsNested)
// It could make sense to not apply this rule for enumerations.
// && !t.IsEnumeration)
// We use multi-key, since a type can be declared in multiple source files.
.ToMultiKeyLookup(t => t.SourceDecls.Select(d => d.SourceFile))
from @group in lookup where @group.Count() > 1
let sourceFile = @group.Key
// CQLinq doesn't let indexing result with sourceFile
// so we choose a typeIndex in types,
// preferably the type that has the file name.
let typeWithSourceFileName = @group.FirstOrDefault(t => t.SimpleName == sourceFile.FileNameWithoutExtension)
let typeIndex = typeWithSourceFileName ?? @group.First()
select new { typeIndex,
types = @group as IEnumerable<IType>,
sourceFile.FilePathString }
58 types matched
| types | types | FilePathString | Full Name |
|---|---|---|---|
| Application | 3 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\Application.java | org.apache.wicket.Application |
| Behaviors | 2 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\Behaviors.java | org.apache.wicket.Behaviors |
| ComponentEventSender | 3 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\ComponentEventSender.java | org.apache.wicket.ComponentEventSender |
| ConverterLocator | 4 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\ConverterLocator.java | org.apache.wicket.ConverterLocator |
| Localizer | 2 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\Localizer.java | org.apache.wicket.Localizer |
| MarkupContainer | 9 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\MarkupContainer.java | org.apache.wicket.MarkupContainer |
| Session | 2 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\Session.java | org.apache.wicket.Session |
| SharedResources | 3 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\SharedResources.java | org.apache.wicket.SharedResources |
| SystemMapper | 5 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\SystemMapper.java | org.apache.wicket.SystemMapper |
| WildcardMatcherHelper | 9 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\application\WildcardMatcherHelper.java | org.apache.wicket.application.WildcardMatcherHelper |
| MockApplication | 3 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\mock\MockApplication.java | org.apache.wicket.mock.MockApplication |
| PageStoreManager | 7 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\page\PageStoreManager.java | org.apache.wicket.page.PageStoreManager |
| HttpSessionStore | 5 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\session\HttpSessionStore.java | org.apache.wicket.session.HttpSessionStore |
| AbstractAjaxResponse | 14 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\ajax\AbstractAjaxResponse.java | org.apache.wicket.ajax.AbstractAjaxResponse |
| JSONObject | 4 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\ajax\json\JSONObject.java | org.apache.wicket.ajax.json.JSONObject |
| AbstractBookmarkableMapper | 6 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\core\request\mapper\AbstractBookmarkableMapper.java | org.apache.wicket.core.request.mapper.AbstractBookmarkableMapper |
| CryptoMapper | 6 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\core\request\mapper\CryptoMapper.java | org.apache.wicket.core.request.mapper.CryptoMapper |
| MountedMapper | 12 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\core\request\mapper\MountedMapper.java | org.apache.wicket.core.request.mapper.MountedMapper |
| SerializableChecker | 5 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\core\util\io\SerializableChecker.java | org.apache.wicket.core.util.io.SerializableChecker |
| PropertyResolver | 53 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\core\util\lang\PropertyResolver.java | org.apache.wicket.core.util.lang.PropertyResolver |
| WicketObjects | 8 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\core\util\lang\WicketObjects.java | org.apache.wicket.core.util.lang.WicketObjects |
| CheckingObjectOutputStream | 4 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\core\util\objects\checker\CheckingObjectOutputStream.java | org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream |
| MarkupCache | 11 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\markup\MarkupCache.java | org.apache.wicket.markup.MarkupCache |
| MarkupParser | 5 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\markup\MarkupParser.java | org.apache.wicket.markup.MarkupParser |
| AutoLinkResolver | 11 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\markup\resolver\AutoLinkResolver.java | org.apache.wicket.markup.resolver.AutoLinkResolver |
| SecurePackageResourceGuard | 14 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\markup\html\SecurePackageResourceGuard.java | org.apache.wicket.markup.html.SecurePackageResourceGuard |
| Border | 8 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\markup\html\border\Border.java | org.apache.wicket.markup.html.border.Border |
| HtmlHeaderContainer | 4 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\markup\html\internal\HtmlHeaderContainer.java | org.apache.wicket.markup.html.internal.HtmlHeaderContainer |
| ClientSideImageMap | 4 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\markup\html\link\ClientSideImageMap.java | org.apache.wicket.markup.html.link.ClientSideImageMap |
| AutoLabelResolver | 4 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\markup\html\form\AutoLabelResolver.java | org.apache.wicket.markup.html.form.AutoLabelResolver |
| CheckBox | 4 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\markup\html\form\CheckBox.java | org.apache.wicket.markup.html.form.CheckBox |
| MultiFileUploadField | 2 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\markup\html\form\upload\MultiFileUploadField.java | org.apache.wicket.markup.html.form.upload.MultiFileUploadField |
| FormComponentFeedbackBorder | 3 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\markup\html\form\validation\FormComponentFeedbackBorder.java | org.apache.wicket.markup.html.form.validation .FormComponentFeedbackBorder |
| DefaultButtonImageResourceFactory | 5 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\markup\html\image\resource\DefaultButtonImageResourceFactory.java | org.apache.wicket.markup.html.image.resource .DefaultButtonImageResourceFactory |
| LocalizedImageResource | 7 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\markup\html\image\resource\LocalizedImageResource.java | org.apache.wicket.markup.html.image.resource.LocalizedImageResource |
| PagingNavigation | 3 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\markup\html\navigation\paging\PagingNavigation.java | org.apache.wicket.markup.html.navigation.paging.PagingNavigation |
| PagingNavigator | 3 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\markup\html\navigation\paging\PagingNavigator.java | org.apache.wicket.markup.html.navigation.paging.PagingNavigator |
| WicketMessageTagHandler | 3 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\markup\parser\filter\WicketMessageTagHandler.java | org.apache.wicket.markup.parser.filter.WicketMessageTagHandler |
| ResourceModel | 5 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\model\ResourceModel.java | org.apache.wicket.model.ResourceModel |
| StringResourceModel | 7 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\model\StringResourceModel.java | org.apache.wicket.model.StringResourceModel |
| AsynchronousDataStore | 7 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\pageStore\AsynchronousDataStore.java | org.apache.wicket.pageStore.AsynchronousDataStore |
| DefaultPageStore | 12 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\pageStore\DefaultPageStore.java | org.apache.wicket.pageStore.DefaultPageStore |
| DiskDataStore | 12 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\pageStore\DiskDataStore.java | org.apache.wicket.pageStore.DiskDataStore |
| HttpsMapper | 5 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\protocol\https\HttpsMapper.java | org.apache.wicket.protocol.https.HttpsMapper |
| BufferedWebResponse | 35 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\protocol\http\BufferedWebResponse.java | org.apache.wicket.protocol.http.BufferedWebResponse |
| WebApplication | 4 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\protocol\http\WebApplication.java | org.apache.wicket.protocol.http.WebApplication |
| MockHttpServletRequest | 8 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\protocol\http\mock\MockHttpServletRequest.java | org.apache.wicket.protocol.http.mock.MockHttpServletRequest |
| SecuredRemoteAddressRequestWrapperFactory | 2 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\protocol\http\servlet\SecuredRemoteAddressRequestWrapperFactory.java | org.apache.wicket.protocol.http.servlet .SecuredRemoteAddressRequestWrapperFactory |
| XForwardedRequestWrapperFactory | 11 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\protocol\http\servlet\XForwardedRequestWrapperFactory.java | org.apache.wicket.protocol.http.servlet .XForwardedRequestWrapperFactory |
| RequestCycle | 3 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\request\cycle\RequestCycle.java | org.apache.wicket.request.cycle.RequestCycle |
| AbstractResource | 30 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\request\resource\AbstractResource.java | org.apache.wicket.request.resource.AbstractResource |
| PackageResource | 6 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\request\resource\PackageResource.java | org.apache.wicket.request.resource.PackageResource |
| ResourceReferenceRegistry | 2 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\request\resource\ResourceReferenceRegistry.java | org.apache.wicket.request.resource.ResourceReferenceRegistry |
| JavaSerializer | 7 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\serialize\java\JavaSerializer.java | org.apache.wicket.serialize.java.JavaSerializer |
| BaseWicketTester | 19 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\util\tester\BaseWicketTester.java | org.apache.wicket.util.tester.BaseWicketTester |
| DummyHomePage | 3 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\util\tester\DummyHomePage.java | org.apache.wicket.util.tester.DummyHomePage |
| FormTester | 7 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\util\tester\FormTester.java | org.apache.wicket.util.tester.FormTester |
| CreditCardValidator | 2 types | C:\Users\issam\Downloads\apache-wicket-6.6.0\apache-wicket-6.6.0\wicket-core\src\main\java\org\apache\wicket\validation\validator\CreditCardValidator.java | org.apache.wicket.validation.validator.CreditCardValidator |
Statistics
| Stat | types | FilePathString |
|---|---|---|
| Sum: | 0 | 0 |
| Average: | 0 | 0 |
| Minimum: | 0 | 0 |
| Maximum: | 0 | 0 |
| Standard deviation: | 0 | 0 |
| Variance: | 0 | 0 |
Object Oriented Design
warnif count > 0
from baseClass in JustMyCode.Types
where baseClass.IsClass && baseClass.NbChildren > 0 // <-- for optimization!
let derivedClassesUsed = baseClass.DerivedTypes.UsedBy(baseClass)
where derivedClassesUsed.Count() > 0
select new { baseClass, derivedClassesUsed }
10 types matched
| types | derivedClassesUsed | Full Name |
|---|---|---|
| AttributeModifier | 2 types | org.apache.wicket.AttributeModifier |
| Component | 3 types | org.apache.wicket.Component |
| MarkupContainer | 1 type | org.apache.wicket.MarkupContainer |
| AjaxFormComponentUpdatingBehavior | 1 type | org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior |
| CheckingObjectOutputStream$ObjectOutputAdaptor | 1 type | org.apache.wicket.core.util.objects.checker .CheckingObjectOutputStream$ObjectOutputAdaptor |
| AbstractHeaderRenderStrategy | 1 type | org.apache.wicket.markup.renderStrategy.AbstractHeaderRenderStrategy |
| CssHeaderItem | 3 types | org.apache.wicket.markup.head.CssHeaderItem |
| JavaScriptHeaderItem | 3 types | org.apache.wicket.markup.head.JavaScriptHeaderItem |
| MultipartServletWebRequest | 1 type | org.apache.wicket.protocol.http.servlet.MultipartServletWebRequest |
| ServletWebRequest | 3 types | org.apache.wicket.protocol.http.servlet.ServletWebRequest |
Statistics
| Stat | derivedClassesUsed |
|---|---|
| Sum: | 0 |
| Average: | 0 |
| Minimum: | 0 |
| Maximum: | 0 |
| Standard deviation: | 0 |
| Variance: | 0 |
warnif count > 0 from t in JustMyCode.Types
where t.IsClass
let baseClasses = t.BaseClasses.ExceptThirdParty()
// Warn for classes with 3 or more base classes.
// Notice that we don't count third-party classes
// because this rule concerns your code design,
// not third-party libraries consumed design.
where baseClasses.Count() >= 3
select new { t, baseClasses,
// The metric value DepthOfInheritance takes account
// of third-party base classes
t.DepthOfInheritance }
// Branches too long in the derivation should be avoided.
// See the definition of the DepthOfInheritance metric here
// http://www.jarchitect.com/Metrics.aspx#DIT
168 types matched
| types | baseClasses | Depth of inheritance | Full Name |
|---|---|---|---|
| AttributeModifier$1 | 3 types | 4 | org.apache.wicket.AttributeModifier$1 |
| FencedFeedbackPanel | 5 types | 6 | org.apache.wicket.feedback.FencedFeedbackPanel |
| MockHomePage | 4 types | 5 | org.apache.wicket.mock.MockHomePage |
| AbstractAjaxResponse$AjaxHtmlHeaderContainer | 5 types | 6 | org.apache.wicket.ajax.AbstractAjaxResponse$AjaxHtmlHeaderContainer |
| AbstractAjaxTimerBehavior | 3 types | 4 | org.apache.wicket.ajax.AbstractAjaxTimerBehavior |
| AjaxEventBehavior | 3 types | 4 | org.apache.wicket.ajax.AjaxEventBehavior |
| AjaxNewWindowNotifyingBehavior | 3 types | 4 | org.apache.wicket.ajax.AjaxNewWindowNotifyingBehavior |
| AjaxSelfUpdatingTimerBehavior | 4 types | 5 | org.apache.wicket.ajax.AjaxSelfUpdatingTimerBehavior |
| WicketAjaxDebugJQueryResourceReference | 3 types | 4 | org.apache.wicket.ajax.WicketAjaxDebugJQueryResourceReference |
| WicketAjaxJQueryResourceReference | 3 types | 4 | org.apache.wicket.ajax.WicketAjaxJQueryResourceReference |
| WicketEventJQueryResourceReference | 3 types | 4 | org.apache.wicket.ajax.WicketEventJQueryResourceReference |
| AjaxFormChoiceComponentUpdatingBehavior | 5 types | 6 | org.apache.wicket.ajax.form.AjaxFormChoiceComponentUpdatingBehavior |
| AjaxFormComponentUpdatingBehavior | 4 types | 5 | org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior |
| AjaxFormSubmitBehavior | 4 types | 5 | org.apache.wicket.ajax.form.AjaxFormSubmitBehavior |
| AjaxFormValidatingBehavior$FormValidateVisitor$1 | 6 types | 7 | org.apache.wicket.ajax.form .AjaxFormValidatingBehavior$FormValidateVisitor$1 |
| AjaxFormValidatingBehavior | 5 types | 6 | org.apache.wicket.ajax.form.AjaxFormValidatingBehavior |
| OnChangeAjaxBehavior | 5 types | 6 | org.apache.wicket.ajax.form.OnChangeAjaxBehavior |
| AjaxFallbackLink$1 | 4 types | 5 | org.apache.wicket.ajax.markup.html.AjaxFallbackLink$1 |
| AjaxFallbackLink<T> | 5 types | 6 | org.apache.wicket.ajax.markup.html.AjaxFallbackLink |
| AjaxLink$1 | 4 types | 5 | org.apache.wicket.ajax.markup.html.AjaxLink$1 |
| AjaxLink<T> | 4 types | 5 | org.apache.wicket.ajax.markup.html.AjaxLink |
| AjaxButton$1 | 5 types | 6 | org.apache.wicket.ajax.markup.html.form.AjaxButton$1 |
| AjaxButton | 6 types | 7 | org.apache.wicket.ajax.markup.html.form.AjaxButton |
| AjaxCheckBox$1 | 5 types | 6 | org.apache.wicket.ajax.markup.html.form.AjaxCheckBox$1 |
| AjaxCheckBox | 6 types | 7 | org.apache.wicket.ajax.markup.html.form.AjaxCheckBox |
| AjaxFallbackButton$1 | 5 types | 6 | org.apache.wicket.ajax.markup.html.form.AjaxFallbackButton$1 |
| AjaxFallbackButton | 6 types | 7 | org.apache.wicket.ajax.markup.html.form.AjaxFallbackButton |
| AjaxSubmitLink$1 | 5 types | 6 | org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1 |
| AjaxSubmitLink | 5 types | 6 | org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink |
| AjaxPagingNavigation | 6 types | 7 | org.apache.wicket.ajax.markup.html.navigation.paging .AjaxPagingNavigation |
| AjaxPagingNavigationBehavior | 4 types | 5 | org.apache.wicket.ajax.markup.html.navigation.paging .AjaxPagingNavigationBehavior |
| AjaxPagingNavigationIncrementLink$1 | 5 types | 6 | org.apache.wicket.ajax.markup.html.navigation.paging .AjaxPagingNavigationIncrementLink$1 |
| AjaxPagingNavigationIncrementLink | 6 types | 7 | org.apache.wicket.ajax.markup.html.navigation.paging .AjaxPagingNavigationIncrementLink |
| AjaxPagingNavigationLink$1 | 5 types | 6 | org.apache.wicket.ajax.markup.html.navigation.paging .AjaxPagingNavigationLink$1 |
| AjaxPagingNavigationLink | 6 types | 7 | org.apache.wicket.ajax.markup.html.navigation.paging .AjaxPagingNavigationLink |
| AjaxPagingNavigator | 5 types | 6 | org.apache.wicket.ajax.markup.html.navigation.paging .AjaxPagingNavigator |
| HomePageMapper | 3 types | 5 | org.apache.wicket.core.request.mapper.HomePageMapper |
| AutoLinkResolver$AutolinkBookmarkablePageLink<T> | 6 types | 7 | org.apache.wicket.markup.resolver .AutoLinkResolver$AutolinkBookmarkablePageLink |
| AutoLinkResolver$AutolinkExternalLink | 5 types | 6 | org.apache.wicket.markup.resolver .AutoLinkResolver$AutolinkExternalLink |
| AutoLinkResolver$ResourceReferenceAutolink | 3 types | 4 | org.apache.wicket.markup.resolver .AutoLinkResolver$ResourceReferenceAutolink |
| NoopOutputTransformerContainer | 3 types | 4 | org.apache.wicket.markup.transformer.NoopOutputTransformerContainer |
| XsltOutputTransformerContainer | 3 types | 4 | org.apache.wicket.markup.transformer.XsltOutputTransformerContainer |
| HeaderResponseContainer | 3 types | 4 | org.apache.wicket.markup.head.filter.HeaderResponseContainer |
| GenericWebPage<T> | 4 types | 5 | org.apache.wicket.markup.html.GenericWebPage |
| HeaderPartContainer | 3 types | 4 | org.apache.wicket.markup.html.HeaderPartContainer |
| TransparentWebMarkupContainer | 3 types | 4 | org.apache.wicket.markup.html.TransparentWebMarkupContainer |
| WebPage | 3 types | 4 | org.apache.wicket.markup.html.WebPage |
| EnclosureContainer | 3 types | 4 | org.apache.wicket.markup.html.basic.EnclosureContainer |
| Body | 3 types | 4 | org.apache.wicket.markup.html.border.Body |
| Border$BorderBodyContainer | 3 types | 4 | org.apache.wicket.markup.html.border.Border$BorderBodyContainer |
| Border | 3 types | 4 | org.apache.wicket.markup.html.border.Border |
| BorderPanel | 4 types | 5 | org.apache.wicket.markup.html.border.BorderPanel |
| BoxBorder | 4 types | 5 | org.apache.wicket.markup.html.border.BoxBorder |
| PageView$3 | 5 types | 6 | org.apache.wicket.markup.html.debug.PageView$3 |
| PageView | 4 types | 5 | org.apache.wicket.markup.html.debug.PageView |
| Enclosure | 3 types | 4 | org.apache.wicket.markup.html.internal.Enclosure |
| HtmlHeaderContainer | 4 types | 5 | org.apache.wicket.markup.html.internal.HtmlHeaderContainer |
| InlineEnclosure | 4 types | 5 | org.apache.wicket.markup.html.internal.InlineEnclosure |
| AbstractLink | 3 types | 4 | org.apache.wicket.markup.html.link.AbstractLink |
| BookmarkablePageLink<T> | 5 types | 6 | org.apache.wicket.markup.html.link.BookmarkablePageLink |
| ClientSideImageMap | 4 types | 5 | org.apache.wicket.markup.html.link.ClientSideImageMap |
| DownloadLink | 5 types | 6 | org.apache.wicket.markup.html.link.DownloadLink |
| ExternalLink | 4 types | 5 | org.apache.wicket.markup.html.link.ExternalLink |
| InlineFrame | 3 types | 4 | org.apache.wicket.markup.html.link.InlineFrame |
| Link<T> | 4 types | 5 | org.apache.wicket.markup.html.link.Link |
| PopupCloseLink$ClosePopupPage | 4 types | 5 | org.apache.wicket.markup.html.link.PopupCloseLink$ClosePopupPage |
| PopupCloseLink<T> | 5 types | 6 | org.apache.wicket.markup.html.link.PopupCloseLink |
| ResourceLink<T> | 5 types | 6 | org.apache.wicket.markup.html.link.ResourceLink |
| StatelessLink<T> | 5 types | 6 | org.apache.wicket.markup.html.link.StatelessLink |
| AbstractItem | 3 types | 4 | org.apache.wicket.markup.html.list.AbstractItem |
| ListItem<T> | 5 types | 6 | org.apache.wicket.markup.html.list.ListItem |
| ListView$1 | 5 types | 6 | org.apache.wicket.markup.html.list.ListView$1 |
| ListView$2 | 5 types | 6 | org.apache.wicket.markup.html.list.ListView$2 |
| ListView$3 | 5 types | 6 | org.apache.wicket.markup.html.list.ListView$3 |
| ListView<T> | 4 types | 5 | org.apache.wicket.markup.html.list.ListView |
| Loop | 4 types | 5 | org.apache.wicket.markup.html.list.Loop |
| LoopItem | 4 types | 5 | org.apache.wicket.markup.html.list.LoopItem |
| OddEvenListItem<T> | 6 types | 7 | org.apache.wicket.markup.html.list.OddEvenListItem |
| PageableListView<T> | 5 types | 6 | org.apache.wicket.markup.html.list.PageableListView |
| PropertyListView<T> | 5 types | 6 | org.apache.wicket.markup.html.list.PropertyListView |
| AbstractErrorPage | 4 types | 5 | org.apache.wicket.markup.html.pages.AbstractErrorPage |
| AccessDeniedPage | 5 types | 6 | org.apache.wicket.markup.html.pages.AccessDeniedPage |
| BrowserInfoForm$1 | 4 types | 5 | org.apache.wicket.markup.html.pages.BrowserInfoForm$1 |
| BrowserInfoForm | 4 types | 5 | org.apache.wicket.markup.html.pages.BrowserInfoForm |
| BrowserInfoPage$3 | 5 types | 6 | org.apache.wicket.markup.html.pages.BrowserInfoPage$3 |
| BrowserInfoPage | 4 types | 5 | org.apache.wicket.markup.html.pages.BrowserInfoPage |
| ExceptionErrorPage$1 | 5 types | 6 | org.apache.wicket.markup.html.pages.ExceptionErrorPage$1 |
| ExceptionErrorPage | 5 types | 6 | org.apache.wicket.markup.html.pages.ExceptionErrorPage |
| InternalErrorPage | 5 types | 6 | org.apache.wicket.markup.html.pages.InternalErrorPage |
| PageExpiredErrorPage | 5 types | 6 | org.apache.wicket.markup.html.pages.PageExpiredErrorPage |
| RedirectPage | 4 types | 5 | org.apache.wicket.markup.html.pages.RedirectPage |
| ComponentFeedbackPanel | 5 types | 6 | org.apache.wicket.markup.html.panel.ComponentFeedbackPanel |
| EmptyPanel | 4 types | 5 | org.apache.wicket.markup.html.panel.EmptyPanel |
| FeedbackPanel$1 | 3 types | 4 | org.apache.wicket.markup.html.panel.FeedbackPanel$1 |
| FeedbackPanel$MessageListView | 5 types | 6 | org.apache.wicket.markup.html.panel.FeedbackPanel$MessageListView |
| FeedbackPanel | 4 types | 5 | org.apache.wicket.markup.html.panel.FeedbackPanel |
| Fragment | 3 types | 4 | org.apache.wicket.markup.html.panel.Fragment |
| GenericPanel<T> | 4 types | 5 | org.apache.wicket.markup.html.panel.GenericPanel |
| Panel | 3 types | 4 | org.apache.wicket.markup.html.panel.Panel |
| AbstractCheckSelector$1 | 3 types | 4 | org.apache.wicket.markup.html.form.AbstractCheckSelector$1 |
Statistics
| Stat | baseClasses | Depth of inheritance |
|---|---|---|
| Sum: | 0 | 936 |
| Average: | 0 | 5.57 |
| Minimum: | 0 | 4 |
| Maximum: | 0 | 9 |
| Standard deviation: | 0 | 1.26 |
| Variance: | 0 | 1.59 |
warnif count > 0 from t in JustMyCode.Types where
t.IsClass &&
t.NbChildren ==0 &&
!t.IsFinal &&
!t.IsStatic
// && !t.IsPublic <-- You might want to add this condition
// if you are developping a framework
// with classes that are intended to be
// sub-classed by your clients.
orderby t.NbLinesOfCode descending
select new { t, t.NbLinesOfCode }
728 types matched
| types | # lines of code (LOC) | Full Name |
|---|---|---|
| JSONObject | 481 | org.apache.wicket.ajax.json.JSONObject |
| MockHttpServletRequest | 335 | org.apache.wicket.protocol.http.mock.MockHttpServletRequest |
| XML | 254 | org.apache.wicket.ajax.json.XML |
| JSONML | 231 | org.apache.wicket.ajax.json.JSONML |
| JSONArray | 184 | org.apache.wicket.ajax.json.JSONArray |
| XMLTokener | 184 | org.apache.wicket.ajax.json.XMLTokener |
| HtmlDocumentValidator | 182 | org.apache.wicket.protocol.http.documentvalidation .HtmlDocumentValidator |
| ClientProperties | 169 | org.apache.wicket.protocol.http.ClientProperties |
| MockHttpServletResponse | 162 | org.apache.wicket.protocol.http.mock.MockHttpServletResponse |
| RequestCycle | 159 | org.apache.wicket.request.cycle.RequestCycle |
| MergedMarkup | 145 | org.apache.wicket.markup.MergedMarkup |
| TagTester | 144 | org.apache.wicket.util.tester.TagTester |
| MarkupCache | 142 | org.apache.wicket.markup.MarkupCache |
| BufferedHttpServletResponse | 137 | org.apache.wicket.protocol.http.BufferedHttpServletResponse |
| UrlValidator | 130 | org.apache.wicket.validation.validator.UrlValidator |
| CreditCardValidator | 126 | org.apache.wicket.validation.validator.CreditCardValidator |
| Localizer | 124 | org.apache.wicket.Localizer |
| FormTester | 122 | org.apache.wicket.util.tester.FormTester |
| PageWindowManager | 118 | org.apache.wicket.pageStore.PageWindowManager |
| MockServletContext | 115 | org.apache.wicket.protocol.http.mock.MockServletContext |
| CheckBoxMultipleChoice<T> | 113 | org.apache.wicket.markup.html.form.CheckBoxMultipleChoice |
| MarkupStream | 112 | org.apache.wicket.markup.MarkupStream |
| RadioChoice<T> | 109 | org.apache.wicket.markup.html.form.RadioChoice |
| XmlTag | 108 | org.apache.wicket.markup.parser.XmlTag |
| WicketTester | 107 | org.apache.wicket.util.tester.WicketTester |
| AjaxRequestHandler | 99 | org.apache.wicket.ajax.AjaxRequestHandler |
| DiskDataStore | 99 | org.apache.wicket.pageStore.DiskDataStore |
| MultipartServletWebRequestImpl | 98 | org.apache.wicket.protocol.http.servlet.MultipartServletWebRequestImpl |
| DefaultPageStore | 94 | org.apache.wicket.pageStore.DefaultPageStore |
| WildcardMatcherHelper$Matcher | 93 | org.apache.wicket.application.WildcardMatcherHelper$Matcher |
| CDL | 91 | org.apache.wicket.ajax.json.CDL |
| ReloadingClassLoader | 89 | org.apache.wicket.application.ReloadingClassLoader |
| JavaScriptStripper | 89 | org.apache.wicket.core.util.string.JavaScriptStripper |
| StringResourceModel | 89 | org.apache.wicket.model.StringResourceModel |
| ConcatBundleResource | 88 | org.apache.wicket.resource.bundles.ConcatBundleResource |
| ResourceAggregator | 87 | org.apache.wicket.markup.head.ResourceAggregator |
| HtmlDocumentParser | 87 | org.apache.wicket.protocol.http.documentvalidation.HtmlDocumentParser |
| HttpSessionStore | 85 | org.apache.wicket.session.HttpSessionStore |
| BufferedWebResponse | 85 | org.apache.wicket.protocol.http.BufferedWebResponse |
| BasicResourceReferenceMapper | 84 | org.apache.wicket.core.request.mapper.BasicResourceReferenceMapper |
| ExceptionErrorPage | 80 | org.apache.wicket.markup.html.pages.ExceptionErrorPage |
| WebClientInfo | 78 | org.apache.wicket.protocol.http.request.WebClientInfo |
| XForwardedRequestWrapperFactory | 77 | org.apache.wicket.protocol.http.servlet .XForwardedRequestWrapperFactory |
| PageAccessSynchronizer | 76 | org.apache.wicket.page.PageAccessSynchronizer |
| BorderBehavior | 76 | org.apache.wicket.markup.html.border.BorderBehavior |
| MockWebResponse | 75 | org.apache.wicket.mock.MockWebResponse |
| WicketObjects | 74 | org.apache.wicket.core.util.lang.WicketObjects |
| ResourceSettings | 74 | org.apache.wicket.settings.def.ResourceSettings |
| CookieUtils | 74 | org.apache.wicket.util.cookies.CookieUtils |
| WicketMessageResolver$MessageContainer | 73 | org.apache.wicket.markup.resolver .WicketMessageResolver$MessageContainer |
| MarkupFactory | 71 | org.apache.wicket.markup.MarkupFactory |
| ResourceReferenceRegistry | 71 | org.apache.wicket.request.resource.ResourceReferenceRegistry |
| PropertiesFactory | 71 | org.apache.wicket.resource.PropertiesFactory |
| DiskDataStore$SessionEntry | 70 | org.apache.wicket.pageStore.DiskDataStore$SessionEntry |
| WebPageRenderer | 68 | org.apache.wicket.request.handler.render.WebPageRenderer |
| Cookie | 65 | org.apache.wicket.ajax.json.Cookie |
| ListenerInterfaceLogData | 65 | org.apache.wicket.core.request.handler.logger.ListenerInterfaceLogData |
| Check<T> | 65 | org.apache.wicket.markup.html.form.Check |
| MarkupFragment | 64 | org.apache.wicket.markup.MarkupFragment |
| XForwardedRequestWrapper | 62 | org.apache.wicket.protocol.http.servlet.XForwardedRequestWrapper |
| MockWebRequest | 61 | org.apache.wicket.mock.MockWebRequest |
| ResourceMapper | 61 | org.apache.wicket.core.request.mapper.ResourceMapper |
| TagStack | 61 | org.apache.wicket.markup.parser.TagStack |
| DefaultExceptionMapper | 60 | org.apache.wicket.DefaultExceptionMapper |
| CryptoMapper | 60 | org.apache.wicket.core.request.mapper.CryptoMapper |
| ClientSideImageMap | 60 | org.apache.wicket.markup.html.link.ClientSideImageMap |
| MultiFileUploadField | 60 | org.apache.wicket.markup.html.form.upload.MultiFileUploadField |
| Radio<T> | 58 | org.apache.wicket.markup.html.form.Radio |
| RequestLogger | 57 | org.apache.wicket.protocol.http.RequestLogger |
| MarkupResourceStream | 56 | org.apache.wicket.markup.MarkupResourceStream |
| HttpsMapper | 56 | org.apache.wicket.protocol.https.HttpsMapper |
| RequestListenerInterface | 55 | org.apache.wicket.RequestListenerInterface |
| PageStoreManager$SessionEntry | 55 | org.apache.wicket.page.PageStoreManager$SessionEntry |
| BrowserInfoForm$ClientPropertiesBean | 55 | org.apache.wicket.markup.html.pages .BrowserInfoForm$ClientPropertiesBean |
| WicketTesterHelper | 54 | org.apache.wicket.util.tester.WicketTesterHelper |
| ListenerInterfaceRequestHandler | 53 | org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler |
| DefaultButtonImageResource | 53 | org.apache.wicket.markup.html.image.resource .DefaultButtonImageResource |
| AsynchronousDataStore | 53 | org.apache.wicket.pageStore.AsynchronousDataStore |
| UrlResourceStream | 52 | org.apache.wicket.core.util.resource.UrlResourceStream |
| GridView<T> | 52 | org.apache.wicket.markup.repeater.data.GridView |
| AbstractResource$ResourceResponse | 51 | org.apache.wicket.request.resource.AbstractResource$ResourceResponse |
| HTTP | 50 | org.apache.wicket.ajax.json.HTTP |
| PopupSettings | 48 | org.apache.wicket.markup.html.link.PopupSettings |
| DefaultPageStore$SerializedPagesCache | 48 | org.apache.wicket.pageStore.DefaultPageStore$SerializedPagesCache |
| PageInstanceMapper | 47 | org.apache.wicket.core.request.mapper.PageInstanceMapper |
| ComponentHierarchyIterator | 47 | org.apache.wicket.util.iterator.ComponentHierarchyIterator |
| FormComponent$MessageSource | 46 | org.apache.wicket.markup.html.form.FormComponent$MessageSource |
| WicketLinkTagHandler | 46 | org.apache.wicket.markup.parser.filter.WicketLinkTagHandler |
| FileUpload | 45 | org.apache.wicket.markup.html.form.upload.FileUpload |
| SecurePackageResourceGuard | 43 | org.apache.wicket.markup.html.SecurePackageResourceGuard |
| ContextRelativeResource | 42 | org.apache.wicket.request.resource.ContextRelativeResource |
| MarkupContainer$ChildList | 41 | org.apache.wicket.MarkupContainer$ChildList |
| PackageMapper | 41 | org.apache.wicket.core.request.mapper.PackageMapper |
| TagUtils | 41 | org.apache.wicket.markup.TagUtils |
| FileUploadField | 41 | org.apache.wicket.markup.html.form.upload.FileUploadField |
| PageAndComponentProvider | 39 | org.apache.wicket.core.request.handler.PageAndComponentProvider |
| AutoLabelTextResolver$TextLabel | 39 | org.apache.wicket.markup.html.form.AutoLabelTextResolver$TextLabel |
| Border$BorderBodyContainer | 38 | org.apache.wicket.markup.html.border.Border$BorderBodyContainer |
| CheckGroup<T> | 38 | org.apache.wicket.markup.html.form.CheckGroup |
| PackageResource$CacheKey | 38 | org.apache.wicket.request.resource.PackageResource$CacheKey |
Statistics
| Stat | # lines of code (LOC) |
|---|---|
| Sum: | 15 472 |
| Average: | 21.25 |
| Minimum: | 0 |
| Maximum: | 481 |
| Standard deviation: | 36.82 |
| Variance: | 1 355 |
warnif count > 0
from t in Application.Types
where !t.IsStatic && !t.IsAbstract && t.IsClass
// All ctors of a singleton are private
where t.Constructors.Where(ctor => !ctor.IsPrivate).Count() == 0
// A singleton contains one static field of its parent type, to reference the unique instance
let staticFieldInstances = t.StaticFields.WithFieldType(t)
where staticFieldInstances.Count() == 1
select new { t, staticFieldInstance = staticFieldInstances.First() }
// The Singleton pattern consists in syntactically enforcing that a class
// has just one unique instance.
// At first glance, this pattern looks appealing and it is widely used.
// However, we discourage you from using singleton classes because experience
// shows that singletons often result in less testable and less maintainable code.
// More details available in these discussions:
// http://adamschepis.com/blog/2011/05/02/im-adam-and-im-a-recovering-singleton-addict/
8 types matched
| types | staticFieldInstance | Full Name |
|---|---|---|
| WicketAjaxDebugJQueryResourceReference | INSTANCE | org.apache.wicket.ajax.WicketAjaxDebugJQueryResourceReference |
| WicketAjaxJQueryResourceReference | INSTANCE | org.apache.wicket.ajax.WicketAjaxJQueryResourceReference |
| WicketEventJQueryResourceReference | INSTANCE | org.apache.wicket.ajax.WicketEventJQueryResourceReference |
| EmptyAjaxRequestHandler | instance | org.apache.wicket.core.request.handler.EmptyAjaxRequestHandler |
| DefaultMarkupSourcingStrategy | instance | org.apache.wicket.markup.html.panel.DefaultMarkupSourcingStrategy |
| JQueryResourceReference | INSTANCE | org.apache.wicket.resource.JQueryResourceReference |
| NullResponse | instance | org.apache.wicket.response.NullResponse |
| Result | PASS | org.apache.wicket.util.tester.Result |
Statistics
| Stat | staticFieldInstance |
|---|---|
| Sum: | 0 |
| Average: | 0 |
| Minimum: | 0 |
| Maximum: | 0 |
| Standard deviation: | 0 |
| Variance: | 0 |
// Assigning static fields from instance methods leads to
// poorly maintainable and non thread-safe code.
// It is advised to assign static fields inline or from class constructor.
warnif count > 0
from f in Application.Fields where
f.IsStatic &&
!f.IsLiteral &&
!f.IsInitOnly &&
!f.IsGeneratedByCompiler &&
// Contract API define such a insideContractEvaluation static field
f.Name != "insideContractEvaluation"
let assignedBy = f.MethodsAssigningMe.Where(m => !m.IsStatic)
where assignedBy .Count() > 0
select new { f, assignedBy }
1 fields matched
| field | assignedBy | Full Name |
|---|---|---|
| META_INF_RESOURCES_SUPPORTED | 1 method | org.apache.wicket.request.resource.MetaInfStaticResourceReference .META_INF_RESOURCES_SUPPORTED |
Statistics
| Stat | assignedBy |
|---|---|
| Sum: | 0 |
| Average: | 0 |
| Minimum: | 0 |
| Maximum: | 0 |
| Standard deviation: | 0 |
| Variance: | 0 |
warnif count > 0 from t in JustMyCode.Types where
t.IsInterface &&
t.NbMethods == 0
select new { t, t.TypesThatImplementMe }
// Interfaces define members that provide a behavior
// or usage contract. The functionality described by
// the interface can be adopted by any type,
// regardless of where the type appears in the
// inheritance hierarchy. A type implements an
// interface by providing implementations for the
// interface's members. An empty interface does not
// define any members, and as such, does not define
// a contract that can be implemented.
// If your design includes empty interfaces that
// types are expected to implement, you are probably
// using an interface as a marker, or a way of
// identifying a group of types. If this identification
// will occur at runtime, the correct way to accomplish
// this is to use a custom attribute. Use the presence
// or absence of the attribute, or the attribute's
// properties, to identify the target types. If the
// identification must occurs at compile time, then using
// an empty interface is acceptable.
4 types matched
| types | TypesThatImplementMe | Full Name |
|---|---|---|
| IRequestListener | 19 types | org.apache.wicket.IRequestListener |
| IFeedback | 3 types | org.apache.wicket.feedback.IFeedback |
| DocumentElement | 3 types | org.apache.wicket.protocol.http.documentvalidation.DocumentElement |
| INullAcceptingValidator<T> | 1 type | org.apache.wicket.validation.INullAcceptingValidator |
Statistics
| Stat | TypesThatImplementMe |
|---|---|
| Sum: | 0 |
| Average: | 0 |
| Minimum: | 0 |
| Maximum: | 0 |
| Standard deviation: | 0 |
| Variance: | 0 |
API Breaking Changes
|
// This rule warns if a publicly visible type is
// not publicly visible anymore or if it has been removed.
// Such type can break the code of your clients.
warnif count > 0 from t in codeBase.OlderVersion().Application.Types
where t.IsPubliclyVisible &&
// The type has been removed and its parent project hasn't been removed ...
( (t.WasRemoved() && !t.ParentProject.WasRemoved()) ||
// ... or the type is not publicly visible anymore
!t.WasRemoved() && !t.NewerVersion().IsPubliclyVisible)
select new { t,
NewVisibility = (t.WasRemoved() ? " " : t.NewerVersion().Visibility.ToString()) }
No types matched
// This rule warns if a publicly visible method is
// not publicly visible anymore or if it has been removed.
// Such method can break the code of your clients.
warnif count > 0 from m in codeBase.OlderVersion().Application.Methods
where m.IsPubliclyVisible &&
// The method has been removed and its parent type hasn't been removed ...
( (m.WasRemoved() && !m.ParentType.WasRemoved()) ||
// ... or the method is not publicly visible anymore
!m.WasRemoved() && !m.NewerVersion().IsPubliclyVisible)
select new { m,
NewVisibility = (m.WasRemoved() ? " " : m.NewerVersion().Visibility.ToString()) }
No methods matched
// This rule warns if a publicly visible field is
// not publicly visible anymore or if it has been removed.
// Such field can break the code of your clients.
warnif count > 0 from f in codeBase.OlderVersion().Application.Fields
where f.IsPubliclyVisible &&
// The field has been removed and its parent type hasn't been removed ...
( (f.WasRemoved() && !f.ParentType.WasRemoved()) ||
// ... or the field is not publicly visible anymore
!f.WasRemoved() && !f.NewerVersion().IsPubliclyVisible)
select new { f,
NewVisibility = (f.WasRemoved() ? " " : f.NewerVersion().Visibility.ToString()) }
No fields matched
// This rule warns if a publicly visible interface or abstract class
// has been changed and contains new abstract methods or
// if some abstract methods have been removed.
// This can break the code of clients
// that implement such interface or derive from such abstract class.
warnif count > 0 from tNewer in Application.Types where
(tNewer.IsInterface || tNewer.IsClass && tNewer.IsAbstract) &&
tNewer.IsPubliclyVisible &&
tNewer.IsPresentInBothBuilds()
let tOlder = tNewer.OlderVersion() where tOlder.IsPubliclyVisible
let methodsRemoved = tOlder.Methods.Where(m => m.IsAbstract && m.WasRemoved())
let methodsAdded = tNewer.Methods.Where(m => m.IsAbstract && m.WasAdded())
where methodsAdded.Count() > 0 || methodsRemoved.Count() > 0
select new { tNewer, methodsAdded, methodsRemoved }
No types matched
// Immutability is a strong property on a type.
// Breaking immutability can result in serious problem for an algorithm consummer
// that has been written taking account of the type immutability.
// To visualize changes in code, right-click a matched type and select:
// - Compare older and newer versions of source file.
warnif count > 0
from t in Application.Types where
t.IsPresentInBothBuilds() &&
!t.IsStatic &&
!t.IsImmutable &&
t.OlderVersion().IsImmutable
let mutableFields = from f in t.InstanceFields where !f.IsImmutable select f
select new { t, mutableFields }
No types matched
// List types that are new in the public surface of your projects
from t in Application.Types
where t.IsPubliclyVisible &&
// The type has been removed and its parent project hasn't been removed ...
( (t.WasAdded() && !t.ParentProject.WasAdded()) ||
// ... or the type existed but was not publicly visible
!t.WasAdded() && !t.OlderVersion().IsPubliclyVisible)
select new { t,
OldVisibility = (t.WasAdded() ? " " : t.OlderVersion().Visibility.ToString()) }
No types matched
// List methods that are new in the public surface of your projects
from m in Application.Methods
where m.IsPubliclyVisible &&
// The method has been removed and its parent project hasn'm been removed ...
( (m.WasAdded() && !m.ParentType.WasAdded()) ||
// ... or the t existed but was not publicly visible
!m.WasAdded() && !m.OlderVersion().IsPubliclyVisible)
select new { m,
OldVisibility = (m.WasAdded() ? " " : m.OlderVersion().Visibility.ToString()) }
No methods matched
// List fields that are new in the public surface of your projects
from f in Application.Fields
where f.IsPubliclyVisible &&
// The method has been removed and its parent project hasn'f been removed ...
( (f.WasAdded() && !f.ParentType.WasAdded()) ||
// ... or the t existed but was not publicly visible
!f.WasAdded() && !f.OlderVersion().IsPubliclyVisible)
select new { f,
OldVisibility = (f.WasAdded() ? " " : f.OlderVersion().Visibility.ToString()) }
No fields matched
Code Diff Summary
|
from a in Application.Projects where a.WasAdded()
select new { a, a.NbLinesOfCode }
No projects matched
from a in codeBase.OlderVersion().Application.Projects where a.WasRemoved()
select new { a, a.NbLinesOfCode }
No projects matched
from a in Application.Projects where a.CodeWasChanged()
select new { a, a.NbLinesOfCode,
oldNbLinesOfCode = a.OlderVersion().NbLinesOfCode.GetValueOrDefault() ,
delta = (int) a.NbLinesOfCode.GetValueOrDefault() - a.OlderVersion().NbLinesOfCode.GetValueOrDefault() }
No projects matched
from n in Application.Packages where
!n.ParentProject.WasAdded() &&
n.WasAdded()
select new { n, n.NbLinesOfCode }
No packages matched
from n in codeBase.OlderVersion().Application.Packages where
!n.ParentProject.WasRemoved() &&
n.WasRemoved()
select new { n, n.NbLinesOfCode }
No packages matched
from n in Application.Packages where n.CodeWasChanged()
select new { n, n.NbLinesOfCode,
oldNbLinesOfCode = n.OlderVersion().NbLinesOfCode.GetValueOrDefault() ,
delta = (int) n.NbLinesOfCode.GetValueOrDefault() - n.OlderVersion().NbLinesOfCode.GetValueOrDefault() }
No packages matched
from t in Application.Types where
!t.ParentPackage.WasAdded() &&
t.WasAdded()
select new { t, t.NbLinesOfCode }
No types matched
from t in codeBase.OlderVersion().Application.Types where
!t.ParentPackage.WasRemoved() &&
t.WasRemoved()
select new { t, t.NbLinesOfCode }
No types matched
// To visualize changes in code, right-click a matched type and select:
// - Compare older and newer versions of source file
from t in Application.Types where t.CodeWasChanged()
//select new { t, t.NbLinesOfCode }
select new { t, t.NbLinesOfCode,
oldNbLinesOfCode = t.OlderVersion().NbLinesOfCode ,
delta = (int?) t.NbLinesOfCode - t.OlderVersion().NbLinesOfCode }
/*from t in Application.Types where t.CodeWasChanged() && t.IsPresentInBothBuild
select new { t, t.NbLinesOfCode,
oldNbLinesOfCode = t.OlderVersion().NbLinesOfCode ,
delta = (int) t.NbLinesOfCode - t.OlderVersion().NbLinesOfCode }*/
No types matched
let typesRemoved = codeBase.OlderVersion().Types.Where(t => t.WasRemoved())
let typesAdded = Types.Where(t => t.WasAdded())
from tMoved in typesAdded.Join(
typesRemoved,
t => t.Name,
t => t.Name,
(tNewer, tOlder) => new { tNewer,
OlderParentpackage = tOlder.ParentPackage,
OlderParentproject = tOlder.ParentProject } )
select tMoved
No types matched
let typesChanged = Application.Types.Where(t => t.CodeWasChanged()).ToHashSet()
from t in JustMyCode.Types.UsingAny(typesChanged) where
!t.CodeWasChanged() &&
!t.WasAdded()
let typesChangedUsed = t.TypesUsed.Intersect(typesChanged)
select new { t, typesChangedUsed }
No types matched
let typesChanged = Application.Types.Where(t => t.CodeWasChanged()).ToHashSet()
// 'depth' represents a code metric defined on types using
// directly or indirectly any type where code was changed.
let depth = JustMyCode.Types.DepthOfIsUsingAny(typesChanged)
from t in depth.DefinitionDomain where
!t.CodeWasChanged() &&
!t.WasAdded()
let typesChangedDirectlyUsed = t.TypesUsed.Intersect(typesChanged)
let depthOfUsingTypesChanged = depth[t]
orderby depthOfUsingTypesChanged
select new { t, depthOfUsingTypesChanged, typesChangedDirectlyUsed }
No types matched
from m in Application.Methods where
!m.ParentType.WasAdded() &&
m.WasAdded()
select new { m, m.NbLinesOfCode }
No methods matched
from m in codeBase.OlderVersion().Application.Methods where
!m.ParentType.WasRemoved() &&
m.WasRemoved()
select new { m, m.NbLinesOfCode }
No methods matched
// To visualize changes in code, right-click a matched method and select:
// - Compare older and newer versions of source file
from m in Application.Methods where m.CodeWasChanged()
select new { m, m.NbLinesOfCode,
oldNbLinesOfCode = m.OlderVersion().NbLinesOfCode ,
delta = (int?) m.NbLinesOfCode - m.OlderVersion().NbLinesOfCode }
No methods matched
let methodsChanged = Application.Methods.Where(m => m.CodeWasChanged()).ToHashSet()
from m in JustMyCode.Methods.UsingAny(methodsChanged ) where
!m.CodeWasChanged() &&
!m.WasAdded()
let methodsChangedCalled = m.MethodsCalled.Intersect(methodsChanged)
select new { m, methodsChangedCalled }
No methods matched
let methodsChanged = Application.Methods.Where(m => m.CodeWasChanged()).ToHashSet()
// 'depth' represents a code metric defined on methods using
// directly or indirectly any method where code was changed.
let depth = JustMyCode.Methods.DepthOfIsUsingAny(methodsChanged)
from m in depth.DefinitionDomain where
!m.CodeWasChanged() &&
!m.WasAdded()
let methodsChangedDirectlyUsed = m.MethodsCalled.Intersect(methodsChanged)
let depthOfUsingMethodsChanged = depth[m]
orderby depthOfUsingMethodsChanged
select new { m, depthOfUsingMethodsChanged, methodsChangedDirectlyUsed }
No methods matched
from f in Application.Fields where
!f.ParentType.WasAdded() &&
f.WasAdded()
select new { f }
No fields matched
from f in codeBase.OlderVersion().Application.Fields where
!f.ParentType.WasRemoved() &&
f.WasRemoved()
select new { f }
No fields matched
from t in ThirdParty.Types where t.IsUsedRecently()
select new { t, t.Methods, t.Fields, t.TypesUsingMe }
No types matched
from t in codeBase.OlderVersion().Types where t.IsNotUsedAnymore()
select new { t, t.Methods, t.Fields, TypesThatUsedMe = t.TypesUsingMe }
No types matched
from m in ThirdParty.Methods where
m.IsUsedRecently() &&
!m.ParentType.IsUsedRecently()
select new { m, m.MethodsCallingMe }
No methods matched
from m in codeBase.OlderVersion().Methods where
m.IsNotUsedAnymore() &&
!m.ParentType.IsNotUsedAnymore()
select new { m, MethodsThatCalledMe = m.MethodsCallingMe}
No methods matched
from f in ThirdParty.Fields where
f.IsUsedRecently() &&
!f.ParentType.IsUsedRecently()
select new { f, f.MethodsUsingMe }
No fields matched
from f in codeBase.OlderVersion().Fields where
f.IsNotUsedAnymore() &&
!f.ParentType.IsNotUsedAnymore()
select new { f, MethodsThatUsedMe = f.MethodsUsingMe }
No fields matched
Dead Code
|
warnif count > 0
// Filter procedure for types that should'nt be considered as dead
let canTypeBeConsideredAsDeadProc = new Func<IType, bool>(
t => !t.IsPublic && // Public types might be used by client applications of your projects.
t.Name != "Program" &&
!t.IsGeneratedByCompiler
)
// Select types unused
let typesUnused =
from t in JustMyCode.Types where
t.NbTypesUsingMe == 0 && canTypeBeConsideredAsDeadProc(t)
select t
// Dead types = types used only by unused types (recursive)
let deadTypesMetric = typesUnused.FillIterative(
types => from t in codeBase.Application.Types.UsedByAny(types).Except(types)
where canTypeBeConsideredAsDeadProc(t) &&
t.TypesUsingMe.Intersect(types).Count() == t.NbTypesUsingMe
select t)
from t in deadTypesMetric.DefinitionDomain
select new { t, t.TypesUsingMe, depth = deadTypesMetric[t] }
2 types matched
| types | TypesUsingMe | depth | Full Name |
|---|---|---|---|
| BufferedHttpServletResponse | 0 type | 0 | org.apache.wicket.protocol.http.BufferedHttpServletResponse |
| BufferedWebResponse$CloseAction | 0 type | 0 | org.apache.wicket.protocol.http.BufferedWebResponse$CloseAction |
Statistics
| Stat | TypesUsingMe | depth |
|---|---|---|
| Sum: | 0 | 0 |
| Average: | 0 | 0 |
| Minimum: | 0 | 0 |
| Maximum: | 0 | 0 |
| Standard deviation: | 0 | 0 |
| Variance: | 0 | 0 |
warnif count > 0
// Filter procedure for methods that should'nt be considered as dead
let canMethodBeConsideredAsDeadProc = new Func<IMethod, bool>(
m => !m.IsPubliclyVisible && // Public methods might be used by client applications of your projects.
!m.IsEntryPoint && // Main() method is not used by-design.
!m.IsClassConstructor && // The BC code never explicitely calls class constructors.
!(m.IsConstructor && // Don't take account of protected ctor that might be call by a derived ctors.
m.IsProtected) &&
!m.IsGeneratedByCompiler)
// Get methods unused
let methodsUnused =
from m in JustMyCode.Methods where
m.NbMethodsCallingMe == 0 &&
canMethodBeConsideredAsDeadProc(m)
select m
// Dead methods = methods used only by unused methods (recursive)
let deadMethodsMetric = methodsUnused.FillIterative(
methods => // Unique loop, just to let a chance to build the hashset.
from o in (new object()).ToEnumerable()
// Use a hashet to make Intersect calls much faster!
let hashset = methods.ToHashSet()
from m in codeBase.Application.Methods.UsedByAny(methods).Except(methods)
where canMethodBeConsideredAsDeadProc(m) &&
// Select methods called only by methods already considered as dead
hashset.Intersect(m.MethodsCallingMe).Count() == m.NbMethodsCallingMe
select m)
from m in JustMyCode.Methods.Intersect(deadMethodsMetric.DefinitionDomain)
select new { m, m.MethodsCallingMe, depth = deadMethodsMetric[m] }
471 methods matched
| methods | MethodsCallingMe | depth | Full Name |
|---|---|---|---|
| onInstantiation(Component) | 0 method | 0 | org.apache.wicket.Application$1.onInstantiation(Component) |
| onDetach(RequestCycle) | 0 method | 0 | org.apache.wicket.Application$2.onDetach(RequestCycle) |
| onEndRequest(RequestCycle) | 0 method | 0 | org.apache.wicket.Application$2.onEndRequest(RequestCycle) |
| newValue(String,String) | 0 method | 0 | org.apache.wicket.AttributeModifier$1.newValue(String,String) |
| compare(Component,Object) | 0 method | 0 | org.apache.wicket.Component$3.compare(Component,Object) |
| getSource() | 0 method | 0 | org.apache.wicket.ComponentEvent.getSource() |
| getType() | 0 method | 0 | org.apache.wicket.ComponentEvent.getType() |
| getPayload() | 0 method | 0 | org.apache.wicket.ComponentEvent.getPayload() |
| dontBroadcastDeeper() | 0 method | 0 | org.apache.wicket.ComponentEvent.dontBroadcastDeeper() |
| stop() | 0 method | 0 | org.apache.wicket.ComponentEvent.stop() |
| convertToObject(String,Locale) | 0 method | 0 | org.apache.wicket.ConverterLocator$DefaultConverter.convertToObject (String,Locale) |
| convertToString(Object,Locale) | 0 method | 0 | org.apache.wicket.ConverterLocator$DefaultConverter.convertToString (Object,Locale) |
| hasNext() | 0 method | 0 | org.apache.wicket.MarkupContainer$1.hasNext() |
| remove() | 0 method | 0 | org.apache.wicket.MarkupContainer$1.remove() |
| size() | 0 method | 0 | org.apache.wicket.MarkupContainer$ChildList.size() |
| add(int,Object) | 0 method | 0 | org.apache.wicket.MarkupContainer$ChildList.add(int,Object) |
| createAndAddComponentsForWicketTags() | 0 method | 0 | org.apache.wicket.MarkupContainer.createAndAddComponentsForWicketTags( ) |
| getCompatibilityScore(Request) | 0 method | 0 | org.apache.wicket.RestartResponseAtInterceptPageException$1 .getCompatibilityScore(Request) |
| matchedData(Request) | 2 methods | 1 | org.apache.wicket.RestartResponseAtInterceptPageException$1 .matchedData(Request) |
| mapHandler(IRequestHandler) | 0 method | 0 | org.apache.wicket.RestartResponseAtInterceptPageException$1.mapHandler (IRequestHandler) |
| mapRequest(Request) | 0 method | 0 | org.apache.wicket.RestartResponseAtInterceptPageException$1.mapRequest (Request) |
| clear() | 1 method | 1 | org.apache.wicket .RestartResponseAtInterceptPageException$InterceptData.clear() |
| getOriginalUrl() | 0 method | 0 | org.apache.wicket .RestartResponseAtInterceptPageException$InterceptData.getOriginalUrl( ) |
| getPostParameters() | 0 method | 0 | org.apache.wicket .RestartResponseAtInterceptPageException$InterceptData .getPostParameters() |
| getResource() | 0 method | 0 | org.apache.wicket.SharedResources$AutoResourceReference.getResource() |
| onChange() | 0 method | 0 | org.apache.wicket.application.ReloadingClassLoader$1.onChange() |
| FencedFeedbackPanel$2$1(FencedFeedbackPanel$2,Component) | 1 method | 1 | org.apache.wicket.feedback.FencedFeedbackPanel$2$1 .FencedFeedbackPanel$2$1(FencedFeedbackPanel$2,Component) |
| shouldRecurseInto(Component) | 0 method | 0 | org.apache.wicket.feedback.FencedFeedbackPanel$2$1.shouldRecurseInto (Component) |
| FencedFeedbackPanel$2$2(FencedFeedbackPanel$2,Component) | 1 method | 1 | org.apache.wicket.feedback.FencedFeedbackPanel$2$2 .FencedFeedbackPanel$2$2(FencedFeedbackPanel$2,Component) |
| shouldRecurseInto(Component) | 0 method | 0 | org.apache.wicket.feedback.FencedFeedbackPanel$2$2.shouldRecurseInto (Component) |
| collectMessages(Component,IFeedbackMessageFilter) | 0 method | 0 | org.apache.wicket.feedback.FencedFeedbackPanel$2.collectMessages (Component,IFeedbackMessageFilter) |
| accept(FeedbackMessage) | 0 method | 0 | org.apache.wicket.feedback.IFeedbackMessageFilter$1.accept (FeedbackMessage) |
| accept(FeedbackMessage) | 0 method | 0 | org.apache.wicket.feedback.IFeedbackMessageFilter$2.accept (FeedbackMessage) |
| getPage(int) | 0 method | 0 | org.apache.wicket.page.PageAccessSynchronizer$2.getPage(int) |
| touchPage(IManageablePage) | 0 method | 0 | org.apache.wicket.page.PageAccessSynchronizer$2.touchPage (IManageablePage) |
| commitRequest() | 0 method | 0 | org.apache.wicket.page.PageAccessSynchronizer$2.commitRequest() |
| writeObject(ObjectOutputStream) | 0 method | 0 | org.apache.wicket.page.PageStoreManager$SessionEntry.writeObject (ObjectOutputStream) |
| readObject(ObjectInputStream) | 0 method | 0 | org.apache.wicket.page.PageStoreManager$SessionEntry.readObject (ObjectInputStream) |
| render(HeaderItem) | 0 method | 0 | org.apache.wicket.ajax.AbstractAjaxResponse$AjaxHeaderResponse.render (HeaderItem) |
| getRealResponse() | 0 method | 0 | org.apache.wicket.ajax.AbstractAjaxResponse$AjaxHeaderResponse .getRealResponse() |
| newHeaderResponse() | 0 method | 0 | org.apache.wicket.ajax.AbstractAjaxResponse$AjaxHtmlHeaderContainer .newHeaderResponse() |
| AjaxRequestHandler$1$1(AjaxRequestHandler$1,Response) | 1 method | 1 | org.apache.wicket.ajax.AjaxRequestHandler$1$1.AjaxRequestHandler$1$1 (AjaxRequestHandler$1,Response) |
| addJavaScript(String) | 0 method | 0 | org.apache.wicket.ajax.AjaxRequestHandler$1$1.addJavaScript(String) |
| fireOnAfterRespondListeners(Response) | 0 method | 0 | org.apache.wicket.ajax.AjaxRequestHandler$1 .fireOnAfterRespondListeners(Response) |
| fireOnBeforeRespondListeners() | 0 method | 0 | org.apache.wicket.ajax.AjaxRequestHandler$1 .fireOnBeforeRespondListeners() |
| WicketAjaxDebugJQueryResourceReference() | 0 method | 0 | org.apache.wicket.ajax.WicketAjaxDebugJQueryResourceReference .WicketAjaxDebugJQueryResourceReference() |
| WicketAjaxJQueryResourceReference() | 0 method | 0 | org.apache.wicket.ajax.WicketAjaxJQueryResourceReference .WicketAjaxJQueryResourceReference() |
| WicketEventJQueryResourceReference() | 0 method | 0 | org.apache.wicket.ajax.WicketEventJQueryResourceReference .WicketEventJQueryResourceReference() |
| getPrecondition(Component) | 0 method | 0 | org.apache.wicket.ajax.form.AjaxFormChoiceComponentUpdatingBehavior$1 .getPrecondition(Component) |
| getForm() | 0 method | 0 | org.apache.wicket.ajax.form.AjaxFormSubmitBehavior$1.getForm() |
| getDefaultFormProcessing() | 0 method | 0 | org.apache.wicket.ajax.form.AjaxFormSubmitBehavior$1 .getDefaultFormProcessing() |
| onError() | 0 method | 0 | org.apache.wicket.ajax.form.AjaxFormSubmitBehavior$1.onError() |
| onSubmit() | 0 method | 0 | org.apache.wicket.ajax.form.AjaxFormSubmitBehavior$1.onSubmit() |
| onAfterSubmit() | 0 method | 0 | org.apache.wicket.ajax.form.AjaxFormSubmitBehavior$1.onAfterSubmit() |
| updateAjaxAttributes(AjaxRequestAttributes) | 0 method | 0 | org.apache.wicket.ajax.form .AjaxFormValidatingBehavior$FormValidateVisitor$1.updateAjaxAttributes (AjaxRequestAttributes) |
| clone() | 0 method | 0 | org.apache.wicket.ajax.json.JSONObject$Null.clone() |
| equals(Object) | 0 method | 0 | org.apache.wicket.ajax.json.JSONObject$Null.equals(Object) |
| toString() | 0 method | 0 | org.apache.wicket.ajax.json.JSONObject$Null.toString() |
| JsonUtils() | 0 method | 0 | org.apache.wicket.ajax.json.JsonUtils.JsonUtils() |
| onEvent(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.AjaxFallbackLink$1.onEvent (AjaxRequestTarget) |
| onComponentTag(ComponentTag) | 0 method | 0 | org.apache.wicket.ajax.markup.html.AjaxFallbackLink$1.onComponentTag (ComponentTag) |
| getChannel() | 0 method | 0 | org.apache.wicket.ajax.markup.html.AjaxFallbackLink$1.getChannel() |
| updateAjaxAttributes(AjaxRequestAttributes) | 0 method | 0 | org.apache.wicket.ajax.markup.html.AjaxFallbackLink$1 .updateAjaxAttributes(AjaxRequestAttributes) |
| onEvent(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.AjaxLink$1.onEvent (AjaxRequestTarget) |
| updateAjaxAttributes(AjaxRequestAttributes) | 0 method | 0 | org.apache.wicket.ajax.markup.html.AjaxLink$1.updateAjaxAttributes (AjaxRequestAttributes) |
| onSubmit(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxButton$1.onSubmit (AjaxRequestTarget) |
| onAfterSubmit(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxButton$1.onAfterSubmit (AjaxRequestTarget) |
| onError(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxButton$1.onError (AjaxRequestTarget) |
| getChannel() | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxButton$1.getChannel() |
| updateAjaxAttributes(AjaxRequestAttributes) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxButton$1 .updateAjaxAttributes(AjaxRequestAttributes) |
| getDefaultProcessing() | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxButton$1 .getDefaultProcessing() |
| updateAjaxAttributes(AjaxRequestAttributes) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxCheckBox$1 .updateAjaxAttributes(AjaxRequestAttributes) |
| onUpdate(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxCheckBox$1.onUpdate (AjaxRequestTarget) |
| onSubmit(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxFallbackButton$1.onSubmit (AjaxRequestTarget) |
| onAfterSubmit(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxFallbackButton$1 .onAfterSubmit(AjaxRequestTarget) |
| onError(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxFallbackButton$1.onError (AjaxRequestTarget) |
| getChannel() | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxFallbackButton$1 .getChannel() |
| getDefaultProcessing() | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxFallbackButton$1 .getDefaultProcessing() |
| updateAjaxAttributes(AjaxRequestAttributes) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxFallbackButton$1 .updateAjaxAttributes(AjaxRequestAttributes) |
| onError(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1.onError (AjaxRequestTarget) |
| findForm() | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1.findForm() |
| onComponentTag(ComponentTag) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1 .onComponentTag(ComponentTag) |
| getDefaultProcessing() | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1 .getDefaultProcessing() |
| updateAjaxAttributes(AjaxRequestAttributes) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1 .updateAjaxAttributes(AjaxRequestAttributes) |
| onSubmit(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1.onSubmit (AjaxRequestTarget) |
| onAfterSubmit(AjaxRequestTarget) | 0 method | 0 | org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1.onAfterSubmit (AjaxRequestTarget) |
| updateAjaxAttributes(AjaxRequestAttributes) | 0 method | 0 | org.apache.wicket.ajax.markup.html.navigation.paging .AjaxPagingNavigationIncrementLink$1.updateAjaxAttributes (AjaxRequestAttributes) |
| updateAjaxAttributes(AjaxRequestAttributes) | 0 method | 0 | org.apache.wicket.ajax.markup.html.navigation.paging .AjaxPagingNavigationLink$1.updateAjaxAttributes(AjaxRequestAttributes ) |
| isInstantiationAuthorized(Class) | 0 method | 0 | org.apache.wicket.authorization.IAuthorizationStrategy$1 .isInstantiationAuthorized(Class) |
| isActionAuthorized(Component,Action) | 0 method | 0 | org.apache.wicket.authorization.IAuthorizationStrategy$1 .isActionAuthorized(Component,Action) |
| onUnauthorizedInstantiation(Component) | 0 method | 0 | org.apache.wicket.authorization.strategies.page .SimplePageAuthorizationStrategy$1.onUnauthorizedInstantiation (Component) |
| toString() | 0 method | 0 | org.apache.wicket.core.request.mapper.MountedMapper$MountPathSegment .toString() |
| EmptyAjaxRequestHandler() | 0 method | 0 | org.apache.wicket.core.request.handler.EmptyAjaxRequestHandler .EmptyAjaxRequestHandler() |
| SerializableChecker$WicketNotSerializableException(String,Throwable) | 0 method | 0 | org.apache.wicket.core.util.io .SerializableChecker$WicketNotSerializableException .SerializableChecker$WicketNotSerializableException(String,Throwable) |
| getField() | 0 method | 0 | org.apache.wicket.core.util.lang.PropertyResolver$AbstractGetAndSet .getField() |
| getGetter() | 0 method | 0 | org.apache.wicket.core.util.lang.PropertyResolver$AbstractGetAndSet .getGetter() |
| getSetter() | 0 method | 0 | org.apache.wicket.core.util.lang.PropertyResolver$AbstractGetAndSet .getSetter() |
| getTargetClass() | 0 method | 0 | org.apache.wicket.core.util.lang.PropertyResolver$AbstractGetAndSet .getTargetClass() |
| getValue(Object) | 0 method | 0 | org.apache.wicket.core.util.lang.PropertyResolver$ArrayGetSet.getValue (Object) |
| setValue(Object,Object,PropertyResolverConverter) | 0 method | 0 | org.apache.wicket.core.util.lang.PropertyResolver$ArrayGetSet.setValue (Object,Object,PropertyResolverConverter) |
Statistics
| Stat | MethodsCallingMe | depth |
|---|---|---|
| Sum: | 0 | 36 |
| Average: | 0 | 0.076 |
| Minimum: | 0 | 0 |
| Maximum: | 0 | 2 |
| Standard deviation: | 0 | 0.31 |
| Variance: | 0 | 0.096 |
warnif count > 0
from f in JustMyCode.Fields where
f.NbMethodsUsingMe == 0 &&
!f.IsPublic && // Although not recommended, public fields might be used by client applications of your projects.
!f.IsLiteral && // The BC code never explicitely uses literal fields.
!f.IsEnumValue // The BC code never explicitely uses enumeration value.
select f
575 fields matched
| fields | Full Name |
|---|---|
| serialVersionUID | org.apache.wicket.AttributeModifier$1.serialVersionUID |
| serialVersionUID | org.apache.wicket.AttributeModifier.serialVersionUID |
| serialVersionUID | org.apache.wicket.Behaviors$BehaviorIdList.serialVersionUID |
| serialVersionUID | org.apache.wicket.Behaviors.serialVersionUID |
| serialVersionUID | org.apache.wicket.Component$1.serialVersionUID |
| serialVersionUID | org.apache.wicket.Component$2.serialVersionUID |
| serialVersionUID | org.apache.wicket.Component$3.serialVersionUID |
| serialVersionUID | org.apache.wicket.Component$4.serialVersionUID |
| serialVersionUID | org.apache.wicket.Component$5.serialVersionUID |
| serialVersionUID | org.apache.wicket.Component$6.serialVersionUID |
| serialVersionUID | org.apache.wicket.Component.serialVersionUID |
| FLAG_UNUSED0 | org.apache.wicket.Component.FLAG_UNUSED0 |
| FLAG_UNUSED1 | org.apache.wicket.Component.FLAG_UNUSED1 |
| FLAG_UNUSED2 | org.apache.wicket.Component.FLAG_UNUSED2 |
| FLAG_UNUSED3 | org.apache.wicket.Component.FLAG_UNUSED3 |
| FLAG_AUTO | org.apache.wicket.Component.FLAG_AUTO |
| FLAG_ESCAPE_MODEL_STRINGS | org.apache.wicket.Component.FLAG_ESCAPE_MODEL_STRINGS |
| FLAG_VERSIONED | org.apache.wicket.Component.FLAG_VERSIONED |
| FLAG_VISIBLE | org.apache.wicket.Component.FLAG_VISIBLE |
| FLAG_RENDER_BODY_ONLY | org.apache.wicket.Component.FLAG_RENDER_BODY_ONLY |
| FLAG_IGNORE_ATTRIBUTE_MODIFIER | org.apache.wicket.Component.FLAG_IGNORE_ATTRIBUTE_MODIFIER |
| FLAG_ENABLED | org.apache.wicket.Component.FLAG_ENABLED |
| FLAG_RESERVED1 | org.apache.wicket.Component.FLAG_RESERVED1 |
| FLAG_RESERVED2 | org.apache.wicket.Component.FLAG_RESERVED2 |
| FLAG_RESERVED3 | org.apache.wicket.Component.FLAG_RESERVED3 |
| FLAG_RESERVED4 | org.apache.wicket.Component.FLAG_RESERVED4 |
| FLAG_HAS_BEEN_RENDERED | org.apache.wicket.Component.FLAG_HAS_BEEN_RENDERED |
| FLAG_IS_RENDER_ALLOWED | org.apache.wicket.Component.FLAG_IS_RENDER_ALLOWED |
| FLAG_OUTPUT_MARKUP_ID | org.apache.wicket.Component.FLAG_OUTPUT_MARKUP_ID |
| FLAG_PLACEHOLDER | org.apache.wicket.Component.FLAG_PLACEHOLDER |
| FLAG_RESERVED5 | org.apache.wicket.Component.FLAG_RESERVED5 |
| FLAG_INITIALIZED | org.apache.wicket.Component.FLAG_INITIALIZED |
| FLAG_NOTUSED7 | org.apache.wicket.Component.FLAG_NOTUSED7 |
| FLAG_RESERVED8 | org.apache.wicket.Component.FLAG_RESERVED8 |
| FLAG_MODEL_SET | org.apache.wicket.Component.FLAG_MODEL_SET |
| FLAG_REMOVING_FROM_HIERARCHY | org.apache.wicket.Component.FLAG_REMOVING_FROM_HIERARCHY |
| FLAG_RENDERING | org.apache.wicket.Component.FLAG_RENDERING |
| FLAG_PREPARED_FOR_RENDER | org.apache.wicket.Component.FLAG_PREPARED_FOR_RENDER |
| FLAG_AFTER_RENDERING | org.apache.wicket.Component.FLAG_AFTER_RENDERING |
| FLAG_VISIBILITY_ALLOWED | org.apache.wicket.Component.FLAG_VISIBILITY_ALLOWED |
| FLAG_DETACHING | org.apache.wicket.Component.FLAG_DETACHING |
| MARKUP_ID_ATTR_NAME | org.apache.wicket.Component.MARKUP_ID_ATTR_NAME |
| RFLAG_ENABLED_IN_HIERARCHY_VALUE | org.apache.wicket.Component.RFLAG_ENABLED_IN_HIERARCHY_VALUE |
| RFLAG_ENABLED_IN_HIERARCHY_SET | org.apache.wicket.Component.RFLAG_ENABLED_IN_HIERARCHY_SET |
| RFLAG_VISIBLE_IN_HIEARARCHY_VALUE | org.apache.wicket.Component.RFLAG_VISIBLE_IN_HIEARARCHY_VALUE |
| RFLAG_VISIBLE_IN_HIERARCHY_SET | org.apache.wicket.Component.RFLAG_VISIBLE_IN_HIERARCHY_SET |
| RFLAG_CONFIGURED | org.apache.wicket.Component.RFLAG_CONFIGURED |
| RFLAG_BEFORE_RENDER_SUPER_CALL_VERIFIED | org.apache.wicket.Component.RFLAG_BEFORE_RENDER_SUPER_CALL_VERIFIED |
| RFLAG_INITIALIZE_SUPER_CALL_VERIFIED | org.apache.wicket.Component.RFLAG_INITIALIZE_SUPER_CALL_VERIFIED |
| serialVersionUID | org.apache.wicket.ConverterLocator$DefaultConverter.serialVersionUID |
| serialVersionUID | org.apache.wicket.ConverterLocator.serialVersionUID |
| NULL_VALUE | org.apache.wicket.Localizer.NULL_VALUE |
| serialVersionUID | org.apache.wicket.MarkupContainer$ChildList.serialVersionUID |
| serialVersionUID | org.apache.wicket.MarkupContainer.serialVersionUID |
| serialVersionUID | org.apache.wicket.MetaDataEntry.serialVersionUID |
| serialVersionUID | org.apache.wicket.MetaDataKey.serialVersionUID |
| serialVersionUID | org.apache.wicket.NonResettingRestartException.serialVersionUID |
| FLAG_IS_DIRTY | org.apache.wicket.Page.FLAG_IS_DIRTY |
| FLAG_PREVENT_DIRTY | org.apache.wicket.Page.FLAG_PREVENT_DIRTY |
| FLAG_STATELESS_HINT | org.apache.wicket.Page.FLAG_STATELESS_HINT |
| FLAG_WAS_CREATED_BOOKMARKABLE | org.apache.wicket.Page.FLAG_WAS_CREATED_BOOKMARKABLE |
| serialVersionUID | org.apache.wicket.Page.serialVersionUID |
| serialVersionUID | org.apache.wicket.PageReference.serialVersionUID |
| serialVersionUID | org.apache.wicket .RestartResponseAtInterceptPageException$InterceptData$1 .serialVersionUID |
| serialVersionUID | org.apache.wicket .RestartResponseAtInterceptPageException$InterceptData .serialVersionUID |
| serialVersionUID | org.apache.wicket.RestartResponseAtInterceptPageException .serialVersionUID |
| serialVersionUID | org.apache.wicket.RestartResponseException.serialVersionUID |
| serialVersionUID | org.apache.wicket.Session$PageAccessSynchronizerProvider .serialVersionUID |
| serialVersionUID | org.apache.wicket.Session.serialVersionUID |
| serialVersionUID | org.apache.wicket.SharedResources$AutoResourceReference .serialVersionUID |
| serialVersionUID | org.apache.wicket.WicketRuntimeException.serialVersionUID |
| serialVersionUID | org.apache.wicket.application .ComponentInitializationListenerCollection.serialVersionUID |
| serialVersionUID | org.apache.wicket.application.ComponentInstantiationListenerCollection .serialVersionUID |
| serialVersionUID | org.apache.wicket.application.ComponentOnAfterRenderListenerCollection .serialVersionUID |
| serialVersionUID | org.apache.wicket.application .ComponentOnBeforeRenderListenerCollection.serialVersionUID |
| serialVersionUID | org.apache.wicket.application.HeaderContributorListenerCollection .serialVersionUID |
| serialVersionUID | org.apache.wicket.behavior.AbstractAjaxBehavior.serialVersionUID |
| serialVersionUID | org.apache.wicket.behavior.AttributeAppender.serialVersionUID |
| serialVersionUID | org.apache.wicket.behavior.Behavior.serialVersionUID |
| serialVersionUID | org.apache.wicket.behavior.InvalidBehaviorIdException.serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.ComponentFeedbackMessageFilter .serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.ContainerFeedbackMessageFilter .serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.DefaultCleanupFeedbackMessageFilter .serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.ErrorLevelFeedbackMessageFilter .serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.FeedbackMessage.serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.FeedbackMessages.serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.FeedbackMessagesModel.serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.FencedFeedbackPanel$1.serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.FencedFeedbackPanel$2.serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.FencedFeedbackPanel.serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.IFeedbackMessageFilter$1.serialVersionUID |
| serialVersionUID | org.apache.wicket.feedback.IFeedbackMessageFilter$2.serialVersionUID |
| serialVersionUID | org.apache.wicket.mock.MockHomePage.serialVersionUID |
| serialVersionUID | org.apache.wicket.page.CouldNotLockPageException.serialVersionUID |
| serialVersionUID | org.apache.wicket.page.DefaultPageManagerContext$1.serialVersionUID |
| serialVersionUID | org.apache.wicket.page.PageAccessSynchronizer$1.serialVersionUID |
| serialVersionUID | org.apache.wicket.page.PageAccessSynchronizer.serialVersionUID |
| ATTRIBUTE_NAME | org.apache.wicket.page.PageStoreManager$PersistentRequestAdapter .ATTRIBUTE_NAME |
| serialVersionUID | org.apache.wicket.page.PageStoreManager$SessionEntry.serialVersionUID |
| serialVersionUID | org.apache.wicket.session.HttpSessionStore$SessionBindingListener .serialVersionUID |
Statistics
| Stat |
|---|
| Sum: |
| Average: |
| Minimum: |
| Maximum: |
| Standard deviation: |
| Variance: |
Trend Charts
Unfortunately, Google Terms of Service prohibit saving the Chart API on your machine for offline use as stated at https://developers.google.com/chart/interactive/faq#localdownload
We could not connect to https://www.google.com/jsapi to retrieve the script. We will display chart data in a table instead.
Please connect to the internet and reload the page to display the chart.
Projects Dependencies
| Assembly | Depends on | Is referenced by |
|---|---|---|
| wicket-util-6.0.0 v1.0 | - | - |
| rt v1.0 | - | - |
| MISSING v1.0 | - | - |
| wicket-request-6.0.0 v1.0 | - | - |
| junit-3.8.1 v1.0 | - | - |
| wicket-core v1.0 | wicket-util-6.0.0 v1.0 ; rt v1.0 ; MISSING v1.0 ; wicket-request-6.0.0 v1.0 ; junit-3.8.1 v1.0 ; | - |
Projects Build Order
- wicket-core
Projects Build Order
- wicket-core
Analysis Log : Information and Warnings
The Warnings can reveal potential flaws concerning the health of the build process.
A particular warn can be disabled through the JArchitect interactive UI, panel Error List, tick the checkbox Disabled corresponding to the warn to disable.
| Kind | Message |
|---|---|
| Info | 11/17/2013 22:00:53 Begin full analysis with JArchitect v4.0.0.8041 |
| Info | No Baseline for Comparison loaded. |
| Info | Bytecode parsing |
| Info | Third Party parsing |
| Info | Parsing Source Files |
| Info | No dependency cycle detected in assemblies referencement graph. |
| Info | 11/17/2013 22:01:42 Analyse dependencies of your application. |
| Info | 11/17/2013 22:01:42 Building the report (standard). |
| Warning | 9 critical rules are violated. - Types too big - critical - Methods too complex - critical - Prefer primitive types to boxed primitives - Always override hashcode when you override equals - Always override toString - Prefer interfaces to abstract classes - Use interfaces only to define types - Avoid using raw types - Do not raise generic exception |
| Info | 11/17/2013 22:01:48 Log trend metrics values. |



