1 package net.sf.openrocket.plugin.framework;
5 import net.xeoh.plugins.base.Plugin;
8 * A discovery service that returns plugins of a specified type with
11 * @author Sampo Niskanen <sampo.niskanen@iki.fi>
13 public interface Service extends Plugin {
16 * Return the plugins that match the provided type and are applicable
17 * for the arguments. The arguments depend on the class type.
19 * This method may return different plugins for different arguments.
20 * For example, if the arguments contain the OpenRocketDocument, the
21 * service may return only plugins applicable for the specified document.
23 * @param type the plugin interface type
24 * @param args arguments for the interface.
25 * @return the plugin instances applicable.
27 public <E> List<E> getPlugins(Class<E> type, Object... args);