org.zodiac.plugin.extension.ExtensionNonWebFactory Maven / Gradle / Ivy
package org.zodiac.plugin.extension;
import org.springframework.context.ApplicationContext;
import org.springframework.web.reactive.result.method.RequestMappingInfo;
import java.util.List;
import java.util.Map;
/**
* 静态的扩展工厂。
*/
public class ExtensionNonWebFactory extends AbstractExtensionFactory {
private ExtensionNonWebFactory() {}
@Override
@SuppressWarnings("rawtypes")
public List getPluginControllerProcessorExtend(ApplicationContext mainApplicationContext) {
throw new UnsupportedOperationException();
}
public static void addExtension(PluginExtension pluginExtension) {
getInstance().addPluginExtension(pluginExtension);
}
/**
* 得到PluginControllerProcessorExtend的实现
*
* @param mainApplicationContext
* 主程序的 ApplicationContext
* @return PluginWebMvcControllerProcessorExtend 的实现对象集合
*/
@SuppressWarnings("rawtypes")
public static List
pluginControllerProcessorExtendList(ApplicationContext mainApplicationContext) {
return getInstance().getPluginControllerProcessorExtend(mainApplicationContext);
}
static Map pluginExtensionMap() {
return getInstance().getPluginExtensions();
}
public static ExtensionNonWebFactory getInstance() {
return ExtensionNonWebFactoryHolder.INSTANCE;
}
private static class ExtensionNonWebFactoryHolder {
private static ExtensionNonWebFactory INSTANCE = new ExtensionNonWebFactory();
}
}