All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.github.antelopeframework.util.RuntimePropertiesUtil Maven / Gradle / Ivy

The newest version!
package com.github.antelopeframework.util;
//package cn.antelope.framework.util;
//
//import java.util.ArrayList;
//import java.util.Collection;
//import java.util.Enumeration;
//import java.util.Properties;
//
//import org.apache.commons.lang3.StringUtils;
//
///**
// * Utility methods for loading configuration parameters.
// * 
// * @author Francois-Xavier Bonnet
// * @author Nicolas Richeton
// * 
// */
//public class RuntimePropertiesUtil {
//
//	private RuntimePropertiesUtil() { }
//
//	public static RuntimeProperties subProperties(Properties properties, String prefix, String delimiter) {
//		if (properties == null || StringUtils.isBlank(prefix)) {
//			return null;
//		}
//		
//		if (StringUtils.isBlank(delimiter)) {
//			delimiter = ".";
//		}
//		
//		String _prefix = prefix + delimiter;
//		
//		Enumeration names = (Enumeration) properties.propertyNames();
//		Properties _properties = new Properties();
//        while(names.hasMoreElements()){
//            String propName = names.nextElement();
//
//            if(propName.startsWith(_prefix)){
//                String key = propName.substring(_prefix.length());
//                String propValue = properties.getProperty(propName);
//                if (StringUtils.isBlank(propValue)) {
//                	continue;
//                }
//                
//                _properties.put(key, propValue);
//            }
//        }
//        
//        return new RuntimeProperties(_properties);
//	}
//	
//	
//	/**
//	 * Retrieves a property containing a comma separated list of values, trim
//	 * them and return them as a Collection of String.
//	 * 
//	 * @param properties
//	 * @param propertyName
//	 * @param defaultValue
//	 * @return the values
//	 */
//	public static Collection getCollection(RuntimeProperties properties, String propertyName, Collection defaultValue) {
//		Collection result = defaultValue;
//		String propertyValue = properties.getProperty(propertyName);
//		if (propertyValue != null) {
//			result = toCollection(propertyValue);
//			if (result.contains("*") && result.size() > 1) {
//				throw new IllegalArgumentException(propertyName + " must be a comma-separated list or *");
//			}
//		}
//		
//		return result;
//	}
//
//	/**
//	 * Return the provided comma-separated String as a collection. Order is
//	 * maintained.
//	 * 
//	 * @param list
//	 * @return Ordered collection
//	 */
//	static Collection toCollection(String list) {
//		Collection result = new ArrayList();
//		if (list != null) {
//			String[] values = list.split(",");
//			for (String value : values) {
//				String trimmed = value.trim();
//				if (!trimmed.isEmpty()) {
//					result.add(trimmed);
//				}
//			}
//		}
//		
//		return result;
//	}
//}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy