@Component(
name = "xray.provider.config",
configurationPolicy = ConfigurationPolicy.REQUIRE
)
public class XRayProviderConfiguration {
@AttributeDefinition(name = "Enabled", required = false)
boolean enabled() default true;
@AttributeDefinition(name = "Monitored modules", required = false)
String[] monitoredModules() default { "*" };
@AttributeDefinition(name = "Web console context path", required = false)
String webConsoleContextPath() default "/system/console";
}
@Component(
name = "xray.provider.activate",
property = {
WebConsoleConstants.PLUGIN_LABEL + "=XRay",
WebConsoleConstants.PLUGIN_TITLE + "=XRay",
WebConsoleConstants.CONFIG_PRINTER_MODES + "=always"
}
)
public class XRayProviderActivator {
@Activate
void activate(BundleContext context, Map<String, String> configuration) {
XRayProvider.start(context, configuration);
}
@Deactivate
void deactivate(BundleContext context) {
XRayProvider.stop();
}
}