* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License * @link https://vufind.org/wiki/indexing:oai-pmh Wiki */ namespace VuFindHarvest\Exception; use Throwable; /** * OAI-PMH exception class * * @category VuFind * @package Harvest_Tools * @author Demian Katz * @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License * @link https://vufind.org/wiki/indexing:oai-pmh Wiki */ class OaiException extends \RuntimeException { /** * Error code * * @var string */ protected $oaiCode; /** * Error message * * @var string */ protected $oaiMessage; /** * Constructor * * @param string $oaiCode OAI-PMH error code * @param string $oaiMessage OAI-PMH error message * @param int $code Error code * @param ?Throwable $previous Previous exception */ public function __construct( string $oaiCode, string $oaiMessage, int $code = 0, ?Throwable $previous = null ) { $this->oaiCode = $oaiCode; $this->oaiMessage = $oaiMessage; $message = "OAI-PMH error -- code: $oaiCode, value: $oaiMessage"; parent::__construct($message, $code, $previous); } /** * Get OAI-PMH error code * * @return string */ public function getOaiCode(): string { return $this->oaiCode; } /** * Get OAI-PMH error message * * @return string */ public function getOaiMessage(): string { return $this->oaiMessage; } }