View Javadoc

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