Spring Framework

org.springframework.test.context
Class MergedContextConfiguration

java.lang.Object
  extended by org.springframework.test.context.MergedContextConfiguration
All Implemented Interfaces:
java.io.Serializable

public class MergedContextConfiguration
extends java.lang.Object
implements java.io.Serializable

MergedContextConfiguration encapsulates the merged context configuration declared on a test class and all of its superclasses via @ContextConfiguration and @ActiveProfiles.

Merged resource locations, annotated classes, and active profiles represent all declared values in the test class hierarchy taking into consideration the semantics of the inheritLocations and inheritProfiles flags in @ContextConfiguration and @ActiveProfiles, respectively.

A SmartContextLoader uses MergedContextConfiguration to load an ApplicationContext.

MergedContextConfiguration is also used by the TestContext as the context cache key for caching an ApplicationContext that was loaded using properties of this MergedContextConfiguration.

Since:
3.1
Author:
Sam Brannen
See Also:
ContextConfiguration, ActiveProfiles, ContextConfigurationAttributes, SmartContextLoader.loadContext(MergedContextConfiguration), Serialized Form

Constructor Summary
MergedContextConfiguration(java.lang.Class<?> testClass, java.lang.String[] locations, java.lang.Class<?>[] classes, java.lang.String[] activeProfiles, ContextLoader contextLoader)
          Create a new MergedContextConfiguration instance for the supplied test class, resource locations, annotated classes, active profiles, and ContextLoader.
 
Method Summary
 boolean equals(java.lang.Object obj)
          Determine if the supplied object is equal to this MergedContextConfiguration instance by comparing both object's locations, annotated classes, active profiles, and the fully qualified names of their ContextLoaders.
 java.lang.String[] getActiveProfiles()
          Get the merged active bean definition profiles for the test class.
 java.lang.Class<?>[] getClasses()
          Get the merged annotated classes for the test class.
 ContextLoader getContextLoader()
          Get the resolved ContextLoader for the test class.
 java.lang.String[] getLocations()
          Get the merged resource locations for the test class.
 java.lang.Class<?> getTestClass()
          Get the test class associated with this MergedContextConfiguration.
 int hashCode()
          Generate a unique hash code for all properties of this MergedContextConfiguration excluding the test class.
 java.lang.String toString()
          Provide a String representation of the test class, locations, annotated classes, active profiles, and the name of the ContextLoader.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

MergedContextConfiguration

public MergedContextConfiguration(java.lang.Class<?> testClass,
                                  java.lang.String[] locations,
                                  java.lang.Class<?>[] classes,
                                  java.lang.String[] activeProfiles,
                                  ContextLoader contextLoader)
Create a new MergedContextConfiguration instance for the supplied test class, resource locations, annotated classes, active profiles, and ContextLoader.

If a null value is supplied for locations, classes, or activeProfiles an empty array will be stored instead. Furthermore, active profiles will be sorted, and duplicate profiles will be removed.

Parameters:
testClass - the test class for which the configuration was merged
locations - the merged resource locations
classes - the merged annotated classes
activeProfiles - the merged active bean definition profiles
contextLoader - the resolved ContextLoader
Method Detail

getTestClass

public java.lang.Class<?> getTestClass()
Get the test class associated with this MergedContextConfiguration.


getLocations

public java.lang.String[] getLocations()
Get the merged resource locations for the test class.


getClasses

public java.lang.Class<?>[] getClasses()
Get the merged annotated classes for the test class.


getActiveProfiles

public java.lang.String[] getActiveProfiles()
Get the merged active bean definition profiles for the test class.


getContextLoader

public ContextLoader getContextLoader()
Get the resolved ContextLoader for the test class.


hashCode

public int hashCode()
Generate a unique hash code for all properties of this MergedContextConfiguration excluding the test class.

Overrides:
hashCode in class java.lang.Object

equals

public boolean equals(java.lang.Object obj)
Determine if the supplied object is equal to this MergedContextConfiguration instance by comparing both object's locations, annotated classes, active profiles, and the fully qualified names of their ContextLoaders.

Overrides:
equals in class java.lang.Object

toString

public java.lang.String toString()
Provide a String representation of the test class, locations, annotated classes, active profiles, and the name of the ContextLoader.

Overrides:
toString in class java.lang.Object

Spring Framework