Basic docs for Client
This commit is contained in:
		
							parent
							
								
									91dbeb9404
								
							
						
					
					
						commit
						8922b3a164
					
				@ -14,15 +14,41 @@ use Guzzle\Common\Exception\RuntimeException;
 | 
			
		||||
use Guzzle\Http\Exception\ClientErrorResponseException;
 | 
			
		||||
use Guzzle\Http\Exception\ServerErrorResponseException;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * This class provides a client API for all the GeoIP Precision web service's
 | 
			
		||||
 * end points. The end points are Country, City, City/ISP/Org, and Omni. Each
 | 
			
		||||
 * end point returns a different set of data about an IP address, with Country
 | 
			
		||||
 * returning the least data and Omni the most.
 | 
			
		||||
 *
 | 
			
		||||
 * Each web service end point is represented by a different model class, and
 | 
			
		||||
 * these model classes in turn contain multiple Record classes. The record
 | 
			
		||||
 * classes have attributes which contain data about the IP address.
 | 
			
		||||
 *
 | 
			
		||||
 * If the web service does not return a particular piece of data for an IP
 | 
			
		||||
 * address, the associated attribute is not populated.
 | 
			
		||||
 *
 | 
			
		||||
 * The web service may not return any information for an entire record, in
 | 
			
		||||
 * which case all of the attributes for that record class will be empty.
 | 
			
		||||
 */
 | 
			
		||||
class Client
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
    private $userId;
 | 
			
		||||
    private $licenseKey;
 | 
			
		||||
    private $languages;
 | 
			
		||||
    private $host;
 | 
			
		||||
    private $guzzleClient;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Constructor.
 | 
			
		||||
     *
 | 
			
		||||
     * @param int    $userId     Your MaxMind user ID
 | 
			
		||||
     * @param string $licenseKey Your MaxMind license key
 | 
			
		||||
     * @param array  $languages  List of language codes to use in name property
 | 
			
		||||
     * from most preferred to least preferred.
 | 
			
		||||
     * @param string $host Optional host parameter
 | 
			
		||||
     * @param object $guzzleClient Optional Guzzle client to use (to facilitate
 | 
			
		||||
     * unit testing).
 | 
			
		||||
     */
 | 
			
		||||
    public function __construct(
 | 
			
		||||
        $userId,
 | 
			
		||||
        $licenseKey,
 | 
			
		||||
@ -38,21 +64,57 @@ class Client
 | 
			
		||||
        $this->guzzleClient = $guzzleClient;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * This method calls the GeoIP2 Precision City endpoint.
 | 
			
		||||
     *
 | 
			
		||||
     * @param string $ipAddress IPv4 or IPv6 address as a string. If no
 | 
			
		||||
     * address is provided, the address that the web service is called
 | 
			
		||||
     * from will be used.
 | 
			
		||||
     *
 | 
			
		||||
     * @return \GeoIP2\Model\City object
 | 
			
		||||
     */
 | 
			
		||||
    public function city($ipAddress = 'me')
 | 
			
		||||
    {
 | 
			
		||||
        return $this->responseFor('city', 'City', $ipAddress);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * This method calls the GeoIP2 Country endpoint.
 | 
			
		||||
     *
 | 
			
		||||
     * @param string $ipAddress IPv4 or IPv6 address as a string. If no
 | 
			
		||||
     * address is provided, the address that the web service is called
 | 
			
		||||
     * from will be used.
 | 
			
		||||
     *
 | 
			
		||||
     * @return \GeoIP2\Model\City object
 | 
			
		||||
     */
 | 
			
		||||
    public function country($ipAddress = 'me')
 | 
			
		||||
    {
 | 
			
		||||
        return $this->responseFor('country', 'Country', $ipAddress);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * This method calls the GeoIP2 Precision City/ISP/Org endpoint.
 | 
			
		||||
     *
 | 
			
		||||
     * @param string $ipAddress IPv4 or IPv6 address as a string. If no
 | 
			
		||||
     * address is provided, the address that the web service is called
 | 
			
		||||
     * from will be used.
 | 
			
		||||
     *
 | 
			
		||||
     * @return \GeoIP2\Model\City object
 | 
			
		||||
     */
 | 
			
		||||
    public function cityIspOrg($ipAddress = 'me')
 | 
			
		||||
    {
 | 
			
		||||
        return $this->responseFor('city_isp_org', 'CityIspOrg', $ipAddress);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * This method calls the GeoIP2 Precision Omni endpoint.
 | 
			
		||||
     *
 | 
			
		||||
     * @param string $ipAddress IPv4 or IPv6 address as a string. If no
 | 
			
		||||
     * address is provided, the address that the web service is called
 | 
			
		||||
     * from will be used.
 | 
			
		||||
     *
 | 
			
		||||
     * @return \GeoIP2\Model\City object
 | 
			
		||||
     */
 | 
			
		||||
    public function omni($ipAddress = 'me')
 | 
			
		||||
    {
 | 
			
		||||
        return $this->responseFor('omni', 'Omni', $ipAddress);
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user