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 0d230576bd9e7029e6086b70e3224e583eb964e6 Author: juanpablo <[email protected]> AuthorDate: Mon Mar 16 21:32:03 2020 +0100 JSPWIKI-303: move o.a.w.search.QueryItem and o.a.w.search.SearchResult to jspwiki-210-adapters module and use the ones from o.a.w.api.search instead --- .../java/org/apache/wiki/search/QueryItem.java | 23 ++----- .../java/org/apache/wiki/search/SearchResult.java | 23 ++----- .../apache/wiki/content/DefaultPageRenamer.java | 3 +- .../apache/wiki/parser/JSPWikiMarkupParser.java | 10 --- .../java/org/apache/wiki/parser/MarkupParser.java | 10 +++ .../java/org/apache/wiki/tags/IteratorTag.java | 78 ++++++++-------------- .../apache/wiki/tags/SearchResultIteratorInfo.java | 20 +++--- .../apache/wiki/tags/SearchResultIteratorTag.java | 21 +++--- 8 files changed, 73 insertions(+), 115 deletions(-) diff --git a/jspwiki-main/src/main/java/org/apache/wiki/search/QueryItem.java b/jspwiki-210-adapters/src/main/java/org/apache/wiki/search/QueryItem.java similarity index 64% rename from jspwiki-main/src/main/java/org/apache/wiki/search/QueryItem.java rename to jspwiki-210-adapters/src/main/java/org/apache/wiki/search/QueryItem.java index acbb74a..54b6dd7 100644 --- a/jspwiki-main/src/main/java/org/apache/wiki/search/QueryItem.java +++ b/jspwiki-210-adapters/src/main/java/org/apache/wiki/search/QueryItem.java @@ -21,23 +21,10 @@ package org.apache.wiki.search; /** * This simple class just fulfils the role of a container for searches. It tells the word and whether it is requested or not. + * + * @deprecated - use {@link org.apache.wiki.api.search.QueryItem} instead + * @see org.apache.wiki.api.search.QueryItem */ -public class QueryItem { - - /** The word is required to be in the pages */ - public static final int REQUIRED = 1; - - /** The word may NOT be in the pages */ - public static final int FORBIDDEN = -1; - - /** The word should be in the pages, but the search engine may - use its own discretion. */ - public static final int REQUESTED = 0; - - /** The word that is being searched */ - public String word; - - /** The type of the word. See above for types. The default is REQUESTED. */ - public int type = REQUESTED; - +@Deprecated +public class QueryItem extends org.apache.wiki.api.search.QueryItem { } diff --git a/jspwiki-main/src/main/java/org/apache/wiki/search/SearchResult.java b/jspwiki-210-adapters/src/main/java/org/apache/wiki/search/SearchResult.java similarity index 70% rename from jspwiki-main/src/main/java/org/apache/wiki/search/SearchResult.java rename to jspwiki-210-adapters/src/main/java/org/apache/wiki/search/SearchResult.java index 34b0d88..dbb93ce 100644 --- a/jspwiki-main/src/main/java/org/apache/wiki/search/SearchResult.java +++ b/jspwiki-210-adapters/src/main/java/org/apache/wiki/search/SearchResult.java @@ -22,9 +22,13 @@ import org.apache.wiki.WikiPage; /** - * Defines a search result. + * Defines a search result. + * + * @deprecated - use {@link org.apache.wiki.api.search.SearchResult} instead + * @see org.apache.wiki.api.search.SearchResult */ -public interface SearchResult { +@Deprecated +public interface SearchResult extends org.apache.wiki.api.search.SearchResult { /** * Return the page. @@ -33,19 +37,4 @@ public interface SearchResult { */ WikiPage getPage(); - /** - * Returns the score. - * - * @return A positive score value. Note that there is no upper limit for the score. - */ - int getScore(); - - /** - * Collection of XHTML fragments representing some contexts in which the match was made (a.k.a., "snippets"). - * - * @return the search results - * @since 2.4 - */ - String[] getContexts(); - } diff --git a/jspwiki-main/src/main/java/org/apache/wiki/content/DefaultPageRenamer.java b/jspwiki-main/src/main/java/org/apache/wiki/content/DefaultPageRenamer.java index c472e45..f412f18 100644 --- a/jspwiki-main/src/main/java/org/apache/wiki/content/DefaultPageRenamer.java +++ b/jspwiki-main/src/main/java/org/apache/wiki/content/DefaultPageRenamer.java @@ -31,7 +31,6 @@ import org.apache.wiki.attachment.AttachmentManager; import org.apache.wiki.event.WikiEventManager; import org.apache.wiki.event.WikiPageRenameEvent; import org.apache.wiki.pages.PageManager; -import org.apache.wiki.parser.JSPWikiMarkupParser; import org.apache.wiki.parser.MarkupParser; import org.apache.wiki.references.ReferenceManager; import org.apache.wiki.search.SearchManager; @@ -181,7 +180,7 @@ public class DefaultPageRenamer implements PageRenamer { final String sourceText = engine.getManager( PageManager.class ).getPureText( p ); String newText = replaceReferrerString( context, sourceText, fromPage.getName(), toPage.getName() ); - m_camelCase = TextUtil.getBooleanProperty( engine.getWikiProperties(), JSPWikiMarkupParser.PROP_CAMELCASELINKS, m_camelCase ); + m_camelCase = TextUtil.getBooleanProperty( engine.getWikiProperties(), MarkupParser.PROP_CAMELCASELINKS, m_camelCase ); if( m_camelCase ) { newText = replaceCCReferrerString( context, newText, fromPage.getName(), toPage.getName() ); } diff --git a/jspwiki-main/src/main/java/org/apache/wiki/parser/JSPWikiMarkupParser.java b/jspwiki-main/src/main/java/org/apache/wiki/parser/JSPWikiMarkupParser.java index 62e8c71..9aee850 100644 --- a/jspwiki-main/src/main/java/org/apache/wiki/parser/JSPWikiMarkupParser.java +++ b/jspwiki-main/src/main/java/org/apache/wiki/parser/JSPWikiMarkupParser.java @@ -122,16 +122,6 @@ public class JSPWikiMarkupParser extends MarkupParser { /** Keep track of duplicate header names. */ private Map<String, Integer> m_titleSectionCounter = new HashMap<>(); - /** If true, consider CamelCase hyperlinks as well. */ - public static final String PROP_CAMELCASELINKS = "jspwiki.translatorReader.camelCaseLinks"; - - /** If true, all hyperlinks are translated as well, regardless whether they - are surrounded by brackets. */ - public static final String PROP_PLAINURIS = "jspwiki.translatorReader.plainUris"; - - /** If true, all outward attachment info links have a small link image appended. */ - public static final String PROP_USEATTACHMENTIMAGE = "jspwiki.translatorReader.useAttachmentImage"; - /** If true, then considers CamelCase links as well. */ private boolean m_camelCaseLinks = false; diff --git a/jspwiki-main/src/main/java/org/apache/wiki/parser/MarkupParser.java b/jspwiki-main/src/main/java/org/apache/wiki/parser/MarkupParser.java index b26a29b..26cc20e 100644 --- a/jspwiki-main/src/main/java/org/apache/wiki/parser/MarkupParser.java +++ b/jspwiki-main/src/main/java/org/apache/wiki/parser/MarkupParser.java @@ -81,6 +81,16 @@ public abstract class MarkupParser { /** If set to "true", all external links are tagged with 'rel="nofollow"' */ public static final String PROP_USERELNOFOLLOW = "jspwiki.translatorReader.useRelNofollow"; + /** If true, consider CamelCase hyperlinks as well. */ + public static final String PROP_CAMELCASELINKS = "jspwiki.translatorReader.camelCaseLinks"; + + /** If true, all hyperlinks are translated as well, regardless whether they + are surrounded by brackets. */ + public static final String PROP_PLAINURIS = "jspwiki.translatorReader.plainUris"; + + /** If true, all outward attachment info links have a small link image appended. */ + public static final String PROP_USEATTACHMENTIMAGE = "jspwiki.translatorReader.useAttachmentImage"; + public static final String HASHLINK = "hashlink"; /** Name of the outlink image; relative path to the JSPWiki directory. */ diff --git a/jspwiki-main/src/main/java/org/apache/wiki/tags/IteratorTag.java b/jspwiki-main/src/main/java/org/apache/wiki/tags/IteratorTag.java index 9a8dab7..f94929c 100644 --- a/jspwiki-main/src/main/java/org/apache/wiki/tags/IteratorTag.java +++ b/jspwiki-main/src/main/java/org/apache/wiki/tags/IteratorTag.java @@ -57,38 +57,34 @@ public abstract class IteratorTag extends BodyTagSupport implements TryCatchFina * * @param arg A Collection which will be iterated. */ - public void setList( final Collection< ? > arg ) - { - if( arg != null ) + public void setList( final Collection< ? > arg ) { + if( arg != null ) { m_iterator = arg.iterator(); + } } /** * Sets the collection list, but using an array. + * * @param arg An array of objects which will be iterated. */ - public void setList( final Object[] arg ) - { - if( arg != null ) - { + public void setList( final Object[] arg ) { + if( arg != null ) { m_iterator = Arrays.asList(arg).iterator(); } } /** - * Clears the iterator away. After calling this method doStartTag() - * will always return SKIP_BODY + * Clears the iterator away. After calling this method doStartTag() will always return SKIP_BODY */ - public void clearList() - { + public void clearList() { m_iterator = null; } /** * Override this method to reset your own iterator. */ - public void resetIterator() - { + public void resetIterator() { // No operation here } @@ -96,16 +92,13 @@ public abstract class IteratorTag extends BodyTagSupport implements TryCatchFina * {@inheritDoc} */ @Override - public int doStartTag() - { + public int doStartTag() { m_wikiContext = WikiContext.findContext(pageContext); - resetIterator(); - - if( m_iterator == null ) return SKIP_BODY; - - if( m_iterator.hasNext() ) - { + if( m_iterator == null ) { + return SKIP_BODY; + } + if( m_iterator.hasNext() ) { buildContext(); } @@ -115,15 +108,13 @@ public abstract class IteratorTag extends BodyTagSupport implements TryCatchFina /** * Arg, I hate globals. */ - private void buildContext() - { + private void buildContext() { // // Build a clone of the current context // final WikiContext context = m_wikiContext.clone(); final Object o = m_iterator.next(); - if( o instanceof WikiPage ) { context.setPage( (WikiPage)o ); } @@ -139,8 +130,7 @@ public abstract class IteratorTag extends BodyTagSupport implements TryCatchFina * {@inheritDoc} */ @Override - public int doEndTag() - { + public int doEndTag() { // Return back to the original. pageContext.setAttribute( Context.ATTR_CONTEXT, m_wikiContext, PageContext.REQUEST_SCOPE ); @@ -151,25 +141,19 @@ public abstract class IteratorTag extends BodyTagSupport implements TryCatchFina * {@inheritDoc} */ @Override - public int doAfterBody() - { - if( bodyContent != null ) - { - try - { + public int doAfterBody() { + if( bodyContent != null ) { + try { final JspWriter out = getPreviousOut(); - out.print(bodyContent.getString()); + out.print( bodyContent.getString() ); bodyContent.clearBody(); - } - catch( final IOException e ) - { - log.error("Unable to get inner tag text", e); + } catch( final IOException e ) { + log.error( "Unable to get inner tag text", e ); // FIXME: throw something? } } - if( m_iterator != null && m_iterator.hasNext() ) - { + if( m_iterator != null && m_iterator.hasNext() ) { buildContext(); return EVAL_BODY_BUFFERED; } @@ -178,29 +162,23 @@ public abstract class IteratorTag extends BodyTagSupport implements TryCatchFina } /** - * In case your tag throws an exception at any point, you can - * override this method and implement a custom exception handler. + * In case your tag throws an exception at any point, you can override this method and implement a custom exception handler. * <p> * By default, this handler does nothing. * * @param arg0 The Throwable that the tag threw - * * @throws Throwable I have no idea why this would throw anything */ @Override - public void doCatch( final Throwable arg0) throws Throwable - { + public void doCatch( final Throwable arg0) throws Throwable { } /** - * Executed after the tag has been finished. This is a great place - * to put any cleanup code. However you <b>must</b> call super.doFinally() - * if you override this method, or else some of the things may not - * work as expected. + * Executed after the tag has been finished. This is a great place to put any cleanup code. However you <b>must</b> call + * super.doFinally() if you override this method, or else some of the things may not work as expected. */ @Override - public void doFinally() - { + public void doFinally() { resetIterator(); m_iterator = null; m_pageName = null; diff --git a/jspwiki-main/src/main/java/org/apache/wiki/tags/SearchResultIteratorInfo.java b/jspwiki-main/src/main/java/org/apache/wiki/tags/SearchResultIteratorInfo.java index 50e4eb5..143f5e5 100644 --- a/jspwiki-main/src/main/java/org/apache/wiki/tags/SearchResultIteratorInfo.java +++ b/jspwiki-main/src/main/java/org/apache/wiki/tags/SearchResultIteratorInfo.java @@ -18,26 +18,26 @@ */ package org.apache.wiki.tags; -import javax.servlet.jsp.tagext.TagExtraInfo; import javax.servlet.jsp.tagext.TagData; +import javax.servlet.jsp.tagext.TagExtraInfo; import javax.servlet.jsp.tagext.VariableInfo; + /** * Just provides the TEI data for IteratorTag. * * @since 2.0 */ -public class SearchResultIteratorInfo extends TagExtraInfo -{ - public VariableInfo[] getVariableInfo(TagData data) - { - VariableInfo[] var = { new VariableInfo( data.getAttributeString( "id" ), - "org.apache.wiki.search.SearchResult", - true, - VariableInfo.NESTED ) +public class SearchResultIteratorInfo extends TagExtraInfo { + + public VariableInfo[] getVariableInfo( final TagData data ) { + final VariableInfo[] var = { new VariableInfo( data.getAttributeString( "id" ), + "org.apache.wiki.api.search.SearchResult", + true, + VariableInfo.NESTED ) }; return var; - } + } diff --git a/jspwiki-main/src/main/java/org/apache/wiki/tags/SearchResultIteratorTag.java b/jspwiki-main/src/main/java/org/apache/wiki/tags/SearchResultIteratorTag.java index ee247fd..144b2ee 100644 --- a/jspwiki-main/src/main/java/org/apache/wiki/tags/SearchResultIteratorTag.java +++ b/jspwiki-main/src/main/java/org/apache/wiki/tags/SearchResultIteratorTag.java @@ -23,7 +23,7 @@ import org.apache.wiki.WikiContext; import org.apache.wiki.api.core.Command; import org.apache.wiki.api.core.Context; import org.apache.wiki.api.core.Engine; -import org.apache.wiki.search.SearchResult; +import org.apache.wiki.api.search.SearchResult; import org.apache.wiki.ui.PageCommand; import javax.servlet.http.HttpServletRequest; @@ -53,8 +53,8 @@ public class SearchResultIteratorTag extends IteratorTag { private static final Logger log = Logger.getLogger(SearchResultIteratorTag.class); - @Override public void release() - { + @Override + public void release() { super.release(); m_maxItems = m_count = 0; } @@ -69,7 +69,8 @@ public class SearchResultIteratorTag extends IteratorTag { m_start = arg; } - @Override public final int doStartTag() { + @Override + public final int doStartTag() { // Do lazy eval if the search results have not been set. if( m_iterator == null ) { final Collection< ? > searchresults = (Collection< ? >)pageContext.getAttribute( "searchresults", PageContext.REQUEST_SCOPE ); @@ -79,11 +80,13 @@ public class SearchResultIteratorTag extends IteratorTag { // Skip the first few ones... m_iterator = searchresults.iterator(); - while( m_iterator.hasNext() && (skip++ < m_start) ) m_iterator.next(); + while( m_iterator.hasNext() && (skip++ < m_start) ) { + m_iterator.next(); + } } m_count = 0; - m_wikiContext = (WikiContext) pageContext.getAttribute( WikiContext.ATTR_CONTEXT, PageContext.REQUEST_SCOPE ); + m_wikiContext = ( WikiContext )pageContext.getAttribute( WikiContext.ATTR_CONTEXT, PageContext.REQUEST_SCOPE ); return nextResult(); } @@ -108,7 +111,8 @@ public class SearchResultIteratorTag extends IteratorTag { return SKIP_BODY; } - @Override public int doAfterBody() { + @Override + public int doAfterBody() { if( bodyContent != null ) { try { final JspWriter out = getPreviousOut(); @@ -123,7 +127,8 @@ public class SearchResultIteratorTag extends IteratorTag { return nextResult(); } - @Override public int doEndTag() { + @Override + public int doEndTag() { m_iterator = null; return super.doEndTag(); }
