WURFL_Handlers
[ class tree: WURFL_Handlers ] [ index: WURFL_Handlers ] [ all elements ]

Class: WURFL_Handlers_Handler

Source Location: /Handlers/Handler.php

Class Overview


WURFL_Handlers_Handler is the base class that combines the classification of the user agents and the matching process.


Author(s):

Version:

  • $id$

Copyright:

  • ScientiaMobile, Inc.

Implements interfaces:

Variables

Methods


Child classes:

WURFL_Handlers_AlcatelHandler
AlcatelUserAgentHandler
WURFL_Handlers_AndroidHandler
AndroidUserAgentHandler
WURFL_Handlers_AppleHandler
AppleUserAgentHandler
WURFL_Handlers_BenQHandler
BenQUserAgentHandler
WURFL_Handlers_BlackBerryHandler
BlackBerryUserAgentHandler
WURFL_Handlers_BotCrawlerTranscoderHandler
BotCrawlerTranscoderUserAgentHandler
WURFL_Handlers_CatchAllHandler
CatchAllUserAgentHandler
WURFL_Handlers_ChromeHandler
ChromeUserAgentHandler
WURFL_Handlers_DoCoMoHandler
DoCoMoUserAgentHandler
WURFL_Handlers_FennecOnAndroidHandler
FennecOnAndroidUserAgentHandler
WURFL_Handlers_FirefoxHandler
FirefoxUserAgentHandler
WURFL_Handlers_FirefoxOSHandler
FirefoxOSUserAgentHandler
WURFL_Handlers_GrundigHandler
GrundigUserAgentHandler
WURFL_Handlers_HTCHandler
HTCUserAgentHandler
WURFL_Handlers_HTCMacHandler
HTCMacUserAgentHandler
WURFL_Handlers_JavaMidletHandler
JavaMidletUserAgentHandler
WURFL_Handlers_KDDIHandler
KDDIUserAgentHandler
WURFL_Handlers_KindleHandler
KindleUserAgentHandler
WURFL_Handlers_KonquerorHandler
KonquerorHandler
WURFL_Handlers_KyoceraHandler
KyoceraUserAgentHandler
WURFL_Handlers_LGHandler
LGUserAgentHandler
WURFL_Handlers_LGUPLUSHandler
LGPLUSUserAgentHandler
WURFL_Handlers_MaemoHandler
MaemoUserAgentHandler
WURFL_Handlers_MitsubishiHandler
MitsubishiUserAgentHandler
WURFL_Handlers_MotorolaHandler
MotorolaUserAgentHandler
WURFL_Handlers_MSIEHandler
MSIEAgentHandler
WURFL_Handlers_NecHandler
NecUserAgentHandler
WURFL_Handlers_NetFrontOnAndroidHandler
NetFrontOnAndroidUserAgentHandler
WURFL_Handlers_NintendoHandler
NintendoUserAgentHandler
WURFL_Handlers_NokiaHandler
NokiaUserAgentHandler
WURFL_Handlers_NokiaOviBrowserHandler
NokiaOviBrowserUserAgentHandler
WURFL_Handlers_OperaHandler
OperaHandler
WURFL_Handlers_OperaMiniHandler
OperaHandlder
WURFL_Handlers_OperaMiniOnAndroidHandler
OperaMiniOnAndroidUserAgentHandler
WURFL_Handlers_OperaMobiOrTabletOnAndroidHandler
OperaMobiOrTabletOnAndroidUserAgentHandler
WURFL_Handlers_PanasonicHandler
PanasonicUserAgentHandler
WURFL_Handlers_PantechHandler
PantechUserAgentHandler
WURFL_Handlers_PhilipsHandler
PhilipsUserAgentHandler
WURFL_Handlers_PortalmmmHandler
PortalmmmUserAgentHandler
WURFL_Handlers_QtekHandler
QtekUserAgentHandler
WURFL_Handlers_ReksioHandler
ReksioUserAgentHandler
WURFL_Handlers_SafariHandler
SafariHandler
WURFL_Handlers_SagemHandler
SagemUserAgentHandler
WURFL_Handlers_SamsungHandler
SamsungUserAgentHandler
WURFL_Handlers_SanyoHandler
SanyoUserAgentHandler
WURFL_Handlers_SharpHandler
SharpUserAgentHandler
WURFL_Handlers_SiemensHandler
SiemensUserAgentHandler
WURFL_Handlers_SkyfireHandler
SanyoUserAgentHandler
WURFL_Handlers_SmartTVHandler
SmartTVUserAgentHandler
WURFL_Handlers_SonyEricssonHandler
SonyEricssonUserAgentHandler
WURFL_Handlers_SPVHandler
SPVUserAgentHandler
WURFL_Handlers_ToshibaHandler
ToshibaUserAgentHandler
WURFL_Handlers_Ucweb7OnAndroidHandler
Ucweb7OnAndroidUserAgentHandler
WURFL_Handlers_UcwebU2Handler
UcwebU2UserAgentHandler
WURFL_Handlers_UcwebU3Handler
UcwebU3UserAgentHandler
WURFL_Handlers_VodafoneHandler
VodafoneUserAgentHandler
WURFL_Handlers_WebOSHandler
WebOSUserAgentHandler
WURFL_Handlers_WindowsPhoneDesktopHandler
WindowsPhoneDesktopUserAgentHandler
WURFL_Handlers_WindowsPhoneHandler
WindowsPhoneUserAgentHandler
WURFL_Handlers_WindowsRTHandler
WindowsRTUserAgentHandler
WURFL_Handlers_XboxHandler
XboxUserAgentHandler

