View Javadoc

1   package com.atlassian.plugin.osgi.factory;
2   
3   import com.atlassian.plugin.Application;
4   import com.atlassian.plugin.PluginParseException;
5   import com.atlassian.plugin.parsers.DescriptorParser;
6   import com.atlassian.plugin.parsers.DescriptorParserFactory;
7   
8   import org.apache.commons.lang.Validate;
9   
10  import java.io.InputStream;
11  
12  /**
13   * Descriptor parser factory that creates parsers for Osgi plugins.  Must only be used with {@link OsgiPlugin} instances.
14   *
15   * @since 2.1.2
16   */
17  public class OsgiPluginXmlDescriptorParserFactory implements DescriptorParserFactory
18  {
19      /**
20       * Gets an instance that filters the modules "component", "component-import", "module-type", "bean", and "spring"
21       * @param source The descriptor source
22       * @return The parser
23       * @throws PluginParseException
24       */
25      public DescriptorParser getInstance(final InputStream source, final Application... applications) throws PluginParseException
26      {
27          Validate.notNull(source, "The descriptor source must not be null");
28          return new OsgiPluginXmlDescriptorParser(source, applications);
29      }
30  }