package org.bndtools.api;
/**
* <p>
* The interface of a generic - named - plugin.
* </p>
* <p>
* A named plugin declares its name and whether it's enabled by default. These
* declarations are used in UI elements.
* </p>
* <p>
* Note: only plugins in the bndtools source tree are allowed to declare
* themselves enabled by default.
* </p>
*/
public interface NamedPlugin {
/**
* @return The human-readable name of the plugin, used in UI elements. Must
* be unique.
*/
public String getName();
/**
* @return true when the plugin is enabled by default. Note: only plugins in
* the bndtools source tree are allowed to return true.
*/
public boolean isEnabledByDefault();
/**
* @return true when the plugin is deprecated, which will result in it never
* being enabled by default.
*/
public boolean isDeprecated();
}