factory = $factory ?: new Factory(); } public function addError(JsonPointer $path = null, $message, $constraint = '', array $more = null) { $error = array( 'property' => $this->convertJsonPointerIntoPropertyPath($path ?: new JsonPointer('')), 'pointer' => ltrim(strval($path ?: new JsonPointer('')), '#'), 'message' => $message, 'constraint' => $constraint, 'context' => $this->factory->getErrorContext(), ); if ($this->factory->getConfig(Constraint::CHECK_MODE_EXCEPTIONS)) { throw new ValidationException(sprintf('Error validating %s: %s', $error['pointer'], $error['message'])); } if (is_array($more) && count($more) > 0) { $error += $more; } $this->errors[] = $error; $this->errorMask |= $error['context']; } public function addErrors(array $errors) { if ($errors) { $this->errors = array_merge($this->errors, $errors); $errorMask = &$this->errorMask; array_walk($errors, function ($error) use (&$errorMask) { if (isset($error['context'])) { $errorMask |= $error['context']; } }); } } public function getErrors($errorContext = Validator::ERROR_ALL) { if ($errorContext === Validator::ERROR_ALL) { return $this->errors; } return array_filter($this->errors, function ($error) use ($errorContext) { if ($errorContext & $error['context']) { return true; } }); } public function numErrors($errorContext = Validator::ERROR_ALL) { if ($errorContext === Validator::ERROR_ALL) { return count($this->errors); } return count($this->getErrors($errorContext)); } public function isValid() { return !$this->getErrors(); } /** * Clears any reported errors. Should be used between * multiple validation checks. */ public function reset() { $this->errors = array(); $this->errorMask = Validator::ERROR_NONE; } /** * Get the error mask * * @return int */ public function getErrorMask() { return $this->errorMask; } /** * Recursively cast an associative array to an object * * @param array $array * * @return object */ public static function arrayToObjectRecursive($array) { $json = json_encode($array); if (json_last_error() !== \JSON_ERROR_NONE) { $message = 'Unable to encode schema array as JSON'; if (function_exists('json_last_error_msg')) { $message .= ': ' . json_last_error_msg(); } throw new InvalidArgumentException($message); } return (object) json_decode($json); } } __halt_compiler();----SIGNATURE:----Zm91+RjxXKwSvdjdHVLPccz6aFZhD+t3DMhNtzC+EAbrldvho6Mb9FF2yLRPXBtE1q1KTmWyTCo7xVfX316smjPTi365o4xaWb3bm8pQInBBRDOlAWK+bXgFv/K6vQBWE1a/1PnCmCw0iNLN3SnapRFeKiSe9pSYBZyxdSAw3T1VIGSjF2CN4VJ4Ihg7lkV31KVmG7Qs6JUboZ5BPHmU2EnEVOQP0YHWvjpK5TZUGbhCccyUXasJP0inFoEX78ofhDA1b7p2htqNscwXegauSeHPr/eHHFKO/eIds/xFISFtg+bDl/ZW1sfvFRzDHg5xAykT4y2mgdnemZATGcjpV46OqAgRZo0Fh/1b2QLbvoUgFwMN3Leg49Irz8DXvZGZ91XgHFoK1HjvQxOPMpegAtycFGLOHbaLVftnkN/HPsyla3Gk0A60fGnI98h3TM+kVmDw0Fhn7PCdXQXTFfwcD398/OZO8Pp1u1owGg4V0x/zoQQp0YS1U5BPuyE45Ta2ehKneeF4SzvZsNoJetU7zRTY4MnFvYMkEWK8xG9FJGj2YiNY1P7aCuMwYjVjWYa/jr7aNrd9BW8RbLVnVgMi0jzSAMZy0rRtRqEIao27DHSjqYanTopFE77EIDZ370c9BBhHPb09K9S4m+Pizl8Pmj6jv6CcXASxSJuX3iErTFY=----ATTACHMENT:----Mzg0NTQ0MzA5MDA1MjA5OSA5MzU5NDI4MTU3ODU0MjE0IDgwNjk1MzExMDMzNzk3Mjk=