framework/widget/src/org/ofbiz/widget/model/ModelMenu.java
ModelMenu
has 131 methods (exceeds 20 allowed). Consider refactoring. Open
Open
@SuppressWarnings("serial")
public class ModelMenu extends ModelMenuCommon implements ModelWidget.IdAttrWidget { // SCIPIO: new comon base class to share with sub-menu
/*
* ----------------------------------------------------------------------- *
Method processIncludeMenuItems
has 15 arguments (exceeds 4 allowed). Consider refactoring. Open
Open
void processIncludeMenuItems(Element parentElement, List<? extends Element> preInclElements, List<? extends Element> postInclElements, List<ModelMenuItem> menuItemList,
Map<String, ModelMenuItem> menuItemMap, Map<String, ModelMenuItemAlias> menuItemAliasMap, boolean includeMenuItemAliases, String currResource,
boolean processIncludes, Set<String> excludeItems, String subMenusFilter, String forceSubMenuModelScope,
ModelSubMenu parentSubMenu, CurrentMenuDefBuildArgs currentMenuDefBuildArgs, GeneralBuildArgs genBuildArgs) {
Method processIncludeActions
has 8 arguments (exceeds 4 allowed). Consider refactoring. Open
Open
void processIncludeActions(Element parentElement, List<? extends Element> preInclElements, List<? extends Element> postInclElements, List<ModelAction> actions,
String currResource, boolean processIncludes, CurrentMenuDefBuildArgs currentMenuDefBuildArgs, GeneralBuildArgs genBuildArgs) {
Method loadIncludedMenu
has 7 arguments (exceeds 4 allowed). Consider refactoring. Open
Open
Element loadIncludedMenu(String menuName, String resource,
Element currMenuElem, String currResource,
Map<String, Element> menuElemCache, boolean useCache, boolean cacheConsume) {
Avoid deeply nested control flow statements. Open
Open
if ("includes-only".equals(inclRecursive) || "full".equals(inclRecursive)) {
processIncludeActions(includedMenuElem, null, null, actions,
nextResource, true,
includedNextCurrentMenuDefBuildArgs, genBuildArgs);
} else {
Avoid deeply nested control flow statements. Open
Open
if ("includes-only".equals(inclRecursive) || "full".equals(inclRecursive)) {
processIncludeMenuItems(includedMenuElem, null, null, menuItemList, menuItemMap, menuItemAliasMap, nextIncludeMenuItemAliases,
nextResource, true, inclExcludeItems, nextSubMenusFilter, includedForceSubMenuModelScope, parentSubMenu,
includedNextCurrentMenuDefBuildArgs, genBuildArgs);
} else {
Avoid deeply nested control flow statements. Open
Open
if ("extends-only".equals(inclRecursive) || "full".equals(inclRecursive)) {
String extendedResource = includedMenuElem.getAttribute("extends-resource");
String extendedMenuName = includedMenuElem.getAttribute("extends");
String extendedNextResource = UtilValidate.isNotEmpty(extendedResource) ? extendedResource : nextResource;
Avoid deeply nested control flow statements. Open
Open
if (UtilValidate.isEmpty(includedForceSubMenuModelScope)) {
includedForceSubMenuModelScope = includedMenuModel.forceAllSubMenuModelScope;
}
Avoid deeply nested control flow statements. Open
Open
if ("extends-only".equals(inclRecursive) || "full".equals(inclRecursive)) {
String extendedResource = includedMenuElem.getAttribute("extends-resource");
String extendedMenuName = includedMenuElem.getAttribute("extends");
String extendedNextResource = UtilValidate.isNotEmpty(extendedResource) ? extendedResource : nextResource;
if (UtilValidate.isNotEmpty(extendedMenuName)) {
Avoid too many return
statements within this method. Open
Open
return new MenuAndItemLookup(null, menuItem, subMenuName, mappedMenuItemName, menuItemName, null);
Avoid too many return
statements within this method. Open
Open
return new MenuAndItemLookup(subMenu.getParentMenuItem().getParentSubMenu(), subMenu.getParentMenuItem(),
subMenuName, mappedMenuItemName, menuItemName, subMenu);