Class Details

[line 29]
WURFL_Handlers_Handler is the base class that combines the classification of the user agents and the matching process.



Tags:

version:  $id$
copyright:  ScientiaMobile, Inc.
abstract:  
license:  GNU


[ Top ]


Class Variables

static $constantIDs = array()

[line 69]



Tags:

var:  Array of WURFL IDs that are hard-coded in this matcher
access:  public

Type:   array


[ Top ]

$logger =

[line 60]



Tags:

access:  protected



[ Top ]

$nextHandler =

[line 35]

The next User Agent Handler



Tags:

access:  protected



[ Top ]

$persistenceProvider =

[line 55]



Tags:

access:  protected

Type:   WURFL_Storage_Base


[ Top ]

$prefix =

[line 45]



Tags:

var:  Prefix for this User Agent Handler
access:  protected

Type:   string


[ Top ]

$undetectedDeviceLogger =

[line 64]



Tags:

access:  protected



[ Top ]

$userAgentNormalizer =

[line 40]



Tags:

access:  protected



[ Top ]

$userAgentsWithDeviceID =

[line 50]



Tags:

var:  Array of user agents with device IDs
access:  protected

Type:   array


[ Top ]



Class Methods


constructor __construct [line 75]

WURFL_Handlers_Handler __construct( WURFL_Context $wurflContext, [WURFL_Request_UserAgentNormalizer_Interface $userAgentNormalizer = null])



Tags:

access:  public


Parameters:

WURFL_Context   $wurflContext  
WURFL_Request_UserAgentNormalizer_Interface   $userAgentNormalizer  

[ Top ]

method applyConclusiveMatch [line 301]

string applyConclusiveMatch( string $userAgent)

Attempt to find a conclusive match for the given $userAgent



Tags:

return:  Matching WURFL deviceID
access:  public


Overridden in child classes as:

