Module bus.starter

Class ProviderManager

java.lang.Object
org.miaixz.bus.spring.ProviderManager

@Component public class ProviderManager extends Object
Spring策略模式
Since:
Java 17+
Author:
Kimi Liu
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final Map<Class<org.miaixz.bus.core.Provider<?>>,Collection<org.miaixz.bus.core.Provider<?>>>
     
    static org.springframework.context.ConfigurableApplicationContext
    Spring的IOC容器,默认为空
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static <T extends org.miaixz.bus.core.Provider<?>>
    Collection<T>
    all(Class<T> providerClass)
    返回所有的 Provider
    static <T extends org.miaixz.bus.core.Provider<S>, S>
    T
    load(Class<T> providerClass, S support)
    加载 Provider

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • CACHED_PROVIDERS

      public static final Map<Class<org.miaixz.bus.core.Provider<?>>,Collection<org.miaixz.bus.core.Provider<?>>> CACHED_PROVIDERS
    • context

      public static org.springframework.context.ConfigurableApplicationContext context
      Spring的IOC容器,默认为空
  • Constructor Details

    • ProviderManager

      public ProviderManager()
  • Method Details

    • load

      public static <T extends org.miaixz.bus.core.Provider<S>, S> T load(Class<T> providerClass, S support)
      加载 Provider
      Parameters:
      providerClass - 给定的Class
      support - 支持的策略
      Returns:
      最终的支持策略的 Provider
    • all

      public static <T extends org.miaixz.bus.core.Provider<?>> Collection<T> all(Class<T> providerClass)
      返回所有的 Provider
      Parameters:
      providerClass - 给定的Class
      Returns:
      所有的 Provider