Search in sources :

Example 1 with SupportedOptions

use of javax.annotation.processing.SupportedOptions in project squidb by yahoo.

the class PluginEnvironment method addPlugin.

/**
     * Add a {@link Plugin} class to the list of known plugins
     *
     * @param plugin the plugin class
     * @param priority the priority to give the plugin
     */
private void addPlugin(Class<? extends Plugin> plugin, PluginPriority priority) {
    switch(priority) {
        case LOW:
            lowPriorityPlugins.add(plugin);
            break;
        case HIGH:
            highPriorityPlugins.add(plugin);
            break;
        case NORMAL:
        default:
            normalPriorityPlugins.add(plugin);
            break;
    }
    SupportedOptions supportedOptionsAnnotation = plugin.getAnnotation(SupportedOptions.class);
    if (supportedOptionsAnnotation != null) {
        String[] options = supportedOptionsAnnotation.value();
        Collections.addAll(pluginSupportedOptions, options);
    }
}
Also used : SupportedOptions(javax.annotation.processing.SupportedOptions)

Aggregations

SupportedOptions (javax.annotation.processing.SupportedOptions)1