private void setupSubHeading(final HomeShortcut shortcut) { int part = 1; addText(shortcut.getSubHeading(), part); for (HomeShortcutLink link : shortcut.getLinks()) { addLink(link); addText(shortcut.getSubHeading(), ++part); } }
private void setupAction(final HomeShortcut shortcut) { if (shortcutHelper.authorize(shortcut)) { view.setAction(shortcut.getOnClickCommand()); } }
public static HomeShortcut makeShortcut(final String iconCss, final String heading, final String subHeading, final Command onClickCommand) { return new HomeShortcut(iconCss, heading, subHeading, onClickCommand, null, null, null, null); }
public boolean authorize(final HomeShortcut shortcut) { if (shortcut.getResource() != null) { return authorizationManager.authorize(shortcut.getResource(), shortcut.getResourceAction(), user); } else if (shortcut.getPermission() != null) { return authorizationManager.authorize(shortcut.getPermission(), user); } else { return true; } } }
@Test public void setupTest() { final HomeShortcut shortcut = ModelUtils.makeShortcut("iconCss iconCss2", "heading", "subHeadingPrefix{0}subHeadingSuffix", mock(Command.class)); final HomeShortcutLink link = new HomeShortcutLink("label", "perspectiveIdentifier"); shortcut.addLink(link); presenter.setup(shortcut); verify(view).addIconClass("iconCss"); verify(view).addIconClass("iconCss2"); verify(view).setHeading(shortcut.getHeading()); verify(view).setAction(shortcut.getOnClickCommand()); verify(textPresenter).setup(shortcut.getSubHeading(), 1); verify(textPresenter).setup(shortcut.getSubHeading(), 2); verify(view, times(2)).addSubHeadingChild(textPresenter.getView()); verify(linkPresenter).setup(link); verify(view).addSubHeadingChild(linkPresenter.getView()); }
protected void assertHomeModel(final HomeModel model, final String deployDescription) { assertNotNull(model); assertEquals(Constants.Heading, model.getWelcome()); assertEquals(Constants.SubHeading, model.getDescription()); assertEquals(4, model.getShortcuts().size()); assertEquals(Constants.Design, model.getShortcuts().get(0).getHeading()); assertEquals(Constants.DesignDescriptionFull, model.getShortcuts().get(0).getSubHeading()); assertEquals(Constants.Deploy, model.getShortcuts().get(1).getHeading()); assertEquals(deployDescription, model.getShortcuts().get(1).getSubHeading()); }
private void assertDesign(final HomeModel model) { assertEquals(1, model.getShortcuts().get(0).getLinks().size()); assertEquals(Constants.Projects, model.getShortcuts().get(0).getLinks().get(0).getLabel()); assertEquals(PerspectiveIds.LIBRARY, model.getShortcuts().get(0).getLinks().get(0).getPerspectiveIdentifier()); } }
protected HomeShortcut createManageShortcut() { final HomeShortcut manage = ModelUtils.makeShortcut("fa fa-briefcase", translationService.format(Constants.Manage), translationService.format(Constants.ManageDescription), () -> placeManager.goTo(PROCESS_INSTANCES), PROCESS_INSTANCES, PERSPECTIVE); manage.addLink(new HomeShortcutLink(translationService.format(Constants.ProcessDefinitions), PROCESS_DEFINITIONS)); manage.addLink(new HomeShortcutLink(translationService.format(Constants.ProcessInstances), PROCESS_INSTANCES)); manage.addLink(new HomeShortcutLink(translationService.format(Constants.Tasks), TASKS_ADMIN)); manage.addLink(new HomeShortcutLink(translationService.format(Constants.Jobs), JOBS)); manage.addLink(new HomeShortcutLink(translationService.format(Constants.ExecutionErrors), EXECUTION_ERRORS)); return manage; }
public void setup(final HomeShortcut shortcut) { setupIcon(shortcut); view.setHeading(shortcut.getHeading()); setupAction(shortcut); setupSubHeading(shortcut); }
private void setupIcon(final HomeShortcut shortcut) { final String iconClass = shortcut.getIconCss(); if (iconClass != null && !iconClass.isEmpty()) { Stream.of(iconClass.split(" ")).forEach(clazz -> view.addIconClass(clazz)); } }
private void assertHomeModel(final HomeModel model, final String deployDescription) { assertNotNull(model); assertEquals(Constants.Heading, model.getWelcome()); assertEquals(Constants.SubHeading, model.getDescription()); assertEquals(2, model.getShortcuts().size()); assertEquals(Constants.Design, model.getShortcuts().get(0).getHeading()); assertEquals(Constants.DesignDescription, model.getShortcuts().get(0).getSubHeading()); assertEquals(Constants.Deploy, model.getShortcuts().get(1).getHeading()); assertEquals(deployDescription, model.getShortcuts().get(1).getSubHeading()); }
private void assertDesign(final HomeModel model) { assertEquals(2, model.getShortcuts().get(0).getLinks().size()); assertEquals(Constants.Projects, model.getShortcuts().get(0).getLinks().get(0).getLabel()); assertEquals(PerspectiveIds.LIBRARY, model.getShortcuts().get(0).getLinks().get(0).getPerspectiveIdentifier()); assertEquals(Constants.Pages, model.getShortcuts().get(0).getLinks().get(1).getLabel()); assertEquals(PerspectiveIds.CONTENT_MANAGEMENT, model.getShortcuts().get(0).getLinks().get(1).getPerspectiveIdentifier()); }
protected HomeShortcut createTrackShortcut() { final HomeShortcut track = ModelUtils.makeShortcut("pficon pficon-trend-up", translationService.format(Constants.Track), translationService.format(Constants.TrackDescription), () -> placeManager.goTo(PROCESS_DASHBOARD), PROCESS_DASHBOARD, PERSPECTIVE); track.addLink(new HomeShortcutLink(translationService.format(Constants.TaskInbox), TASKS)); track.addLink(new HomeShortcutLink(translationService.format(Constants.ProcessReports), PROCESS_DASHBOARD)); track.addLink(new HomeShortcutLink(translationService.format(Constants.TaskReports), TASK_DASHBOARD)); return track; }
private void assertTrack(final HomeModel model) { assertEquals(3, model.getShortcuts().get(3).getLinks().size()); assertEquals(Constants.TaskInbox, model.getShortcuts().get(3).getLinks().get(0).getLabel()); assertEquals(PerspectiveIds.TASKS, model.getShortcuts().get(3).getLinks().get(0).getPerspectiveIdentifier()); assertEquals(Constants.ProcessReports, model.getShortcuts().get(3).getLinks().get(1).getLabel()); assertEquals(PerspectiveIds.PROCESS_DASHBOARD, model.getShortcuts().get(3).getLinks().get(1).getPerspectiveIdentifier()); assertEquals(Constants.TaskReports, model.getShortcuts().get(3).getLinks().get(2).getLabel()); assertEquals(PerspectiveIds.TASK_DASHBOARD, model.getShortcuts().get(3).getLinks().get(2).getPerspectiveIdentifier()); }
@Override protected HomeShortcut createDesignShortcut() { final HomeShortcut design = ModelUtils.makeShortcut("pficon pficon-blueprint", translationService.format(Constants.Design), getDesignDescription(), () -> placeManager.goTo(LIBRARY), LIBRARY, PERSPECTIVE); design.addLink(new HomeShortcutLink(translationService.format(Constants.Projects), LIBRARY)); if (profilePreferences.getProfile() == Profile.FULL) { design.addLink(new HomeShortcutLink(translationService.format(Constants.Pages), CONTENT_MANAGEMENT)); } return design; }
@Test public void setupWithNoActionPermissionTest() { doReturn(false).when(shortcutHelper).authorize(any(HomeShortcut.class)); final HomeShortcut shortcut = ModelUtils.makeShortcut("iconCss", "heading", "subHeadingPrefix", mock(Command.class)); presenter.setup(shortcut); verify(view, never()).setAction(shortcut.getOnClickCommand()); } }
public static HomeShortcut makeShortcut(final String iconCss, final String heading, final String subHeading, final Command onClickCommand, final String permission) { return new HomeShortcut(iconCss, heading, subHeading, onClickCommand, permission, null, null, null); } }
@Test public void checkSetupWithProvisioningDenied() { when(shortcutHelper.authorize(PerspectiveIds.PROVISIONING)).thenReturn(false); final HomeModel model = producer.get(profilePreferences); assertHomeModel(model, Constants.DeployDescription1); assertDesign(model); assertEquals(1, model.getShortcuts().get(1).getLinks().size()); assertEquals(Constants.Servers, model.getShortcuts().get(1).getLinks().get(0).getLabel()); assertEquals(PerspectiveIds.SERVER_MANAGEMENT, model.getShortcuts().get(1).getLinks().get(0).getPerspectiveIdentifier()); }
protected HomeShortcut createDeployShortcut() { final HomeShortcutLink deployments = new HomeShortcutLink(translationService.format(Constants.Provisioning), PROVISIONING); final HomeShortcutLink servers = new HomeShortcutLink(translationService.format(Constants.Servers), SERVER_MANAGEMENT); final boolean isDeploymentsAuthorized = shortcutHelper.authorize(deployments.getPerspectiveIdentifier()); final HomeShortcut deploy = ModelUtils.makeShortcut("fa fa-gears", translationService.format(Constants.Deploy), getDeployDescription(isDeploymentsAuthorized), () -> placeManager.goTo(SERVER_MANAGEMENT), SERVER_MANAGEMENT, PERSPECTIVE); if (isDeploymentsAuthorized) { deploy.addLink(deployments); } deploy.addLink(servers); return deploy; }
public static HomeShortcut makeShortcut(final String iconCss, final String heading, final String subHeading, final Command onClickCommand, final String resourceId, final ResourceType resourceType, final ResourceAction resourceAction) { return new HomeShortcut(iconCss, heading, subHeading, onClickCommand, null, resourceId, resourceType, resourceAction); }