Example usage for com.liferay.portal.kernel.util StringPool SLASH

List of usage examples for com.liferay.portal.kernel.util StringPool SLASH

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.util StringPool SLASH.

Prototype

String SLASH

To view the source code for com.liferay.portal.kernel.util StringPool SLASH.

Click Source Link

Usage

From source file:com.liferay.wiki.engine.html.internal.HtmlEngine.java

License:Open Source License

private Map<String, Boolean> _getOutgoingLinks(WikiPage page) throws PortalException {

    if (Validator.isNull(page.getContent())) {
        return Collections.emptyMap();
    }/* w  ww . j  a v a  2s.  c o  m*/

    Map<String, Boolean> links = new HashMap<>();

    Source source = new Source(page.getContent());

    List<StartTag> startTags = source.getAllStartTags("a");

    for (StartTag startTag : startTags) {
        String href = startTag.getAttributeValue("href");

        if (Validator.isNull(href)) {
            continue;
        }

        int pos = href.lastIndexOf(_friendlyURLMapping);

        if (pos == -1) {
            continue;
        }

        String friendlyURL = href.substring(pos + _friendlyURLMapping.length());

        if (friendlyURL.endsWith(StringPool.SLASH)) {
            friendlyURL = friendlyURL.substring(0, friendlyURL.length() - 1);
        }

        Map<String, String> routeParameters = new HashMap<>();

        if (!_router.urlToParameters(friendlyURL, routeParameters)) {
            if (_log.isWarnEnabled()) {
                _log.warn("No route could be found to match URL " + friendlyURL);
            }

            continue;
        }

        String title = routeParameters.get("title");
        String nodeName = routeParameters.get("nodeName");

        if (Validator.isNull(title) || Validator.isNull(nodeName)) {
            continue;
        }

        try {
            _wikiNodeLocalService.getNode(page.getGroupId(), nodeName);

            links.put(StringUtil.toLowerCase(title), Boolean.TRUE);
        } catch (NoSuchNodeException nsne) {
            if (_log.isWarnEnabled()) {
                _log.warn(nsne.getMessage());
            }
        }
    }

    return links;
}

From source file:com.liferay.wiki.engine.markdown.MarkdownEngine.java

License:Open Source License

@Override
public Map<String, Boolean> getOutgoingLinks(WikiPage page) throws PageContentException {

    String content = convert(page, null, null, null);

    if (Validator.isNull(content)) {
        return Collections.emptyMap();
    }/*from   w  w w  . j  ava  2s . c  o m*/

    Map<String, Boolean> links = new HashMap<>();

    Source source = new Source(content);

    List<StartTag> startTags = source.getAllStartTags("a");

    for (StartTag startTag : startTags) {
        String href = startTag.getAttributeValue("href");

        if (Validator.isNull(href)) {
            continue;
        }

        int pos = href.lastIndexOf(_friendlyURLMapping);

        if (pos == -1) {
            continue;
        }

        String friendlyURL = href.substring(pos + _friendlyURLMapping.length());

        if (friendlyURL.endsWith(StringPool.SLASH)) {
            friendlyURL = friendlyURL.substring(0, friendlyURL.length() - 1);
        }

        Map<String, String> routeParameters = new HashMap<>();

        if (!_router.urlToParameters(friendlyURL, routeParameters)) {
            if (_log.isWarnEnabled()) {
                _log.warn("No route could be found to match URL " + friendlyURL);
            }

            continue;
        }

        String title = routeParameters.get("title");
        String nodeName = routeParameters.get("nodeName");

        if (Validator.isNull(title) || Validator.isNull(nodeName)) {
            continue;
        }

        try {
            _wikiNodeLocalService.getNode(page.getGroupId(), nodeName);

            links.put(StringUtil.toLowerCase(title), Boolean.TRUE);
        } catch (PortalException pe) {
            if (_log.isWarnEnabled()) {
                _log.warn(pe.getMessage());
            }
        }
    }

    return links;
}

From source file:com.liferay.wiki.importer.impl.mediawiki.MediaWikiImporter.java

License:Open Source License

protected String translateMediaWikiImagePaths(String content) {
    return content.replaceAll(_imagesPattern.pattern(),
            "$1$2" + SHARED_IMAGES_TITLE + StringPool.SLASH + "$3$4");
}

From source file:com.liferay.wiki.service.impl.WikiPageLocalServiceImpl.java

License:Open Source License

