Browse Source

Use logger instead of System.out.println for demo

tags/release-3.8.0
Decebal Suiu 1 year ago
parent
commit
aa07dfd91e

+ 35
- 27
demo/app/src/main/java/org/pf4j/demo/Boot.java View File

@@ -22,6 +22,8 @@ import org.pf4j.ExtensionFinder;
import org.pf4j.PluginManager;
import org.pf4j.PluginWrapper;
import org.pf4j.demo.api.Greeting;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.util.List;
import java.util.Set;
@@ -33,21 +35,14 @@ import java.util.Set;
*/
public class Boot {

private static final Logger log = LoggerFactory.getLogger(Boot.class);

public static void main(String[] args) {
// print logo
printLogo();

// create the plugin manager
final PluginManager pluginManager = new DefaultPluginManager() {

protected ExtensionFinder createExtensionFinder() {
DefaultExtensionFinder extensionFinder = (DefaultExtensionFinder) super.createExtensionFinder();
extensionFinder.addServiceProviderExtensionFinder(); // to activate "HowdyGreeting" extension

return extensionFinder;
}

};
PluginManager pluginManager = createPluginManager();

// load the plugins
pluginManager.loadPlugins();
@@ -60,59 +55,59 @@ public class Boot {

// retrieves the extensions for Greeting extension point
List<Greeting> greetings = pluginManager.getExtensions(Greeting.class);
System.out.println(String.format("Found %d extensions for extension point '%s'", greetings.size(), Greeting.class.getName()));
log.info("Found {} extensions for extension point '{}'", greetings.size(), Greeting.class.getName());
for (Greeting greeting : greetings) {
System.out.println(">>> " + greeting.getGreeting());
log.info(">>> {}", greeting.getGreeting());
}

// print extensions from classpath (non plugin)
System.out.println("Extensions added by classpath:");
log.info("Extensions added by classpath:");
Set<String> extensionClassNames = pluginManager.getExtensionClassNames(null);
for (String extension : extensionClassNames) {
System.out.println(" " + extension);
log.info(" {}", extension);
}

System.out.println("Extension classes by classpath:");
log.info("Extension classes by classpath:");
List<Class<? extends Greeting>> greetingsClasses = pluginManager.getExtensionClasses(Greeting.class);
for (Class<? extends Greeting> greeting : greetingsClasses) {
System.out.println(" Class: " + greeting.getCanonicalName());
log.info(" Class: {}", greeting.getCanonicalName());
}

// print extensions ids for each started plugin
List<PluginWrapper> startedPlugins = pluginManager.getStartedPlugins();
for (PluginWrapper plugin : startedPlugins) {
String pluginId = plugin.getDescriptor().getPluginId();
System.out.println(String.format("Extensions added by plugin '%s':", pluginId));
log.info("Extensions added by plugin '{}}':", pluginId);
extensionClassNames = pluginManager.getExtensionClassNames(pluginId);
for (String extension : extensionClassNames) {
System.out.println(" " + extension);
log.info(" {}", extension);
}
}

// print the extensions instances for Greeting extension point for each started plugin
for (PluginWrapper plugin : startedPlugins) {
String pluginId = plugin.getDescriptor().getPluginId();
System.out.println(String.format("Extensions instances added by plugin '%s' for extension point '%s':", pluginId, Greeting.class.getName()));
log.info("Extensions instances added by plugin '{}' for extension point '{}':", pluginId, Greeting.class.getName());
List<Greeting> extensions = pluginManager.getExtensions(Greeting.class, pluginId);
for (Object extension : extensions) {
System.out.println(" " + extension);
log.info(" {}", extension);
}
}

// print extensions instances from classpath (non plugin)
System.out.println("Extensions instances added by classpath:");
log.info("Extensions instances added by classpath:");
List extensions = pluginManager.getExtensions((String) null);
for (Object extension : extensions) {
System.out.println(" " + extension);
log.info(" {}", extension);
}

// print extensions instances for each started plugin
for (PluginWrapper plugin : startedPlugins) {
String pluginId = plugin.getDescriptor().getPluginId();
System.out.println(String.format("Extensions instances added by plugin '%s':", pluginId));
log.info("Extensions instances added by plugin '{}':", pluginId);
extensions = pluginManager.getExtensions(pluginId);
for (Object extension : extensions) {
System.out.println(" " + extension);
log.info(" {}", extension);
}
}

@@ -131,9 +126,22 @@ public class Boot {
}

private static void printLogo() {
System.out.println(StringUtils.repeat("#", 40));
System.out.println(StringUtils.center("PF4J-DEMO", 40));
System.out.println(StringUtils.repeat("#", 40));
log.info(StringUtils.repeat("#", 40));
log.info(StringUtils.center("PF4J-DEMO", 40));
log.info(StringUtils.repeat("#", 40));
}

private static PluginManager createPluginManager() {
return new DefaultPluginManager() {

protected ExtensionFinder createExtensionFinder() {
DefaultExtensionFinder extensionFinder = (DefaultExtensionFinder) super.createExtensionFinder();
extensionFinder.addServiceProviderExtensionFinder(); // to activate "HowdyGreeting" extension

return extensionFinder;
}

};
}

}

+ 3
- 3
demo/plugins/plugin1/src/main/java/org/pf4j/demo/welcome/WelcomePlugin.java View File

@@ -34,16 +34,16 @@ public class WelcomePlugin extends Plugin {

@Override
public void start() {
System.out.println("WelcomePlugin.start()");
log.info("WelcomePlugin.start()");
// for testing the development mode
if (RuntimeMode.DEVELOPMENT.equals(wrapper.getRuntimeMode())) {
System.out.println(StringUtils.upperCase("WelcomePlugin"));
log.info(StringUtils.upperCase("WelcomePlugin"));
}
}

@Override
public void stop() {
System.out.println("WelcomePlugin.stop()");
log.info("WelcomePlugin.stop()");
}

@Extension

+ 2
- 2
demo/plugins/plugin2/src/main/java/org/pf4j/demo/hello/HelloPlugin.java View File

@@ -33,12 +33,12 @@ public class HelloPlugin extends Plugin {

@Override
public void start() {
System.out.println("HelloPlugin.start()");
log.info("HelloPlugin.start()");
}

@Override
public void stop() {
System.out.println("HelloPlugin.stop()");
log.info("HelloPlugin.stop()");
}

@Extension(ordinal=1)

Loading…
Cancel
Save