Your IP : 127.0.0.1
<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\Framework\Validator;
/**
* Abstract validator class.
*
* @api
* @since 100.0.2
*/
abstract class AbstractValidator implements \Magento\Framework\Validator\ValidatorInterface
{
/**
* @var \Magento\Framework\Translate\AdapterInterface|null
*/
protected static $_defaultTranslator = null;
/**
* @var \Magento\Framework\Translate\AdapterInterface|null
*/
protected $_translator = null;
/**
* Array of validation failure messages
*
* @var array
*/
protected $_messages = [];
/**
* Set default translator instance
*
* @param \Magento\Framework\Translate\AdapterInterface|null $translator
* @return void
* @api
*/
public static function setDefaultTranslator(\Magento\Framework\Translate\AdapterInterface $translator = null)
{
self::$_defaultTranslator = $translator;
}
/**
* Get default translator
*
* @return \Magento\Framework\Translate\AdapterInterface|null
* @api
*/
public static function getDefaultTranslator()
{
return self::$_defaultTranslator;
}
/**
* Set translator instance
*
* @param \Magento\Framework\Translate\AdapterInterface|null $translator
* @return \Magento\Framework\Validator\AbstractValidator
*/
public function setTranslator($translator = null)
{
$this->_translator = $translator;
return $this;
}
/**
* Get translator
*
* @return \Magento\Framework\Translate\AdapterInterface|null
*/
public function getTranslator()
{
if ($this->_translator === null) {
return self::getDefaultTranslator();
}
return $this->_translator;
}
/**
* Check that translator is set.
*
* @return boolean
*/
public function hasTranslator()
{
return $this->_translator !== null;
}
/**
* Get validation failure messages
*
* @return string[]
* @api
*/
public function getMessages()
{
return $this->_messages;
}
/**
* Whether it has failure messages
*
* @return bool
* @api
*/
public function hasMessages()
{
return !empty($this->_messages);
}
/**
* Clear messages
*
* @return void
*/
protected function _clearMessages()
{
$this->_messages = [];
}
/**
* Add messages
*
* @param array $messages
* @return void
*/
protected function _addMessages(array $messages)
{
$this->_messages = array_merge_recursive($this->_messages, $messages);
}
}