src/Handler/Parameter/ObjectMapperParameterResolverAndExtractor.php
private function strictRequestValidate(RequestInterface $request)
    {
        $requestMetadata = $this->validator->getMetadataFor($request);

        $useStrictGroup = false;

        // Search constraints by group "Strict"
        if ($requestMetadata instanceof ClassMetadata) {
            foreach ($requestMetadata->getConstrainedProperties() as $propertyName) {
                $propertyMetadata = $requestMetadata->getPropertyMetadata($propertyName);

                if (count($propertyMetadata)) {
                    $propertyMetadata = array_shift($propertyMetadata);
                } else {
                    continue;
                }

                $constraintsInStrictGroup = $propertyMetadata->findConstraints('Strict');

                if (count($constraintsInStrictGroup)) {
                    $useStrictGroup = true;
                    break;
                }
            }
        }

        if ($useStrictGroup) {
            // The any properties in request class have a "Strict" group validation
            $violationList = $this->validator->validate($request, null, ['Strict']);

            if (count($violationList)) {
                throw ViolationListException::create($violationList);
            }

            return;
        }

        if ($this->validator instanceof VarTagValidatorInterface) {
            $violationList = $this->validator->validateObjectByVarTags($request);

            if (count($violationList)) {
                throw ViolationListException::create($violationList);
            }
        }
    }
private function strictRequestValidate(RequestInterface $request)
    {
        $requestMetadata = $this->validator->getMetadataFor($request);

        $useStrictGroup = false;

        // Search constraints by group "Strict"
        if ($requestMetadata instanceof ClassMetadata) {
            foreach ($requestMetadata->getConstrainedProperties() as $propertyName) {
                $propertyMetadata = $requestMetadata->getPropertyMetadata($propertyName);

                if (count($propertyMetadata)) {
                    $propertyMetadata = array_shift($propertyMetadata);
                } else {
                    continue;
                }

                $constraintsInStrictGroup = $propertyMetadata->findConstraints('Strict');

                if (count($constraintsInStrictGroup)) {
                    $useStrictGroup = true;
                    break;
                }
            }
        }

        if ($useStrictGroup) {
            // The any properties in request class have a "Strict" group validation
            $violationList = $this->validator->validate($request, null, ['Strict']);

            if (count($violationList)) {
                throw ViolationListException::create($violationList);
            }

            return;
        }

        if ($this->validator instanceof VarTagValidatorInterface) {
            $violationList = $this->validator->validateObjectByVarTags($request);

            if (count($violationList)) {
                throw ViolationListException::create($violationList);
            }
        }
    }
private function strictRequestValidate ( RequestInterface $ request ) { $ requestMetadata = $ this -> validator -> getMetadataFor ( $ request ) ; $ useStrictGroup = false ; // Search constraints by group "Strict" if ( $ requestMetadata instanceof ClassMetadata ) { foreach ( $ requestMetadata -> getConstrainedProperties ( ) as $ propertyName ) { $ propertyMetadata = $ requestMetadata -> getPropertyMetadata ( $ propertyName ) ; if ( count ( $ propertyMetadata ) ) { $ propertyMetadata = array_shift ( $ propertyMetadata ) ; } else { continue ; } $ constraintsInStrictGroup = $ propertyMetadata -> findConstraints ( 'Strict' ) ; if ( count ( $ constraintsInStrictGroup ) ) { $ useStrictGroup = true ; break ; } } } if ( $ useStrictGroup ) { // The any properties in request class have a "Strict" group validation $ violationList = $ this -> validator -> validate ( $ request , null , [ 'Strict' ] ) ; if ( count ( $ violationList ) ) { throw ViolationListException :: create ( $ violationList ) ; } return ; } if ( $ this -> validator instanceof VarTagValidatorInterface ) { $ violationList = $ this -> validator -> validateObjectByVarTags ( $ request ) ; if ( count ( $ violationList ) ) { throw ViolationListException :: create ( $ violationList ) ; } } }
Strict request validation

@param RequestInterface $request

@throws ViolationListException
Strict request validation