Package com.iizix.selector
Class DeviceMatch
- java.lang.Object
- com.iizix.selector.DeviceMatch
public class DeviceMatch extends java.lang.Object
Matches devices for Selectors.- Author:
- Christopher Mindus
Constructor Summary
Constructors Constructor Description DeviceMatch()
Method Summary
All Methods Static Methods Concrete Methods Deprecated Methods Modifier and Type Method Description static boolean
exists(java.lang.String match)
Checks if the match string exists.static java.lang.String
getDescription(java.lang.String match)
Gets the device description for a string.static io.github.mngsk.devicedetector.Detection
getDeviceDetectionFromUserAgent(EnvProps env)
Gets the cached device detection instance based on the parsed user agent.static java.lang.String
getDeviceDetectionOperatingSystemFromUserAgent(EnvProps env)
Gets the Operating System from the cached device detection instance based on the parsed user agent.static java.util.Map<java.lang.String,java.lang.String>
getMap()
Gets the map of devices that can match with this class.static ua_parser.Client
getParsedUserAgent(EnvProps env)
Gets the parsed user agent instance.static java.lang.String
getSelectorMatch(java.lang.String userAgent)
Generate output for a User Agent with every possible selector match.static java.lang.String
getUserAgent(EnvProps env)
Gets client "User Agent" string.static boolean
isAndroid(EnvProps env)
Check for Android device (phone or tablet).static boolean
isBlackberry(EnvProps env)
Check for Blackberry device.static boolean
isDesktop(EnvProps env)
Deprecated.Use the method{@link #getDeviceDetectionFromUserAgent(EnvProps)}.isDesktop()
instead.static boolean
isiOS(EnvProps env)
Check for iOS device (iPhone or iPad).static boolean
isMac(EnvProps env)
Check for Mac OS device.static boolean
isWinPhone(EnvProps env)
Check for Windows Phone.static boolean
match(EnvProps envProps, java.lang.String match)
Matches a device.
Method Detail
match
public static boolean match(EnvProps envProps, java.lang.String match)
Matches a device.- Parameters:
envProps
- The Client environment properties.match
- The match string.- Returns:
- true for match, false otherwise.
getDescription
public static java.lang.String getDescription(java.lang.String match)
Gets the device description for a string. This method is typically used in the Designer.- Parameters:
match
- The match string.- Returns:
- The description of the device matching, null for none.
exists
public static boolean exists(java.lang.String match)
Checks if the match string exists.- Parameters:
match
- The match string.- Returns:
- true if it exists, false otherwise.
getMap
public static java.util.Map<java.lang.String,java.lang.String> getMap()
Gets the map of devices that can match with this class.- Returns:
- An unmodifiable map with the string match as keys and descriptions as values.
getUserAgent
public static java.lang.String getUserAgent(EnvProps env) throws java.lang.Exception
Gets client "User Agent" string.- Parameters:
env
- The environment for a client.- Returns:
- The user agent string.
- Throws:
java.lang.Exception
- An exception due to failure in performing the test, with a message why it failed.
getParsedUserAgent
public static ua_parser.Client getParsedUserAgent(EnvProps env) throws java.lang.Exception
Gets the parsed user agent instance.- Parameters:
env
- The environment for a client.- Returns:
- The parsed user agent for the client, a cached value (i.e. parsed once only).
- Throws:
java.lang.Exception
- An exception due to failure in performing the test, with a message why it failed.
getDeviceDetectionFromUserAgent
public static io.github.mngsk.devicedetector.Detection getDeviceDetectionFromUserAgent(EnvProps env) throws java.lang.Exception
Gets the cached device detection instance based on the parsed user agent.- Parameters:
env
- The environment for a client.- Returns:
- The cached device detection instance based on the parsed user agent (i.e. parsed once only).
- Throws:
java.lang.Exception
- An exception due to failure in performing the test, with a message why it failed.
getDeviceDetectionOperatingSystemFromUserAgent
public static java.lang.String getDeviceDetectionOperatingSystemFromUserAgent(EnvProps env) throws java.lang.Exception
Gets the Operating System from the cached device detection instance based on the parsed user agent.- Parameters:
env
- The environment for a client.- Returns:
- The OS.
- Throws:
java.lang.Exception
- An exception due to failure in performing the test, with a message why it failed.
isiOS
public static boolean isiOS(EnvProps env) throws java.lang.Exception
Check for iOS device (iPhone or iPad).- Parameters:
env
- Environment properties- Returns:
- true if the environment properties indicate a iOS device
- Throws:
java.lang.Exception
- An exception due to failure in performing the test, with a message why it failed.
isAndroid
public static boolean isAndroid(EnvProps env) throws java.lang.Exception
Check for Android device (phone or tablet).- Parameters:
env
- Environment properties.- Returns:
- true if the environment properties indicate a Android device.
- Throws:
java.lang.Exception
- An exception due to failure in performing the test, with a message why it failed.
isWinPhone
public static boolean isWinPhone(EnvProps env) throws java.lang.Exception
Check for Windows Phone.- Parameters:
env
- Environment properties.- Returns:
- true if the environment properties indicate a Windows Phone.
- Throws:
java.lang.Exception
- An exception due to failure in performing the test, with a message why it failed.
isBlackberry
public static boolean isBlackberry(EnvProps env) throws java.lang.Exception
Check for Blackberry device.- Parameters:
env
- Environment properties.- Returns:
- true if the environment properties indicate a Blackberry device.
- Throws:
java.lang.Exception
- An exception due to failure in performing the test, with a message why it failed.
isMac
public static boolean isMac(EnvProps env) throws java.lang.Exception
Check for Mac OS device.- Parameters:
env
- Environment properties.- Returns:
- true if the environment properties indicate a Mac device.
- Throws:
java.lang.Exception
- An exception due to failure in performing the test, with a message why it failed.
isDesktop
@Deprecated public static boolean isDesktop(EnvProps env) throws java.lang.Exception
Deprecated.Use the method{@link #getDeviceDetectionFromUserAgent(EnvProps)}.isDesktop()
instead.Check for desktop device.This method returns the value from
{@link #getDeviceDetectionFromUserAgent(EnvProps)}.isDesktop()
.- Parameters:
env
- Environment properties- Returns:
- true if the environment properties indicate a desktop device
- Throws:
java.lang.Exception
- An exception due to failure in performing the test, with a message why it failed.
getSelectorMatch
public static java.lang.String getSelectorMatch(java.lang.String userAgent)
Generate output for a User Agent with every possible selector match. OS and device information is also appended. New lines separate entries.- Parameters:
userAgent
- The user agent string.- Returns:
- The formatted string.