View Javadoc

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