View Javadoc
1   package org.kuali.common.util.spring.env;
2   
3   import java.util.Properties;
4   
5   import org.kuali.common.util.PropertyUtils;
6   import org.kuali.common.util.property.ImmutableProperties;
7   import org.springframework.core.env.AbstractEnvironment;
8   import org.springframework.core.env.PropertiesPropertySource;
9   
10  public final class PropertiesEnvironment extends AbstractEnvironment {
11  
12  	private static final String NAME = "properties";
13  
14  	/**
15  	 * Default environment that uses system properties / environment variables (prefixed with <code>env</code>)
16  	 */
17  	public PropertiesEnvironment() {
18  		this(PropertyUtils.getGlobalProperties());
19  	}
20  
21  	/**
22  	 * Create an environment based on <code>properties</code>
23  	 */
24  	public PropertiesEnvironment(Properties properties) {
25  		this(NAME, properties);
26  	}
27  
28  	public PropertiesEnvironment(String name, Properties properties) {
29  		this.properties = ImmutableProperties.copyOf(properties);
30  		super.getPropertySources().addLast(new PropertiesPropertySource(name, properties));
31  	}
32  
33  	private final Properties properties;
34  
35  	public Properties getProperties() {
36  		return properties;
37  	}
38  
39  }