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 25c9ed0217ff9df195c18e6d7ccf89172f21ff6d Author: juanpablo <[email protected]> AuthorDate: Mon Feb 24 17:16:27 2020 +0100 JSPWIKI-120: propagate WikiContext#getEngine() now returns Engine instead of WikiEngine (8) --- .../org/apache/wiki/rpc/atom/AtomAPIServlet.java | 87 +++++++++++----------- .../java/org/apache/wiki/search/SearchManager.java | 7 +- .../wiki/tasks/pages/PreSaveWikiPageTask.java | 27 ++++--- .../apache/wiki/tasks/pages/SaveWikiPageTask.java | 15 ++-- 4 files changed, 70 insertions(+), 66 deletions(-) diff --git a/jspwiki-main/src/main/java/org/apache/wiki/rpc/atom/AtomAPIServlet.java b/jspwiki-main/src/main/java/org/apache/wiki/rpc/atom/AtomAPIServlet.java index 56dc601..084ecd2 100644 --- a/jspwiki-main/src/main/java/org/apache/wiki/rpc/atom/AtomAPIServlet.java +++ b/jspwiki-main/src/main/java/org/apache/wiki/rpc/atom/AtomAPIServlet.java @@ -24,6 +24,7 @@ import org.apache.wiki.WikiEngine; import org.apache.wiki.WikiPage; import org.apache.wiki.api.exceptions.ProviderException; import org.apache.wiki.api.exceptions.WikiException; +import org.apache.wiki.pages.PageManager; import org.apache.wiki.plugin.WeblogEntryPlugin; import org.apache.wiki.plugin.WeblogPlugin; import org.apache.wiki.util.TextUtil; @@ -65,7 +66,7 @@ public class AtomAPIServlet extends HttpServlet /** * {@inheritDoc} */ - public void init( ServletConfig config ) + @Override public void init( final ServletConfig config ) throws ServletException { m_engine = WikiEngine.getInstance( config ); @@ -76,7 +77,7 @@ public class AtomAPIServlet extends HttpServlet * The initial slash is also removed. If there is no page, * returns null. */ - private String getPageName( HttpServletRequest request ) + private String getPageName( final HttpServletRequest request ) { String name = request.getPathInfo(); @@ -107,16 +108,16 @@ public class AtomAPIServlet extends HttpServlet * @param response {@inheritDoc} * @throws ServletException {@inheritDoc} */ - public void doPost( HttpServletRequest request, HttpServletResponse response ) + @Override public void doPost( final HttpServletRequest request, final HttpServletResponse response ) throws ServletException { log.debug("Received POST to AtomAPIServlet"); try { - String blogid = getPageName( request ); + final String blogid = getPageName( request ); - WikiPage page = m_engine.getPageManager().getPage( blogid ); + final WikiPage page = m_engine.getManager( PageManager.class ).getPage( blogid ); if( page == null ) { @@ -124,39 +125,39 @@ public class AtomAPIServlet extends HttpServlet } //FIXME: Do authentication here - Entry entry = Sandler.unmarshallEntry( request.getInputStream() ); + final Entry entry = Sandler.unmarshallEntry( request.getInputStream() ); // // Fetch the obligatory parts of the content. // - Content title = entry.getTitle(); - Content content = entry.getContent(0); + final Content title = entry.getTitle(); + final Content content = entry.getContent(0); - Person author = entry.getAuthor(); + final Person author = entry.getAuthor(); //FIXME: Sandler 0.5 does not support generator // // Generate new blog entry. // - WeblogEntryPlugin plugin = new WeblogEntryPlugin(); + final WeblogEntryPlugin plugin = new WeblogEntryPlugin(); - String pageName = plugin.getNewEntryPage( m_engine, blogid ); - String username = author.getName(); + final String pageName = plugin.getNewEntryPage( m_engine, blogid ); + final String username = author.getName(); - WikiPage entryPage = new WikiPage( m_engine, pageName ); + final WikiPage entryPage = new WikiPage( m_engine, pageName ); entryPage.setAuthor( username ); - WikiContext context = new WikiContext( m_engine, request, entryPage ); + final WikiContext context = new WikiContext( m_engine, request, entryPage ); - StringBuilder text = new StringBuilder(); + final StringBuilder text = new StringBuilder(); text.append( "!" + title.getBody() ); text.append( "\n\n" ); text.append( content.getBody() ); log.debug("Writing entry: "+text); - m_engine.getPageManager().saveText( context, text.toString() ); + m_engine.getManager( PageManager.class ).saveText( context, text.toString() ); } catch( final FeedMarshallException e ) { log.error("Received faulty Atom entry",e); @@ -176,12 +177,12 @@ public class AtomAPIServlet extends HttpServlet * * {@inheritDoc} */ - public void doGet( HttpServletRequest request, HttpServletResponse response ) + @Override public void doGet( final HttpServletRequest request, final HttpServletResponse response ) throws ServletException { log.debug("Received HTTP GET to AtomAPIServlet"); - String blogid = getPageName( request ); + final String blogid = getPageName( request ); log.debug("Requested page "+blogid); @@ -189,7 +190,7 @@ public class AtomAPIServlet extends HttpServlet { if( blogid == null ) { - Feed feed = listBlogs(); + final Feed feed = listBlogs(); response.setContentType("application/x.atom+xml; charset=UTF-8"); response.getWriter().println( Sandler.marshallFeed(feed) ); @@ -198,7 +199,7 @@ public class AtomAPIServlet extends HttpServlet } else { - Entry entry = getBlogEntry( blogid ); + final Entry entry = getBlogEntry( blogid ); response.setContentType("application/x.atom+xml; charset=UTF-8"); response.getWriter().println( Sandler.marshallEntry(entry) ); @@ -206,7 +207,7 @@ public class AtomAPIServlet extends HttpServlet response.getWriter().flush(); } } - catch( Exception e ) + catch( final Exception e ) { log.error("Unable to generate response",e); throw new ServletException("Internal problem - whack Janne on the head to get a better error report",e); @@ -214,15 +215,15 @@ public class AtomAPIServlet extends HttpServlet } - private Entry getBlogEntry( String entryid ) { - WikiPage page = m_engine.getPageManager().getPage( entryid ); - WikiPage firstVersion = m_engine.getPageManager().getPage( entryid, 1 ); + private Entry getBlogEntry( final String entryid ) { + final WikiPage page = m_engine.getManager( PageManager.class ).getPage( entryid ); + final WikiPage firstVersion = m_engine.getManager( PageManager.class ).getPage( entryid, 1 ); - Entry entry = SyndicationFactory.newSyndicationEntry(); + final Entry entry = SyndicationFactory.newSyndicationEntry(); - String pageText = m_engine.getPageManager().getText(page.getName()); + final String pageText = m_engine.getManager( PageManager.class ).getText(page.getName()); String title = ""; - int firstLine = pageText.indexOf('\n'); + final int firstLine = pageText.indexOf('\n'); if( firstLine > 0 ) { @@ -250,15 +251,15 @@ public class AtomAPIServlet extends HttpServlet * Creates and outputs a full list of all available blogs */ private Feed listBlogs() throws ProviderException { - Collection< WikiPage > pages = m_engine.getPageManager().getAllPages(); + final Collection< WikiPage > pages = m_engine.getManager( PageManager.class ).getAllPages(); - Feed feed = SyndicationFactory.newSyndicationFeed(); + final Feed feed = SyndicationFactory.newSyndicationFeed(); feed.setTitle("List of blogs at this site"); feed.setModified( new Date() ); - for( Iterator< WikiPage > i = pages.iterator(); i.hasNext(); ) + for( final Iterator< WikiPage > i = pages.iterator(); i.hasNext(); ) { - WikiPage p = i.next(); + final WikiPage p = i.next(); // // List only weblogs @@ -273,21 +274,21 @@ public class AtomAPIServlet extends HttpServlet continue; } - String encodedName = TextUtil.urlEncodeUTF8( p.getName() ); + final String encodedName = TextUtil.urlEncodeUTF8( p.getName() ); - WikiContext context = new WikiContext( m_engine, p ); + final WikiContext context = new WikiContext( m_engine, p ); - String title = TextUtil.replaceEntities(org.apache.wiki.rss.Feed.getSiteName(context)); + final String title = TextUtil.replaceEntities(org.apache.wiki.rss.Feed.getSiteName(context)); - Link postlink = createLink( "service.post", + final Link postlink = createLink( "service.post", m_engine.getBaseURL()+"atom/"+encodedName, title ); - Link editlink = createLink( "service.edit", + final Link editlink = createLink( "service.edit", m_engine.getBaseURL()+"atom/"+encodedName, title ); - Link feedlink = createLink( "service.feed", + final Link feedlink = createLink( "service.feed", m_engine.getBaseURL()+"atom.jsp?page="+encodedName, title ); @@ -300,11 +301,11 @@ public class AtomAPIServlet extends HttpServlet return feed; } - private Link createLink( String rel, - String href, - String title ) + private Link createLink( final String rel, + final String href, + final String title ) { - org.intabulas.sandler.elements.impl.LinkImpl link = new org.intabulas.sandler.elements.impl.LinkImpl(); + final org.intabulas.sandler.elements.impl.LinkImpl link = new org.intabulas.sandler.elements.impl.LinkImpl(); link.setRelationship( rel ); link.setTitle( title ); @@ -317,14 +318,14 @@ public class AtomAPIServlet extends HttpServlet /** * {@inheritDoc} */ - public void doDelete( HttpServletRequest request, HttpServletResponse response ) { + @Override public void doDelete( final HttpServletRequest request, final HttpServletResponse response ) { log.debug("Received HTTP DELETE"); } /** * {@inheritDoc} */ - public void doPut( HttpServletRequest request, HttpServletResponse response ) { + @Override public void doPut( final HttpServletRequest request, final HttpServletResponse response ) { log.debug("Received HTTP PUT"); } } diff --git a/jspwiki-main/src/main/java/org/apache/wiki/search/SearchManager.java b/jspwiki-main/src/main/java/org/apache/wiki/search/SearchManager.java index 2d975f4..53e1c5d 100644 --- a/jspwiki-main/src/main/java/org/apache/wiki/search/SearchManager.java +++ b/jspwiki-main/src/main/java/org/apache/wiki/search/SearchManager.java @@ -36,6 +36,7 @@ import org.apache.wiki.event.WikiEventListener; import org.apache.wiki.event.WikiEventManager; import org.apache.wiki.event.WikiPageEvent; import org.apache.wiki.modules.InternalModule; +import org.apache.wiki.pages.PageManager; import org.apache.wiki.parser.MarkupParser; import org.apache.wiki.util.ClassUtil; @@ -80,7 +81,7 @@ public class SearchManager extends BasicPageFilter implements InternalModule, Wi */ public SearchManager( final WikiEngine engine, final Properties properties ) throws FilterException { initialize( engine, properties ); - WikiEventManager.getInstance().addWikiEventListener( m_engine.getPageManager(), this ); + WikiEventManager.getInstance().addWikiEventListener( m_engine.getManager( PageManager.class ), this ); //TODO: Replace with custom annotations. See JSPWIKI-566 WikiAjaxDispatcherServlet.registerServlet( JSON_SEARCH, new JSONSearch() ); @@ -311,7 +312,7 @@ public class SearchManager extends BasicPageFilter implements InternalModule, Wi @Override public void postSave( final WikiContext wikiContext, final String content ) { // Makes sure that we're indexing the latest version of this page. - final WikiPage p = m_engine.getPageManager().getPage( wikiContext.getPage().getName() ); + final WikiPage p = m_engine.getManager( PageManager.class ).getPage( wikiContext.getPage().getName() ); reindexPage( p ); } @@ -335,7 +336,7 @@ public class SearchManager extends BasicPageFilter implements InternalModule, Wi if( event instanceof WikiPageEvent && event.getType() == WikiPageEvent.PAGE_DELETE_REQUEST ) { final String pageName = ( ( WikiPageEvent ) event ).getPageName(); - final WikiPage p = m_engine.getPageManager().getPage( pageName ); + final WikiPage p = m_engine.getManager( PageManager.class ).getPage( pageName ); if( p != null ) { pageRemoved( p ); } diff --git a/jspwiki-main/src/main/java/org/apache/wiki/tasks/pages/PreSaveWikiPageTask.java b/jspwiki-main/src/main/java/org/apache/wiki/tasks/pages/PreSaveWikiPageTask.java index 1bd6b7c..006174e 100644 --- a/jspwiki-main/src/main/java/org/apache/wiki/tasks/pages/PreSaveWikiPageTask.java +++ b/jspwiki-main/src/main/java/org/apache/wiki/tasks/pages/PreSaveWikiPageTask.java @@ -18,11 +18,10 @@ */ package org.apache.wiki.tasks.pages; -import java.security.Principal; - import org.apache.wiki.WikiContext; -import org.apache.wiki.WikiEngine; import org.apache.wiki.WikiPage; +import org.apache.wiki.api.core.Engine; +import org.apache.wiki.api.engine.FilterManager; import org.apache.wiki.api.exceptions.WikiException; import org.apache.wiki.tasks.TasksManager; import org.apache.wiki.workflow.Outcome; @@ -30,6 +29,8 @@ import org.apache.wiki.workflow.Task; import org.apache.wiki.workflow.Workflow; import org.apache.wiki.workflow.WorkflowManager; +import java.security.Principal; + /** * Handles the page pre-save actions. If the proposed page text is the same as the current version, @@ -60,24 +61,22 @@ public class PreSaveWikiPageTask extends Task { @Override public Outcome execute() throws WikiException { // Retrieve attributes - WikiEngine engine = m_context.getEngine(); - Workflow workflow = getWorkflow(); + final Engine engine = m_context.getEngine(); + final Workflow workflow = getWorkflow(); // Get the wiki page - WikiPage page = m_context.getPage(); - - // Figure out who the author was. Prefer the author set programmatically; otherwise - // get from the current logged in user - if (page.getAuthor() == null) { - Principal wup = m_context.getCurrentUser(); + final WikiPage page = m_context.getPage(); - if (wup != null) { - page.setAuthor(wup.getName()); + // Figure out who the author was. Prefer the author set programmatically; otherwise get from the current logged in user + if( page.getAuthor() == null ) { + final Principal wup = m_context.getCurrentUser(); + if( wup != null ) { + page.setAuthor( wup.getName() ); } } // Run the pre-save filters. If any exceptions, add error to list, abort, and redirect - String saveText = engine.getFilterManager().doPreSaveFiltering(m_context, m_proposedText); + final String saveText = engine.getManager( FilterManager.class ).doPreSaveFiltering(m_context, m_proposedText); // Stash the wiki context, old and new text as workflow attributes workflow.setAttribute( WorkflowManager.WF_WP_SAVE_ATTR_PRESAVE_WIKI_CONTEXT, m_context ); diff --git a/jspwiki-main/src/main/java/org/apache/wiki/tasks/pages/SaveWikiPageTask.java b/jspwiki-main/src/main/java/org/apache/wiki/tasks/pages/SaveWikiPageTask.java index e076fb8..7dcf18c 100644 --- a/jspwiki-main/src/main/java/org/apache/wiki/tasks/pages/SaveWikiPageTask.java +++ b/jspwiki-main/src/main/java/org/apache/wiki/tasks/pages/SaveWikiPageTask.java @@ -19,9 +19,12 @@ package org.apache.wiki.tasks.pages; import org.apache.wiki.WikiContext; -import org.apache.wiki.WikiEngine; import org.apache.wiki.WikiPage; +import org.apache.wiki.api.core.Engine; +import org.apache.wiki.api.engine.FilterManager; import org.apache.wiki.api.exceptions.WikiException; +import org.apache.wiki.pages.PageManager; +import org.apache.wiki.render.RenderingManager; import org.apache.wiki.tasks.TasksManager; import org.apache.wiki.workflow.Outcome; import org.apache.wiki.workflow.Task; @@ -51,16 +54,16 @@ public class SaveWikiPageTask extends Task { final WikiContext context = ( WikiContext ) getWorkflow().getAttribute( WorkflowManager.WF_WP_SAVE_ATTR_PRESAVE_WIKI_CONTEXT ); final String proposedText = (String) getWorkflow().getAttribute( WorkflowManager.WF_WP_SAVE_FACT_PROPOSED_TEXT ); - final WikiEngine engine = context.getEngine(); + final Engine engine = context.getEngine(); final WikiPage page = context.getPage(); // Let the rest of the engine handle actual saving. - engine.getPageManager().putPageText( page, proposedText ); + engine.getManager( PageManager.class ).putPageText( page, proposedText ); // Refresh the context for post save filtering. - engine.getPageManager().getPage( page.getName() ); - engine.getRenderingManager().textToHTML( context, proposedText ); - engine.getFilterManager().doPostSaveFiltering( context, proposedText ); + engine.getManager( PageManager.class ).getPage( page.getName() ); + engine.getManager( RenderingManager.class ).textToHTML( context, proposedText ); + engine.getManager( FilterManager.class ).doPostSaveFiltering( context, proposedText ); return Outcome.STEP_COMPLETE; }
