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 java.io.InputStream;
9   import java.util.Set;
10  
11  import static com.google.common.base.Preconditions.checkNotNull;
12  
13  /**
14   * Descriptor parser factory that creates parsers for Osgi plugins.  Must only be used with {@link OsgiPlugin} instances.
15   *
16   * @since 2.1.2
17   */
18  public class OsgiPluginXmlDescriptorParserFactory implements DescriptorParserFactory
19  {
20      /**
21       * Gets an instance that filters the modules "component", "component-import", "module-type", "bean", and "spring"
22       * @param source The descriptor source
23       * @return The parser
24       * @throws PluginParseException
25       */
26      public DescriptorParser getInstance(final InputStream source, final Set<Application> applications) throws PluginParseException
27      {
28          return new OsgiPluginXmlDescriptorParser(checkNotNull(source, "The descriptor source must not be null"), applications);
29      }
30  }