SuiteCRM-Core/Api/V8/Param/Options/BaseOption.php
Dillon-Brown 8e4cc94994 Squashed 'public/legacy/' content from commit 817a12dc0
git-subtree-dir: public/legacy
git-subtree-split: 817a12dc0c30c189f56d5cb1f7dc37a9631bdbe3
2021-03-31 15:37:32 +01:00

47 lines
1 KiB
PHP

<?php
namespace Api\V8\Param\Options;
use Api\V8\BeanDecorator\BeanManager;
use Api\V8\Factory\ValidatorFactory;
use Symfony\Component\OptionsResolver\OptionsResolver;
abstract class BaseOption
{
/**
* @var ValidatorFactory
*/
protected $validatorFactory;
/**
* @var BeanManager
*/
protected $beanManager;
/**
* @param ValidatorFactory $validatorFactory
* @param BeanManager $beanManager
*/
public function __construct(ValidatorFactory $validatorFactory, BeanManager $beanManager)
{
$this->validatorFactory = $validatorFactory;
$this->beanManager = $beanManager;
}
/**
* @param OptionsResolver $resolver
*
* @return void
*/
abstract public function add(OptionsResolver $resolver);
/**
* @param string $class
* @see https://github.com/rappasoft/laravel-helpers#class_basename
*
* @return string
*/
protected function getOptionName($class)
{
return lcfirst(basename(str_replace('\\', '/', $class)));
}
}