Package org.springframework.core.env
Class EnumerablePropertySource<T>
java.lang.Object
org.springframework.core.env.PropertySource<T>
org.springframework.core.env.EnumerablePropertySource<T>
- Type Parameters:
 T- the source type
- Direct Known Subclasses:
 CommandLinePropertySource,CompositePropertySource,MapPropertySource,ServletConfigPropertySource,ServletContextPropertySource
A 
PropertySource implementation capable of interrogating its
 underlying source object to enumerate all possible property name/value
 pairs. Exposes the getPropertyNames() method to allow callers
 to introspect available properties without having to access the underlying
 source object. This also facilitates a more efficient implementation of
 containsProperty(String), in that it can call getPropertyNames()
 and iterate through the returned array rather than attempting a call to
 PropertySource.getProperty(String) which may be more expensive. Implementations may
 consider caching the result of getPropertyNames() to fully exploit this
 performance opportunity.
 Most framework-provided PropertySource implementations are enumerable;
 a counter-example would be JndiPropertySource where, due to the
 nature of JNDI it is not possible to determine all possible property names at
 any given time; rather it is only possible to try to access a property
 (via PropertySource.getProperty(String)) in order to evaluate whether it is present
 or not.
- Since:
 - 3.1
 - Author:
 - Chris Beams, Juergen Hoeller
 
- 
Nested Class Summary
Nested classes/interfaces inherited from class org.springframework.core.env.PropertySource
PropertySource.StubPropertySource - 
Field Summary
Fields inherited from class org.springframework.core.env.PropertySource
logger, name, source - 
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedCreate a newEnumerablePropertySourcewith the given name and with a newObjectinstance as the underlying source.EnumerablePropertySource(String name, T source) Create a newEnumerablePropertySourcewith the given name and source object. - 
Method Summary
Modifier and TypeMethodDescriptionbooleancontainsProperty(String name) Return whether thisPropertySourcecontains a property with the given name.abstract String[]Return the names of all properties contained by the source object (nevernull).Methods inherited from class org.springframework.core.env.PropertySource
equals, getName, getProperty, getSource, hashCode, named, toString 
- 
Constructor Details
- 
EnumerablePropertySource
Create a newEnumerablePropertySourcewith the given name and source object.- Parameters:
 name- the associated namesource- the source object
 - 
EnumerablePropertySource
Create a newEnumerablePropertySourcewith the given name and with a newObjectinstance as the underlying source.- Parameters:
 name- the associated name
 
 - 
 - 
Method Details
- 
containsProperty
Return whether thisPropertySourcecontains a property with the given name.This implementation checks for the presence of the given name within the
getPropertyNames()array.- Overrides:
 containsPropertyin classPropertySource<T>- Parameters:
 name- the name of the property to find
 - 
getPropertyNames
Return the names of all properties contained by the source object (nevernull). 
 -