1 package com.atlassian.plugin.osgi;
2
3 import java.io.InputStream;
4 import java.net.URL;
5
6 import org.dom4j.DocumentHelper;
7 import org.dom4j.Element;
8
9 import com.atlassian.plugin.impl.AbstractPlugin;
10 import com.atlassian.plugin.web.DefaultWebInterfaceManager;
11 import com.atlassian.plugin.web.descriptors.DefaultWebItemModuleDescriptor;
12
13 public class DummyWebItemModuleDescriptor extends DefaultWebItemModuleDescriptor
14 {
15 private final String key;
16
17 public DummyWebItemModuleDescriptor()
18 {
19 super(new DefaultWebInterfaceManager());
20 final Element e = DocumentHelper.createElement("somecrap");
21 e.addAttribute("key", "foo");
22 init(new MockPlugin(this.getClass().getName()), e);
23 this.key = "somekey";
24 }
25
26 @Override
27 public String getCompleteKey()
28 {
29 return "test.plugin:somekey";
30 }
31
32 @Override
33 public String getPluginKey()
34 {
35 return "test.plugin";
36 }
37
38 @Override
39 public String getKey()
40 {
41 return key;
42 }
43
44 private class MockPlugin extends AbstractPlugin
45 {
46 MockPlugin(final String key)
47 {
48 setKey(key);
49 setName(key);
50 }
51
52 public boolean isUninstallable()
53 {
54 return false;
55 }
56
57 public boolean isDeleteable()
58 {
59 return false;
60 }
61
62 public boolean isDynamicallyLoaded()
63 {
64 return false;
65 }
66
67 public <T> Class<T> loadClass(final String clazz, final Class<?> callingClass) throws ClassNotFoundException
68 {
69 return null;
70 }
71
72 public ClassLoader getClassLoader()
73 {
74 return this.getClass().getClassLoader();
75 }
76
77 public URL getResource(final String path)
78 {
79 return null;
80 }
81
82 public InputStream getResourceAsStream(final String name)
83 {
84 return null;
85 }
86 }
87 }