WURFL_Handlers_AndroidHandler::applyConclusiveMatch()
WURFL_Handlers_AppleHandler::applyConclusiveMatch()
WURFL_Handlers_BlackBerryHandler::applyConclusiveMatch()
WURFL_Handlers_CatchAllHandler::applyConclusiveMatch()
If UA starts with Mozilla, apply LD with tollerance 5.
WURFL_Handlers_ChromeHandler::applyConclusiveMatch()
WURFL_Handlers_DoCoMoHandler::applyConclusiveMatch()
WURFL_Handlers_FennecOnAndroidHandler::applyConclusiveMatch()
WURFL_Handlers_FirefoxHandler::applyConclusiveMatch()
WURFL_Handlers_FirefoxOSHandler::applyConclusiveMatch()
WURFL_Handlers_HTCHandler::applyConclusiveMatch()
WURFL_Handlers_HTCMacHandler::applyConclusiveMatch()
WURFL_Handlers_JavaMidletHandler::applyConclusiveMatch()
WURFL_Handlers_KDDIHandler::applyConclusiveMatch()
WURFL_Handlers_KindleHandler::applyConclusiveMatch()
WURFL_Handlers_LGHandler::applyConclusiveMatch()
WURFL_Handlers_LGUPLUSHandler::applyConclusiveMatch()
WURFL_Handlers_MaemoHandler::applyConclusiveMatch()
WURFL_Handlers_MitsubishiHandler::applyConclusiveMatch()
WURFL_Handlers_MotorolaHandler::applyConclusiveMatch()
WURFL_Handlers_MSIEHandler::applyConclusiveMatch()
WURFL_Handlers_NecHandler::applyConclusiveMatch()
WURFL_Handlers_NetFrontOnAndroidHandler::applyConclusiveMatch()
WURFL_Handlers_NintendoHandler::applyConclusiveMatch()
WURFL_Handlers_NokiaHandler::applyConclusiveMatch()
WURFL_Handlers_NokiaOviBrowserHandler::applyConclusiveMatch()
WURFL_Handlers_OperaHandler::applyConclusiveMatch()
WURFL_Handlers_OperaMiniHandler::applyConclusiveMatch()
WURFL_Handlers_OperaMiniOnAndroidHandler::applyConclusiveMatch()
WURFL_Handlers_OperaMobiOrTabletOnAndroidHandler::applyConclusiveMatch()
WURFL_Handlers_PantechHandler::applyConclusiveMatch()
WURFL_Handlers_PortalmmmHandler::applyConclusiveMatch()
WURFL_Handlers_ReksioHandler::applyConclusiveMatch()
WURFL_Handlers_SafariHandler::applyConclusiveMatch()
WURFL_Handlers_SamsungHandler::applyConclusiveMatch()
WURFL_Handlers_SanyoHandler::applyConclusiveMatch()
WURFL_Handlers_SkyfireHandler::applyConclusiveMatch()
WURFL_Handlers_SmartTVHandler::applyConclusiveMatch()
WURFL_Handlers_SonyEricssonHandler::applyConclusiveMatch()
WURFL_Handlers_SPVHandler::applyConclusiveMatch()
WURFL_Handlers_Ucweb7OnAndroidHandler::applyConclusiveMatch()
WURFL_Handlers_UcwebU2Handler::applyConclusiveMatch()
WURFL_Handlers_UcwebU3Handler::applyConclusiveMatch()
WURFL_Handlers_VodafoneHandler::applyConclusiveMatch()
WURFL_Handlers_WebOSHandler::applyConclusiveMatch()
WURFL_Handlers_WindowsPhoneDesktopHandler::applyConclusiveMatch()
WURFL_Handlers_WindowsPhoneHandler::applyConclusiveMatch()
WURFL_Handlers_WindowsRTHandler::applyConclusiveMatch()
WURFL_Handlers_XboxHandler::applyConclusiveMatch()

Parameters:

string   $userAgent  

[ Top ]

method applyExactMatch [line 289]

void applyExactMatch( $userAgent)



Tags:

access:  public


Overridden in child classes as:

WURFL_Handlers_CatchAllHandler::applyExactMatch()

Parameters:

   $userAgent  

[ Top ]

method applyMatch [line 222]

string applyMatch( WURFL_Request_GenericRequest $request)

Template method to apply matching system to user agent



Tags:

return:  Device ID
access:  public


Parameters:

WURFL_Request_GenericRequest   $request  

[ Top ]

