protected function AbstractLoader::newConstraint in Plug 7
Creates a new constraint instance for the given constraint name.
Parameters
string $name The constraint name. Either a constraint relative: to the default constraint namespace, or a fully qualified class name. Alternatively, the constraint may be preceded by a namespace alias and a colon. The namespace alias must have been defined using {@link addNamespaceAlias()}.
mixed $options The constraint options:
Return value
Throws
MappingException If the namespace prefix is undefined
2 calls to AbstractLoader::newConstraint()
- XmlFileLoader::parseConstraints in lib/
Symfony/ validator/ Symfony/ Component/ Validator/ Mapping/ Loader/ XmlFileLoader.php - Parses a collection of "constraint" XML nodes.
- YamlFileLoader::parseNodes in lib/
Symfony/ validator/ Symfony/ Component/ Validator/ Mapping/ Loader/ YamlFileLoader.php - Parses a collection of YAML nodes.
File
- lib/
Symfony/ validator/ Symfony/ Component/ Validator/ Mapping/ Loader/ AbstractLoader.php, line 73
Class
- AbstractLoader
- Base loader for validation metadata.
Namespace
Symfony\Component\Validator\Mapping\LoaderCode
protected function newConstraint($name, $options = null) {
if (strpos($name, '\\') !== false && class_exists($name)) {
$className = (string) $name;
}
elseif (strpos($name, ':') !== false) {
list($prefix, $className) = explode(':', $name, 2);
if (!isset($this->namespaces[$prefix])) {
throw new MappingException(sprintf('Undefined namespace prefix "%s"', $prefix));
}
$className = $this->namespaces[$prefix] . $className;
}
else {
$className = self::DEFAULT_NAMESPACE . $name;
}
return new $className($options);
}