Source for file CallerFactory.php

Documentation is available at CallerFactory.php

  1. <?
  2.  
  3. /** Caller factory.
  4.  *
  5.  * @package    php-lastfm-api
  6.  * @author  Felix Bruns <felixbruns@web.de>
  7.  * @version    1.0
  8.  */
  9. class CallerFactory {
  10.     /** A default {@link Caller} class.
  11.      *
  12.      * @var string 
  13.      * @access    private
  14.      */
  15.     private static $default 'CurlCaller';
  16.  
  17.     /** Get a {@link CurlCaller} instance.
  18.      *
  19.      * @return    CurlCaller    A {@link CurlCaller} instance.
  20.      * @static
  21.      * @access    public
  22.      */
  23.     public static function getCurlCaller(){
  24.         return CurlCaller::getInstance();
  25.     }
  26.  
  27.     /** Get a {@link PeclCaller} instance.
  28.      *
  29.      * @return    PeclCaller    A {@link PeclCaller} instance.
  30.      * @static
  31.      * @access    public
  32.      */
  33.     public static function getPeclCaller(){
  34.         return PeclCaller::getInstance();
  35.     }
  36.  
  37.     /** Get a {@link SocketCaller} instance.
  38.      *
  39.      * @return    SocketCaller    A {@link SocketCaller} instance.
  40.      * @static
  41.      * @access    public
  42.      */
  43.     public static function getSocketCaller(){
  44.         return SocketCaller::getInstance();
  45.     }
  46.  
  47.     /** Get a {@link Caller} instance.
  48.      *
  49.      * @return    Caller    A {@link Caller} instance.
  50.      * @static
  51.      * @access    public
  52.      */
  53.     public static function getDefaultCaller(){
  54.         /* > PHP 5.3.0
  55.         return self::$default::getInstance();
  56.         */
  57.         $function 'get'.self::$default;
  58.  
  59.         return self::$function();
  60.     }
  61.  
  62.     /** Sets the default {@link Caller}.
  63.      *
  64.      * @param    string    $caller    A Caller class name. (Required)
  65.      * @access    public
  66.      */
  67.     public function setDefaultCaller($class){
  68.         if(get_parent_class($class== 'Caller'){
  69.             self::$default $class;
  70.         }
  71.         else{
  72.             throw new Exception("Class '".$class."' does not extend 'Caller'!");
  73.         }
  74.     }
  75. }
  76.  
  77. ?>

Documentation generated on Mon, 22 Dec 2008 16:57:32 +0100 by phpDocumentor 1.4.1