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 fba8cd440cf763b8c996363cb22c33ed0a9dbaa5
Author: juanpablo <[email protected]>
AuthorDate: Tue Apr 14 22:17:30 2020 +0200

    Promote PluginManager#getPluginSearchPath() to Engine, as it is an 
operation requesting a configuration value
---
 .../test/java/org/apache/wiki/plugin/PluginFrom210Test.java |  3 ++-
 .../src/main/java/org/apache/wiki/api/core/Engine.java      | 13 +++++++++++++
 .../java/org/apache/wiki/plugin/DefaultPluginManager.java   |  8 +-------
 .../src/main/java/org/apache/wiki/plugin/PluginManager.java | 10 ----------
 .../org/apache/wiki/plugin/DefaultPluginManagerTest.java    |  7 ++++---
 5 files changed, 20 insertions(+), 21 deletions(-)

diff --git 
a/jspwiki-210-adapters/src/test/java/org/apache/wiki/plugin/PluginFrom210Test.java
 
b/jspwiki-210-adapters/src/test/java/org/apache/wiki/plugin/PluginFrom210Test.java
index 134a3ad..d325451 100644
--- 
a/jspwiki-210-adapters/src/test/java/org/apache/wiki/plugin/PluginFrom210Test.java
+++ 
b/jspwiki-210-adapters/src/test/java/org/apache/wiki/plugin/PluginFrom210Test.java
@@ -22,6 +22,7 @@ import org.apache.wiki.TestEngine;
 import org.apache.wiki.WikiContext;
 import org.apache.wiki.WikiEngine;
 import org.apache.wiki.WikiPage;
+import org.apache.wiki.api.core.Engine;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
 
