public function validateProperty($property, $type, $value, $class = __CLASS__)
    {
        $aType = gettype($value);
        if ($aType !== $type) {
            throw new JsonModelException(
                JsonModelException::BAD_PROPERTY_TYPE,
                [$property, $type, $aType]
            );
        }

        if ($value === null) {
            throw new JsonModelException(
                JsonModelException::PROPERTY_EMPTY,
                [$class, $property, $aType]
            );
        }

        return true;
    }