method applyRecoveryCatchAllMatch [line 349]

string applyRecoveryCatchAllMatch( string $userAgent)

Applies Catch-All match



Tags:

return:  WURFL deviceID
access:  public


Parameters:

string   $userAgent  

[ Top ]

method applyRecoveryMatch [line 342]

string applyRecoveryMatch( string $userAgent)

Applies Recovery Match



Tags:

access:  public


Overridden in child classes as:

WURFL_Handlers_AndroidHandler::applyRecoveryMatch()
WURFL_Handlers_AppleHandler::applyRecoveryMatch()
WURFL_Handlers_BlackBerryHandler::applyRecoveryMatch()
WURFL_Handlers_ChromeHandler::applyRecoveryMatch()
WURFL_Handlers_DoCoMoHandler::applyRecoveryMatch()
WURFL_Handlers_FennecOnAndroidHandler::applyRecoveryMatch()
WURFL_Handlers_FirefoxHandler::applyRecoveryMatch()
WURFL_Handlers_FirefoxOSHandler::applyRecoveryMatch()
WURFL_Handlers_HTCHandler::applyRecoveryMatch()
WURFL_Handlers_HTCMacHandler::applyRecoveryMatch()
WURFL_Handlers_KDDIHandler::applyRecoveryMatch()
WURFL_Handlers_KindleHandler::applyRecoveryMatch()
WURFL_Handlers_LGHandler::applyRecoveryMatch()
WURFL_Handlers_LGUPLUSHandler::applyRecoveryMatch()
WURFL_Handlers_MaemoHandler::applyRecoveryMatch()
WURFL_Handlers_MotorolaHandler::applyRecoveryMatch()
WURFL_Handlers_MSIEHandler::applyRecoveryMatch()
WURFL_Handlers_NetFrontOnAndroidHandler::applyRecoveryMatch()
WURFL_Handlers_NintendoHandler::applyRecoveryMatch()
WURFL_Handlers_NokiaHandler::applyRecoveryMatch()
WURFL_Handlers_NokiaOviBrowserHandler::applyRecoveryMatch()
WURFL_Handlers_OperaHandler::applyRecoveryMatch()
WURFL_Handlers_OperaMiniHandler::applyRecoveryMatch()
WURFL_Handlers_OperaMiniOnAndroidHandler::applyRecoveryMatch()
WURFL_Handlers_OperaMobiOrTabletOnAndroidHandler::applyRecoveryMatch()
WURFL_Handlers_SafariHandler::applyRecoveryMatch()
WURFL_Handlers_SamsungHandler::applyRecoveryMatch()
WURFL_Handlers_SkyfireHandler::applyRecoveryMatch()
WURFL_Handlers_SmartTVHandler::applyRecoveryMatch()
WURFL_Handlers_Ucweb7OnAndroidHandler::applyRecoveryMatch()
WURFL_Handlers_UcwebU2Handler::applyRecoveryMatch()
WURFL_Handlers_UcwebU3Handler::applyRecoveryMatch()
WURFL_Handlers_WebOSHandler::applyRecoveryMatch()
WURFL_Handlers_WindowsPhoneDesktopHandler::applyRecoveryMatch()
WURFL_Handlers_WindowsPhoneHandler::applyRecoveryMatch()
WURFL_Handlers_WindowsRTHandler::applyRecoveryMatch()
WURFL_Handlers_XboxHandler::applyRecoveryMatch()

Parameters:

string   $userAgent  

[ Top ]

method canHandle [line 114]

bool canHandle( string $userAgent)

Returns true if this handler can handle the given $userAgent



Tags:

abstract:  


Overridden in child classes as:

