@Override public String getImageURL(ResourceReference imageReference, Map<String, String> parameters) { String queryString = imageReference.getParameter(AttachmentResourceReference.QUERY_STRING); return "imageurl" + (queryString != null ? QM + queryString : ""); }
/** * {@inheritDoc} * * @since 2.5RC1 */ @Override public String getLinkURL(ResourceReference linkReference) { String queryString = linkReference.getParameter(AttachmentResourceReference.QUERY_STRING); return "attachmenturl" + (queryString != null ? QM + queryString : ""); }
/** * {@inheritDoc} * * @see WikiModel#getImageURL(org.xwiki.rendering.listener.reference.ResourceReference , java.util.Map) */ public String getImageURL(ResourceReference imageReference, Map<String, String> parameters) { String queryString = imageReference.getParameter(AttachmentResourceReference.QUERY_STRING); return "imageurl" + (queryString != null ? "?" + queryString : ""); }
/** * {@inheritDoc} * * @see WikiModel#getLinkURL(org.xwiki.rendering.listener.reference.ResourceReference) * @since 2.5RC1 */ public String getLinkURL(ResourceReference linkReference) { String queryString = linkReference.getParameter(AttachmentResourceReference.QUERY_STRING); return "attachmenturl" + (queryString != null ? "?" + queryString : ""); }
/** * {@inheritDoc} * * @see WikiModel#getDocumentViewURL(org.xwiki.rendering.listener.reference.ResourceReference) */ public String getDocumentViewURL(ResourceReference documentReference) { String queryString = documentReference.getParameter(DocumentResourceReference.QUERY_STRING); String anchor = documentReference.getParameter(DocumentResourceReference.ANCHOR); return "viewurl" + (queryString != null ? "?" + queryString : "") + (anchor != null ? "#" + anchor : ""); }
@Override public String getDocumentViewURL(ResourceReference documentReference) { String queryString = documentReference.getParameter(DocumentResourceReference.QUERY_STRING); String anchor = documentReference.getParameter(DocumentResourceReference.ANCHOR); return "viewurl" + (queryString != null ? QM + queryString : "") + (anchor != null ? "#" + anchor : ""); }
/** * {@inheritDoc} * * @see WikiModel#getLinkURL(org.xwiki.rendering.listener.reference.ResourceReference) * @since 2.5RC1 */ public String getLinkURL(ResourceReference linkReference) { String queryString = linkReference.getParameter(AttachmentResourceReference.QUERY_STRING); return "attachmenturl" + (queryString != null ? "?" + queryString : ""); }
/** * {@inheritDoc} * * @see WikiModel#getDocumentViewURL(org.xwiki.rendering.listener.reference.ResourceReference) */ public String getDocumentViewURL(ResourceReference documentReference) { String queryString = documentReference.getParameter(DocumentResourceReference.QUERY_STRING); String anchor = documentReference.getParameter(DocumentResourceReference.ANCHOR); return "viewurl" + (queryString != null ? "?" + queryString : "") + (anchor != null ? "#" + anchor : ""); }
/** * {@inheritDoc} * * @see WikiModel#getImageURL(org.xwiki.rendering.listener.reference.ResourceReference , java.util.Map) */ public String getImageURL(ResourceReference imageReference, Map<String, String> parameters) { String queryString = imageReference.getParameter(AttachmentResourceReference.QUERY_STRING); return "imageurl" + (queryString != null ? "?" + queryString : ""); }
/** * @param reference the reference to the link * @param spanAttributes the span element where to put the class * @param aAttributes the anchor element where to put the reference */ private void renderAutoLink(ResourceReference reference, Map<String, String> spanAttributes, Map<String, String> aAttributes) { spanAttributes.put(CLASS, WIKILINK); StringBuilder buffer = new StringBuilder(); String queryString = reference.getParameter(DocumentResourceReference.QUERY_STRING); if (queryString != null) { buffer.append('?'); buffer.append(queryString); } buffer.append('#'); String anchor = reference.getParameter(DocumentResourceReference.ANCHOR); if (anchor != null) { buffer.append(anchor); } aAttributes.put(XHTMLLinkRenderer.HREF, buffer.toString()); } }
@Override public String serialize(ResourceReference reference) { StringBuilder result = new StringBuilder(); result.append(reference.getType().getScheme()); result.append(DefaultResourceReferenceParser.TYPE_SEPARATOR); String interWikiAlias = reference.getParameter(InterWikiResourceReference.INTERWIKI_ALIAS); if (interWikiAlias != null) { result.append(interWikiAlias); result.append(InterWikiResourceReferenceTypeParser.INTERWIKI_ALIAS_SEPARATOR); } result.append(reference.getReference()); return result.toString(); } }
@Override public String serialize(ResourceReference reference) { StringBuilder result = new StringBuilder(); result.append(reference.getType().getScheme()); result.append(DefaultResourceReferenceParser.TYPE_SEPARATOR); String interWikiAlias = reference.getParameter(InterWikiResourceReference.INTERWIKI_ALIAS); if (interWikiAlias != null) { result.append(interWikiAlias); result.append(InterWikiResourceReferenceTypeParser.INTERWIKI_ALIAS_SEPARATOR); } result.append(reference.getReference()); return result.toString(); } }
/** * {@inheritDoc} * * @see org.xwiki.rendering.renderer.reference.ResourceReferenceTypeSerializer#serialize(org.xwiki.rendering.listener.reference.ResourceReference) */ public String serialize(ResourceReference reference) { StringBuffer result = new StringBuffer(); result.append(reference.getType().getScheme()); result.append(DefaultResourceReferenceParser.TYPE_SEPARATOR); String interWikiAlias = reference.getParameter(InterWikiResourceReference.INTERWIKI_ALIAS); if (interWikiAlias != null) { result.append(interWikiAlias); result.append(InterWikiResourceReferenceTypeParser.INTERWIKI_ALIAS_SEPARATOR); } result.append(reference.getReference()); return result.toString(); } }
@Override protected void beginLinkExtraAttributes(ResourceReference reference, Map<String, String> spanAttributes, Map<String, String> anchorAttributes) { // Look for an InterWiki definition for the passed Link. If not found then simply use the InterWiki Path. String interWikiAlias = reference.getParameter(InterWikiResourceReference.INTERWIKI_ALIAS); Properties definitions = this.renderingConfiguration.getInterWikiDefinitions(); if (definitions.containsKey(interWikiAlias)) { anchorAttributes.put(XHTMLLinkRenderer.HREF, definitions.getProperty(interWikiAlias) + reference.getReference()); } else { anchorAttributes.put(XHTMLLinkRenderer.HREF, reference.getReference()); } } }
@Override public String serialize(ResourceReference reference) { StringBuilder buffer = new StringBuilder(); if (reference.getReference() != null) { // Make sure we escape special chars: # and ? as they have special meaning in links, but only for // links to documents. Also escape \ since it's the escape char. String normalizedReference = addEscapesToReferencePart(reference.getReference()); buffer.append(normalizedReference); } String anchor = reference.getParameter(DocumentResourceReference.ANCHOR); if (anchor != null) { buffer.append('#'); buffer.append(addEscapesToExtraParts(anchor)); } String queryString = reference.getParameter(DocumentResourceReference.QUERY_STRING); if (queryString != null) { buffer.append('?'); buffer.append(addEscapesToExtraParts(queryString)); } return buffer.toString(); }
/** * {@inheritDoc} * * @see AbstractXHTMLLinkTypeRenderer#beginLinkExtraAttributes(org.xwiki.rendering.listener.reference.ResourceReference , * java.util.Map, java.util.Map) */ @Override protected void beginLinkExtraAttributes(ResourceReference reference, Map<String, String> spanAttributes, Map<String, String> anchorAttributes) { // Look for an InterWiki definition for the passed Link. If not found then simply use the InterWiki Path. String interWikiAlias = reference.getParameter(InterWikiResourceReference.INTERWIKI_ALIAS); Properties definitions = this.renderingConfiguration.getInterWikiDefinitions(); if (definitions.containsKey(interWikiAlias)) { anchorAttributes.put(XHTMLLinkRenderer.HREF, definitions.getProperty(interWikiAlias) + reference.getReference()); } else { anchorAttributes.put(XHTMLLinkRenderer.HREF, reference.getReference()); } } }
@Override public String serialize(ResourceReference reference) { String interWikiAlias = reference.getParameter(InterWikiResourceReference.INTERWIKI_ALIAS); String result = addEscapesToReferencePart(reference.getReference()); if (interWikiAlias != null) { result = addEscapesToReferencePart(reference.getReference()) + XWiki20LinkReferenceParser.SEPARATOR_INTERWIKI + addEscapesToExtraParts(interWikiAlias); } return result; }
@Override public String serialize(ResourceReference reference) { String interWikiAlias = reference.getParameter(InterWikiResourceReference.INTERWIKI_ALIAS); String result = addEscapesToReferencePart(reference.getReference()); if (interWikiAlias != null) { result = addEscapesToReferencePart(reference.getReference()) + GenericLinkReferenceParser.SEPARATOR_INTERWIKI + addEscapesToExtraParts(interWikiAlias); } return result; }
/** * {@inheritDoc} * * @see org.xwiki.rendering.renderer.reference.ResourceReferenceTypeSerializer#serialize(org.xwiki.rendering.listener.reference.ResourceReference) */ public String serialize(ResourceReference reference) { String interWikiAlias = reference.getParameter(InterWikiResourceReference.INTERWIKI_ALIAS); String result = addEscapesToReferencePart(reference.getReference()); if (interWikiAlias != null) { result = addEscapesToReferencePart(reference.getReference()) + XWiki20LinkReferenceParser.SEPARATOR_INTERWIKI + addEscapesToExtraParts(interWikiAlias); } return result; }
/** * @param document the document whose anchors to update * @param fragments see {@link #collectDocumentFragments(List)} */ private void updateAnchors(WikiDocument document, Map<String, String> fragments) { for (LinkBlock linkBlock : document.getXdom().<LinkBlock> getBlocks(new ClassBlockMatcher(LinkBlock.class), Axes.DESCENDANT)) { ResourceReference reference = linkBlock.getReference(); ResourceType resoureceType = reference.getType(); String fragment = null; if (isDocument(resoureceType) && StringUtils.isEmpty(reference.getReference())) { fragment = reference.getParameter(ANCHOR_PARAMETER); } else if (StringUtils.startsWith(reference.getReference(), "#") && (ResourceType.PATH.equals(resoureceType) || ResourceType.URL.equals(resoureceType))) { fragment = reference.getReference().substring(1); } String targetDocument = fragments.get(fragment); if (targetDocument != null && !targetDocument.equals(document.getFullName())) { // The fragment has been moved so we need to update the link. reference.setType(ResourceType.DOCUMENT); reference.setReference(targetDocument); reference.setParameter(ANCHOR_PARAMETER, fragment); } } }