View Javadoc
1   package com.atlassian.plugin.impl;
2   
3   import com.atlassian.plugin.PluginArtifact;
4   import com.atlassian.plugin.util.ClassLoaderUtils;
5   
6   import java.io.InputStream;
7   import java.net.URL;
8   
9   /**
10   * A dynamic XML plugin that consists of the Atlassian plugin descriptor
11   *
12   * @since 2.1.0
13   */
14  public class XmlDynamicPlugin extends AbstractPlugin {
15      public XmlDynamicPlugin(PluginArtifact pluginArtifact) {
16          super(pluginArtifact);
17      }
18  
19      public boolean isUninstallable() {
20          return true;
21      }
22  
23      public boolean isDeleteable() {
24          return true;
25      }
26  
27      public boolean isDynamicallyLoaded() {
28          return true;
29      }
30  
31      public void close() {
32      }
33  
34      public <M> Class<M> loadClass(final String clazz, final Class<?> callingClass) throws ClassNotFoundException {
35          return ClassLoaderUtils.loadClass(clazz, callingClass);
36      }
37  
38      public ClassLoader getClassLoader() {
39          return getClass().getClassLoader();
40      }
41  
42      public URL getResource(final String name) {
43          return ClassLoaderUtils.getResource(name, getClass());
44      }
45  
46      public InputStream getResourceAsStream(final String name) {
47          return ClassLoaderUtils.getResourceAsStream(name, getClass());
48      }
49  }