WURFL_Handlers_AlcatelHandler::canHandle()
WURFL_Handlers_AndroidHandler::canHandle()
WURFL_Handlers_AppleHandler::canHandle()
WURFL_Handlers_BenQHandler::canHandle()
WURFL_Handlers_BlackBerryHandler::canHandle()
WURFL_Handlers_BotCrawlerTranscoderHandler::canHandle()
WURFL_Handlers_CatchAllHandler::canHandle()
Final Interceptor: Intercept Everything that has not been trapped by a previous handler
WURFL_Handlers_ChromeHandler::canHandle()
WURFL_Handlers_DoCoMoHandler::canHandle()
WURFL_Handlers_FennecOnAndroidHandler::canHandle()
WURFL_Handlers_FirefoxHandler::canHandle()
WURFL_Handlers_FirefoxOSHandler::canHandle()
WURFL_Handlers_GrundigHandler::canHandle()
WURFL_Handlers_HTCHandler::canHandle()
WURFL_Handlers_HTCMacHandler::canHandle()
WURFL_Handlers_JavaMidletHandler::canHandle()
WURFL_Handlers_KDDIHandler::canHandle()
WURFL_Handlers_KindleHandler::canHandle()
WURFL_Handlers_KonquerorHandler::canHandle()
WURFL_Handlers_KyoceraHandler::canHandle()
WURFL_Handlers_LGHandler::canHandle()
WURFL_Handlers_LGUPLUSHandler::canHandle()
WURFL_Handlers_MaemoHandler::canHandle()
WURFL_Handlers_MitsubishiHandler::canHandle()
WURFL_Handlers_MotorolaHandler::canHandle()
WURFL_Handlers_MSIEHandler::canHandle()
WURFL_Handlers_NecHandler::canHandle()
WURFL_Handlers_NetFrontOnAndroidHandler::canHandle()
WURFL_Handlers_NintendoHandler::canHandle()
WURFL_Handlers_NokiaHandler::canHandle()
WURFL_Handlers_NokiaOviBrowserHandler::canHandle()
WURFL_Handlers_OperaHandler::canHandle()
WURFL_Handlers_OperaMiniHandler::canHandle()
WURFL_Handlers_OperaMiniOnAndroidHandler::canHandle()
WURFL_Handlers_OperaMobiOrTabletOnAndroidHandler::canHandle()
WURFL_Handlers_PanasonicHandler::canHandle()
WURFL_Handlers_PantechHandler::canHandle()
WURFL_Handlers_PhilipsHandler::canHandle()
WURFL_Handlers_PortalmmmHandler::canHandle()
WURFL_Handlers_QtekHandler::canHandle()
WURFL_Handlers_ReksioHandler::canHandle()
WURFL_Handlers_SafariHandler::canHandle()
WURFL_Handlers_SagemHandler::canHandle()
WURFL_Handlers_SamsungHandler::canHandle()
WURFL_Handlers_SanyoHandler::canHandle()
WURFL_Handlers_SharpHandler::canHandle()
WURFL_Handlers_SiemensHandler::canHandle()
WURFL_Handlers_SkyfireHandler::canHandle()
WURFL_Handlers_SmartTVHandler::canHandle()
WURFL_Handlers_SonyEricssonHandler::canHandle()
WURFL_Handlers_SPVHandler::canHandle()
WURFL_Handlers_ToshibaHandler::canHandle()
WURFL_Handlers_Ucweb7OnAndroidHandler::canHandle()
WURFL_Handlers_UcwebU2Handler::canHandle()
WURFL_Handlers_UcwebU3Handler::canHandle()
WURFL_Handlers_VodafoneHandler::canHandle()
WURFL_Handlers_WebOSHandler::canHandle()
WURFL_Handlers_WindowsPhoneDesktopHandler::canHandle()
WURFL_Handlers_WindowsPhoneHandler::canHandle()
WURFL_Handlers_WindowsRTHandler::canHandle()
WURFL_Handlers_XboxHandler::canHandle()

Parameters:

string   $userAgent  

[ Top ]

method filter [line 127]

null filter( string $userAgent, string $deviceID)

Classifies the given $userAgent and specified $deviceID



Tags:

access:  public


Overridden in child classes as:

WURFL_Handlers_CatchAllHandler::filter()


Implementation of:
WURFL_Handlers_Filter::filter()
The filter() method is used to classify devices based on patterns in their user agents.

