1 package com.atlassian.plugin.osgi.factory;
2
3 import com.atlassian.plugin.ModuleDescriptor;
4 import com.atlassian.plugin.ModuleDescriptorFactory;
5 import com.atlassian.plugin.PluginParseException;
6 import com.atlassian.plugin.descriptors.UnrecognisedModuleDescriptor;
7 import org.apache.log4j.Logger;
8
9
10
11
12
13
14
15 class UnrecognisedModuleDescriptorFallbackFactory implements ModuleDescriptorFactory
16 {
17 private static final Logger log = Logger.getLogger(UnrecognisedModuleDescriptorFallbackFactory.class);
18 public static final String DESCRIPTOR_TEXT = "Support for this module is not currently installed.";
19
20 public ModuleDescriptor getModuleDescriptor(String type) throws PluginParseException, IllegalAccessException, InstantiationException, ClassNotFoundException
21 {
22 log.info("Unknown module descriptor of type "+type+" registered as a deferred descriptor.");
23 UnrecognisedModuleDescriptor descriptor = new UnrecognisedModuleDescriptor();
24 descriptor.setErrorText(DESCRIPTOR_TEXT);
25 return descriptor;
26 }
27
28 public boolean hasModuleDescriptor(String type)
29 {
30 return true;
31 }
32
33 public Class<? extends ModuleDescriptor> getModuleDescriptorClass(String type)
34 {
35 return UnrecognisedModuleDescriptor.class;
36 }
37 }