Вход Регистрация
Файл: aweber/aweber_api/exceptions.php
Строк: 154
<?php

class AWeberException extends Exception { }

/**
 * Thrown when the API returns an error. (HTTP status >= 400)
 *
 *
 * @uses AWeberException
 * @package
 * @version $id$
 */
class AWeberAPIException extends AWeberException {

    public 
$type;
    public 
$status;
    public 
$message;
    public 
$documentation_url;
    public 
$url;

    public function 
__construct($error$url) {
        
// record specific details of the API exception for processing
        
$this->url $url;
        
$this->type $error['type'];
        
$this->status array_key_exists('status'$error) ? $error['status'] : '';
        
$this->message $error['message'];
        
$this->documentation_url $error['documentation_url'];

        
parent::__construct($this->message);
    }
}

/**
 * Thrown when attempting to use a resource that is not implemented.
 *
 * @uses AWeberException
 * @package 
 * @version $id$
 */
class AWeberResourceNotImplemented extends AWeberException {

    public function 
__construct($object$value) {
        
$this->object $object;
        
$this->value $value;
        
parent::__construct("Resource "{$value}" is not implemented on this resource.");
    }
}

/**
 * AWeberMethodNotImplemented
 *
 * Thrown when attempting to call a method that is not implemented for a resource
 * / collection.  Differs from standard method not defined errors, as this will
 * be thrown when the method is infact implemented on the base class, but the
 * current resource type does not provide access to that method (ie calling
 * getByMessageNumber on a web_forms collection).
 *
 * @uses AWeberException
 * @package 
 * @version $id$
 */
class AWeberMethodNotImplemented extends AWeberException {

    public function 
__construct($object) {
        
$this->object $object;
        
parent::__construct("This method is not implemented by the current resource.");

    }
}

/**
 * AWeberOAuthException
 *
 * OAuth exception, as generated by an API JSON error response
 * @uses AWeberException
 * @package 
 * @version $id$
 */
class AWeberOAuthException extends AWeberException {

    public function 
__construct($type$message) {
        
$this->type $type;
        
$this->message $message;
        
parent::__construct("{$type}{$message}");
    }
}

/**
 * AWeberOAuthDataMissing
 *
 * Used when a specific piece or pieces of data was not found in the 
 * response. This differs from the exception that might be thrown as
 * an AWeberOAuthException when parameters are not provided because
 * it is not the servers' expectations that were not met, but rather
 * the expecations of the client were not met by the server.
 *
 * @uses AWeberException
 * @package 
 * @version $id$
 */
class AWeberOAuthDataMissing extends AWeberException {

    public function 
__construct($missing) {
        if (!
is_array($missing)) $missing = array($missing); 
        
$this->missing $missing;
        
$required join(', '$this->missing);
        
parent::__construct("OAuthDataMissing: Response was expected to contain: {$required}");

    }
}

/**
 * AWeberResponseError
 *
 * This is raised when the server returns a non-JSON response. This
 * should only occur when there is a server or some type of connectivity
 * issue.
 *
 * @uses AWeberException
 * @package 
 * @version $id$
 */
class AWeberResponseError extends AWeberException {

    public function 
__construct($uri) {
        
$this->uri $uri;
        
parent::__construct("Request for {$uri} did not respond properly.");
    }

}
Онлайн: 0
Реклама