protected String getPageURL(WikiPage page, ServiceContext serviceContext) throws PortalException {

    HttpServletRequest request = serviceContext.getRequest();

    if (request == null) {
        return StringPool.BLANK;
    }/*  w  w  w  .  j  a v a2  s.c  o m*/

    String layoutFullURL = LayoutURLUtil.getLayoutURL(page.getGroupId(), WikiPortletKeys.WIKI, serviceContext);

    if (Validator.isNotNull(layoutFullURL)) {
        return layoutFullURL + Portal.FRIENDLY_URL_SEPARATOR + "wiki/" + page.getNodeId() + StringPool.SLASH
                + HttpUtil.encodeURL(WikiEscapeUtil.escapeName(page.getTitle()));
    } else {
        PortletURL portletURL = PortalUtil.getControlPanelPortletURL(request, WikiPortletKeys.WIKI_ADMIN,
                PortletRequest.RENDER_PHASE);

        portletURL.setParameter("mvcRenderCommandName", "/wiki/view_page_activities");
        portletURL.setParameter("nodeId", String.valueOf(page.getNodeId()));
        portletURL.setParameter("title", page.getTitle());

        return portletURL.toString();
    }
}

From source file:com.liferay.wiki.service.impl.WikiPageServiceImpl.java

License:Open Source License

protected String exportToRSS(String name, String description, String type, double version, String displayStyle,
        String feedURL, String entryURL, String attachmentURLPrefix, List<WikiPage> pages, boolean diff,
        Locale locale) throws PortalException {

    SyndFeed syndFeed = new SyndFeedImpl();

    syndFeed.setDescription(description);

    List<SyndEntry> syndEntries = new ArrayList<>();

    syndFeed.setEntries(syndEntries);/* www .jav a 2  s  .  com*/

    WikiPage latestPage = null;

    StringBundler sb = new StringBundler(6);

    for (WikiPage page : pages) {
        SyndEntry syndEntry = new SyndEntryImpl();

        String author = PortalUtil.getUserName(page);

        syndEntry.setAuthor(author);

        SyndContent syndContent = new SyndContentImpl();

        syndContent.setType(RSSUtil.ENTRY_TYPE_DEFAULT);

        sb.setIndex(0);

        sb.append(entryURL);

        if (entryURL.endsWith(StringPool.SLASH)) {
            sb.append(HttpUtil.encodeURL(page.getTitle()));
        }

        if (diff) {
            if ((latestPage != null) || (pages.size() == 1)) {
                sb.append(StringPool.QUESTION);
                sb.append(PortalUtil.getPortletNamespace(WikiPortletKeys.WIKI));
                sb.append("version=");
                sb.append(page.getVersion());

                String value = null;

                if (latestPage == null) {
                    value = wikiEngineRenderer.convert(page, null, null, attachmentURLPrefix);
                } else {
                    try {
                        value = wikiEngineRenderer.diffHtml(latestPage, page, null, null, attachmentURLPrefix);
                    } catch (PortalException pe) {
                        throw pe;
                    } catch (SystemException se) {
                        throw se;
                    } catch (Exception e) {
                        throw new SystemException(e);
                    }
                }

                syndContent.setValue(value);

                syndEntry.setDescription(syndContent);

                syndEntries.add(syndEntry);
            }
        } else {
            String value = null;

            WikiGroupServiceOverriddenConfiguration wikiGroupServiceOverriddenConfiguration = configurationProvider
                    .getConfiguration(WikiGroupServiceOverriddenConfiguration.class,
                            new GroupServiceSettingsLocator(page.getGroupId(), WikiConstants.SERVICE_NAME));

            if (displayStyle.equals(RSSUtil.DISPLAY_STYLE_ABSTRACT)) {
                value = StringUtil.shorten(HtmlUtil.extractText(page.getContent()),
                        wikiGroupServiceOverriddenConfiguration.rssAbstractLength(), StringPool.BLANK);
            } else if (displayStyle.equals(RSSUtil.DISPLAY_STYLE_TITLE)) {
                value = StringPool.BLANK;
            } else {
                value = wikiEngineRenderer.convert(page, null, null, attachmentURLPrefix);
            }

            syndContent.setValue(value);

            syndEntry.setDescription(syndContent);

            syndEntries.add(syndEntry);
        }

        syndEntry.setLink(sb.toString());
        syndEntry.setPublishedDate(page.getCreateDate());

        String title = page.getTitle() + StringPool.SPACE + page.getVersion();

        if (page.isMinorEdit()) {
            title += StringPool.SPACE + StringPool.OPEN_PARENTHESIS + LanguageUtil.get(locale, "minor-edit")
                    + StringPool.CLOSE_PARENTHESIS;
        }

        syndEntry.setTitle(title);

        syndEntry.setUpdatedDate(page.getModifiedDate());
        syndEntry.setUri(sb.toString());

        latestPage = page;
    }

    syndFeed.setFeedType(RSSUtil.getFeedType(type, version));

    List<SyndLink> syndLinks = new ArrayList<>();

    syndFeed.setLinks(syndLinks);

    SyndLink syndLinkSelf = new SyndLinkImpl();

    syndLinks.add(syndLinkSelf);

    syndLinkSelf.setHref(feedURL);
    syndLinkSelf.setRel("self");

    syndFeed.setPublishedDate(new Date());
    syndFeed.setTitle(name);
    syndFeed.setUri(feedURL);

    try {
        return RSSUtil.export(syndFeed);
    } catch (FeedException fe) {
        throw new SystemException(fe);
    }
}

