1 34 package net.myvietnam.mvncore.filter; 35 36 import javax.servlet.http.HttpServletRequest ; 37 38 import net.myvietnam.mvncore.MVNCoreConfig; 39 import net.myvietnam.mvncore.util.StringUtil; 40 import org.apache.commons.logging.Log; 41 import org.apache.commons.logging.LogFactory; 42 43 public final class UserAgentFilter { 44 45 private static Log log = LogFactory.getLog(UserAgentFilter.class); 46 47 private static String [] blockedUserAgent = null; 48 49 private UserAgentFilter() { } 51 52 static { 53 56 blockedUserAgent = StringUtil.getStringArray(MVNCoreConfig.getBlockedUserAgents(), ";"); 57 } 58 59 65 public static boolean filter(HttpServletRequest request) { 66 if (request == null) { 67 throw new NullPointerException ("Cannot accept a null request in UserAgentFilter"); 68 } 69 String checkUserAgent = request.getHeader("User-Agent"); 70 71 if (checkUserAgent == null) return true; 73 74 for (int i = 0; i < blockedUserAgent.length; i++) { 75 String currentBlockedUserAgent = blockedUserAgent[i]; 76 if (checkUserAgent.indexOf(currentBlockedUserAgent) != -1) { 77 return false; 78 } 79 } 80 return true; 81 } 82 } 83 | Popular Tags |