From 54ae704ccd1f5a39dbed50112e1cda9d28decf37 Mon Sep 17 00:00:00 2001 From: mkas Date: Fri, 15 Sep 2017 00:18:29 +0700 Subject: [PATCH] dev --- composer.json | 3 +-- readme.md | 3 --- src/form/AbstractForm.php | 31 ++++++--------------- src/utils/invoker/Invoker.php | 37 -------------------------- src/utils/invoker/InvokerException.php | 9 ------- src/utils/invoker/InvokerInterface.php | 21 --------------- 6 files changed, 9 insertions(+), 95 deletions(-) delete mode 100644 src/utils/invoker/Invoker.php delete mode 100644 src/utils/invoker/InvokerException.php delete mode 100644 src/utils/invoker/InvokerInterface.php diff --git a/composer.json b/composer.json index abe706a..33332c1 100644 --- a/composer.json +++ b/composer.json @@ -1,5 +1,5 @@ { - "name": "web-complete/entity", + "name": "web-complete/core", "description": "WebComplete architecture core for DDD", "license": "MIT", "keywords": ["entity", "service", "resource", "core", "DDD"], @@ -17,7 +17,6 @@ "php": ">=7.0.0", "psr/container": "^1.0", "php-di/php-di": "^5.4", - "php-di/invoker": "*", "doctrine/dbal": "^2.5" }, "require-dev": { diff --git a/readme.md b/readme.md index 91a5c14..1871b80 100644 --- a/readme.md +++ b/readme.md @@ -1,5 +1,2 @@ # WebComplete Core -[![Build Status](https://travis-ci.org/web-complete/core.svg?branch=master)](https://travis-ci.org/web-complete/core) -[![Coverage Status](https://coveralls.io/repos/github/web-complete/core/badge.svg?branch=master)](https://coveralls.io/github/web-complete/core?branch=master) - diff --git a/src/form/AbstractForm.php b/src/form/AbstractForm.php index 9233a6b..3864571 100644 --- a/src/form/AbstractForm.php +++ b/src/form/AbstractForm.php @@ -3,10 +3,6 @@ namespace WebComplete\core\form; -use WebComplete\core\utils\invoker\Invoker; -use WebComplete\core\utils\invoker\InvokerException; -use WebComplete\core\utils\invoker\InvokerInterface; - abstract class AbstractForm { @@ -27,16 +23,11 @@ abstract class AbstractForm */ protected $validatorFactory; - /** - * @var InvokerInterface - */ - protected $invoker; - /** * @return array [[field, validator, params, message], ...] * * validator - is a string equals to method of ValidatorFactory, method of the form or callable. - * Validator will be invoked with named params. + * Validator should be declared as ($value, $params) : bool * * example * ``` @@ -57,7 +48,7 @@ abstract public function rules(); * @return array [[field, filter, params], ...] * * filter - is a string equals to method of FilterFactory, method of the form or callable - * Filter will be invoked with named params. + * Filter should be declared as ($value, $params) : mixed, and return filtered value * * example * ``` @@ -79,19 +70,16 @@ abstract public function filters(); * @param null|array $filters * @param null|object $filterFactory * @param null|object $validatorFactory - * @param null|InvokerInterface $invoker */ public function __construct( $rules = null, $filters = null, $filterFactory = null, - $validatorFactory = null, - InvokerInterface $invoker = null + $validatorFactory = null ) { $this->filterFactory = $filterFactory; $this->validatorFactory = $validatorFactory; - $this->invoker = $invoker ?: new Invoker(); $this->rules = is_array($rules) ? array_merge($this->rules(), $rules) @@ -132,8 +120,7 @@ public function validate() if(isset($definitions[$field])) { foreach ($definitions[$field] as $definition) { $defName = array_shift($definition); - $defParams = array_shift($definition); - $defParams['value'] = $value; + $defParams = array_merge([$value], array_shift($definition)); $defMessage = array_shift($definition) ?: $this->defaultError; if(is_callable($defName)) { @@ -145,7 +132,8 @@ public function validate() else { $callable = [$this, $defName]; } - if(!$this->invoker->call($callable, $defParams)) { + + if(!call_user_func_array($callable, $defParams)) { $this->addError($field, $defMessage); } } @@ -231,8 +219,6 @@ public function resetErrors($field = null) /** * @param array $data * @return array - * - * @throws InvokerException */ protected function filter(array $data) { @@ -242,8 +228,7 @@ protected function filter(array $data) if(isset($definitions[$field])) { foreach ($definitions[$field] as $definition) { $defName = array_shift($definition); - $defParams = array_shift($definition); - $defParams['value'] = $value; + $defParams = array_merge([$value], array_shift($definition)); if(is_callable($defName)) { $callable = $defName; @@ -254,7 +239,7 @@ protected function filter(array $data) else { $callable = [$this, $defName]; } - $data[$field] = $this->invoker->call($callable, $defParams); + $data[$field] = call_user_func_array($callable, $defParams); } } } diff --git a/src/utils/invoker/Invoker.php b/src/utils/invoker/Invoker.php deleted file mode 100644 index 9242779..0000000 --- a/src/utils/invoker/Invoker.php +++ /dev/null @@ -1,37 +0,0 @@ -adapted = new \Invoker\Invoker(); - } - - /** - * Call the given function using the given parameters. - * - * @param callable $callable Function to call. - * @param array $parameters Parameters to use. - * - * @return mixed Result of the function. - * - * @throws InvokerException - */ - public function call($callable, array $parameters = array()) - { - try { - return $this->adapted->call($callable, $parameters); - } - catch (\Exception $e) { - throw new InvokerException($e->getMessage(), $e->getCode()); - } - } - -} \ No newline at end of file diff --git a/src/utils/invoker/InvokerException.php b/src/utils/invoker/InvokerException.php deleted file mode 100644 index c33020a..0000000 --- a/src/utils/invoker/InvokerException.php +++ /dev/null @@ -1,9 +0,0 @@ -