package org.beesden.utils; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.jsp.tagext.TagSupport; import org.apache.log4j.Logger; public class Utils extends TagSupport { protected static Logger logger = Logger.getLogger("controller"); private static final long serialVersionUID = 2672133118924069568L; public static String cleanUrl(String s) { s = s.toLowerCase().replaceAll("%20", " ").replaceAll("[-_ ]", "-").replaceAll("&(amp;)?", "&"); return s; } public static String cleanUrlQuery(String s) { s = "REPLACE(name,' ','-') = '" + cleanUrl(s).replaceAll("&", "&") + "'"; return s; } public static Map<String, String> getUrl(HttpServletRequest request) { Map<String, String> pageMap = new HashMap<String, String>(); String query = request.getQueryString(); if (query != null) { query = request.getRequestURL() + "?" + query; } else { query = request.getRequestURL().toString(); } pageMap.put("par", query); String ref = request.getHeader("referer"); if (ref == null) { ref = request.getContextPath(); } pageMap.put("ref", ref); pageMap.put("uri", request.getRequestURI()); return pageMap; } public static Date isDate(String date, String pattern) { Date d = new Date(); try { d = new SimpleDateFormat(pattern).parse(date); logger.debug(d + " is valid date"); } catch (ParseException nfe) { return null; } return d; } public static boolean isNumeric(String str) { try { Integer d = Integer.parseInt(str); logger.debug(d + " is numeric"); } catch (NumberFormatException nfe) { return false; } return true; } public static String replaceAll(String string, String pattern, String replacement) { return string.replaceAll(pattern, replacement); } }