@@ -33,7 +34,7 @@ public class PluginFrom210Test {
     @Test
     public void testPluginNotUsingPublicApiStillWorks() throws Exception {
         final Properties props = TestEngine.getTestProperties();
-        props.setProperty( PluginManager.PROP_SEARCHPATH, 
"com.example.plugins" );
+        props.setProperty( Engine.PROP_SEARCHPATH, "com.example.plugins" );
         final WikiEngine engine = TestEngine.build( props );
         final PluginManager pm = engine.getManager( PluginManager.class );
         final WikiContext context = new WikiContext( engine, new WikiPage( 
engine, "Testpage" ) );
diff --git a/jspwiki-api/src/main/java/org/apache/wiki/api/core/Engine.java 
b/jspwiki-api/src/main/java/org/apache/wiki/api/core/Engine.java
index 6a2269e..8f054af 100644
--- a/jspwiki-api/src/main/java/org/apache/wiki/api/core/Engine.java
+++ b/jspwiki-api/src/main/java/org/apache/wiki/api/core/Engine.java
@@ -21,6 +21,7 @@ package org.apache.wiki.api.core;
 import org.apache.log4j.Logger;
 import org.apache.wiki.api.exceptions.ProviderException;
 import org.apache.wiki.event.WikiEventListener;
+import org.apache.wiki.util.TextUtil;
 
 import javax.servlet.ServletContext;
 import java.io.File;
@@ -65,6 +66,9 @@ public interface Engine {
     /** Property start for any interwiki reference. */
     String PROP_INTERWIKIREF = "jspwiki.interWikiRef.";
 
+    /** The property name defining which packages will be searched for plugin 
classes. */
+    String PROP_SEARCHPATH = "jspwiki.plugin.searchPath";
+
     /** If true, then the user name will be stored with the page data.*/
     String PROP_STOREUSERNAME= "jspwiki.storeUserName";
 
@@ -162,6 +166,15 @@ public interface Engine {
     String getTemplateDir();
 
     /**
+     * Returns plugins' search path.
+     *
+     * @return plugins' search path.
+     */
+    default String getPluginSearchPath() {
+        return TextUtil.getStringProperty( getWikiProperties(), 
PROP_SEARCHPATH, null );
+    }
+
+    /**
      *  Returns the moment when this engine was started.
      *
      *  @since 2.0.15.
diff --git 
a/jspwiki-main/src/main/java/org/apache/wiki/plugin/DefaultPluginManager.java 
b/jspwiki-main/src/main/java/org/apache/wiki/plugin/DefaultPluginManager.java
index 02a5fbb..207f3ee 100644
--- 
a/jspwiki-main/src/main/java/org/apache/wiki/plugin/DefaultPluginManager.java
+++ 
b/jspwiki-main/src/main/java/org/apache/wiki/plugin/DefaultPluginManager.java
@@ -178,7 +178,7 @@ public class DefaultPluginManager extends BaseModuleManager 
implements PluginMan
      */
     public DefaultPluginManager( final Engine engine, final Properties props ) 
{
         super( engine );
-        final String packageNames = props.getProperty( PROP_SEARCHPATH );
+        final String packageNames = props.getProperty( Engine.PROP_SEARCHPATH 
);
         if ( packageNames != null ) {
             final StringTokenizer tok = new StringTokenizer( packageNames, "," 
);
             while( tok.hasMoreTokens() ) {
@@ -227,12 +227,6 @@ public class DefaultPluginManager extends 
BaseModuleManager implements PluginMan
                return m_pluginPattern;
        }
 
-    /** {@inheritDoc} */
-    @Override
-    public String getPluginSearchPath() {
-       return TextUtil.getStringProperty( m_engine.getWikiProperties(), 
PROP_SEARCHPATH, null );
-    }
-
        /**
      *  Attempts to locate a plugin class from the class path set in the 
property file.
      *
diff --git 
a/jspwiki-main/src/main/java/org/apache/wiki/plugin/PluginManager.java 
b/jspwiki-main/src/main/java/org/apache/wiki/plugin/PluginManager.java
index a7fee6d..aa5f752 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/plugin/PluginManager.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/plugin/PluginManager.java
@@ -31,9 +31,6 @@ import java.util.ResourceBundle;
 
 public interface PluginManager extends ModuleManager {
 
-    /** The property name defining which packages will be searched for plugin 
classes. */
-    String PROP_SEARCHPATH = "jspwiki.plugin.searchPath";
-
     /** The property name defining which external jars will be added to the 
classpath when searching for plugin classes. */
     String PROP_EXTERNALJARS = "jspwiki.plugin.externalJars";
 
@@ -76,13 +73,6 @@ public interface PluginManager extends ModuleManager {
      * @return plugin insert pattern.
      */
     Pattern getPluginPattern();
-    
-    /**
-     * Returns plugins' search path.
-     * 
-     * @return plugins' search path.
-     */
-    String getPluginSearchPath();
 
     /**
      * Executes a plugin class in the given context.
diff --git 
a/jspwiki-main/src/test/java/org/apache/wiki/plugin/DefaultPluginManagerTest.java
 
b/jspwiki-main/src/test/java/org/apache/wiki/plugin/DefaultPluginManagerTest.java
index 015f686..0db4b27 100644
--- 
a/jspwiki-main/src/test/java/org/apache/wiki/plugin/DefaultPluginManagerTest.java
+++ 
b/jspwiki-main/src/test/java/org/apache/wiki/plugin/DefaultPluginManagerTest.java
@@ -22,6 +22,7 @@ package org.apache.wiki.plugin;
 import org.apache.wiki.TestEngine;
 import org.apache.wiki.WikiContext;
 import org.apache.wiki.WikiEngine;
+import org.apache.wiki.api.core.Engine;
 import org.apache.wiki.api.exceptions.ProviderException;
 import org.apache.wiki.api.spi.Wiki;
 import org.apache.wiki.pages.PageManager;
@@ -66,7 +67,7 @@ public class DefaultPluginManagerTest {
 
     @Test
     public void testSimpleInsertNoPackage2() throws Exception {
-        props.setProperty( DefaultPluginManager.PROP_SEARCHPATH, "com.foo" );
+        props.setProperty( Engine.PROP_SEARCHPATH, "com.foo" );
         final DefaultPluginManager m = new DefaultPluginManager( engine, props 
);
         final String res = m.execute( context,"{INSERT SamplePlugin2 WHERE 
text=foobar}" );
         Assertions.assertEquals( "foobar", res );
@@ -74,7 +75,7 @@ public class DefaultPluginManagerTest {
 
     @Test
     public void testSimpleInsertNoPackage3() throws Exception {
-        props.setProperty( DefaultPluginManager.PROP_SEARCHPATH, "com.foo" );
+        props.setProperty( Engine.PROP_SEARCHPATH, "com.foo" );
         final DefaultPluginManager m = new DefaultPluginManager( engine, props 
);
         final String res = m.execute( context,"{INSERT SamplePlugin3 WHERE 
text=foobar}" );
         Assertions.assertEquals( "foobar", res );
@@ -83,7 +84,7 @@ public class DefaultPluginManagerTest {
     /** Check that in all cases org.apache.wiki.plugin is searched. */
     @Test
     public void testSimpleInsertNoPackage4() throws Exception {
-        props.setProperty( DefaultPluginManager.PROP_SEARCHPATH, 
"com.foo,blat.blaa" );
+        props.setProperty( Engine.PROP_SEARCHPATH, "com.foo,blat.blaa" );
         final DefaultPluginManager m = new DefaultPluginManager( engine, props 
);
         final String res = m.execute( context,"{INSERT SamplePlugin WHERE 
text=foobar}" );
         Assertions.assertEquals( "foobar", res );

Reply via email to