From source file:com.liferay.wiki.web.internal.portlet.action.GetPageAttachmentAction.java

License:Open Source License

@Override
public String execute(HttpServletRequest request, HttpServletResponse response) throws Exception {

    try {/*from   w ww  .j a  v a  2  s.  c o m*/
        long nodeId = ParamUtil.getLong(request, "nodeId");
        String title = ParamUtil.getString(request, "title");
        String fileName = ParamUtil.getString(request, "fileName");

        if (fileName.startsWith(MediaWikiImporter.SHARED_IMAGES_TITLE + StringPool.SLASH)) {

            String[] fileNameParts = fileName.split(MediaWikiImporter.SHARED_IMAGES_TITLE + StringPool.SLASH);

            fileName = fileNameParts[1];

            title = MediaWikiImporter.SHARED_IMAGES_TITLE;
        }

        int status = ParamUtil.getInteger(request, "status", WorkflowConstants.STATUS_APPROVED);

        getFile(nodeId, title, fileName, status, request, response);

        return null;
    } catch (Exception e) {
        if ((e instanceof NoSuchPageException) || (e instanceof NoSuchFileException)) {

            if (_log.isWarnEnabled()) {
                _log.warn(e);
            }
        } else {
            PortalUtil.sendError(e, request, response);
        }

        return null;
    }
}

From source file:com.liferay.wiki.web.internal.portlet.action.RSSAction.java

License:Open Source License

@Override
protected byte[] getRSS(HttpServletRequest request) throws Exception {
    ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY);

    long nodeId = ParamUtil.getLong(request, "nodeId");
    String title = ParamUtil.getString(request, "title");
    int max = ParamUtil.getInteger(request, "max", SearchContainer.DEFAULT_DELTA);
    String type = ParamUtil.getString(request, "type", RSSUtil.FORMAT_DEFAULT);
    double version = ParamUtil.getDouble(request, "version", RSSUtil.VERSION_DEFAULT);
    String displayStyle = ParamUtil.getString(request, "displayStyle", RSSUtil.DISPLAY_STYLE_DEFAULT);

    String layoutFullURL = PortalUtil.getLayoutFullURL(themeDisplay.getScopeGroupId(), WikiPortletKeys.WIKI);

    StringBundler sb = new StringBundler(4);

    sb.append(layoutFullURL);/*w  w  w. j a v a  2 s. com*/
    sb.append(Portal.FRIENDLY_URL_SEPARATOR);
    sb.append("wiki/");
    sb.append(nodeId);

    String feedURL = sb.toString();

    String entryURL = feedURL + StringPool.SLASH + title;

    Locale locale = themeDisplay.getLocale();

    String rss = StringPool.BLANK;

    if (nodeId > 0) {
        String attachmentURLPrefix = WikiUtil.getAttachmentURLPrefix(themeDisplay.getPathMain(),
                themeDisplay.getPlid(), nodeId, title);

        if (Validator.isNotNull(title)) {
            rss = _wikiPageService.getPagesRSS(nodeId, title, max, type, version, displayStyle, feedURL,
                    entryURL, attachmentURLPrefix, locale);
        } else {
            rss = _wikiPageService.getNodePagesRSS(nodeId, max, type, version, displayStyle, feedURL, entryURL,
                    attachmentURLPrefix);
        }
    }

    return rss.getBytes(StringPool.UTF8);
}

