All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.zodiac.plugin.extension.ExtensionNonWebFactory Maven / Gradle / Ivy

There is a newer version: 1.6.8
Show newest version
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();
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy