37 lines
1.5 KiB
PHP
37 lines
1.5 KiB
PHP
<?php
|
|
/**
|
|
* @file classes/doi/exceptions/DoiException.php
|
|
*
|
|
* Copyright (c) 2014-2022 Simon Fraser University
|
|
* Copyright (c) 2000-2022 John Willinsky
|
|
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
|
|
*
|
|
* @class DoiException
|
|
*
|
|
* @brief Exception for failure to perform any action on a DOI
|
|
*/
|
|
|
|
namespace PKP\doi\exceptions;
|
|
|
|
class DoiException extends \Exception
|
|
{
|
|
public const PUBLICATION_MISSING_ISSUE = 'doi.submission.issueMissing.publication';
|
|
public const REPRESENTATION_MISSING_ISSUE = 'doi.submission.issueMissing.representation';
|
|
public const INCORRECT_SUBMISSION_CONTEXT = 'doi.submission.incorrectContext';
|
|
public const INCORRECT_ISSUE_CONTEXT = 'doi.issue.incorrectContext';
|
|
public const INCORRECT_STALE_STATUS = 'doi.incorrectStaleStatus';
|
|
public const SUBMISSION_NOT_PUBLISHED = 'doi.submission.notPublished';
|
|
public const ISSUE_NOT_PUBLISHED = 'doi.issue.notPublished';
|
|
|
|
/**
|
|
* @param string $errorKey Locale key for message to send in exception
|
|
* @param string|null $itemTitle Top-level object title (submission or issue)
|
|
* @param string|null $pubObjectTitle Publication object title (publication, galley, chapter, etc.)
|
|
*/
|
|
public function __construct(string $errorKey, ?string $itemTitle = null, ?string $pubObjectTitle = null)
|
|
{
|
|
$errorMessage = __($errorKey, ['itemTitle' => $itemTitle, 'pubObjectTitle' => $pubObjectTitle]);
|
|
parent::__construct($errorMessage);
|
|
}
|
|
}
|