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.slf4j.Logger;
8 import org.slf4j.LoggerFactory;
9
10
11
12
13
14
15
16
17
18 class UnrecognisedModuleDescriptorFallbackFactory implements ModuleDescriptorFactory {
19 private static final Logger log = LoggerFactory.getLogger(UnrecognisedModuleDescriptorFallbackFactory.class);
20 public static final String DESCRIPTOR_TEXT = "Support for this module is not currently installed.";
21
22 public UnrecognisedModuleDescriptor getModuleDescriptor(final String type) throws PluginParseException {
23 log.info("Unknown module descriptor of type " + type + " registered as an unrecognised descriptor.");
24 final UnrecognisedModuleDescriptor descriptor = new UnrecognisedModuleDescriptor();
25 descriptor.setErrorText(DESCRIPTOR_TEXT);
26 return descriptor;
27 }
28
29 public boolean hasModuleDescriptor(final String type) {
30 return true;
31 }
32
33 public Class<? extends ModuleDescriptor<?>> getModuleDescriptorClass(final String type) {
34 return UnrecognisedModuleDescriptor.class;
35 }
36 }