package gr.uoa.di.web.utils;

import java.util.Map;

import org.apache.log4j.Logger;

public class ParameterReader {
	
	public static Logger logger = Logger.getLogger(ParameterReader.class); 

	public static String readParameter(Map<String, Object> parameters, 
			String parameterName) {
		String[] sizeParams = (String[]) parameters.get(parameterName);

		return (sizeParams != null && sizeParams.length > 0) ? sizeParams[sizeParams.length-1] : "";
	}
	
	public static String readParameter(Map<String, Object> parameters, 
			String parameterName, String defaultValue, boolean readLast) {
		String[] sizeParams = (String[]) parameters.get(parameterName);
		
		if (readLast) 
			return (sizeParams != null && sizeParams.length > 0) ? sizeParams[sizeParams.length-1] : defaultValue;
			
		return (sizeParams != null && sizeParams.length > 0) ? sizeParams[0] : defaultValue;
	}

	public static int readParameter(Map<String, Object> parameters, 
			String parameterName, int defaultValue) {
	
		String[] params = (String[]) parameters.get(parameterName);
		try {
			return (params != null && params.length > 0 && !params[params.length-1].equals(""))?Integer.parseInt(params[params.length-1]):defaultValue;
			
		} catch (NumberFormatException nfe) {
			logger.error("Kept page's default value. ", nfe);
			return defaultValue;
		}
	}
}