View Javadoc

1   package com.atlassian.plugin.predicate;
2   
3   import com.atlassian.plugin.PluginAccessor;
4   import com.atlassian.plugin.Plugin;
5   
6   /**
7    * A {@link PluginPredicate} that matches enabled plugins.
8    */
9   public class EnabledPluginPredicate implements PluginPredicate
10  {
11      private final PluginAccessor pluginAccessor;
12  
13      /**
14       * @throws IllegalArgumentException if PluginAccessor is <code>null</code>
15       */
16      public EnabledPluginPredicate(final PluginAccessor pluginAccessor)
17      {
18          if (pluginAccessor == null)
19          {
20              throw new IllegalArgumentException("PluginAccessor must not be null when constructing an EnabledPluginPredicate!");
21          }
22          this.pluginAccessor = pluginAccessor;
23      }
24  
25      public boolean matches(final Plugin plugin)
26      {
27          return plugin != null && pluginAccessor.isPluginEnabled(plugin.getKey());
28      }
29  }