From source file:com.liferay.wiki.web.internal.portlet.route.WikiFriendlyURLMapper.java

License:Open Source License

@Override
public String buildPath(LiferayPortletURL liferayPortletURL) {
    Map<String, String> routeParameters = new HashMap<>();

    buildRouteParameters(liferayPortletURL, routeParameters);

    addParameter(routeParameters, "nodeName", true);
    addParameter(routeParameters, "title", true);

    String friendlyURLPath = router.parametersToUrl(routeParameters);

    if (Validator.isNull(friendlyURLPath)) {
        return null;
    }//from   w  ww. j ava  2s  .  c  o m

    addParametersIncludedInPath(liferayPortletURL, routeParameters);

    friendlyURLPath = StringPool.SLASH.concat(getMapping()).concat(friendlyURLPath);

    return friendlyURLPath;
}

From source file:com.liferay.wol.friends.social.FriendsActivityInterpreter.java

License:Open Source License

protected SocialActivityFeedEntry doInterpret(SocialActivity activity, ThemeDisplay themeDisplay)
        throws Exception {

    String creatorUserName = getUserName(activity.getUserId(), themeDisplay);
    String receiverUserName = getUserName(activity.getReceiverUserId(), themeDisplay);

    User creatorUser = UserLocalServiceUtil.getUserById(activity.getUserId());
    User receiverUser = UserLocalServiceUtil.getUserById(activity.getReceiverUserId());

    int activityType = activity.getType();

    // Link//from w w  w  .j a v  a 2 s . com

    StringBuilder sb = new StringBuilder();

    sb.append(themeDisplay.getURLPortal());
    sb.append(themeDisplay.getPathFriendlyURLPublic());
    sb.append(StringPool.SLASH);
    sb.append(creatorUser.getScreenName());
    sb.append("/friends");

    String link = sb.toString();

    // Title

    String title = StringPool.BLANK;

    if (activityType == FriendsActivityKeys.ADD_FRIEND) {
        sb = new StringBuilder();

        sb.append("<a href=\"");
        sb.append(themeDisplay.getURLPortal());
        sb.append(themeDisplay.getPathFriendlyURLPublic());
        sb.append(StringPool.SLASH);
        sb.append(creatorUser.getScreenName());
        sb.append("/profile\">");
        sb.append(creatorUserName);
        sb.append("</a>");

        String creatorUserNameURL = sb.toString();

        sb = new StringBuilder();

        sb.append("<a href=\"");
        sb.append(themeDisplay.getURLPortal());
        sb.append(themeDisplay.getPathFriendlyURLPublic());
        sb.append(StringPool.SLASH);
        sb.append(receiverUser.getScreenName());
        sb.append("/profile\">");
        sb.append(receiverUserName);
        sb.append("</a>");

        String receiverUserNameURL = sb.toString();

        title = themeDisplay.translate("activity-wol-summary-add-friend",
                new Object[] { creatorUserNameURL, receiverUserNameURL });
    }

    // Body

    String body = StringPool.BLANK;

    return new SocialActivityFeedEntry(link, title, body);
}

From source file:com.liferay.wol.friends.social.FriendsRequestInterpreter.java

License:Open Source License

protected SocialRequestFeedEntry doInterpret(SocialRequest request, ThemeDisplay themeDisplay)
        throws Exception {

    String creatorUserName = getUserName(request.getUserId(), themeDisplay);

    User creatorUser = UserLocalServiceUtil.getUserById(request.getUserId());

    int requestType = request.getType();

    // Title//from w  w w. j  a v  a  2 s . c o m

    String title = StringPool.BLANK;

    if (requestType == FriendsRequestKeys.ADD_FRIEND) {
        StringBuilder sb = new StringBuilder();

        sb.append("<a href=\"");
        sb.append(themeDisplay.getURLPortal());
        sb.append(themeDisplay.getPathFriendlyURLPublic());
        sb.append(StringPool.SLASH);
        sb.append(creatorUser.getScreenName());
        sb.append("/profile\">");
        sb.append(creatorUserName);
        sb.append("</a>");

        String creatorUserNameURL = sb.toString();

        title = themeDisplay.translate("request-wol-summary-add-friend", new Object[] { creatorUserNameURL });
    }

    // Body

    String body = StringPool.BLANK;

    return new SocialRequestFeedEntry(title, body);
}