This is an automated email from the ASF dual-hosted git repository. juanpablo pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/jspwiki.git
commit 1b4b57070589611a968a28eb79d2fbca32624ccd Author: juanpablo <[email protected]> AuthorDate: Wed Dec 27 23:21:31 2017 +0100 PostProcessorState classes now work with JSPWikiLinks instead of Links, and set the final URL where appropiate --- .../AccessRuleLinkNodePostProcessorState.java | 8 ++-- .../ExternalLinkNodePostProcessorState.java | 16 ++++---- .../ImageLinkNodePostProcessorState.java | 9 +++-- .../InterWikiLinkNodePostProcessorState.java | 25 ++++++++----- .../LocalFootnoteLinkNodePostProcessorState.java | 31 ++++++++++++++++ ...LocalFootnoteRefLinkNodePostProcessorState.java | 17 +++++++-- .../LocalLinkNodePostProcessorState.java | 43 ++++++++++++++++------ .../MetadataLinkNodePostProcessorState.java | 13 +++---- .../NodePostProcessorStateCommonOperations.java | 6 +-- .../PluginLinkNodePostProcessorState.java | 12 +++--- .../VariableLinkNodePostProcessorState.java | 8 ++-- 11 files changed, 126 insertions(+), 62 deletions(-) diff --git a/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/AccessRuleLinkNodePostProcessorState.java b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/AccessRuleLinkNodePostProcessorState.java index 2f73048..7be6b52 100755 --- a/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/AccessRuleLinkNodePostProcessorState.java +++ b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/AccessRuleLinkNodePostProcessorState.java @@ -23,16 +23,16 @@ import org.apache.wiki.WikiContext; import org.apache.wiki.WikiPage; import org.apache.wiki.auth.WikiSecurityException; import org.apache.wiki.auth.acl.Acl; +import org.apache.wiki.markdown.nodes.JSPWikiLink; import org.apache.wiki.render.RenderingManager; -import com.vladsch.flexmark.ast.Link; import com.vladsch.flexmark.util.NodeTracker; /** * {@link NodePostProcessorState} which further post processes access rules links. */ -public class AccessRuleLinkNodePostProcessorState implements NodePostProcessorState< Link > { +public class AccessRuleLinkNodePostProcessorState implements NodePostProcessorState< JSPWikiLink > { private static final Logger LOG = Logger.getLogger( AccessRuleLinkNodePostProcessorState.class ); private final WikiContext wikiContext; @@ -47,10 +47,10 @@ public class AccessRuleLinkNodePostProcessorState implements NodePostProcessorSt /** * {@inheritDoc} * - * @see NodePostProcessorState#process(NodeTracker, Link) + * @see NodePostProcessorState#process(NodeTracker, JSPWikiLink) */ @Override - public void process( NodeTracker state, Link link ) { + public void process( final NodeTracker state, final JSPWikiLink link ) { String ruleLine = NodePostProcessorStateCommonOperations.inlineLinkTextOnWysiwyg( state, link, m_wysiwygEditorMode ); if( wikiContext.getEngine().getRenderingManager().getParser( wikiContext, link.getUrl().toString() ).isParseAccessRules() ) { final WikiPage page = wikiContext.getRealPage(); diff --git a/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/ExternalLinkNodePostProcessorState.java b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/ExternalLinkNodePostProcessorState.java index 93089a3..b803d09 100755 --- a/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/ExternalLinkNodePostProcessorState.java +++ b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/ExternalLinkNodePostProcessorState.java @@ -19,25 +19,24 @@ package org.apache.wiki.markdown.extensions.jspwikilinks.postprocessor; import org.apache.wiki.WikiContext; +import org.apache.wiki.markdown.nodes.JSPWikiLink; import org.apache.wiki.parser.LinkParsingOperations; import org.apache.wiki.parser.MarkupParser; -import com.vladsch.flexmark.ast.Link; import com.vladsch.flexmark.util.NodeTracker; +import com.vladsch.flexmark.util.sequence.CharSubSequence; /** * {@link NodePostProcessorState} which further post processes external links. */ -public class ExternalLinkNodePostProcessorState implements NodePostProcessorState< Link > { +public class ExternalLinkNodePostProcessorState implements NodePostProcessorState< JSPWikiLink > { - private final boolean hasRef; private final WikiContext wikiContext; private final LinkParsingOperations linkOperations; private boolean m_useOutlinkImage = true; - public ExternalLinkNodePostProcessorState( final WikiContext wikiContext, final boolean hasRef ) { - this.hasRef = hasRef; + public ExternalLinkNodePostProcessorState( final WikiContext wikiContext ) { this.wikiContext = wikiContext; this.linkOperations = new LinkParsingOperations( wikiContext ); this.m_useOutlinkImage = wikiContext.getBooleanWikiProperty( MarkupParser.PROP_USEOUTLINKIMAGE, m_useOutlinkImage ); @@ -46,13 +45,14 @@ public class ExternalLinkNodePostProcessorState implements NodePostProcessorStat /** * {@inheritDoc} * - * @see NodePostProcessorState#process(NodeTracker, Link) + * @see NodePostProcessorState#process(NodeTracker, JSPWikiLink) */ @Override - public void process( NodeTracker state, Link link ) { + public void process( final NodeTracker state, final JSPWikiLink link ) { if( linkOperations.isImageLink( link.getUrl().toString() ) ) { - new ImageLinkNodePostProcessorState( wikiContext, link.getUrl().toString(), hasRef ).process( state, link ); + new ImageLinkNodePostProcessorState( wikiContext, link.getUrl().toString(), link.hasRef() ).process( state, link ); } else { + link.setUrl( CharSubSequence.of( link.getUrl().toString() ) ); NodePostProcessorStateCommonOperations.addOutlinkImage( state, link, wikiContext, m_useOutlinkImage ); } } diff --git a/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/ImageLinkNodePostProcessorState.java b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/ImageLinkNodePostProcessorState.java index df564ec..e8f7ede 100755 --- a/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/ImageLinkNodePostProcessorState.java +++ b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/ImageLinkNodePostProcessorState.java @@ -19,10 +19,10 @@ package org.apache.wiki.markdown.extensions.jspwikilinks.postprocessor; import org.apache.wiki.WikiContext; +import org.apache.wiki.markdown.nodes.JSPWikiLink; import org.apache.wiki.parser.LinkParsingOperations; import com.vladsch.flexmark.ast.HtmlInline; -import com.vladsch.flexmark.ast.Link; import com.vladsch.flexmark.util.NodeTracker; import com.vladsch.flexmark.util.sequence.CharSubSequence; @@ -30,7 +30,7 @@ import com.vladsch.flexmark.util.sequence.CharSubSequence; /** * {@link NodePostProcessorState} which further post processes image links. */ -public class ImageLinkNodePostProcessorState implements NodePostProcessorState< Link > { +public class ImageLinkNodePostProcessorState implements NodePostProcessorState< JSPWikiLink > { private final boolean isLinkFromText; private final String urlRef; @@ -45,15 +45,16 @@ public class ImageLinkNodePostProcessorState implements NodePostProcessorState< /** * {@inheritDoc} * - * @see NodePostProcessorState#process(NodeTracker, Link) + * @see NodePostProcessorState#process(NodeTracker, JSPWikiLink) */ @Override - public void process( NodeTracker state, Link link ) { + public void process( final NodeTracker state, final JSPWikiLink link ) { final HtmlInline img = new HtmlInline( CharSubSequence.of( "<img class=\"inline\" " + "src=\"" + urlRef + "\" " + "alt=\"" + link.getText().toString() + "\" />" ) ); if( ( isLinkFromText && linkOperations.isExternalLink( link.getText().toString() ) ) || ( isLinkFromText && linkOperations.linkExists( link.getText().toString() ) ) ) { + link.setUrl( CharSubSequence.of( urlRef ) ); link.removeChildren(); link.appendChild( img ); state.nodeAdded( img ); diff --git a/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/InterWikiLinkNodePostProcessorState.java b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/InterWikiLinkNodePostProcessorState.java index 378bada..09f1ece 100755 --- a/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/InterWikiLinkNodePostProcessorState.java +++ b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/InterWikiLinkNodePostProcessorState.java @@ -24,34 +24,34 @@ import java.util.ResourceBundle; import org.apache.log4j.Logger; import org.apache.wiki.WikiContext; import org.apache.wiki.i18n.InternationalizationManager; +import org.apache.wiki.markdown.nodes.JSPWikiLink; import org.apache.wiki.parser.LinkParsingOperations; import org.apache.wiki.parser.MarkupParser; import org.apache.wiki.preferences.Preferences; import org.apache.wiki.render.RenderingManager; +import org.apache.wiki.util.TextUtil; import com.vladsch.flexmark.ast.Document; -import com.vladsch.flexmark.ast.Link; import com.vladsch.flexmark.util.NodeTracker; +import com.vladsch.flexmark.util.sequence.CharSubSequence; /** * {@link NodePostProcessorState} which further post processes interwiki links. */ -public class InterWikiLinkNodePostProcessorState implements NodePostProcessorState< Link > { +public class InterWikiLinkNodePostProcessorState implements NodePostProcessorState< JSPWikiLink > { private static final Logger LOG = Logger.getLogger( InterWikiLinkNodePostProcessorState.class ); private final WikiContext wikiContext; private final LinkParsingOperations linkOperations; private final Document document; private final boolean m_wysiwygEditorMode; - private final boolean hasRef; private boolean m_useOutlinkImage = true; - public InterWikiLinkNodePostProcessorState( final WikiContext wikiContext, final Document document, final boolean hasRef ) { + public InterWikiLinkNodePostProcessorState( final WikiContext wikiContext, final Document document ) { this.wikiContext = wikiContext; this.linkOperations = new LinkParsingOperations( wikiContext ); this.document = document; - this.hasRef = hasRef; this.m_useOutlinkImage = wikiContext.getBooleanWikiProperty( MarkupParser.PROP_USEOUTLINKIMAGE, m_useOutlinkImage ); final Boolean wysiwygVariable = ( Boolean )wikiContext.getVariable( RenderingManager.WYSIWYG_EDITOR_MODE ); m_wysiwygEditorMode = wysiwygVariable != null ? wysiwygVariable.booleanValue() : false; @@ -60,16 +60,19 @@ public class InterWikiLinkNodePostProcessorState implements NodePostProcessorSta /** * {@inheritDoc} * - * @see NodePostProcessorState#process(NodeTracker, Link) + * @see NodePostProcessorState#process(NodeTracker, JSPWikiLink) */ @Override - public void process( NodeTracker state, Link link ) { + public void process( final NodeTracker state, final JSPWikiLink link ) { + final String[] refAndPage = link.getUrl().toString().split( ":" ); if( !m_wysiwygEditorMode ) { - final String[] refAndPage = link.getUrl().toString().split( ":" ); - final String urlReference = wikiContext.getEngine().getInterWikiURL( refAndPage[ 0 ] ); + String urlReference = wikiContext.getEngine().getInterWikiURL( refAndPage[ 0 ] ); if( urlReference != null ) { + urlReference = TextUtil.replaceString( urlReference, "%s", refAndPage[ 1 ] ); if( linkOperations.isImageLink( urlReference ) ) { - new ImageLinkNodePostProcessorState( wikiContext, urlReference, hasRef ).process( state, link ); + new ImageLinkNodePostProcessorState( wikiContext, urlReference, link.hasRef() ).process( state, link ); + } else { + link.setUrl( CharSubSequence.of( urlReference ) ); } if( linkOperations.isExternalLink( urlReference ) ) { NodePostProcessorStateCommonOperations.addOutlinkImage( state, link, wikiContext, m_useOutlinkImage ); @@ -81,6 +84,8 @@ public class InterWikiLinkNodePostProcessorState implements NodePostProcessorSta final String errMsg = MessageFormat.format( rb.getString( "markupparser.error.nointerwikiref" ), args ); NodePostProcessorStateCommonOperations.makeError( state, link, errMsg ); } + } else { + link.setUrl( CharSubSequence.of( refAndPage[0] + ":" + refAndPage[1] ) ); } } diff --git a/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/LocalFootnoteLinkNodePostProcessorState.java b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/LocalFootnoteLinkNodePostProcessorState.java new file mode 100755 index 0000000..f8a20f8 --- /dev/null +++ b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/LocalFootnoteLinkNodePostProcessorState.java @@ -0,0 +1,31 @@ +package org.apache.wiki.markdown.extensions.jspwikilinks.postprocessor; + +import org.apache.wiki.WikiContext; +import org.apache.wiki.markdown.nodes.JSPWikiLink; + +import com.vladsch.flexmark.util.NodeTracker; +import com.vladsch.flexmark.util.sequence.CharSubSequence; + + +/** + * {@link NodePostProcessorState} which further post processes local footnote links. + */ +public class LocalFootnoteLinkNodePostProcessorState implements NodePostProcessorState< JSPWikiLink > { + + final WikiContext wikiContext; + + public LocalFootnoteLinkNodePostProcessorState( final WikiContext wikiContext ) { + this.wikiContext = wikiContext; + } + + /** + * {@inheritDoc} + * + * @see NodePostProcessorState#process(NodeTracker, JSPWikiLink) + */ + @Override + public void process( final NodeTracker state, final JSPWikiLink link ) { + link.setUrl( CharSubSequence.of( wikiContext.getURL( WikiContext.VIEW, link.getUrl().toString() ) ) ); + } + +} diff --git a/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/LocalFootnoteRefLinkNodePostProcessorState.java b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/LocalFootnoteRefLinkNodePostProcessorState.java index 9c929bb..d19c603 100755 --- a/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/LocalFootnoteRefLinkNodePostProcessorState.java +++ b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/LocalFootnoteRefLinkNodePostProcessorState.java @@ -18,7 +18,9 @@ */ package org.apache.wiki.markdown.extensions.jspwikilinks.postprocessor; -import com.vladsch.flexmark.ast.Link; +import org.apache.wiki.WikiContext; +import org.apache.wiki.markdown.nodes.JSPWikiLink; + import com.vladsch.flexmark.ast.Text; import com.vladsch.flexmark.util.NodeTracker; import com.vladsch.flexmark.util.sequence.CharSubSequence; @@ -27,15 +29,22 @@ import com.vladsch.flexmark.util.sequence.CharSubSequence; /** * {@link NodePostProcessorState} which further post processes footnote reference links. */ -public class FootnoteRefLinkNodePostProcessorState implements NodePostProcessorState< Link > { +public class LocalFootnoteRefLinkNodePostProcessorState implements NodePostProcessorState< JSPWikiLink > { + + private final WikiContext wikiContext; + + public LocalFootnoteRefLinkNodePostProcessorState( final WikiContext wikiContext ) { + this.wikiContext = wikiContext; + } /** * {@inheritDoc} * - * @see NodePostProcessorState#process(NodeTracker, Link) + * @see NodePostProcessorState#process(NodeTracker, JSPWikiLink) */ @Override - public void process( NodeTracker state, Link link ) { + public void process( final NodeTracker state, final JSPWikiLink link ) { + link.setUrl( CharSubSequence.of( wikiContext.getURL( WikiContext.VIEW, link.getUrl().toString() ) ) ); final Text opBracket = new Text( CharSubSequence.of( "[" ) ); final Text clBracket = new Text( CharSubSequence.of( "]" ) ); link.prependChild( opBracket ); diff --git a/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/LocalLinkNodePostProcessorState.java b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/LocalLinkNodePostProcessorState.java index 1832dfb..b592b03 100755 --- a/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/LocalLinkNodePostProcessorState.java +++ b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/LocalLinkNodePostProcessorState.java @@ -19,10 +19,11 @@ package org.apache.wiki.markdown.extensions.jspwikilinks.postprocessor; import org.apache.wiki.WikiContext; +import org.apache.wiki.markdown.nodes.JSPWikiLink; import org.apache.wiki.parser.LinkParsingOperations; +import org.apache.wiki.parser.MarkupParser; import com.vladsch.flexmark.ast.HtmlInline; -import com.vladsch.flexmark.ast.Link; import com.vladsch.flexmark.util.NodeTracker; import com.vladsch.flexmark.util.sequence.CharSubSequence; @@ -30,14 +31,12 @@ import com.vladsch.flexmark.util.sequence.CharSubSequence; /** * {@link NodePostProcessorState} which further post processes local links. */ -public class LocalLinkNodePostProcessorState implements NodePostProcessorState< Link > { +public class LocalLinkNodePostProcessorState implements NodePostProcessorState< JSPWikiLink > { - private final boolean hasRef; private final WikiContext wikiContext; private final LinkParsingOperations linkOperations; - public LocalLinkNodePostProcessorState( final WikiContext wikiContext, final boolean hasRef ) { - this.hasRef = hasRef; + public LocalLinkNodePostProcessorState( final WikiContext wikiContext ) { this.wikiContext = wikiContext; this.linkOperations = new LinkParsingOperations( wikiContext ); } @@ -45,26 +44,46 @@ public class LocalLinkNodePostProcessorState implements NodePostProcessorState< /** * {@inheritDoc} * - * @see NodePostProcessorState#process(NodeTracker, Link) + * @see NodePostProcessorState#process(NodeTracker, JSPWikiLink) */ @Override - public void process( NodeTracker state, Link link ) { + public void process( final NodeTracker state, final JSPWikiLink link ) { + final int hashMark = link.getUrl().toString().indexOf( '#' ); final String attachment = wikiContext.getEngine().getAttachmentManager().getAttachmentInfoName( wikiContext, link.getUrl().toString() ); if( attachment != null ) { - if( linkOperations.isImageLink( link.getUrl().toString() ) ) { - new ImageLinkNodePostProcessorState( wikiContext, attachment, hasRef ).process( state, link ); - } else { + if( !linkOperations.isImageLink( link.getUrl().toString() ) ) { + final String attlink = wikiContext.getURL( WikiContext.ATTACH, link.getUrl().toString() ); + link.setUrl( CharSubSequence.of( attlink ) ); link.removeChildren(); final HtmlInline content = new HtmlInline( CharSubSequence.of( link.getText().toString() ) ); link.appendChild( content ); state.nodeAddedWithChildren( content ); addAttachmentLink( state, link ); + } else { + new ImageLinkNodePostProcessorState( wikiContext, attachment, link.hasRef() ).process( state, link ); + } + } else if( hashMark != -1 ) { // It's an internal Wiki link, but to a named section + final String namedSection = link.getUrl().toString().substring( hashMark + 1 ); + link.setUrl( CharSubSequence.of( link.getUrl().toString().substring( 0, hashMark ) ) ); + final String matchedLink = linkOperations.linkIfExists( link.getUrl().toString() ); + if( matchedLink != null ) { + String sectref = "#section-" + wikiContext.getEngine().encodeName( matchedLink + "-" + MarkupParser.wikifyLink( namedSection ) ); + sectref = sectref.replace('%', '_'); + link.setUrl( CharSubSequence.of( wikiContext.getURL( WikiContext.VIEW, link.getUrl().toString() + sectref ) ) ); + } else { + link.setUrl( CharSubSequence.of( wikiContext.getURL( WikiContext.EDIT, link.getUrl().toString() ) ) ); + } + } else { + if( linkOperations.linkExists( link.getUrl().toString() ) ) { + link.setUrl( CharSubSequence.of( wikiContext.getURL( WikiContext.VIEW, link.getUrl().toString() ) ) ); + } else { + link.setUrl( CharSubSequence.of( wikiContext.getURL( WikiContext.EDIT, link.getUrl().toString() ) ) ); } } } - void addAttachmentLink( final NodeTracker state, final Link link ) { - final String infolink = wikiContext.getURL( WikiContext.INFO, link.getUrl().toString() ); + void addAttachmentLink( final NodeTracker state, final JSPWikiLink link ) { + final String infolink = wikiContext.getURL( WikiContext.INFO, link.getWikiLink() ); final String imglink = wikiContext.getURL( WikiContext.NONE, "images/attachment_small.png" ); final HtmlInline aimg = new HtmlInline( CharSubSequence.of( "<a href=\""+ infolink + "\" class=\"infolink\">" + "<img src=\""+ imglink + "\" border=\"0\" alt=\"(info)\" />" + diff --git a/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/MetadataLinkNodePostProcessorState.java b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/MetadataLinkNodePostProcessorState.java index 0708f04..1461fc7 100755 --- a/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/MetadataLinkNodePostProcessorState.java +++ b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/MetadataLinkNodePostProcessorState.java @@ -24,17 +24,17 @@ import java.util.ResourceBundle; import org.apache.log4j.Logger; import org.apache.wiki.WikiContext; import org.apache.wiki.i18n.InternationalizationManager; +import org.apache.wiki.markdown.nodes.JSPWikiLink; import org.apache.wiki.preferences.Preferences; import org.apache.wiki.render.RenderingManager; -import com.vladsch.flexmark.ast.Link; import com.vladsch.flexmark.util.NodeTracker; /** * {@link NodePostProcessorState} which further post processes metadata links. */ -public class MetadataLinkNodePostProcessorState implements NodePostProcessorState< Link > { +public class MetadataLinkNodePostProcessorState implements NodePostProcessorState< JSPWikiLink > { private static final Logger LOG = Logger.getLogger( MetadataLinkNodePostProcessorState.class ); private final WikiContext wikiContext; @@ -49,10 +49,10 @@ public class MetadataLinkNodePostProcessorState implements NodePostProcessorStat /** * {@inheritDoc} * - * @see NodePostProcessorState#process(NodeTracker, Link) + * @see NodePostProcessorState#process(NodeTracker, JSPWikiLink) */ @Override - public void process( NodeTracker state, Link link ) { + public void process( final NodeTracker state, final JSPWikiLink link ) { final String metadataLine = NodePostProcessorStateCommonOperations.inlineLinkTextOnWysiwyg( state, link, m_wysiwygEditorMode ); try { final String args = metadataLine.substring( metadataLine.indexOf(' '), metadataLine.length() - 1 ); @@ -79,9 +79,8 @@ public class MetadataLinkNodePostProcessorState implements NodePostProcessorStat } } catch( final Exception e ) { final ResourceBundle rb = Preferences.getBundle( wikiContext, InternationalizationManager.CORE_BUNDLE ); - NodePostProcessorStateCommonOperations.makeError( state, - link, - MessageFormat.format( rb.getString( "markupparser.error.invalidset" ), metadataLine ) ); + NodePostProcessorStateCommonOperations.makeError( state, link, + MessageFormat.format( rb.getString( "markupparser.error.invalidset" ), metadataLine ) ); } } diff --git a/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/NodePostProcessorStateCommonOperations.java b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/NodePostProcessorStateCommonOperations.java index b6da8f9..35c43d7 100755 --- a/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/NodePostProcessorStateCommonOperations.java +++ b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/NodePostProcessorStateCommonOperations.java @@ -19,11 +19,11 @@ package org.apache.wiki.markdown.extensions.jspwikilinks.postprocessor; import org.apache.wiki.WikiContext; +import org.apache.wiki.markdown.nodes.JSPWikiLink; import org.apache.wiki.parser.MarkupParser; import org.apache.wiki.render.RenderingManager; import com.vladsch.flexmark.ast.HtmlInline; -import com.vladsch.flexmark.ast.Link; import com.vladsch.flexmark.ast.Node; import com.vladsch.flexmark.util.NodeTracker; import com.vladsch.flexmark.util.sequence.CharSubSequence; @@ -54,13 +54,13 @@ class NodePostProcessorStateCommonOperations { if( useOutlinkImage && !wysiwygEditorMode ) { final String m_outlinkImageURL = wikiContext.getURL( WikiContext.NONE, MarkupParser.OUTLINK_IMAGE ); final HtmlInline img = new HtmlInline( CharSubSequence.of( "<img class=\""+ MarkupParser.OUTLINK + "\" " + - "alt=\"\" src=\""+ m_outlinkImageURL + "\" />" ) ); + "alt=\"\" src=\""+ m_outlinkImageURL + "\" />" ) ); node.insertAfter( img ); state.nodeAdded( img ); } } - static String inlineLinkTextOnWysiwyg( final NodeTracker state, final Link link, final boolean wysiwygEditorMode ) { + static String inlineLinkTextOnWysiwyg( final NodeTracker state, final JSPWikiLink link, final boolean wysiwygEditorMode ) { final String line = link.getUrl().toString(); if( wysiwygEditorMode ) { final HtmlInline content = new HtmlInline( CharSubSequence.of( "[" + line + "]()" ) ); diff --git a/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/PluginLinkNodePostProcessorState.java b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/PluginLinkNodePostProcessorState.java index b9a79e5..b35d18e 100755 --- a/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/PluginLinkNodePostProcessorState.java +++ b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/PluginLinkNodePostProcessorState.java @@ -25,12 +25,12 @@ import org.apache.log4j.Logger; import org.apache.wiki.WikiContext; import org.apache.wiki.api.exceptions.PluginException; import org.apache.wiki.api.plugin.WikiPlugin; +import org.apache.wiki.markdown.nodes.JSPWikiLink; import org.apache.wiki.parser.PluginContent; import org.apache.wiki.preferences.Preferences; import org.apache.wiki.render.RenderingManager; import com.vladsch.flexmark.ast.HtmlInline; -import com.vladsch.flexmark.ast.Link; import com.vladsch.flexmark.ext.toc.TocBlock; import com.vladsch.flexmark.util.NodeTracker; import com.vladsch.flexmark.util.sequence.CharSubSequence; @@ -39,7 +39,7 @@ import com.vladsch.flexmark.util.sequence.CharSubSequence; /** * {@link NodePostProcessorState} which further post processes plugin links. */ -public class PluginLinkNodePostProcessorState implements NodePostProcessorState< Link > { +public class PluginLinkNodePostProcessorState implements NodePostProcessorState< JSPWikiLink > { private static final Logger LOG = Logger.getLogger( PluginLinkNodePostProcessorState.class ); private final WikiContext wikiContext; @@ -54,10 +54,10 @@ public class PluginLinkNodePostProcessorState implements NodePostProcessorState< /** * {@inheritDoc} * - * @see NodePostProcessorState#process(NodeTracker, Link) + * @see NodePostProcessorState#process(NodeTracker, JSPWikiLink) */ @Override - public void process( final NodeTracker state, final Link link ) { + public void process( final NodeTracker state, final JSPWikiLink link ) { if( link.getText().toString().startsWith( "{TableOfContents" ) ) { handleTableOfContentsPlugin( state, link ); return; @@ -107,7 +107,7 @@ public class PluginLinkNodePostProcessorState implements NodePostProcessorState< } } - void handleTableOfContentsPlugin(final NodeTracker state, final Link link) { + void handleTableOfContentsPlugin(final NodeTracker state, final JSPWikiLink link) { if( !m_wysiwygEditorMode ) { final ResourceBundle rb = Preferences.getBundle( wikiContext, WikiPlugin.CORE_PLUGINS_RESOURCEBUNDLE ); final HtmlInline divToc = new HtmlInline( CharSubSequence.of( "<div class=\"toc\">\n" ) ); @@ -130,7 +130,7 @@ public class PluginLinkNodePostProcessorState implements NodePostProcessorState< removeLink( state, link ); } - void removeLink(final NodeTracker state, final Link link) { + void removeLink(final NodeTracker state, final JSPWikiLink link) { link.unlink(); state.nodeRemoved( link ); } diff --git a/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/VariableLinkNodePostProcessorState.java b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/VariableLinkNodePostProcessorState.java index b15cfbd..2115db6 100755 --- a/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/VariableLinkNodePostProcessorState.java +++ b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/postprocessor/VariableLinkNodePostProcessorState.java @@ -21,10 +21,10 @@ package org.apache.wiki.markdown.extensions.jspwikilinks.postprocessor; import org.apache.commons.lang.StringEscapeUtils; import org.apache.wiki.WikiContext; import org.apache.wiki.api.exceptions.NoSuchVariableException; +import org.apache.wiki.markdown.nodes.JSPWikiLink; import org.apache.wiki.render.RenderingManager; import com.vladsch.flexmark.ast.HtmlInline; -import com.vladsch.flexmark.ast.Link; import com.vladsch.flexmark.util.NodeTracker; import com.vladsch.flexmark.util.sequence.CharSubSequence; @@ -32,7 +32,7 @@ import com.vladsch.flexmark.util.sequence.CharSubSequence; /** * {@link NodePostProcessorState} which further post processes WikiVariable links. */ -public class VariableLinkNodePostProcessorState implements NodePostProcessorState< Link > { +public class VariableLinkNodePostProcessorState implements NodePostProcessorState< JSPWikiLink > { private final WikiContext wikiContext; private final boolean m_wysiwygEditorMode; @@ -46,10 +46,10 @@ public class VariableLinkNodePostProcessorState implements NodePostProcessorStat /** * {@inheritDoc} * - * @see NodePostProcessorState#process(NodeTracker, Link) + * @see NodePostProcessorState#process(NodeTracker, JSPWikiLink) */ @Override - public void process( NodeTracker state, Link link ) { + public void process( final NodeTracker state, final JSPWikiLink link ) { final String variable = NodePostProcessorStateCommonOperations.inlineLinkTextOnWysiwyg( state, link, m_wysiwygEditorMode ); if( !m_wysiwygEditorMode ) { try { -- To stop receiving notification emails like this one, please contact "[email protected]" <[email protected]>.
