/** * Returns a set of 'placeholder' SharedEntity's - they only have an id * * @param entityType type of SharedEntity - either SearchRequest or PortalPage * @param ids set of ids */ public Collection<SharedEntity> getDummySharedEntities(SharedEntityType entityType, Set<Long> ids) { final Set<SharedEntity> sharedEntities = Sets.newHashSet(); for (Long id : ids) { if (entityType.getTypeDescriptor().equals(SearchRequest.ENTITY_TYPE)) { sharedEntities.add(new SearchRequest(new QueryImpl(null, new OrderByImpl(), null), "", "dummy", "dummyDescription", id, 0)); } else { sharedEntities.add(PortalPage.name("dummy").id(id).build()); } } return sharedEntities; }
private void updatePortalPage(final PortalPage portalPage, final DashboardState dashboardState) { //update the portalPageStore's title and layout if they changed. if (!portalPage.getLayout().equals(dashboardState.getLayout()) || !StringUtils.equals(portalPage.getName(), dashboardState.getTitle())) { final PortalPage.Builder builder = PortalPage.portalPage(portalPage); builder.name(dashboardState.getTitle()); builder.layout(dashboardState.getLayout()); portalPageStore.update(builder.build()); } }
PortalPage newPage = PortalPage.name(name).description(desc).owner(user).permissions(SharedEntity.SharePermissions.PRIVATE).build();
public void visit(final UpdateLayoutChange updateLayoutChange) { final Long dashboardId = toLong(updateDashboardState.getId()); final PortalPage portalPage = portalPageStore.getPortalPage(dashboardId); if (!portalPage.getLayout().equals(updateLayoutChange.getLayout())) { portalPageStore.update(PortalPage.portalPage(portalPage).layout(updateLayoutChange.getLayout()).build()); } final GadgetLayout newLayout = updateLayoutChange.getGadgetLayout(); for (int column = 0; column < newLayout.getNumberOfColumns(); column++) { int row = 0; final Iterable<GadgetId> gadgets = newLayout.getGadgetsInColumn(column); for (GadgetId gadgetId : gadgets) { final Long gadgetIdLong = toLong(gadgetId); final PortletConfiguration portletConfiguration = portletConfigurationStore.getByPortletId(gadgetIdLong); if (portletConfiguration.getColumn() != column || portletConfiguration.getRow() != row) { portletConfigurationStore.updateGadgetPosition(gadgetIdLong, row, column, dashboardId); } row += 1; } } }
private PortalPage gvToPortalPage(final GenericValue gv) { PortalPage portalPage = null; if (gv != null) { final String username = gv.getString(Column.USERNAME); final String layoutString = gv.getString(Column.LAYOUT); //legacy dashboards may not have a layout. final Layout layout = StringUtils.isEmpty(layoutString) ? Layout.AA : Layout.valueOf(layoutString); if (username != null) { portalPage = PortalPage.id(gv.getLong(Column.ID)).name(gv.getString(Column.PAGENAME)).description(gv.getString(Column.DESCRIPTION)). owner(userManager.getUserByKeyEvenWhenUnknown(gv.getString(Column.USERNAME))).favouriteCount(gv.getLong(Column.FAVCOUNT)).layout(layout).version(gv.getLong(Column.VERSION)).build(); } else { portalPage = PortalPage.id(gv.getLong(Column.ID)).name(gv.getString(Column.PAGENAME)).description(gv.getString(Column.DESCRIPTION)). favouriteCount(gv.getLong(Column.FAVCOUNT)).layout(layout).version(gv.getLong(Column.VERSION)).systemDashboard().build(); } } return portalPage; }
private PortalPage setRelatedState(final PortalPage portalPage) { if (portalPage != null) { final PortalPage.Builder builder = PortalPage.portalPage(portalPage); //the system default dashboard should always have the global permission if (portalPage.isSystemDefaultPortalPage()) { builder.permissions(SharePermissions.GLOBAL); } else { builder.permissions(shareManager.getSharePermissions(portalPage)); } return builder.build(); } return null; }
@Override public PortalPage createBasedOnClone(final ApplicationUser pageOwner, final PortalPage portalPage, final PortalPage clonePortalPage) { assertCreate(portalPage); notNull("clonePortalPage", clonePortalPage); //need to set the layout here since it determines the number of columns for the new portal page. (JRA-16991) final PortalPage portalPageToCreate = PortalPage.portalPage(portalPage).layout(clonePortalPage.getLayout()).build(); final PortalPage newPortalPage = createNoEvent(portalPageToCreate); clonePortletsFromOnePageToAnother(pageOwner, clonePortalPage, newPortalPage); eventPublisher.publish(new DashboardCreated(newPortalPage, authenticationContext.getUser())); return newPortalPage; }
private PortalPage createUpdatedPortalPageForOwner(PortalPage dashboard, String ownerName) { final PortalPage portalPage = getDashboard(); if (portalPage != null) { return PortalPage.portalPage(portalPage). owner(getOwnerUserObj()). build(); } return portalPage; }
@Override public PortalPage update(final PortalPage portalPage) { assertCreate(portalPage); notNull("portalPage.id", portalPage.getId()); final PortalPage newPortalPage = PortalPage.portalPage(portalPageStore.update(portalPage)).permissions(portalPage.getPermissions()).build(); shareManager.updateSharePermissions(newPortalPage); indexer.index(newPortalPage).await(); eventPublisher.publish(new DashboardUpdated(portalPage, newPortalPage, authenticationContext.getUser())); return newPortalPage; }
private PortalPage createNewPortalPage() { final ApplicationUser user = getLoggedInUser(); return PortalPage.name(portalPageName).description(portalPageDescription).owner(user).permissions(getPermissions()).build(); }
private PortalPage createUpdatedPortalPage() { final PortalPage portalPage = getPortalPage(); if (portalPage != null) { return PortalPage.portalPage(portalPage). name(getPortalPageName()). description(getPortalPageDescription()). permissions(getPermissions()). build(); } return portalPage; }
protected PortalPage createNoEvent(final PortalPage portalPage) { assertCreate(portalPage); final PortalPage createdPortalPage = PortalPage.portalPage(portalPageStore.create(portalPage)).permissions(portalPage.getPermissions()).build(); shareManager.updateSharePermissions(createdPortalPage); indexer.index(createdPortalPage).await(); return createdPortalPage; }
/** * Make a copy of the search request. * * @param portalPage the search request to copy. * * @return the copied search request. */ private PortalPage copyPortalPage(final PortalPage portalPage) { return portalPage != null ? new PortalPage.Builder().portalPage(portalPage).build() : null; }