org.apache.turbine.util
Class BrowserDetector

java.lang.Object
  extended byorg.apache.turbine.util.BrowserDetector

public class BrowserDetector
extends java.lang.Object

This class parses the user agent string and sets javasciptOK and cssOK following the rules described below. If you want to check for specific browsers/versions then use this class to parse the user agent string and use the accessor methods in this class. JavaScriptOK means that the browser understands JavaScript on the same level the Navigator 3 does. Specifically, it can use named images. This allows easier rollovers. If a browser doesn't do this (Nav 2 or MSIE 3), then we just assume it can't do any JavaScript. Referencing images by load order is too hard to maintain. CSSOK is kind of sketchy in that Nav 4 and MSIE work differently, but they do seem to have most of the functionality. MSIE 4 for the Mac has buggy CSS support, so we let it do JavaScript, but no CSS. Ported from Leon's PHP code at http://www.working-dogs.com/freetrade by Frank.

Version:
$Id: BrowserDetector.java 534527 2007-05-02 16:10:59Z tv $
Author:
Frank Y. Kim, Leon Atkisnon, Chris Mospaw, Benjamin Elijah Griffin

Field Summary
static java.lang.String MACINTOSH
           
static java.lang.String MOZILLA
           
static java.lang.String MSIE
           
static java.lang.String OPERA
           
static java.lang.String UNIX
           
static java.lang.String WINDOWS
           
 
Constructor Summary
BrowserDetector(RunData data)
          Constructor used to initialize this class.
BrowserDetector(java.lang.String userAgentString)
          Constructor used to initialize this class.
 
Method Summary
 java.lang.String getBrowserName()
          The browser name specified in the user agent string.
 java.lang.String getBrowserPlatform()
          The browser platform specified in the user agent string.
 float getBrowserVersion()
          The browser version specified in the user agent string.
 java.lang.String getUserAgentString()
          The user agent string for this class.
 boolean isCssOK()
          Whether or not CSS works in this browser.
 boolean isFileUploadOK()
          Whether or not file upload works in this browser.
 boolean isJavascriptOK()
          Whether or not Javascript works in this browser.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MSIE

public static final java.lang.String MSIE
See Also:
Constant Field Values

OPERA

public static final java.lang.String OPERA
See Also:
Constant Field Values

MOZILLA

public static final java.lang.String MOZILLA
See Also:
Constant Field Values

WINDOWS

public static final java.lang.String WINDOWS
See Also:
Constant Field Values

UNIX

public static final java.lang.String UNIX
See Also:
Constant Field Values

MACINTOSH

public static final java.lang.String MACINTOSH
See Also:
Constant Field Values
Constructor Detail

BrowserDetector

public BrowserDetector(java.lang.String userAgentString)
Constructor used to initialize this class.

Parameters:
userAgentString - A String with the user agent field.

BrowserDetector

public BrowserDetector(RunData data)
Constructor used to initialize this class.

Parameters:
data - The Turbine RunData object.
Method Detail

isCssOK

public boolean isCssOK()
Whether or not CSS works in this browser.

Returns:
True if CSS works in this browser.

isFileUploadOK

public boolean isFileUploadOK()
Whether or not file upload works in this browser.

Returns:
True if file upload works in this browser.

isJavascriptOK

public boolean isJavascriptOK()
Whether or not Javascript works in this browser.

Returns:
True if Javascript works in this browser.

getBrowserName

public java.lang.String getBrowserName()
The browser name specified in the user agent string.

Returns:
A String with the browser name.

getBrowserPlatform

public java.lang.String getBrowserPlatform()
The browser platform specified in the user agent string.

Returns:
A String with the browser platform.

getBrowserVersion

public float getBrowserVersion()
The browser version specified in the user agent string.

Returns:
A String with the browser version.

getUserAgentString

public java.lang.String getUserAgentString()
The user agent string for this class.

Returns:
A String with the user agent.


Copyright © 2000-2008 Apache Software Foundation. All Rights Reserved.