View Javadoc

1   package com.atlassian.plugin.osgi.container;
2   
3   import java.util.List;
4   import java.util.Map;
5   
6   /**
7    * Contains configuration for the package scanning algorithm that scans your classpath to determine which packages
8    * and versions to export to OSGi.  Jar and package includes/excludes, and packages for the package version map can
9    * either be simple names or wildcard patterns, where the "*" character will match any character.
10   *
11   * <p>
12   * Includes and excludes are matched so that only includes are, well, included, but if you need to filter a few out
13   * of that set, the exclude patterns will be removed.
14   */
15  public interface PackageScannerConfiguration
16  {
17      /**
18       * @return The jar patterns to include
19       */
20      List<String> getJarIncludes();
21  
22      /**
23       * @return The jar patterns to exclude
24       */
25      List<String> getJarExcludes();
26  
27      /**
28       * @return The package patterns to include
29       */
30      List<String> getPackageIncludes();
31  
32      /**
33       * @return The package patterns to exclude
34       */
35      List<String> getPackageExcludes();
36  
37      /**
38       * @return A map of package patterns and their versions
39       */
40      Map<String,String> getPackageVersions();
41  }