Class Configurations

java.lang.Object
org.springframework.boot.context.annotation.Configurations
Direct Known Subclasses:
AutoConfigurations, UserConfigurations

public abstract class Configurations extends Object
A set of @Configuration classes that can be registered in ApplicationContext. Classes can be returned from one or more Configurations instances by using getClasses(Configurations[]). The resulting array follows the ordering rules usually applied by the ApplicationContext and/or custom ImportSelector implementations.

This class is primarily intended for use with tests that need to specify configuration classes but can't use SpringRunner.

Implementations of this class should be annotated with @Order or implement Ordered.

Since:
2.0.0
Author:
Phillip Webb
See Also:
  • Constructor Details

  • Method Details

    • getClasses

      protected final Set<Class<?>> getClasses()
    • merge

      protected Configurations merge(Configurations other)
      Merge configurations from another source of the same type.
      Parameters:
      other - the other Configurations (must be of the same type as this instance)
      Returns:
      a new configurations instance (must be of the same type as this instance)
    • merge

      protected abstract Configurations merge(Set<Class<?>> mergedClasses)
      Merge configurations.
      Parameters:
      mergedClasses - the merged classes
      Returns:
      a new configurations instance (must be of the same type as this instance)
    • getBeanName

      public @Nullable String getBeanName(Class<?> beanClass)
      Return the bean name that should be used for the given configuration class or null to use the default name.
      Parameters:
      beanClass - the bean class
      Returns:
      the bean name
      Since:
      3.4.0
    • getClasses

      public static Class<?>[] getClasses(Configurations... configurations)
      Return the classes from all the specified configurations in the order that they would be registered.
      Parameters:
      configurations - the source configuration
      Returns:
      configuration classes in registration order
    • getClasses

      public static Class<?>[] getClasses(Collection<Configurations> configurations)
      Return the classes from all the specified configurations in the order that they would be registered.
      Parameters:
      configurations - the source configuration
      Returns:
      configuration classes in registration order
    • collate

      public static List<Configurations> collate(Collection<Configurations> configurations)
      Collate the given configuration by sorting and merging them.
      Parameters:
      configurations - the source configuration
      Returns:
      the collated configurations
      Since:
      3.4.0