web/lib/Zend/Service/ShortUrl/MetamarkNet.php
changeset 807 877f952ae2bd
parent 207 621fa6caec0c
child 1230 68c69c656a2c
equal deleted inserted replaced
805:5e7a0fedabdf 807:877f952ae2bd
    12  * obtain it through the world-wide-web, please send an email
    12  * obtain it through the world-wide-web, please send an email
    13  * to license@zend.com so we can send you a copy immediately.
    13  * to license@zend.com so we can send you a copy immediately.
    14  *
    14  *
    15  * @category   Zend
    15  * @category   Zend
    16  * @package    Zend_Service_ShortUrl
    16  * @package    Zend_Service_ShortUrl
    17  * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
    17  * @copyright  Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
    18  * @license    http://framework.zend.com/license/new-bsd     New BSD License
    18  * @license    http://framework.zend.com/license/new-bsd     New BSD License
    19  * @version    $Id: $
    19  * @version    $Id: $
    20  */
    20  */
    21 
    21 
    22 /**
    22 /**
    27 /**
    27 /**
    28  * Metamark.net API implementation
    28  * Metamark.net API implementation
    29  *
    29  *
    30  * @category   Zend
    30  * @category   Zend
    31  * @package    Zend_Service_ShortUrl
    31  * @package    Zend_Service_ShortUrl
    32  * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
    32  * @copyright  Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
    33  * @license    http://framework.zend.com/license/new-bsd     New BSD License
    33  * @license    http://framework.zend.com/license/new-bsd     New BSD License
    34  */
    34  */
    35 class Zend_Service_ShortUrl_MetamarkNet extends Zend_Service_ShortUrl_AbstractShortener
    35 class Zend_Service_ShortUrl_MetamarkNet extends Zend_Service_ShortUrl_AbstractShortener
    36 {
    36 {
    37     /**
    37     /**
    38      * Base URI of the service
    38      * Base URI of the service
    39      *
    39      *
    40      * @var string
    40      * @var string
    41      */
    41      */
    42     protected $_baseUri = 'http://xrl.us/';
    42     protected $_baseUri = 'http://xrl.us/';
    43     
    43 
    44     protected $_apiUri = 'http://metamark.net/api/rest/simple';
    44     protected $_apiUri = 'http://metamark.net/api/rest/simple';
    45     
    45 
    46     /**
    46     /**
    47      * This function shortens long url
    47      * This function shortens long url
    48      *
    48      *
    49      * @param string $url URL to Shorten
    49      * @param string $url URL to Shorten
    50      * @throws Zend_Service_ShortUrl_Exception When URL is not valid
    50      * @throws Zend_Service_ShortUrl_Exception When URL is not valid
    51      * @return string New URL
    51      * @return string New URL
    52      */
    52      */
    53     public function shorten($url)
    53     public function shorten($url)
    54     {
    54     {
    55         $this->_validateUri($url);
    55         $this->_validateUri($url);
    56         
    56 
    57         $this->getHttpClient()->setUri($this->_apiUri);
    57         $this->getHttpClient()->setUri($this->_apiUri);
    58         $this->getHttpClient()->setParameterGet('long_url', $url);
    58         $this->getHttpClient()->setParameterGet('long_url', $url);
    59         
    59 
    60         $response = $this->getHttpClient()->request();
    60         $response = $this->getHttpClient()->request();
    61         
    61 
    62         return $response->getBody();
    62         return $response->getBody();
    63     }
    63     }
    64 
    64 
    65    /**
    65    /**
    66      * Reveals target for short URL
    66      * Reveals target for short URL
    72     public function unshorten($shortenedUrl)
    72     public function unshorten($shortenedUrl)
    73     {
    73     {
    74         $this->_validateUri($shortenedUrl);
    74         $this->_validateUri($shortenedUrl);
    75 
    75 
    76         $this->_verifyBaseUri($shortenedUrl);
    76         $this->_verifyBaseUri($shortenedUrl);
    77         
    77 
    78         $this->getHttpClient()->setUri($this->_apiUri);
    78         $this->getHttpClient()->setUri($this->_apiUri);
    79         $this->getHttpClient()->setParameterGet('short_url', $shortenedUrl);
    79         $this->getHttpClient()->setParameterGet('short_url', $shortenedUrl);
    80         
    80 
    81         $response = $this->getHttpClient()->request();
    81         $response = $this->getHttpClient()->request();
    82         
    82 
    83         return $response->getBody();
    83         return $response->getBody();
    84     }
    84     }
    85 }
    85 }