117 lines
2.3 KiB
Plaintext
117 lines
2.3 KiB
Plaintext
package com.bonus.sys;
|
|
|
|
import java.util.Collection;
|
|
import java.util.HashMap;
|
|
import java.util.Iterator;
|
|
import java.util.Map;
|
|
import java.util.Set;
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
|
@SuppressWarnings("rawtypes")
|
|
public class PageData extends HashMap implements Map {
|
|
|
|
private static final long serialVersionUID = 1L;
|
|
|
|
private Map map;
|
|
|
|
private HttpServletRequest request;
|
|
|
|
public PageData(HttpServletRequest request){
|
|
this.request = request;
|
|
Map properties = request.getParameterMap();
|
|
Map<String,String> returnMap = new HashMap<String,String>();
|
|
Iterator entries = properties.entrySet().iterator();
|
|
Map.Entry entry;
|
|
String name = "";
|
|
String value = "";
|
|
while (entries.hasNext()) {
|
|
entry = (Map.Entry) entries.next();
|
|
name = (String) entry.getKey();
|
|
Object valueObj = entry.getValue();
|
|
if(null == valueObj){
|
|
value = "";
|
|
}else if(valueObj instanceof String[]){
|
|
String[] values = (String[])valueObj;
|
|
for(int i=0;i<values.length;i++){
|
|
value = values[i] + ",";
|
|
}
|
|
value = value.substring(0, value.length()-1);
|
|
}else{
|
|
value = valueObj.toString();
|
|
}
|
|
returnMap.put(name, value);
|
|
}
|
|
map = returnMap;
|
|
}
|
|
|
|
public PageData() {
|
|
map = new HashMap();
|
|
}
|
|
|
|
@Override
|
|
public Object get(Object key) {
|
|
Object obj = null;
|
|
if(map.get(key) instanceof Object[]) {
|
|
Object[] arr = (Object[])map.get(key);
|
|
obj = request == null ? arr:(request.getParameter((String)key) == null ? arr:arr[0]);
|
|
} else {
|
|
obj = map.get(key);
|
|
}
|
|
return obj;
|
|
}
|
|
|
|
public String getString(Object key) {
|
|
return (String)get(key);
|
|
}
|
|
|
|
@SuppressWarnings("unchecked")
|
|
@Override
|
|
public Object put(Object key, Object value) {
|
|
return map.put(key, value);
|
|
}
|
|
|
|
@Override
|
|
public Object remove(Object key) {
|
|
return map.remove(key);
|
|
}
|
|
|
|
public void clear() {
|
|
map.clear();
|
|
}
|
|
|
|
public boolean containsKey(Object key) {
|
|
return map.containsKey(key);
|
|
}
|
|
|
|
public boolean containsValue(Object value) {
|
|
return map.containsValue(value);
|
|
}
|
|
|
|
public Set entrySet() {
|
|
return map.entrySet();
|
|
}
|
|
|
|
public boolean isEmpty() {
|
|
return map.isEmpty();
|
|
}
|
|
|
|
public Set keySet() {
|
|
return map.keySet();
|
|
}
|
|
|
|
@SuppressWarnings("unchecked")
|
|
public void putAll(Map t) {
|
|
map.putAll(t);
|
|
}
|
|
|
|
public int size() {
|
|
return map.size();
|
|
}
|
|
|
|
public Collection values() {
|
|
return map.values();
|
|
}
|
|
|
|
}
|