protected String getEntryURL( ResourceRequest resourceRequest, JournalFeed feed, JournalArticle article, Layout layout, ThemeDisplay themeDisplay) throws Exception { List<Long> hitLayoutIds = JournalContentSearchLocalServiceUtil.getLayoutIds( layout.getGroupId(), layout.isPrivateLayout(), article.getArticleId()); if (hitLayoutIds.size() > 0) { Long hitLayoutId = hitLayoutIds.get(0); Layout hitLayout = LayoutLocalServiceUtil.getLayout( layout.getGroupId(), layout.isPrivateLayout(), hitLayoutId.longValue()); return PortalUtil.getLayoutFriendlyURL(hitLayout, themeDisplay); } else { long plid = PortalUtil.getPlidFromFriendlyURL(feed.getCompanyId(), feed.getTargetLayoutFriendlyUrl()); String portletId = PortletKeys.JOURNAL_CONTENT; if (Validator.isNotNull(feed.getTargetPortletId())) { portletId = feed.getTargetPortletId(); } PortletURL entryURL = new PortletURLImpl(resourceRequest, portletId, plid, PortletRequest.RENDER_PHASE); entryURL.setParameter("struts_action", "/journal_content/view"); entryURL.setParameter("groupId", String.valueOf(article.getGroupId())); entryURL.setParameter("articleId", article.getArticleId()); return entryURL.toString(); } }
@Override protected byte[] getRSS(ResourceRequest resourceRequest, ResourceResponse resourceResponse) throws Exception { ThemeDisplay themeDisplay = (ThemeDisplay) resourceRequest.getAttribute(WebKeys.THEME_DISPLAY); JournalFeed feed = null; long id = ParamUtil.getLong(resourceRequest, "id"); long groupId = ParamUtil.getLong(resourceRequest, "groupId"); String feedId = ParamUtil.getString(resourceRequest, "feedId"); if (id > 0) { feed = JournalFeedLocalServiceUtil.getFeed(id); } else { feed = JournalFeedLocalServiceUtil.getFeed(groupId, feedId); } String languageId = LanguageUtil.getLanguageId(resourceRequest); long plid = PortalUtil.getPlidFromFriendlyURL( themeDisplay.getCompanyId(), feed.getTargetLayoutFriendlyUrl()); Layout layout = themeDisplay.getLayout(); if (plid > 0) { try { layout = LayoutLocalServiceUtil.getLayout(plid); } catch (NoSuchLayoutException nsle) { } } String rss = exportToRSS(resourceRequest, resourceResponse, feed, languageId, layout, themeDisplay); return rss.getBytes(StringPool.UTF8); }
public void testUpdateExisting() throws Exception { long pk = nextLong(); JournalFeed newJournalFeed = _persistence.create(pk); newJournalFeed.setUuid(randomString()); newJournalFeed.setGroupId(nextLong()); newJournalFeed.setCompanyId(nextLong()); newJournalFeed.setUserId(nextLong()); newJournalFeed.setUserName(randomString()); newJournalFeed.setCreateDate(nextDate()); newJournalFeed.setModifiedDate(nextDate()); newJournalFeed.setFeedId(randomString()); newJournalFeed.setName(randomString()); newJournalFeed.setDescription(randomString()); newJournalFeed.setType(randomString()); newJournalFeed.setStructureId(randomString()); newJournalFeed.setTemplateId(randomString()); newJournalFeed.setRendererTemplateId(randomString()); newJournalFeed.setDelta(nextInt()); newJournalFeed.setOrderByCol(randomString()); newJournalFeed.setOrderByType(randomString()); newJournalFeed.setTargetLayoutFriendlyUrl(randomString()); newJournalFeed.setTargetPortletId(randomString()); newJournalFeed.setContentField(randomString()); newJournalFeed.setFeedType(randomString()); newJournalFeed.setFeedVersion(nextDouble()); _persistence.update(newJournalFeed, false); JournalFeed existingJournalFeed = _persistence.findByPrimaryKey(newJournalFeed.getPrimaryKey()); assertEquals(existingJournalFeed.getUuid(), newJournalFeed.getUuid()); assertEquals(existingJournalFeed.getId(), newJournalFeed.getId()); assertEquals(existingJournalFeed.getGroupId(), newJournalFeed.getGroupId()); assertEquals(existingJournalFeed.getCompanyId(), newJournalFeed.getCompanyId()); assertEquals(existingJournalFeed.getUserId(), newJournalFeed.getUserId()); assertEquals(existingJournalFeed.getUserName(), newJournalFeed.getUserName()); assertEquals( Time.getShortTimestamp(existingJournalFeed.getCreateDate()), Time.getShortTimestamp(newJournalFeed.getCreateDate())); assertEquals( Time.getShortTimestamp(existingJournalFeed.getModifiedDate()), Time.getShortTimestamp(newJournalFeed.getModifiedDate())); assertEquals(existingJournalFeed.getFeedId(), newJournalFeed.getFeedId()); assertEquals(existingJournalFeed.getName(), newJournalFeed.getName()); assertEquals(existingJournalFeed.getDescription(), newJournalFeed.getDescription()); assertEquals(existingJournalFeed.getType(), newJournalFeed.getType()); assertEquals(existingJournalFeed.getStructureId(), newJournalFeed.getStructureId()); assertEquals(existingJournalFeed.getTemplateId(), newJournalFeed.getTemplateId()); assertEquals( existingJournalFeed.getRendererTemplateId(), newJournalFeed.getRendererTemplateId()); assertEquals(existingJournalFeed.getDelta(), newJournalFeed.getDelta()); assertEquals(existingJournalFeed.getOrderByCol(), newJournalFeed.getOrderByCol()); assertEquals(existingJournalFeed.getOrderByType(), newJournalFeed.getOrderByType()); assertEquals( existingJournalFeed.getTargetLayoutFriendlyUrl(), newJournalFeed.getTargetLayoutFriendlyUrl()); assertEquals(existingJournalFeed.getTargetPortletId(), newJournalFeed.getTargetPortletId()); assertEquals(existingJournalFeed.getContentField(), newJournalFeed.getContentField()); assertEquals(existingJournalFeed.getFeedType(), newJournalFeed.getFeedType()); assertEquals(existingJournalFeed.getFeedVersion(), newJournalFeed.getFeedVersion()); }