Current File : /home/pacjaorg/public_html/kmm/libraries/src/Object/LegacyErrorHandlingTrait.php |
<?php
/**
* Joomla! Content Management System
*
* @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org>
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
namespace Joomla\CMS\Object;
// phpcs:disable PSR1.Files.SideEffects
\defined('JPATH_PLATFORM') or die;
// phpcs:enable PSR1.Files.SideEffects
/**
* Trait which contains the legacy methods that formerly were inherited from \Joomla\CMS\Object\CMSObject to set and
* get errors in a class.
*
* @since 4.3.0
*
* @deprecated 4.3 will be removed in 6.0
* Will be removed without replacement
* Throw an Exception instead of setError
*/
trait LegacyErrorHandlingTrait
{
/**
* An array of error messages or Exception objects.
*
* @var array
* @since 1.7.0
* @deprecated 3.1.4 JError has been deprecated
*/
// phpcs:disable PSR2.Classes.PropertyDeclaration
protected $_errors = [];
// phpcs:enable PSR2.Classes.PropertyDeclaration
/**
* Get the most recent error message.
*
* @param integer $i Option error index.
* @param boolean $toString Indicates if Exception objects should return their error message.
*
* @return string Error message
*
* @since 1.7.0
*
* @deprecated 3.1.4 will be removed in 6.0
* Will be removed without replacement
* Catch thrown Exceptions instead of getError
*/
public function getError($i = null, $toString = true)
{
// Find the error
if ($i === null) {
// Default, return the last message
$error = end($this->_errors);
} elseif (!\array_key_exists($i, $this->_errors)) {
// If $i has been specified but does not exist, return false
return false;
} else {
$error = $this->_errors[$i];
}
// Check if only the string is requested
if ($error instanceof \Exception && $toString) {
return $error->getMessage();
}
return $error;
}
/**
* Return all errors, if any.
*
* @return array Array of error messages.
*
* @since 1.7.0
*
* @deprecated 3.1.4 will be removed in 6.0
* Will be removed without replacement
* Catch thrown Exceptions instead of getErrors
*/
public function getErrors()
{
return $this->_errors;
}
/**
* Add an error message.
*
* @param string $error Error message.
*
* @return void
*
* @since 1.7.0
*
* @deprecated 3.1.4 will be removed in 6.0
* Will be removed without replacement
* Throw an Exception instead of using setError
*/
public function setError($error)
{
$this->_errors[] = $error;
}
}