public boolean isAccessKeySafe(final String accessKey) { final UserAgentUtil.UserAgent userAgent = getUserAgent(); if (userAgent != null) { if (userAgent.getBrowser().getBrowserFamily() == UserAgentUtil.BrowserFamily.MSIE) { if (MSIE_RESERVED_KEYS.contains(accessKey)) { return false; } } } return true; }
public static boolean isIe456Or7(String userAgent) { if (StringUtils.isBlank(userAgent)) { return false; } UserAgentUtil userAgentUtil = new UserAgentUtilImpl(); final UserAgentUtil.UserAgent userAgentInfo = userAgentUtil.getUserAgentInfo(userAgent); final UserAgentUtil.Browser browser = userAgentInfo.getBrowser(); return browser.getBrowserFamily() == MSIE && browser.getBrowserMajorVersion().compareTo(MSIE8) < 0; }
switch (browser.getBrowserFamily()) if (operatingSystem.getOperatingSystemFamily() == WINDOWS || operatingSystem.getOperatingSystemFamily() == LINUX) if (browser.getBrowserMajorVersion().compareTo(FIREFOX2) < 0)
return new Browser(BrowserFamily.UKNOWN, BrowserMajorVersion.UNKNOWN, "0"); if ((pos = userAgent.indexOf(majorVersion.getUserAgentString())) > -1) return new Browser(browserFamily, majorVersion, majorVersion.getMinorVersionPrefix() + getVersionNumber(userAgent, pos + majorVersion.getVersionPos())); lastAlmostMatching = new Browser(browserFamily, BrowserMajorVersion.UNKNOWN, browserFamily.getUserAgentString() + getVersionNumber(userAgent, pos + browserFamily.getUserAgentString().length())); return lastAlmostMatching != null ? lastAlmostMatching : new Browser(BrowserFamily.UKNOWN, BrowserMajorVersion.UNKNOWN, "0");
final UserAgentUtil.BrowserFamily browserFamily = userBrowser.getBrowserFamily(); final UserAgentUtil.BrowserFamily browserToTest = UserAgentUtil.BrowserFamily.valueOf(browser.toUpperCase(Locale.ENGLISH)); final UserAgentUtil.BrowserMajorVersion userVersion = userBrowser.getBrowserMajorVersion(); if (version != -1)
/** * Returns TRUE if the browser requires a Filter style opacity statement for PNGs * * <ul> * <li> IE 5 upwards on Windows</li> * </ul> * * @param userAgent the user agent header from the request * @return true if the browser is IE 5+ on Windows */ public static boolean isFilterBasedPngOpacity(String userAgent) { if (StringUtils.isBlank(userAgent)) { return false; } UserAgentUtil userAgentUtil = new UserAgentUtilImpl(); final UserAgentUtil.UserAgent userAgentInfo = userAgentUtil.getUserAgentInfo(userAgent); return userAgentInfo.getOperatingSystem().getOperatingSystemFamily() == WINDOWS && (userAgentInfo.getBrowser().getBrowserFamily() == MSIE || userAgentInfo.getBrowser().getBrowserFamily() == IE); } }
@Override public boolean equals(Object o) { if (this == o) { return true; } if (o == null || getClass() != o.getClass()) { return false; } UserAgent userAgent = (UserAgent) o; if (!browser.equals(userAgent.browser)) { return false; } if (!operatingSystem.equals(userAgent.operatingSystem)) { return false; } return true; }
private boolean isCurrentRequestIE() { final HttpServletRequest httpRequest = ExecutingHttpRequest.get(); if (httpRequest == null) { return false; } final String userAgent = httpRequest.getHeader(USER_AGENT); final UserAgentUtil userAgentUtil = new UserAgentUtilImpl(); final UserAgentUtil.UserAgent userAgentInfo = userAgentUtil.getUserAgentInfo(userAgent); // force batching if we are on IE, disable otherwise return userAgentInfo.getBrowser().getBrowserFamily().equals(UserAgentUtil.BrowserFamily.MSIE) || userAgentInfo.getBrowser().getBrowserFamily().equals(UserAgentUtil.BrowserFamily.IE); } }
public UnsupportedBrowserManager(ApplicationProperties properties) { this.properties = properties; unsupportedBrowsers = MapBuilder.newBuilder( new UserAgentUtil.Browser(UserAgentUtil.BrowserFamily.FIREFOX, UserAgentUtil.BrowserMajorVersion.FIREFOX36, "*"), "browser.ff36.nosupport", new UserAgentUtil.Browser(UserAgentUtil.BrowserFamily.MSIE, UserAgentUtil.BrowserMajorVersion.MSIE6, "MSIE6.0"), "browser.ie6.nosupport", new UserAgentUtil.Browser(UserAgentUtil.BrowserFamily.MSIE, UserAgentUtil.BrowserMajorVersion.MSIE7, "MSIE7.0"), "browser.ie7.nosupport", new UserAgentUtil.Browser(UserAgentUtil.BrowserFamily.MSIE, UserAgentUtil.BrowserMajorVersion.MSIE8, "MSIE8.0"), "browser.ie8.nosupport" ).toMap(); }
@Override public int hashCode() { int result = browser.hashCode(); result = 31 * result + operatingSystem.hashCode(); return result; } }
private UserAgentUtil.Browser ignoreMinorVersion(UserAgentUtil.Browser browser) { return new UserAgentUtil.Browser(browser.getBrowserFamily(), browser.getBrowserMajorVersion(), "*"); } }