Parameters:

string   $userAgent  
string   $deviceID  

[ Top ]

method getDeviceIDFromLD [line 329]

void getDeviceIDFromLD( $userAgent, [ $tolerance = null])



Tags:

access:  public


Parameters:

   $userAgent  
   $tolerance  

[ Top ]

method getDeviceIDFromRIS [line 321]

void getDeviceIDFromRIS( $userAgent, $tolerance)



Tags:

access:  public


Parameters:

   $userAgent  
   $tolerance  

[ Top ]

method getName [line 99]

string getName( )

Alias for getPrefix()



Tags:

return:  Prefix
see:  WURFL_Handlers_Handler::getPrefix()
access:  public


[ Top ]

method getNiceName [line 378]

void getNiceName( )



Tags:

access:  public


[ Top ]

method getPrefix [line 374]

string getPrefix( )

Returns the prefix for this Handler, like BLACKBERRY_DEVICEIDS for the BlackBerry Handler. The "BLACKBERRY_" portion comes from the individual Handler's $prefix property and "_DEVICEIDS" is added here.



Tags:

access:  public


[ Top ]

method getUserAgentsWithDeviceId [line 185]

array getUserAgentsWithDeviceId( )

Returns a list of User Agents with their Device IDs



Tags:

return:  User agents and device IDs
access:  public


[ Top ]

method isDeviceExist [line 390]

bool isDeviceExist( string $deviceId)

Returns true if given $deviceId exists



Tags:

access:  protected


Parameters:

string   $deviceId  

[ Top ]

method lookForMatchingUserAgent [line 316]

string lookForMatchingUserAgent( string $userAgent)

Find a matching WURFL device from the given $userAgent. Override this method to give an alternative way to do the matching



Tags:

access:  public


Parameters:

string   $userAgent  

[ Top ]

method match [line 203]

string match( WURFL_Request_GenericRequest $request)

Finds the device id for the given request - if it is not found it delegates to the next available handler



Tags:

return:  WURFL Device ID for matching device
access:  public


Parameters:

WURFL_Request_GenericRequest   $request  

[ Top ]

method normalizeUserAgent [line 162]

string normalizeUserAgent( string $userAgent)

Normalizes the given $userAgent using this handler's User Agent Normalizer.

If you need to normalize the user agent you need to override the function in the specific user agent handler.




Tags:

return:  Normalized user agent
see:  WURFL_Handlers_Handler::$userAgentNormalizer, WURFL_Request_UserAgentNormalizer
access:  public


Parameters:

string   $userAgent  

[ Top ]

method persistData [line 173]

void persistData( )

Saves the classified user agents in the persistence provider



Tags:

access:  public


Overridden in child classes as:

WURFL_Handlers_CatchAllHandler::persistData()


Implementation of:
WURFL_Handlers_Filter::persistData()
The persistData() method is resposible to
[ Top ]

method setNextHandler [line 90]

void setNextHandler( WURFL_Handlers_UserAgentHandler $handler)

Sets the next Handler



Tags:

access:  public


Parameters:

WURFL_Handlers_UserAgentHandler   $handler  

[ Top ]

method setupContext [line 103]

void setupContext( WURFL_Context $wurflContext)



Tags:

access:  public


Parameters:

WURFL_Context   $wurflContext  

[ Top ]

method updateUserAgentsWithDeviceIDMap [line 149]

void updateUserAgentsWithDeviceIDMap( string $userAgent, string $deviceID)

Updates the map containing the classified user agents. These are stored in the associative array userAgentsWithDeviceID like user_agent => deviceID.

Before adding the user agent to the map it normalizes by using the normalizeUserAgent function.




Tags:



Parameters:

string   $userAgent  
string   $deviceID  

[ Top ]

method __sleep [line 398]

void __sleep( )



Tags:

access:  public


[ Top ]


Documentation generated on Thu, 03 Oct 2013 19:11:50 +0000 by phpDocumentor 1.4.4