1   package com.atlassian.plugin.osgi.factory.transform;
2   
3   import com.atlassian.plugin.osgi.hostcomponents.HostComponentRegistration;
4   
5   import java.util.Dictionary;
6   import java.util.Hashtable;
7   
8   public class StubHostComponentRegistration implements HostComponentRegistration
9   {
10      private String[] mainInterfaces;
11      private Dictionary<String,String> properties;
12      private Class[] mainInterfaceClasses;
13      private Object instance;
14  
15      public StubHostComponentRegistration(Class... ifs)
16      {
17          this(null, ifs);
18      }
19  
20      public StubHostComponentRegistration(String name, Class... ifs)
21      {
22          this(name, null, ifs);
23      }
24      public StubHostComponentRegistration(String name, Object value, Class... ifs)
25      {
26          this.mainInterfaceClasses = ifs;
27          mainInterfaces = new String[ifs.length];
28          for (int x=0; x<ifs.length; x++)
29              mainInterfaces[x] = ifs[x].getName();
30          this.properties = new Hashtable<String,String>();
31          if (name != null)
32              properties.put("bean-name", name);
33          instance = value;
34      }
35  
36      public StubHostComponentRegistration(String[] ifs, Dictionary<String,String> props)
37      {
38          mainInterfaces = ifs;
39          this.properties = props;
40      }
41  
42      public Object getInstance()
43      {
44          return instance;
45      }
46  
47      public Class[] getMainInterfaceClasses()
48      {
49          return mainInterfaceClasses;
50      }
51  
52      public Dictionary<String, String> getProperties()
53      {
54          return properties;
55      }
56  
57      public String[] getMainInterfaces()
58      {
59          return mainInterfaces;
60      }
61  }