/** * @see TypeDescription::checkType() */ function checkType(&$object) { // Check primitive type. if (!parent::checkType($object)) { return false; } // Instantiate and call validator import('lib.pkp.classes.validation.' . $this->_validatorClassName); assert(class_exists($this->_validatorClassName)); $validatorConstructorCode = 'return new ' . $this->_validatorClassName . '(' . $this->_validatorArgs . ');'; $validator = eval($validatorConstructorCode); assert(is_a($validator, 'Validator')); // Validate the object if (!$validator->isValid($object)) { return false; } return true; }