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 6d6b17c82a16a60451b42493e60be121c0ceac2e Author: juanpablo <[email protected]> AuthorDate: Mon Feb 24 17:18:25 2020 +0100 JSPWIKI-120: propagate WikiContext#getEngine() now returns Engine instead of WikiEngine (12) --- .../LocalLinkAttributeProviderState.java | 8 ++--- .../AccessRuleLinkNodePostProcessorState.java | 6 ++-- .../LocalLinkNodePostProcessorState.java | 3 +- .../MetadataLinkNodePostProcessorState.java | 3 +- .../VariableLinkNodePostProcessorState.java | 3 +- .../wiki/parser/markdown/MarkdownParser.java | 35 ++++++++++++---------- .../apache/wiki/render/MarkdownRendererTest.java | 5 ++-- 7 files changed, 36 insertions(+), 27 deletions(-) diff --git a/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/attributeprovider/LocalLinkAttributeProviderState.java b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/attributeprovider/LocalLinkAttributeProviderState.java index ca53961..48c749c 100755 --- a/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/attributeprovider/LocalLinkAttributeProviderState.java +++ b/jspwiki-markdown/src/main/java/org/apache/wiki/markdown/extensions/jspwikilinks/attributeprovider/LocalLinkAttributeProviderState.java @@ -19,14 +19,14 @@ package org.apache.wiki.markdown.extensions.jspwikilinks.attributeprovider; import com.vladsch.flexmark.util.ast.Node; +import com.vladsch.flexmark.util.html.Attributes; +import com.vladsch.flexmark.util.sequence.CharSubSequence; import org.apache.wiki.WikiContext; +import org.apache.wiki.attachment.AttachmentManager; import org.apache.wiki.markdown.nodes.JSPWikiLink; import org.apache.wiki.parser.LinkParsingOperations; import org.apache.wiki.parser.MarkupParser; -import com.vladsch.flexmark.util.html.Attributes; -import com.vladsch.flexmark.util.sequence.CharSubSequence; - /** * {@link NodeAttributeProviderState} which sets the attributes for local links. @@ -51,7 +51,7 @@ public class LocalLinkAttributeProviderState implements NodeAttributeProviderSta @Override public void setAttributes( final Attributes attributes, final JSPWikiLink link ) { final int hashMark = link.getUrl().toString().indexOf( '#' ); - final String attachment = wikiContext.getEngine().getAttachmentManager().getAttachmentInfoName( wikiContext, link.getWikiLink() ); + final String attachment = wikiContext.getEngine().getManager( AttachmentManager.class ).getAttachmentInfoName( wikiContext, link.getWikiLink() ); if( attachment != null ) { if( !linkOperations.isImageLink( link.getUrl().toString() ) ) { attributes.replaceValue( "class", MarkupParser.CLASS_ATTACHMENT ); 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 3d6c4cb..d977565 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 @@ -25,7 +25,9 @@ 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.auth.acl.AclManager; import org.apache.wiki.markdown.nodes.JSPWikiLink; +import org.apache.wiki.render.RenderingManager; /** @@ -51,7 +53,7 @@ public class AccessRuleLinkNodePostProcessorState implements NodePostProcessorSt @Override 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() ) { + if( wikiContext.getEngine().getManager( RenderingManager.class ).getParser( wikiContext, link.getUrl().toString() ).isParseAccessRules() ) { final WikiPage page = wikiContext.getRealPage(); if( ruleLine.startsWith( "{" ) ) { ruleLine = ruleLine.substring( 1 ); @@ -62,7 +64,7 @@ public class AccessRuleLinkNodePostProcessorState implements NodePostProcessorSt LOG.debug( "page=" + page.getName() + ", ACL = " + ruleLine ); try { - final Acl acl = wikiContext.getEngine().getAclManager().parseAcl( page, ruleLine ); + final Acl acl = wikiContext.getEngine().getManager( AclManager.class ).parseAcl( page, ruleLine ); page.setAcl( acl ); link.unlink(); state.nodeRemoved( link ); 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 1c6345a..0e1629a 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 @@ -23,6 +23,7 @@ import com.vladsch.flexmark.util.ast.Node; import com.vladsch.flexmark.util.ast.NodeTracker; import com.vladsch.flexmark.util.sequence.CharSubSequence; import org.apache.wiki.WikiContext; +import org.apache.wiki.attachment.AttachmentManager; import org.apache.wiki.markdown.nodes.JSPWikiLink; import org.apache.wiki.parser.LinkParsingOperations; import org.apache.wiki.parser.MarkupParser; @@ -49,7 +50,7 @@ public class LocalLinkNodePostProcessorState implements NodePostProcessorState< @Override 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() ); + final String attachment = wikiContext.getEngine().getManager( AttachmentManager.class ).getAttachmentInfoName( wikiContext, link.getUrl().toString() ); if( attachment != null ) { if( !linkOperations.isImageLink( link.getUrl().toString() ) ) { final String attlink = wikiContext.getURL( WikiContext.ATTACH, link.getUrl().toString() ); 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 47661b5..fadb459 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 @@ -25,6 +25,7 @@ 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.variables.VariableManager; import java.text.MessageFormat; import java.util.ResourceBundle; @@ -71,7 +72,7 @@ public class MetadataLinkNodePostProcessorState implements NodePostProcessorStat LOG.debug( "page=" + wikiContext.getRealPage().getName() + " SET name='" + name + "', value='" + val + "'" ); if( name.length() > 0 && val.length() > 0 ) { - val = wikiContext.getEngine().getVariableManager().expandVariables( wikiContext, val ); + val = wikiContext.getEngine().getManager( VariableManager.class ).expandVariables( wikiContext, val ); wikiContext.getPage().setAttribute( name, val ); 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 6a72cf7..4c1ea59 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 @@ -26,6 +26,7 @@ import org.apache.commons.text.StringEscapeUtils; import org.apache.wiki.WikiContext; import org.apache.wiki.api.exceptions.NoSuchVariableException; import org.apache.wiki.markdown.nodes.JSPWikiLink; +import org.apache.wiki.variables.VariableManager; /** @@ -52,7 +53,7 @@ public class VariableLinkNodePostProcessorState implements NodePostProcessorStat final String variable = NodePostProcessorStateCommonOperations.inlineLinkTextOnWysiwyg( state, link, m_wysiwygEditorMode ); if( !m_wysiwygEditorMode ) { try { - final String parsedVariable = wikiContext.getEngine().getVariableManager().parseAndGetValue( wikiContext, variable ); + final String parsedVariable = wikiContext.getEngine().getManager( VariableManager.class ).parseAndGetValue( wikiContext, variable ); final HtmlInline content = new HtmlInline( CharSubSequence.of( StringEscapeUtils.escapeXml11( parsedVariable ) ) ); NodePostProcessorStateCommonOperations.addContent( state, link, content ); } catch( final NoSuchVariableException e ) { diff --git a/jspwiki-markdown/src/main/java/org/apache/wiki/parser/markdown/MarkdownParser.java b/jspwiki-markdown/src/main/java/org/apache/wiki/parser/markdown/MarkdownParser.java index c98f4ef..d36647b 100755 --- a/jspwiki-markdown/src/main/java/org/apache/wiki/parser/markdown/MarkdownParser.java +++ b/jspwiki-markdown/src/main/java/org/apache/wiki/parser/markdown/MarkdownParser.java @@ -21,6 +21,8 @@ package org.apache.wiki.parser.markdown; import com.vladsch.flexmark.parser.Parser; import com.vladsch.flexmark.util.ast.Node; import org.apache.wiki.WikiContext; +import org.apache.wiki.auth.AuthorizationManager; +import org.apache.wiki.auth.UserManager; import org.apache.wiki.parser.MarkupParser; import org.apache.wiki.parser.WikiDocument; @@ -33,26 +35,27 @@ import java.io.Reader; */ public class MarkdownParser extends MarkupParser { - private final Parser parser; + private final Parser parser; - public MarkdownParser( final WikiContext context, final Reader in ) { - super( context, in ); - if( context.getEngine().getUserManager().getUserDatabase() == null || context.getEngine().getAuthorizationManager() == null ) { + public MarkdownParser( final WikiContext context, final Reader in ) { + super( context, in ); + if( context.getEngine().getManager( UserManager.class ).getUserDatabase() == null || + context.getEngine().getManager( AuthorizationManager.class ) == null ) { disableAccessRules(); } - parser = Parser.builder( MarkdownDocument.options( context ) ).build(); - } - - /** - * {@inheritDoc} - */ - @Override - public WikiDocument parse() throws IOException { - final Node document = parser.parseReader( m_in ); - final MarkdownDocument md = new MarkdownDocument( m_context.getPage(), document ); + parser = Parser.builder( MarkdownDocument.options( context ) ).build(); + } + + /** + * {@inheritDoc} + */ + @Override + public WikiDocument parse() throws IOException { + final Node document = parser.parseReader( m_in ); + final MarkdownDocument md = new MarkdownDocument( m_context.getPage(), document ); md.setContext( m_context ); - return md; - } + return md; + } } diff --git a/jspwiki-markdown/src/test/java/org/apache/wiki/render/MarkdownRendererTest.java b/jspwiki-markdown/src/test/java/org/apache/wiki/render/MarkdownRendererTest.java index 19bbb2d..fbeb7b2 100755 --- a/jspwiki-markdown/src/test/java/org/apache/wiki/render/MarkdownRendererTest.java +++ b/jspwiki-markdown/src/test/java/org/apache/wiki/render/MarkdownRendererTest.java @@ -25,6 +25,7 @@ import org.apache.wiki.WikiEngine; import org.apache.wiki.WikiPage; import org.apache.wiki.api.exceptions.WikiException; import org.apache.wiki.attachment.Attachment; +import org.apache.wiki.pages.PageManager; import org.apache.wiki.parser.markdown.MarkdownParser; import org.apache.wiki.render.markdown.MarkdownRenderer; import org.junit.jupiter.api.AfterEach; @@ -105,14 +106,14 @@ public class MarkdownRendererTest { Assertions.assertEquals( "<p> This should be visible if the ACL allows you to see it</p>\n", translate( src ) ); // in any case, we also check that the created wikipage has the ACL added Assertions.assertEquals( " user = PerryMason: ((\"org.apache.wiki.auth.permissions.PagePermission\",\"JSPWiki:testpage\",\"view\"))\n", - testEngine.getPageManager().getPage( PAGE_NAME ).getAcl().toString() ); + testEngine.getManager( PageManager.class ).getPage( PAGE_NAME ).getAcl().toString() ); } @Test public void testMarkupExtensionMetadata() throws Exception { final String src = "[{SET Perry='Mason'}]() Some text after setting metadata"; Assertions.assertEquals( "<p> Some text after setting metadata</p>\n", translate( src ) ); - Assertions.assertEquals( "Mason", testEngine.getPageManager().getPage( PAGE_NAME ).getAttribute( "Perry" ) ); + Assertions.assertEquals( "Mason", testEngine.getManager( PageManager.class ).getPage( PAGE_NAME ).getAttribute( "Perry" ) ); } @Test
