]> source.dussan.org Git - pf4j.git/commitdiff
Update README.md
authorDecebal Suiu <decebal.suiu@gmail.com>
Wed, 20 Feb 2013 09:35:54 +0000 (11:35 +0200)
committerDecebal Suiu <decebal.suiu@gmail.com>
Wed, 20 Feb 2013 09:35:54 +0000 (11:35 +0200)
README.md

index 64525691b4976b6534d4ae10eb81fd501bc0d4ad..81d9fcc2e64c281f507d9f7b6be72dc40e2359b7 100644 (file)
--- a/README.md
+++ b/README.md
@@ -89,14 +89,6 @@ In this case the `classes/META-INF/MANIFEST.MF` file looks like:
 In above manifest I described a plugin with id `welcome-plugin`, with class `ro.fortsoft.pf4j.demo.welcome.WelcomePlugin`, with version `0.0.1` and with dependencies 
 to plugins `x, y, z`.
 
-Also you can use any PluginDescriptorFinder (for example **PropertiesPluginDescriptorFinder**) in DefaultPluginManager (using setPluginDescriptorFinder() method).
-
-    plugin.class=ro.fortsoft.pf4j.demo.welcome.WelcomePlugin
-    plugin.dependencies=x, y, z
-    plugin.id=welcome-plugin
-    plugin.provider=Decebal Suiu
-    plugin.version=0.0.1
-
 You can define an extension point in your application using **ExtensionPoint** interface marker.
 
     public interface Greeting extends ExtensionPoint {
@@ -139,6 +131,23 @@ The output is:
     >>> Welcome
     >>> Hello
 
+You can inject your custom component (for example PluginDescriptorFinder, ExtensionFinder) in DefaultPluginManager just override createXXX methods (factory method pattern).
+
+Example:
+
+    protected PluginDescriptorFinder createPluginDescriptorFinder() {
+        return new PropertiesPluginDescriptorFinder();
+    }
+    
+and in plugin respository you must have a plugin.properties file with the below content:
+
+    plugin.class=ro.fortsoft.pf4j.demo.welcome.WelcomePlugin
+    plugin.dependencies=x, y, z
+    plugin.id=welcome-plugin
+    plugin.provider=Decebal Suiu
+    plugin.version=0.0.1
+    
+
 For more information please see the demo sources.
 
 Demo