2929import org .apache .log4j .Logger ;
3030
3131import it .eng .spago .base .SourceBean ;
32- import it .eng .spago .configuration .ConfigSingleton ;
3332import it .eng .spago .error .EMFErrorSeverity ;
3433import it .eng .spago .error .EMFInternalError ;
3534import it .eng .spago .error .EMFUserError ;
3837import it .eng .spagobi .commons .bo .UserProfile ;
3938import it .eng .spagobi .commons .constants .AdmintoolsConstants ;
4039import it .eng .spagobi .commons .dao .DAOFactory ;
41- import it .eng .spagobi .commons .utilities .UserUtilities ;
4240import it .eng .spagobi .commons .utilities .messages .MessageBuilder ;
4341import it .eng .spagobi .wapp .bo .Menu ;
4442
@@ -77,8 +75,9 @@ public static String getMenuPath(List filteredMenuList, Menu menu, Locale locale
7775 break ;
7876 }
7977 }
80- if (parent == null )
78+ if (parent == null ) {
8179 parent = DAOFactory .getMenuDAO ().loadMenuByID (menu .getParentId ());
80+ }
8281 // can happen that parent is not found
8382 if (parent == null ) {
8483 if (menu .getName ().startsWith ("#" )) {
@@ -101,7 +100,7 @@ public static String getMenuPath(List filteredMenuList, Menu menu, Locale locale
101100 public static void checkAndSetNotClickableMenus (Menu menu , IEngUserProfile userProfile ) {
102101 if (menu .getObjId () != null ) {
103102 boolean clickable = MenuAccessVerifier .checkClickable (menu , userProfile );
104- if (clickable == false ) {
103+ if (! clickable ) {
105104 menu .setClickable (false );
106105 }
107106 }
@@ -119,10 +118,12 @@ public static List filterListForUser(List menuList, IEngUserProfile userProfile)
119118 for (int i = 0 ; i < menuList .size (); i ++) {
120119 Menu menuElem = (Menu ) menuList .get (i );
121120 boolean canView = false ;
122- if (menuElem .getCode () == null )
121+ if (menuElem .getCode () == null ) {
123122 canView = MenuAccessVerifier .canView (menuElem , userProfile );
124- else
123+ }
124+ else {
125125 canView = true ; // technical menu voice is ever visible if
126+ }
126127 // it's present
127128 if (canView ) {
128129 filteredMenuList .add (menuElem );
@@ -147,71 +148,6 @@ public static void filterListForUserClickableElements(List menuList, IEngUserPro
147148 }
148149 }
149150
150-
151-
152- /**
153- * Gets the elements of menu relative by the user logged. It reaches the role from the request and asks to the DB all detail menu information, by calling
154- * the method <code>loadMenuByRoleId</code>.
155- *
156- * @param request The request Source Bean
157- * @param response The response Source Bean
158- * @throws EMFUserError If an exception occurs
159- */
160- public static void getMenuItems (SourceBean request , SourceBean response , IEngUserProfile profile ) throws EMFUserError {
161- try {
162- List lstFinalMenu = new ArrayList ();
163- boolean technicalMenuLoaded = false ;
164-
165- Collection lstRolesForUser = ((UserProfile ) profile ).getRolesForUse ();
166- logger .debug ("** Roles for user: " + lstRolesForUser .size ());
167-
168- Object [] arrRoles = lstRolesForUser .toArray ();
169- Integer levelItem = 1 ;
170- for (int i = 0 ; i < arrRoles .length ; i ++) {
171- logger .debug ("*** arrRoles[i]): " + arrRoles [i ]);
172- Role role = DAOFactory .getRoleDAO ().loadByName ((String ) arrRoles [i ]);
173- if (role != null ) {
174-
175- List menuItemsForARole = DAOFactory .getMenuRolesDAO ().loadMenuByRoleId (role .getId ());
176- if (menuItemsForARole != null ) {
177- mergeMenuItems (lstFinalMenu , menuItemsForARole );
178- } else {
179- logger .debug ("Not found menu items for user role " + (String ) arrRoles [i ]);
180- }
181-
182- if (!technicalMenuLoaded && UserUtilities .isTechnicalUser (profile )) {
183- // list technical user menu
184- technicalMenuLoaded = true ;
185- List firstLevelItems = ConfigSingleton .getInstance ().getAttributeAsList ("TECHNICAL_USER_MENU.ITEM" );
186- Iterator it = firstLevelItems .iterator ();
187- while (it .hasNext ()) {
188- SourceBean itemSB = (SourceBean ) it .next ();
189- if (isAbleToSeeItem (itemSB , profile )) {
190-
191- lstFinalMenu .add (getAdminItemRec (itemSB , levelItem , profile , null ));
192- levelItem ++;
193- }
194- }
195- }
196- } else
197- logger .debug ("Role " + (String ) arrRoles [i ] + " not found on db" );
198- }
199- response .setAttribute (LIST_MENU , lstFinalMenu );
200-
201- logger .debug ("List Menu Size " + lstFinalMenu .size ());
202- // String menuMode =
203- // (configSingleton.getAttribute("SPAGOBI.MENU.mode")==null)?DEFAULT_LAYOUT_MODE:(String)configSingleton.getAttribute("SPAGOBI.MENU.mode");
204- // response.setAttribute(MENU_MODE, menuMode);
205- response .setAttribute (MENU_MODE , DEFAULT_LAYOUT_MODE );
206-
207- } catch (Exception ex ) {
208- logger .error ("Cannot fill response container" + ex .getLocalizedMessage ());
209- HashMap params = new HashMap ();
210- params .put (AdmintoolsConstants .PAGE , MODULE_PAGE );
211- throw new EMFUserError (EMFErrorSeverity .ERROR , 500 , new Vector (), params );
212- }
213- }
214-
215151 /**
216152 * Gets the elements of menu relative by the user logged. It reaches the role from the request and asks to the DB all detail menu information, by calling
217153 * the method <code>loadMenuByRoleId</code>.
@@ -261,8 +197,9 @@ public static List getMenuItems(IEngUserProfile profile, boolean menuRolesDaoReq
261197// }
262198// }
263199// }
264- } else
265- logger .debug ("Role " + (String ) arrRole + " not found on db" );
200+ } else {
201+ logger .debug ("Role " + (String ) arrRole + " not found on db" );
202+ }
266203 }
267204
268205 logger .debug ("List Menu Size " + lstFinalMenu .size ());
@@ -321,8 +258,9 @@ private static boolean isAbleToSeeItem(SourceBean itemSB, IEngUserProfile profil
321258 */
322259 private static boolean isAbleToSeeContainedItems (SourceBean itemSB , IEngUserProfile profile ) throws EMFInternalError {
323260 List subItems = itemSB .getAttributeAsList ("ITEM" );
324- if (subItems == null || subItems .isEmpty ())
261+ if (subItems == null || subItems .isEmpty ()) {
325262 return false ;
263+ }
326264 Iterator it = subItems .iterator ();
327265 while (it .hasNext ()) {
328266 SourceBean subItem = (SourceBean ) it .next ();
@@ -370,16 +308,17 @@ private static Menu getAdminItemRec(SourceBean itemSB, Integer progStart, IEngUs
370308 node .setAdminsMenu (true );
371309 node .setIconCls (iconCls );
372310 node .setLinkType (linkType );
373- if (groupingMenu != null )
311+ if (groupingMenu != null ) {
374312 node .setGroupingMenu (groupingMenu );
313+ }
375314
376315 if (functionality == null ) {
377316 // father node
378317 List subItems = itemSB .getAttributeAsList ("ITEM" );
379318 Iterator it = subItems .iterator ();
380- if (subItems == null || subItems .isEmpty ())
319+ if (subItems == null || subItems .isEmpty ()) {
381320 node .setHasChildren (false );
382- else {
321+ } else {
383322 node .setHasChildren (true );
384323 List lstChildren = new ArrayList ();
385324 while (it .hasNext ()) {
@@ -412,8 +351,9 @@ private static Menu getAdminItemRec(SourceBean itemSB, Integer progStart, IEngUs
412351 * @return the index of the input menu item or -1 if it is not found in the list
413352 */
414353 public static int indexOf (List lst , Menu menu ) {
415- if (lst == null )
354+ if (lst == null ) {
416355 return -1 ;
356+ }
417357 for (int i = 0 ; i < lst .size (); i ++) {
418358 Menu tmpMenu = (Menu ) lst .get (i );
419359 if (tmpMenu .getMenuId ().intValue () == menu .getMenuId ().intValue ()) {
0 commit comments