Merge branch '2.8' into 3.4
* 2.8: Consistently throw exceptions on a single line fix fopen calls Update .editorconfig
This commit is contained in:
commit
8bc014c211
@ -3,8 +3,17 @@ root = true
|
||||
|
||||
; Unix-style newlines
|
||||
[*]
|
||||
charset = utf-8
|
||||
end_of_line = LF
|
||||
insert_final_newline = true
|
||||
trim_trailing_whitespace = true
|
||||
|
||||
[*.php]
|
||||
[*.{php,html,twig}]
|
||||
indent_style = space
|
||||
indent_size = 4
|
||||
|
||||
[*.md]
|
||||
max_line_length = 80
|
||||
|
||||
[COMMIT_EDITMSG]
|
||||
max_line_length = 0
|
||||
|
@ -202,11 +202,7 @@ abstract class DoctrineType extends AbstractType
|
||||
$em = $this->registry->getManagerForClass($options['class']);
|
||||
|
||||
if (null === $em) {
|
||||
throw new RuntimeException(sprintf(
|
||||
'Class "%s" seems not to be a managed Doctrine entity. '.
|
||||
'Did you forget to map it?',
|
||||
$options['class']
|
||||
));
|
||||
throw new RuntimeException(sprintf('Class "%s" seems not to be a managed Doctrine entity. Did you forget to map it?', $options['class']));
|
||||
}
|
||||
|
||||
return $em;
|
||||
|
@ -159,14 +159,7 @@ class Router extends BaseRouter implements WarmableInterface, ServiceSubscriberI
|
||||
return (string) $resolved;
|
||||
}
|
||||
|
||||
throw new RuntimeException(sprintf(
|
||||
'The container parameter "%s", used in the route configuration value "%s", '.
|
||||
'must be a string or numeric, but it is of type %s.',
|
||||
$match[1],
|
||||
$value,
|
||||
\gettype($resolved)
|
||||
)
|
||||
);
|
||||
throw new RuntimeException(sprintf('The container parameter "%s", used in the route configuration value "%s", must be a string or numeric, but it is of type %s.', $match[1], $value, \gettype($resolved)));
|
||||
}, $value);
|
||||
|
||||
return str_replace('%%', '%', $escapedValue);
|
||||
|
@ -97,10 +97,7 @@ class GuardAuthenticationFactory implements SecurityFactoryInterface
|
||||
if ($defaultEntryPointId) {
|
||||
// explode if they've configured the entry_point, but there is already one
|
||||
if ($config['entry_point']) {
|
||||
throw new \LogicException(sprintf(
|
||||
'The guard authentication provider cannot use the "%s" entry_point because another entry point is already configured by another provider! Either remove the other provider or move the entry_point configuration as a root key under your firewall (i.e. at the same level as "guard").',
|
||||
$config['entry_point']
|
||||
));
|
||||
throw new \LogicException(sprintf('The guard authentication provider cannot use the "%s" entry_point because another entry point is already configured by another provider! Either remove the other provider or move the entry_point configuration as a root key under your firewall (i.e. at the same level as "guard").', $config['entry_point']));
|
||||
}
|
||||
|
||||
return $defaultEntryPointId;
|
||||
@ -118,9 +115,6 @@ class GuardAuthenticationFactory implements SecurityFactoryInterface
|
||||
}
|
||||
|
||||
// we have multiple entry points - we must ask them to configure one
|
||||
throw new \LogicException(sprintf(
|
||||
'Because you have multiple guard configurators, you need to set the "guard.entry_point" key to one of your configurators (%s)',
|
||||
implode(', ', $authenticatorIds)
|
||||
));
|
||||
throw new \LogicException(sprintf('Because you have multiple guard configurators, you need to set the "guard.entry_point" key to one of your configurators (%s)', implode(', ', $authenticatorIds)));
|
||||
}
|
||||
}
|
||||
|
@ -219,15 +219,13 @@ class ArrayNode extends BaseNode implements PrototypeNodeInterface
|
||||
protected function finalizeValue($value)
|
||||
{
|
||||
if (false === $value) {
|
||||
$msg = sprintf('Unsetting key for path "%s", value: %s', $this->getPath(), json_encode($value));
|
||||
throw new UnsetKeyException($msg);
|
||||
throw new UnsetKeyException(sprintf('Unsetting key for path "%s", value: %s', $this->getPath(), json_encode($value)));
|
||||
}
|
||||
|
||||
foreach ($this->children as $name => $child) {
|
||||
if (!array_key_exists($name, $value)) {
|
||||
if ($child->isRequired()) {
|
||||
$msg = sprintf('The child node "%s" at path "%s" must be configured.', $name, $this->getPath());
|
||||
$ex = new InvalidConfigurationException($msg);
|
||||
$ex = new InvalidConfigurationException(sprintf('The child node "%s" at path "%s" must be configured.', $name, $this->getPath()));
|
||||
$ex->setPath($this->getPath());
|
||||
|
||||
throw $ex;
|
||||
@ -264,11 +262,7 @@ class ArrayNode extends BaseNode implements PrototypeNodeInterface
|
||||
protected function validateType($value)
|
||||
{
|
||||
if (!\is_array($value) && (!$this->allowFalse || false !== $value)) {
|
||||
$ex = new InvalidTypeException(sprintf(
|
||||
'Invalid type for path "%s". Expected array, but got %s',
|
||||
$this->getPath(),
|
||||
\gettype($value)
|
||||
));
|
||||
$ex = new InvalidTypeException(sprintf('Invalid type for path "%s". Expected array, but got %s', $this->getPath(), \gettype($value)));
|
||||
if ($hint = $this->getInfo()) {
|
||||
$ex->addHint($hint);
|
||||
}
|
||||
@ -307,8 +301,7 @@ class ArrayNode extends BaseNode implements PrototypeNodeInterface
|
||||
|
||||
// if extra fields are present, throw exception
|
||||
if (\count($value) && !$this->ignoreExtraKeys) {
|
||||
$msg = sprintf('Unrecognized option%s "%s" under "%s"', 1 === \count($value) ? '' : 's', implode(', ', array_keys($value)), $this->getPath());
|
||||
$ex = new InvalidConfigurationException($msg);
|
||||
$ex = new InvalidConfigurationException(sprintf('Unrecognized option%s "%s" under "%s"', 1 === \count($value) ? '' : 's', implode(', ', array_keys($value)), $this->getPath()));
|
||||
$ex->setPath($this->getPath());
|
||||
|
||||
throw $ex;
|
||||
@ -365,13 +358,7 @@ class ArrayNode extends BaseNode implements PrototypeNodeInterface
|
||||
// no conflict
|
||||
if (!array_key_exists($k, $leftSide)) {
|
||||
if (!$this->allowNewKeys) {
|
||||
$ex = new InvalidConfigurationException(sprintf(
|
||||
'You are not allowed to define new elements for path "%s". '
|
||||
.'Please define all elements for this path in one config file. '
|
||||
.'If you are trying to overwrite an element, make sure you redefine it '
|
||||
.'with the same name.',
|
||||
$this->getPath()
|
||||
));
|
||||
$ex = new InvalidConfigurationException(sprintf('You are not allowed to define new elements for path "%s". Please define all elements for this path in one config file. If you are trying to overwrite an element, make sure you redefine it with the same name.', $this->getPath()));
|
||||
$ex->setPath($this->getPath());
|
||||
|
||||
throw $ex;
|
||||
|
@ -242,12 +242,7 @@ abstract class BaseNode implements NodeInterface
|
||||
final public function merge($leftSide, $rightSide)
|
||||
{
|
||||
if (!$this->allowOverwrite) {
|
||||
throw new ForbiddenOverwriteException(sprintf(
|
||||
'Configuration path "%s" cannot be overwritten. You have to '
|
||||
.'define all options for this path, and any of its sub-paths in '
|
||||
.'one configuration section.',
|
||||
$this->getPath()
|
||||
));
|
||||
throw new ForbiddenOverwriteException(sprintf('Configuration path "%s" cannot be overwritten. You have to define all options for this path, and any of its sub-paths in one configuration section.', $this->getPath()));
|
||||
}
|
||||
|
||||
$this->validateType($leftSide);
|
||||
|
@ -26,11 +26,7 @@ class BooleanNode extends ScalarNode
|
||||
protected function validateType($value)
|
||||
{
|
||||
if (!\is_bool($value)) {
|
||||
$ex = new InvalidTypeException(sprintf(
|
||||
'Invalid type for path "%s". Expected boolean, but got %s.',
|
||||
$this->getPath(),
|
||||
\gettype($value)
|
||||
));
|
||||
$ex = new InvalidTypeException(sprintf('Invalid type for path "%s". Expected boolean, but got %s.', $this->getPath(), \gettype($value)));
|
||||
if ($hint = $this->getInfo()) {
|
||||
$ex->addHint($hint);
|
||||
}
|
||||
|
@ -472,9 +472,7 @@ class ArrayNodeDefinition extends NodeDefinition implements ParentNodeDefinition
|
||||
$path = $node->getPath();
|
||||
|
||||
if (null !== $this->key) {
|
||||
throw new InvalidDefinitionException(
|
||||
sprintf('->useAttributeAsKey() is not applicable to concrete nodes at path "%s"', $path)
|
||||
);
|
||||
throw new InvalidDefinitionException(sprintf('->useAttributeAsKey() is not applicable to concrete nodes at path "%s"', $path));
|
||||
}
|
||||
|
||||
if (false === $this->allowEmptyValue) {
|
||||
@ -482,21 +480,15 @@ class ArrayNodeDefinition extends NodeDefinition implements ParentNodeDefinition
|
||||
}
|
||||
|
||||
if (true === $this->atLeastOne) {
|
||||
throw new InvalidDefinitionException(
|
||||
sprintf('->requiresAtLeastOneElement() is not applicable to concrete nodes at path "%s"', $path)
|
||||
);
|
||||
throw new InvalidDefinitionException(sprintf('->requiresAtLeastOneElement() is not applicable to concrete nodes at path "%s"', $path));
|
||||
}
|
||||
|
||||
if ($this->default) {
|
||||
throw new InvalidDefinitionException(
|
||||
sprintf('->defaultValue() is not applicable to concrete nodes at path "%s"', $path)
|
||||
);
|
||||
throw new InvalidDefinitionException(sprintf('->defaultValue() is not applicable to concrete nodes at path "%s"', $path));
|
||||
}
|
||||
|
||||
if (false !== $this->addDefaultChildren) {
|
||||
throw new InvalidDefinitionException(
|
||||
sprintf('->addDefaultChildrenIfNoneSet() is not applicable to concrete nodes at path "%s"', $path)
|
||||
);
|
||||
throw new InvalidDefinitionException(sprintf('->addDefaultChildrenIfNoneSet() is not applicable to concrete nodes at path "%s"', $path));
|
||||
}
|
||||
}
|
||||
|
||||
@ -510,28 +502,20 @@ class ArrayNodeDefinition extends NodeDefinition implements ParentNodeDefinition
|
||||
$path = $node->getPath();
|
||||
|
||||
if ($this->addDefaults) {
|
||||
throw new InvalidDefinitionException(
|
||||
sprintf('->addDefaultsIfNotSet() is not applicable to prototype nodes at path "%s"', $path)
|
||||
);
|
||||
throw new InvalidDefinitionException(sprintf('->addDefaultsIfNotSet() is not applicable to prototype nodes at path "%s"', $path));
|
||||
}
|
||||
|
||||
if (false !== $this->addDefaultChildren) {
|
||||
if ($this->default) {
|
||||
throw new InvalidDefinitionException(
|
||||
sprintf('A default value and default children might not be used together at path "%s"', $path)
|
||||
);
|
||||
throw new InvalidDefinitionException(sprintf('A default value and default children might not be used together at path "%s"', $path));
|
||||
}
|
||||
|
||||
if (null !== $this->key && (null === $this->addDefaultChildren || \is_int($this->addDefaultChildren) && $this->addDefaultChildren > 0)) {
|
||||
throw new InvalidDefinitionException(
|
||||
sprintf('->addDefaultChildrenIfNoneSet() should set default children names as ->useAttributeAsKey() is used at path "%s"', $path)
|
||||
);
|
||||
throw new InvalidDefinitionException(sprintf('->addDefaultChildrenIfNoneSet() should set default children names as ->useAttributeAsKey() is used at path "%s"', $path));
|
||||
}
|
||||
|
||||
if (null === $this->key && (\is_string($this->addDefaultChildren) || \is_array($this->addDefaultChildren))) {
|
||||
throw new InvalidDefinitionException(
|
||||
sprintf('->addDefaultChildrenIfNoneSet() might not set default children names as ->useAttributeAsKey() is not used at path "%s"', $path)
|
||||
);
|
||||
throw new InvalidDefinitionException(sprintf('->addDefaultChildrenIfNoneSet() might not set default children names as ->useAttributeAsKey() is not used at path "%s"', $path));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -43,11 +43,7 @@ class EnumNode extends ScalarNode
|
||||
$value = parent::finalizeValue($value);
|
||||
|
||||
if (!\in_array($value, $this->values, true)) {
|
||||
$ex = new InvalidConfigurationException(sprintf(
|
||||
'The value %s is not allowed for path "%s". Permissible values: %s',
|
||||
json_encode($value),
|
||||
$this->getPath(),
|
||||
implode(', ', array_map('json_encode', $this->values))));
|
||||
$ex = new InvalidConfigurationException(sprintf('The value %s is not allowed for path "%s". Permissible values: %s', json_encode($value), $this->getPath(), implode(', ', array_map('json_encode', $this->values))));
|
||||
$ex->setPath($this->getPath());
|
||||
|
||||
throw $ex;
|
||||
|
@ -185,8 +185,7 @@ class PrototypedArrayNode extends ArrayNode
|
||||
protected function finalizeValue($value)
|
||||
{
|
||||
if (false === $value) {
|
||||
$msg = sprintf('Unsetting key for path "%s", value: %s', $this->getPath(), json_encode($value));
|
||||
throw new UnsetKeyException($msg);
|
||||
throw new UnsetKeyException(sprintf('Unsetting key for path "%s", value: %s', $this->getPath(), json_encode($value)));
|
||||
}
|
||||
|
||||
foreach ($value as $k => $v) {
|
||||
@ -199,8 +198,7 @@ class PrototypedArrayNode extends ArrayNode
|
||||
}
|
||||
|
||||
if (\count($value) < $this->minNumberOfElements) {
|
||||
$msg = sprintf('The path "%s" should have at least %d element(s) defined.', $this->getPath(), $this->minNumberOfElements);
|
||||
$ex = new InvalidConfigurationException($msg);
|
||||
$ex = new InvalidConfigurationException(sprintf('The path "%s" should have at least %d element(s) defined.', $this->getPath(), $this->minNumberOfElements));
|
||||
$ex->setPath($this->getPath());
|
||||
|
||||
throw $ex;
|
||||
@ -232,8 +230,7 @@ class PrototypedArrayNode extends ArrayNode
|
||||
foreach ($value as $k => $v) {
|
||||
if (null !== $this->keyAttribute && \is_array($v)) {
|
||||
if (!isset($v[$this->keyAttribute]) && \is_int($k) && !$isAssoc) {
|
||||
$msg = sprintf('The attribute "%s" must be set for path "%s".', $this->keyAttribute, $this->getPath());
|
||||
$ex = new InvalidConfigurationException($msg);
|
||||
$ex = new InvalidConfigurationException(sprintf('The attribute "%s" must be set for path "%s".', $this->keyAttribute, $this->getPath()));
|
||||
$ex->setPath($this->getPath());
|
||||
|
||||
throw $ex;
|
||||
@ -262,8 +259,7 @@ class PrototypedArrayNode extends ArrayNode
|
||||
}
|
||||
|
||||
if (array_key_exists($k, $normalized)) {
|
||||
$msg = sprintf('Duplicate key "%s" for path "%s".', $k, $this->getPath());
|
||||
$ex = new DuplicateKeyException($msg);
|
||||
$ex = new DuplicateKeyException(sprintf('Duplicate key "%s" for path "%s".', $k, $this->getPath()));
|
||||
$ex->setPath($this->getPath());
|
||||
|
||||
throw $ex;
|
||||
@ -314,11 +310,7 @@ class PrototypedArrayNode extends ArrayNode
|
||||
// no conflict
|
||||
if (!array_key_exists($k, $leftSide)) {
|
||||
if (!$this->allowNewKeys) {
|
||||
$ex = new InvalidConfigurationException(sprintf(
|
||||
'You are not allowed to define new elements for path "%s". '.
|
||||
'Please define all elements for this path in one config file.',
|
||||
$this->getPath()
|
||||
));
|
||||
$ex = new InvalidConfigurationException(sprintf('You are not allowed to define new elements for path "%s". Please define all elements for this path in one config file.', $this->getPath()));
|
||||
$ex->setPath($this->getPath());
|
||||
|
||||
throw $ex;
|
||||
|
@ -33,11 +33,7 @@ class ScalarNode extends VariableNode
|
||||
protected function validateType($value)
|
||||
{
|
||||
if (!is_scalar($value) && null !== $value) {
|
||||
$ex = new InvalidTypeException(sprintf(
|
||||
'Invalid type for path "%s". Expected scalar, but got %s.',
|
||||
$this->getPath(),
|
||||
\gettype($value)
|
||||
));
|
||||
$ex = new InvalidTypeException(sprintf('Invalid type for path "%s". Expected scalar, but got %s.', $this->getPath(), \gettype($value)));
|
||||
if ($hint = $this->getInfo()) {
|
||||
$ex->addHint($hint);
|
||||
}
|
||||
|
@ -82,11 +82,7 @@ class VariableNode extends BaseNode implements PrototypeNodeInterface
|
||||
protected function finalizeValue($value)
|
||||
{
|
||||
if (!$this->allowEmptyValue && $this->isValueEmpty($value)) {
|
||||
$ex = new InvalidConfigurationException(sprintf(
|
||||
'The path "%s" cannot contain an empty value, but got %s.',
|
||||
$this->getPath(),
|
||||
json_encode($value)
|
||||
));
|
||||
$ex = new InvalidConfigurationException(sprintf('The path "%s" cannot contain an empty value, but got %s.', $this->getPath(), json_encode($value)));
|
||||
if ($hint = $this->getInfo()) {
|
||||
$ex->addHint($hint);
|
||||
}
|
||||
|
@ -90,11 +90,7 @@ class OutputFormatterStyle implements OutputFormatterStyleInterface
|
||||
}
|
||||
|
||||
if (!isset(static::$availableForegroundColors[$color])) {
|
||||
throw new InvalidArgumentException(sprintf(
|
||||
'Invalid foreground color specified: "%s". Expected one of (%s)',
|
||||
$color,
|
||||
implode(', ', array_keys(static::$availableForegroundColors))
|
||||
));
|
||||
throw new InvalidArgumentException(sprintf('Invalid foreground color specified: "%s". Expected one of (%s)', $color, implode(', ', array_keys(static::$availableForegroundColors))));
|
||||
}
|
||||
|
||||
$this->foreground = static::$availableForegroundColors[$color];
|
||||
@ -116,11 +112,7 @@ class OutputFormatterStyle implements OutputFormatterStyleInterface
|
||||
}
|
||||
|
||||
if (!isset(static::$availableBackgroundColors[$color])) {
|
||||
throw new InvalidArgumentException(sprintf(
|
||||
'Invalid background color specified: "%s". Expected one of (%s)',
|
||||
$color,
|
||||
implode(', ', array_keys(static::$availableBackgroundColors))
|
||||
));
|
||||
throw new InvalidArgumentException(sprintf('Invalid background color specified: "%s". Expected one of (%s)', $color, implode(', ', array_keys(static::$availableBackgroundColors))));
|
||||
}
|
||||
|
||||
$this->background = static::$availableBackgroundColors[$color];
|
||||
@ -136,11 +128,7 @@ class OutputFormatterStyle implements OutputFormatterStyleInterface
|
||||
public function setOption($option)
|
||||
{
|
||||
if (!isset(static::$availableOptions[$option])) {
|
||||
throw new InvalidArgumentException(sprintf(
|
||||
'Invalid option specified: "%s". Expected one of (%s)',
|
||||
$option,
|
||||
implode(', ', array_keys(static::$availableOptions))
|
||||
));
|
||||
throw new InvalidArgumentException(sprintf('Invalid option specified: "%s". Expected one of (%s)', $option, implode(', ', array_keys(static::$availableOptions))));
|
||||
}
|
||||
|
||||
if (!\in_array(static::$availableOptions[$option], $this->options)) {
|
||||
@ -158,11 +146,7 @@ class OutputFormatterStyle implements OutputFormatterStyleInterface
|
||||
public function unsetOption($option)
|
||||
{
|
||||
if (!isset(static::$availableOptions[$option])) {
|
||||
throw new InvalidArgumentException(sprintf(
|
||||
'Invalid option specified: "%s". Expected one of (%s)',
|
||||
$option,
|
||||
implode(', ', array_keys(static::$availableOptions))
|
||||
));
|
||||
throw new InvalidArgumentException(sprintf('Invalid option specified: "%s". Expected one of (%s)', $option, implode(', ', array_keys(static::$availableOptions))));
|
||||
}
|
||||
|
||||
$pos = array_search(static::$availableOptions[$option], $this->options);
|
||||
|
@ -150,10 +150,7 @@ class FunctionExtension extends AbstractExtension
|
||||
$arguments = $function->getArguments();
|
||||
foreach ($arguments as $token) {
|
||||
if (!($token->isString() || $token->isIdentifier())) {
|
||||
throw new ExpressionErrorException(
|
||||
'Expected a single string or identifier for :contains(), got '
|
||||
.implode(', ', $arguments)
|
||||
);
|
||||
throw new ExpressionErrorException('Expected a single string or identifier for :contains(), got '.implode(', ', $arguments));
|
||||
}
|
||||
}
|
||||
|
||||
@ -173,10 +170,7 @@ class FunctionExtension extends AbstractExtension
|
||||
$arguments = $function->getArguments();
|
||||
foreach ($arguments as $token) {
|
||||
if (!($token->isString() || $token->isIdentifier())) {
|
||||
throw new ExpressionErrorException(
|
||||
'Expected a single string or identifier for :lang(), got '
|
||||
.implode(', ', $arguments)
|
||||
);
|
||||
throw new ExpressionErrorException('Expected a single string or identifier for :lang(), got '.implode(', ', $arguments));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -158,10 +158,7 @@ class HtmlExtension extends AbstractExtension
|
||||
$arguments = $function->getArguments();
|
||||
foreach ($arguments as $token) {
|
||||
if (!($token->isString() || $token->isIdentifier())) {
|
||||
throw new ExpressionErrorException(
|
||||
'Expected a single string or identifier for :lang(), got '
|
||||
.implode(', ', $arguments)
|
||||
);
|
||||
throw new ExpressionErrorException('Expected a single string or identifier for :lang(), got '.implode(', ', $arguments));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -66,13 +66,7 @@ class CheckDefinitionValidityPass implements CompilerPassInterface
|
||||
));
|
||||
}
|
||||
|
||||
throw new RuntimeException(sprintf(
|
||||
'The definition for "%s" has no class. If you intend to inject '
|
||||
.'this service dynamically at runtime, please mark it as synthetic=true. '
|
||||
.'If this is an abstract definition solely used by child definitions, '
|
||||
.'please add abstract=true, otherwise specify a class to get rid of this error.',
|
||||
$id
|
||||
));
|
||||
throw new RuntimeException(sprintf('The definition for "%s" has no class. If you intend to inject this service dynamically at runtime, please mark it as synthetic=true. If this is an abstract definition solely used by child definitions, please add abstract=true, otherwise specify a class to get rid of this error.', $id));
|
||||
}
|
||||
|
||||
// tag attribute values must be scalars
|
||||
|
@ -34,12 +34,7 @@ class CheckReferenceValidityPass extends AbstractRecursivePass
|
||||
$targetDefinition = $this->container->getDefinition((string) $value);
|
||||
|
||||
if ($targetDefinition->isAbstract()) {
|
||||
throw new RuntimeException(sprintf(
|
||||
'The definition "%s" has a reference to an abstract definition "%s". '
|
||||
.'Abstract definitions cannot be the target of references.',
|
||||
$this->currentId,
|
||||
$value
|
||||
));
|
||||
throw new RuntimeException(sprintf('The definition "%s" has a reference to an abstract definition "%s". Abstract definitions cannot be the target of references.', $this->currentId, $value));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -680,13 +680,7 @@ EOF
|
||||
// can it be handled by an extension?
|
||||
if (!$this->container->hasExtension($node->namespaceURI)) {
|
||||
$extensionNamespaces = array_filter(array_map(function ($ext) { return $ext->getNamespace(); }, $this->container->getExtensions()));
|
||||
throw new InvalidArgumentException(sprintf(
|
||||
'There is no extension able to load the configuration for "%s" (in %s). Looked for namespace "%s", found %s',
|
||||
$node->tagName,
|
||||
$file,
|
||||
$node->namespaceURI,
|
||||
$extensionNamespaces ? sprintf('"%s"', implode('", "', $extensionNamespaces)) : 'none'
|
||||
));
|
||||
throw new InvalidArgumentException(sprintf('There is no extension able to load the configuration for "%s" (in %s). Looked for namespace "%s", found %s', $node->tagName, $file, $node->namespaceURI, $extensionNamespaces ? sprintf('"%s"', implode('", "', $extensionNamespaces)) : 'none'));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -701,13 +701,7 @@ class YamlFileLoader extends FileLoader
|
||||
|
||||
if (!$this->container->hasExtension($namespace)) {
|
||||
$extensionNamespaces = array_filter(array_map(function ($ext) { return $ext->getAlias(); }, $this->container->getExtensions()));
|
||||
throw new InvalidArgumentException(sprintf(
|
||||
'There is no extension able to load the configuration for "%s" (in %s). Looked for namespace "%s", found %s',
|
||||
$namespace,
|
||||
$file,
|
||||
$namespace,
|
||||
$extensionNamespaces ? sprintf('"%s"', implode('", "', $extensionNamespaces)) : 'none'
|
||||
));
|
||||
throw new InvalidArgumentException(sprintf('There is no extension able to load the configuration for "%s" (in %s). Looked for namespace "%s", found %s', $namespace, $file, $namespace, $extensionNamespaces ? sprintf('"%s"', implode('", "', $extensionNamespaces)) : 'none'));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -161,7 +161,7 @@ class FilesystemTest extends FilesystemTestCase
|
||||
*/
|
||||
public function testCopyForOriginUrlsAndExistingLocalFileDefaultsToCopy()
|
||||
{
|
||||
if (!in_array('https', stream_get_wrappers())) {
|
||||
if (!\in_array('https', stream_get_wrappers())) {
|
||||
$this->markTestSkipped('"https" stream wrapper is not enabled.');
|
||||
}
|
||||
$sourceFilePath = 'https://symfony.com/images/common/logo/logo_symfony_header.png';
|
||||
|
@ -76,9 +76,7 @@ class ArrayToPartsTransformer implements DataTransformerInterface
|
||||
return;
|
||||
}
|
||||
|
||||
throw new TransformationFailedException(
|
||||
sprintf('The keys "%s" should not be empty', implode('", "', $emptyKeys)
|
||||
));
|
||||
throw new TransformationFailedException(sprintf('The keys "%s" should not be empty', implode('", "', $emptyKeys)));
|
||||
}
|
||||
|
||||
return $result;
|
||||
|
@ -134,9 +134,7 @@ class DateTimeToArrayTransformer extends BaseDateTimeTransformer
|
||||
}
|
||||
|
||||
if (\count($emptyFields) > 0) {
|
||||
throw new TransformationFailedException(
|
||||
sprintf('The fields "%s" should not be empty', implode('", "', $emptyFields)
|
||||
));
|
||||
throw new TransformationFailedException(sprintf('The fields "%s" should not be empty', implode('", "', $emptyFields)));
|
||||
}
|
||||
|
||||
if (isset($value['month']) && !ctype_digit((string) $value['month'])) {
|
||||
|
@ -80,12 +80,7 @@ class DateTimeToRfc3339Transformer extends BaseDateTimeTransformer
|
||||
|
||||
if (preg_match('/(\d{4})-(\d{2})-(\d{2})/', $rfc3339, $matches)) {
|
||||
if (!checkdate($matches[2], $matches[3], $matches[1])) {
|
||||
throw new TransformationFailedException(sprintf(
|
||||
'The date "%s-%s-%s" is not a valid date.',
|
||||
$matches[1],
|
||||
$matches[2],
|
||||
$matches[3]
|
||||
));
|
||||
throw new TransformationFailedException(sprintf('The date "%s-%s-%s" is not a valid date.', $matches[1], $matches[2], $matches[3]));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -125,12 +125,7 @@ class DateTimeToStringTransformer extends BaseDateTimeTransformer
|
||||
$lastErrors = \DateTime::getLastErrors();
|
||||
|
||||
if (0 < $lastErrors['warning_count'] || 0 < $lastErrors['error_count']) {
|
||||
throw new TransformationFailedException(
|
||||
implode(', ', array_merge(
|
||||
array_values($lastErrors['warnings']),
|
||||
array_values($lastErrors['errors'])
|
||||
))
|
||||
);
|
||||
throw new TransformationFailedException(implode(', ', array_merge(array_values($lastErrors['warnings']), array_values($lastErrors['errors']))));
|
||||
}
|
||||
|
||||
try {
|
||||
|
@ -201,9 +201,7 @@ class NumberToLocalizedStringTransformer implements DataTransformerInterface
|
||||
$remainder = trim($remainder, " \t\n\r\0\x0b\xc2\xa0");
|
||||
|
||||
if ('' !== $remainder) {
|
||||
throw new TransformationFailedException(
|
||||
sprintf('The number contains unrecognized characters: "%s"', $remainder)
|
||||
);
|
||||
throw new TransformationFailedException(sprintf('The number contains unrecognized characters: "%s"', $remainder));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -64,9 +64,7 @@ class ValueToDuplicatesTransformer implements DataTransformerInterface
|
||||
foreach ($this->keys as $key) {
|
||||
if (isset($array[$key]) && '' !== $array[$key] && false !== $array[$key] && array() !== $array[$key]) {
|
||||
if ($array[$key] !== $result) {
|
||||
throw new TransformationFailedException(
|
||||
'All values in the array should be the same'
|
||||
);
|
||||
throw new TransformationFailedException('All values in the array should be the same');
|
||||
}
|
||||
} else {
|
||||
$emptyKeys[] = $key;
|
||||
@ -79,9 +77,7 @@ class ValueToDuplicatesTransformer implements DataTransformerInterface
|
||||
return;
|
||||
}
|
||||
|
||||
throw new TransformationFailedException(
|
||||
sprintf('The keys "%s" should not be empty', implode('", "', $emptyKeys)
|
||||
));
|
||||
throw new TransformationFailedException(sprintf('The keys "%s" should not be empty', implode('", "', $emptyKeys)));
|
||||
}
|
||||
|
||||
return $result;
|
||||
|
@ -128,10 +128,7 @@ class ChoiceType extends AbstractType
|
||||
|
||||
// Throw exception if unknown values were submitted
|
||||
if (\count($unknownValues) > 0) {
|
||||
throw new TransformationFailedException(sprintf(
|
||||
'The choices "%s" do not exist in the choice list.',
|
||||
implode('", "', array_keys($unknownValues))
|
||||
));
|
||||
throw new TransformationFailedException(sprintf('The choices "%s" do not exist in the choice list.', implode('", "', array_keys($unknownValues))));
|
||||
}
|
||||
|
||||
$event->setData($data);
|
||||
|
@ -88,13 +88,7 @@ class DependencyInjectionExtension implements FormExtensionInterface
|
||||
|
||||
// validate result of getExtendedType() to ensure it is consistent with the service definition
|
||||
if ($extension->getExtendedType() !== $name) {
|
||||
throw new InvalidArgumentException(
|
||||
sprintf('The extended type specified for the service "%s" does not match the actual extended type. Expected "%s", given "%s".',
|
||||
$serviceId,
|
||||
$name,
|
||||
$extension->getExtendedType()
|
||||
)
|
||||
);
|
||||
throw new InvalidArgumentException(sprintf('The extended type specified for the service "%s" does not match the actual extended type. Expected "%s", given "%s".', $serviceId, $name, $extension->getExtendedType()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -358,13 +358,7 @@ class Form implements \IteratorAggregate, FormInterface
|
||||
? 'an instance of class '.\get_class($viewData)
|
||||
: 'a(n) '.\gettype($viewData);
|
||||
|
||||
throw new LogicException(
|
||||
'The form\'s view data is expected to be an instance of class '.
|
||||
$dataClass.', but is '.$actualType.'. You can avoid this error '.
|
||||
'by setting the "data_class" option to null or by adding a view '.
|
||||
'transformer that transforms '.$actualType.' to an instance of '.
|
||||
$dataClass.'.'
|
||||
);
|
||||
throw new LogicException('The form\'s view data is expected to be an instance of class '.$dataClass.', but is '.$actualType.'. You can avoid this error by setting the "data_class" option to null or by adding a view transformer that transforms '.$actualType.' to an instance of '.$dataClass.'.');
|
||||
}
|
||||
}
|
||||
|
||||
@ -863,11 +857,7 @@ class Form implements \IteratorAggregate, FormInterface
|
||||
$child = $this->config->getFormFactory()->createNamed($child, $type, null, $options);
|
||||
}
|
||||
} elseif ($child->getConfig()->getAutoInitialize()) {
|
||||
throw new RuntimeException(sprintf(
|
||||
'Automatic initialization is only supported on root forms. You '.
|
||||
'should set the "auto_initialize" option to false on the field "%s".',
|
||||
$child->getName()
|
||||
));
|
||||
throw new RuntimeException(sprintf('Automatic initialization is only supported on root forms. You should set the "auto_initialize" option to false on the field "%s".', $child->getName()));
|
||||
}
|
||||
|
||||
$this->children[$child->getName()] = $child;
|
||||
@ -1041,11 +1031,7 @@ class Form implements \IteratorAggregate, FormInterface
|
||||
$value = $transformer->transform($value);
|
||||
}
|
||||
} catch (TransformationFailedException $exception) {
|
||||
throw new TransformationFailedException(
|
||||
'Unable to transform value for property path "'.$this->getPropertyPath().'": '.$exception->getMessage(),
|
||||
$exception->getCode(),
|
||||
$exception
|
||||
);
|
||||
throw new TransformationFailedException('Unable to transform value for property path "'.$this->getPropertyPath().'": '.$exception->getMessage(), $exception->getCode(), $exception);
|
||||
}
|
||||
|
||||
return $value;
|
||||
@ -1069,11 +1055,7 @@ class Form implements \IteratorAggregate, FormInterface
|
||||
$value = $transformers[$i]->reverseTransform($value);
|
||||
}
|
||||
} catch (TransformationFailedException $exception) {
|
||||
throw new TransformationFailedException(
|
||||
'Unable to reverse value for property path "'.$this->getPropertyPath().'": '.$exception->getMessage(),
|
||||
$exception->getCode(),
|
||||
$exception
|
||||
);
|
||||
throw new TransformationFailedException('Unable to reverse value for property path "'.$this->getPropertyPath().'": '.$exception->getMessage(), $exception->getCode(), $exception);
|
||||
}
|
||||
|
||||
return $value;
|
||||
@ -1104,11 +1086,7 @@ class Form implements \IteratorAggregate, FormInterface
|
||||
$value = $transformer->transform($value);
|
||||
}
|
||||
} catch (TransformationFailedException $exception) {
|
||||
throw new TransformationFailedException(
|
||||
'Unable to transform value for property path "'.$this->getPropertyPath().'": '.$exception->getMessage(),
|
||||
$exception->getCode(),
|
||||
$exception
|
||||
);
|
||||
throw new TransformationFailedException('Unable to transform value for property path "'.$this->getPropertyPath().'": '.$exception->getMessage(), $exception->getCode(), $exception);
|
||||
}
|
||||
|
||||
return $value;
|
||||
@ -1136,11 +1114,7 @@ class Form implements \IteratorAggregate, FormInterface
|
||||
$value = $transformers[$i]->reverseTransform($value);
|
||||
}
|
||||
} catch (TransformationFailedException $exception) {
|
||||
throw new TransformationFailedException(
|
||||
'Unable to reverse value for property path "'.$this->getPropertyPath().'": '.$exception->getMessage(),
|
||||
$exception->getCode(),
|
||||
$exception
|
||||
);
|
||||
throw new TransformationFailedException('Unable to reverse value for property path "'.$this->getPropertyPath().'": '.$exception->getMessage(), $exception->getCode(), $exception);
|
||||
}
|
||||
|
||||
return $value;
|
||||
|
@ -791,11 +791,7 @@ class FormConfigBuilder implements FormConfigBuilderInterface
|
||||
$upperCaseMethod = strtoupper($method);
|
||||
|
||||
if (!\in_array($upperCaseMethod, self::$allowedMethods)) {
|
||||
throw new InvalidArgumentException(sprintf(
|
||||
'The form method is "%s", but should be one of "%s".',
|
||||
$method,
|
||||
implode('", "', self::$allowedMethods)
|
||||
));
|
||||
throw new InvalidArgumentException(sprintf('The form method is "%s", but should be one of "%s".', $method, implode('", "', self::$allowedMethods)));
|
||||
}
|
||||
|
||||
$this->method = $upperCaseMethod;
|
||||
@ -862,10 +858,7 @@ class FormConfigBuilder implements FormConfigBuilderInterface
|
||||
}
|
||||
|
||||
if (!self::isValidName($name)) {
|
||||
throw new InvalidArgumentException(sprintf(
|
||||
'The name "%s" contains illegal characters. Names should start with a letter, digit or underscore and only contain letters, digits, numbers, underscores ("_"), hyphens ("-") and colons (":").',
|
||||
$name
|
||||
));
|
||||
throw new InvalidArgumentException(sprintf('The name "%s" contains illegal characters. Names should start with a letter, digit or underscore and only contain letters, digits, numbers, underscores ("_"), hyphens ("-") and colons (":").', $name));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -51,12 +51,7 @@ class FormErrorIterator implements \RecursiveIterator, \SeekableIterator, \Array
|
||||
{
|
||||
foreach ($errors as $error) {
|
||||
if (!($error instanceof FormError || $error instanceof self)) {
|
||||
throw new InvalidArgumentException(sprintf(
|
||||
'The errors must be instances of '.
|
||||
'"\Symfony\Component\Form\FormError" or "%s". Got: "%s".',
|
||||
__CLASS__,
|
||||
\is_object($error) ? \get_class($error) : \gettype($error)
|
||||
));
|
||||
throw new InvalidArgumentException(sprintf('The errors must be instances of "Symfony\Component\Form\FormError" or "%s". Got: "%s".', __CLASS__, \is_object($error) ? \get_class($error) : \gettype($error)));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -36,14 +36,7 @@ abstract class FormPerformanceTestCase extends FormIntegrationTestCase
|
||||
$time = microtime(true) - $s;
|
||||
|
||||
if (0 != $this->maxRunningTime && $time > $this->maxRunningTime) {
|
||||
$this->fail(
|
||||
sprintf(
|
||||
'expected running time: <= %s but was: %s',
|
||||
|
||||
$this->maxRunningTime,
|
||||
$time
|
||||
)
|
||||
);
|
||||
$this->fail(sprintf('expected running time: <= %s but was: %s', $this->maxRunningTime, $time));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -47,9 +47,7 @@ class MemcacheSessionHandler implements \SessionHandlerInterface
|
||||
public function __construct(\Memcache $memcache, array $options = array())
|
||||
{
|
||||
if ($diff = array_diff(array_keys($options), array('prefix', 'expiretime'))) {
|
||||
throw new \InvalidArgumentException(sprintf(
|
||||
'The following options are not supported "%s"', implode(', ', $diff)
|
||||
));
|
||||
throw new \InvalidArgumentException(sprintf('The following options are not supported "%s"', implode(', ', $diff)));
|
||||
}
|
||||
|
||||
$this->memcache = $memcache;
|
||||
|
@ -50,9 +50,7 @@ class MemcachedSessionHandler extends AbstractSessionHandler
|
||||
$this->memcached = $memcached;
|
||||
|
||||
if ($diff = array_diff(array_keys($options), array('prefix', 'expiretime'))) {
|
||||
throw new \InvalidArgumentException(sprintf(
|
||||
'The following options are not supported "%s"', implode(', ', $diff)
|
||||
));
|
||||
throw new \InvalidArgumentException(sprintf('The following options are not supported "%s"', implode(', ', $diff)));
|
||||
}
|
||||
|
||||
$this->ttl = isset($options['expiretime']) ? (int) $options['expiretime'] : 86400;
|
||||
|
@ -79,10 +79,7 @@ abstract class Bundle implements BundleInterface
|
||||
$expectedAlias = Container::underscore($basename);
|
||||
|
||||
if ($expectedAlias != $extension->getAlias()) {
|
||||
throw new \LogicException(sprintf(
|
||||
'Users will expect the alias of the default extension of a bundle to be the underscored version of the bundle name ("%s"). You can override "Bundle::getContainerExtension()" if you want to use "%s" or another alias.',
|
||||
$expectedAlias, $extension->getAlias()
|
||||
));
|
||||
throw new \LogicException(sprintf('Users will expect the alias of the default extension of a bundle to be the underscored version of the bundle name ("%s"). You can override "Bundle::getContainerExtension()" if you want to use "%s" or another alias.', $expectedAlias, $extension->getAlias()));
|
||||
}
|
||||
|
||||
$this->extension = $extension;
|
||||
|
@ -276,11 +276,7 @@ abstract class Kernel implements KernelInterface, RebootableInterface, Terminabl
|
||||
foreach ($bundles as $bundle) {
|
||||
if ($isResource && file_exists($file = $dir.'/'.$bundle->getName().$overridePath)) {
|
||||
if (null !== $resourceBundle) {
|
||||
throw new \RuntimeException(sprintf('"%s" resource is hidden by a resource from the "%s" derived bundle. Create a "%s" file to override the bundle resource.',
|
||||
$file,
|
||||
$resourceBundle,
|
||||
$dir.'/'.$bundles[0]->getName().$overridePath
|
||||
));
|
||||
throw new \RuntimeException(sprintf('"%s" resource is hidden by a resource from the "%s" derived bundle. Create a "%s" file to override the bundle resource.', $file, $resourceBundle, $dir.'/'.$bundles[0]->getName().$overridePath));
|
||||
}
|
||||
|
||||
if ($first) {
|
||||
|
@ -37,10 +37,7 @@ class GenrbCompiler implements BundleCompilerInterface
|
||||
exec('which '.$genrb, $output, $status);
|
||||
|
||||
if (0 !== $status) {
|
||||
throw new RuntimeException(sprintf(
|
||||
'The command "%s" is not installed',
|
||||
$genrb
|
||||
));
|
||||
throw new RuntimeException(sprintf('The command "%s" is not installed', $genrb));
|
||||
}
|
||||
|
||||
$this->genrb = ($envVars ? $envVars.' ' : '').$genrb;
|
||||
@ -58,12 +55,7 @@ class GenrbCompiler implements BundleCompilerInterface
|
||||
exec($this->genrb.' --quiet -e UTF-8 -d '.$targetDir.' '.$sourcePath, $output, $status);
|
||||
|
||||
if (0 !== $status) {
|
||||
throw new RuntimeException(sprintf(
|
||||
'genrb failed with status %d while compiling %s to %s.',
|
||||
$status,
|
||||
$sourcePath,
|
||||
$targetDir
|
||||
));
|
||||
throw new RuntimeException(sprintf('genrb failed with status %d while compiling %s to %s.', $status, $sourcePath, $targetDir));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -41,11 +41,7 @@ class IntlBundleReader implements BundleReaderInterface
|
||||
// The bundle is NULL if the path does not look like a resource bundle
|
||||
// (i.e. contain a bunch of *.res files)
|
||||
if (null === $bundle) {
|
||||
throw new ResourceBundleNotFoundException(sprintf(
|
||||
'The resource bundle "%s/%s.res" could not be found.',
|
||||
$path,
|
||||
$locale
|
||||
));
|
||||
throw new ResourceBundleNotFoundException(sprintf('The resource bundle "%s/%s.res" could not be found.', $path, $locale));
|
||||
}
|
||||
|
||||
// Other possible errors are U_USING_FALLBACK_WARNING and U_ZERO_ERROR,
|
||||
|
@ -36,27 +36,17 @@ class JsonBundleReader implements BundleReaderInterface
|
||||
}
|
||||
|
||||
if (!file_exists($fileName)) {
|
||||
throw new ResourceBundleNotFoundException(sprintf(
|
||||
'The resource bundle "%s" does not exist.',
|
||||
$fileName
|
||||
));
|
||||
throw new ResourceBundleNotFoundException(sprintf('The resource bundle "%s" does not exist.', $fileName));
|
||||
}
|
||||
|
||||
if (!is_file($fileName)) {
|
||||
throw new RuntimeException(sprintf(
|
||||
'The resource bundle "%s" is not a file.',
|
||||
$fileName
|
||||
));
|
||||
throw new RuntimeException(sprintf('The resource bundle "%s" is not a file.', $fileName));
|
||||
}
|
||||
|
||||
$data = json_decode(file_get_contents($fileName), true);
|
||||
|
||||
if (null === $data) {
|
||||
throw new RuntimeException(sprintf(
|
||||
'The resource bundle "%s" contains invalid JSON: %s',
|
||||
$fileName,
|
||||
json_last_error_msg()
|
||||
));
|
||||
throw new RuntimeException(sprintf('The resource bundle "%s" contains invalid JSON: %s', $fileName, json_last_error_msg()));
|
||||
}
|
||||
|
||||
return $data;
|
||||
|
@ -36,19 +36,11 @@ class PhpBundleReader implements BundleReaderInterface
|
||||
}
|
||||
|
||||
if (!file_exists($fileName)) {
|
||||
throw new ResourceBundleNotFoundException(sprintf(
|
||||
'The resource bundle "%s/%s.php" does not exist.',
|
||||
$path,
|
||||
$locale
|
||||
));
|
||||
throw new ResourceBundleNotFoundException(sprintf('The resource bundle "%s/%s.php" does not exist.', $path, $locale));
|
||||
}
|
||||
|
||||
if (!is_file($fileName)) {
|
||||
throw new RuntimeException(sprintf(
|
||||
'The resource bundle "%s/%s.php" is not a file.',
|
||||
$path,
|
||||
$locale
|
||||
));
|
||||
throw new RuntimeException(sprintf('The resource bundle "%s/%s.php" is not a file.', $path, $locale));
|
||||
}
|
||||
|
||||
return include $fileName;
|
||||
|
@ -173,32 +173,19 @@ class LanguageDataGenerator extends AbstractDataGenerator
|
||||
if (isset(self::$preferredAlpha2ToAlpha3Mapping[$language])) {
|
||||
// Validate to prevent typos
|
||||
if (!isset($aliases[self::$preferredAlpha2ToAlpha3Mapping[$language]])) {
|
||||
throw new RuntimeException(
|
||||
'The statically set three-letter mapping '.
|
||||
self::$preferredAlpha2ToAlpha3Mapping[$language].' '.
|
||||
'for the language code '.$language.' seems to be '.
|
||||
'invalid. Typo?'
|
||||
);
|
||||
throw new RuntimeException('The statically set three-letter mapping '.self::$preferredAlpha2ToAlpha3Mapping[$language].' for the language code '.$language.' seems to be invalid. Typo?');
|
||||
}
|
||||
|
||||
$alpha3 = self::$preferredAlpha2ToAlpha3Mapping[$language];
|
||||
$alpha2 = $aliases[$alpha3]['replacement'];
|
||||
|
||||
if ($language !== $alpha2) {
|
||||
throw new RuntimeException(
|
||||
'The statically set three-letter mapping '.$alpha3.' '.
|
||||
'for the language code '.$language.' seems to be '.
|
||||
'an alias for '.$alpha2.'. Wrong mapping?'
|
||||
);
|
||||
throw new RuntimeException('The statically set three-letter mapping '.$alpha3.' for the language code '.$language.' seems to be an alias for '.$alpha2.'. Wrong mapping?');
|
||||
}
|
||||
|
||||
$alpha2ToAlpha3[$language] = $alpha3;
|
||||
} elseif (isset($alpha2ToAlpha3[$language])) {
|
||||
throw new RuntimeException(
|
||||
'Multiple three-letter mappings exist for the language '.
|
||||
'code '.$language.'. Please add one of them to the '.
|
||||
'property $preferredAlpha2ToAlpha3Mapping.'
|
||||
);
|
||||
throw new RuntimeException('Multiple three-letter mappings exist for the language code '.$language.'. Please add one of them to the property $preferredAlpha2ToAlpha3Mapping.');
|
||||
} else {
|
||||
$alpha2ToAlpha3[$language] = $alias;
|
||||
}
|
||||
|
@ -36,10 +36,7 @@ class RecursiveArrayAccess
|
||||
}
|
||||
}
|
||||
|
||||
throw new OutOfBoundsException(sprintf(
|
||||
'The index %s does not exist.',
|
||||
$index
|
||||
));
|
||||
throw new OutOfBoundsException(sprintf('The index %s does not exist.', $index));
|
||||
}
|
||||
|
||||
return $array;
|
||||
|
@ -53,10 +53,7 @@ class RingBuffer implements \ArrayAccess
|
||||
public function offsetGet($key)
|
||||
{
|
||||
if (!isset($this->indices[$key])) {
|
||||
throw new OutOfBoundsException(sprintf(
|
||||
'The index "%s" does not exist.',
|
||||
$key
|
||||
));
|
||||
throw new OutOfBoundsException(sprintf('The index "%s" does not exist.', $key));
|
||||
}
|
||||
|
||||
return $this->values[$this->indices[$key]];
|
||||
|
@ -106,10 +106,7 @@ class TimezoneTransformer extends Transformer
|
||||
$signal = '-' == $matches['signal'] ? '+' : '-';
|
||||
|
||||
if (0 < $minutes) {
|
||||
throw new NotImplementedException(sprintf(
|
||||
'It is not possible to use a GMT time zone with minutes offset different than zero (0). GMT time zone tried: %s.',
|
||||
$formattedTimeZone
|
||||
));
|
||||
throw new NotImplementedException(sprintf('It is not possible to use a GMT time zone with minutes offset different than zero (0). GMT time zone tried: %s.', $formattedTimeZone));
|
||||
}
|
||||
|
||||
return 'Etc/GMT'.(0 !== $hours ? $signal.$hours : '');
|
||||
|
@ -360,10 +360,7 @@ class NumberFormatter
|
||||
}
|
||||
|
||||
if (self::CURRENCY == $this->style) {
|
||||
throw new NotImplementedException(sprintf(
|
||||
'%s() method does not support the formatting of currencies (instance with CURRENCY style). %s',
|
||||
__METHOD__, NotImplementedException::INTL_INSTALL_MESSAGE
|
||||
));
|
||||
throw new NotImplementedException(sprintf('%s() method does not support the formatting of currencies (instance with CURRENCY style). %s', __METHOD__, NotImplementedException::INTL_INSTALL_MESSAGE));
|
||||
}
|
||||
|
||||
// Only the default type is supported.
|
||||
|
@ -381,11 +381,7 @@ class OptionsResolver implements Options
|
||||
}
|
||||
|
||||
if (!isset($this->defined[$option])) {
|
||||
throw new UndefinedOptionsException(sprintf(
|
||||
'The option "%s" does not exist. Defined options are: "%s".',
|
||||
$option,
|
||||
implode('", "', array_keys($this->defined))
|
||||
));
|
||||
throw new UndefinedOptionsException(sprintf('The option "%s" does not exist. Defined options are: "%s".', $option, implode('", "', array_keys($this->defined))));
|
||||
}
|
||||
|
||||
$this->normalizers[$option] = $normalizer;
|
||||
@ -424,11 +420,7 @@ class OptionsResolver implements Options
|
||||
}
|
||||
|
||||
if (!isset($this->defined[$option])) {
|
||||
throw new UndefinedOptionsException(sprintf(
|
||||
'The option "%s" does not exist. Defined options are: "%s".',
|
||||
$option,
|
||||
implode('", "', array_keys($this->defined))
|
||||
));
|
||||
throw new UndefinedOptionsException(sprintf('The option "%s" does not exist. Defined options are: "%s".', $option, implode('", "', array_keys($this->defined))));
|
||||
}
|
||||
|
||||
$this->allowedValues[$option] = \is_array($allowedValues) ? $allowedValues : array($allowedValues);
|
||||
@ -469,11 +461,7 @@ class OptionsResolver implements Options
|
||||
}
|
||||
|
||||
if (!isset($this->defined[$option])) {
|
||||
throw new UndefinedOptionsException(sprintf(
|
||||
'The option "%s" does not exist. Defined options are: "%s".',
|
||||
$option,
|
||||
implode('", "', array_keys($this->defined))
|
||||
));
|
||||
throw new UndefinedOptionsException(sprintf('The option "%s" does not exist. Defined options are: "%s".', $option, implode('", "', array_keys($this->defined))));
|
||||
}
|
||||
|
||||
if (!\is_array($allowedValues)) {
|
||||
@ -514,11 +502,7 @@ class OptionsResolver implements Options
|
||||
}
|
||||
|
||||
if (!isset($this->defined[$option])) {
|
||||
throw new UndefinedOptionsException(sprintf(
|
||||
'The option "%s" does not exist. Defined options are: "%s".',
|
||||
$option,
|
||||
implode('", "', array_keys($this->defined))
|
||||
));
|
||||
throw new UndefinedOptionsException(sprintf('The option "%s" does not exist. Defined options are: "%s".', $option, implode('", "', array_keys($this->defined))));
|
||||
}
|
||||
|
||||
$this->allowedTypes[$option] = (array) $allowedTypes;
|
||||
@ -553,11 +537,7 @@ class OptionsResolver implements Options
|
||||
}
|
||||
|
||||
if (!isset($this->defined[$option])) {
|
||||
throw new UndefinedOptionsException(sprintf(
|
||||
'The option "%s" does not exist. Defined options are: "%s".',
|
||||
$option,
|
||||
implode('", "', array_keys($this->defined))
|
||||
));
|
||||
throw new UndefinedOptionsException(sprintf('The option "%s" does not exist. Defined options are: "%s".', $option, implode('", "', array_keys($this->defined))));
|
||||
}
|
||||
|
||||
if (!isset($this->allowedTypes[$option])) {
|
||||
@ -662,11 +642,7 @@ class OptionsResolver implements Options
|
||||
ksort($clone->defined);
|
||||
ksort($diff);
|
||||
|
||||
throw new UndefinedOptionsException(sprintf(
|
||||
(\count($diff) > 1 ? 'The options "%s" do not exist.' : 'The option "%s" does not exist.').' Defined options are: "%s".',
|
||||
implode('", "', array_keys($diff)),
|
||||
implode('", "', array_keys($clone->defined))
|
||||
));
|
||||
throw new UndefinedOptionsException(sprintf((\count($diff) > 1 ? 'The options "%s" do not exist.' : 'The option "%s" does not exist.').' Defined options are: "%s".', implode('", "', array_keys($diff)), implode('", "', array_keys($clone->defined))));
|
||||
}
|
||||
|
||||
// Override options set by the user
|
||||
@ -681,10 +657,7 @@ class OptionsResolver implements Options
|
||||
if (\count($diff) > 0) {
|
||||
ksort($diff);
|
||||
|
||||
throw new MissingOptionsException(sprintf(
|
||||
\count($diff) > 1 ? 'The required options "%s" are missing.' : 'The required option "%s" is missing.',
|
||||
implode('", "', array_keys($diff))
|
||||
));
|
||||
throw new MissingOptionsException(sprintf(\count($diff) > 1 ? 'The required options "%s" are missing.' : 'The required option "%s" is missing.', implode('", "', array_keys($diff))));
|
||||
}
|
||||
|
||||
// Lock the container
|
||||
@ -728,17 +701,10 @@ class OptionsResolver implements Options
|
||||
// Check whether the option is set at all
|
||||
if (!array_key_exists($option, $this->defaults)) {
|
||||
if (!isset($this->defined[$option])) {
|
||||
throw new NoSuchOptionException(sprintf(
|
||||
'The option "%s" does not exist. Defined options are: "%s".',
|
||||
$option,
|
||||
implode('", "', array_keys($this->defined))
|
||||
));
|
||||
throw new NoSuchOptionException(sprintf('The option "%s" does not exist. Defined options are: "%s".', $option, implode('", "', array_keys($this->defined))));
|
||||
}
|
||||
|
||||
throw new NoSuchOptionException(sprintf(
|
||||
'The optional option "%s" has no value set. You should make sure it is set with "isset" before reading it.',
|
||||
$option
|
||||
));
|
||||
throw new NoSuchOptionException(sprintf('The optional option "%s" has no value set. You should make sure it is set with "isset" before reading it.', $option));
|
||||
}
|
||||
|
||||
$value = $this->defaults[$option];
|
||||
@ -748,10 +714,7 @@ class OptionsResolver implements Options
|
||||
// If the closure is already being called, we have a cyclic
|
||||
// dependency
|
||||
if (isset($this->calling[$option])) {
|
||||
throw new OptionDefinitionException(sprintf(
|
||||
'The options "%s" have a cyclic dependency.',
|
||||
implode('", "', array_keys($this->calling))
|
||||
));
|
||||
throw new OptionDefinitionException(sprintf('The options "%s" have a cyclic dependency.', implode('", "', array_keys($this->calling))));
|
||||
}
|
||||
|
||||
// The following section must be protected from cyclic
|
||||
@ -838,10 +801,7 @@ class OptionsResolver implements Options
|
||||
// If the closure is already being called, we have a cyclic
|
||||
// dependency
|
||||
if (isset($this->calling[$option])) {
|
||||
throw new OptionDefinitionException(sprintf(
|
||||
'The options "%s" have a cyclic dependency.',
|
||||
implode('", "', array_keys($this->calling))
|
||||
));
|
||||
throw new OptionDefinitionException(sprintf('The options "%s" have a cyclic dependency.', implode('", "', array_keys($this->calling))));
|
||||
}
|
||||
|
||||
$normalizer = $this->normalizers[$option];
|
||||
|
@ -1565,8 +1565,8 @@ class Process implements \IteratorAggregate
|
||||
$this->exitcode = null;
|
||||
$this->fallbackStatus = array();
|
||||
$this->processInformation = null;
|
||||
$this->stdout = fopen('php://temp/maxmemory:'.(1024 * 1024), 'wb+');
|
||||
$this->stderr = fopen('php://temp/maxmemory:'.(1024 * 1024), 'wb+');
|
||||
$this->stdout = fopen('php://temp/maxmemory:'.(1024 * 1024), 'w+b');
|
||||
$this->stderr = fopen('php://temp/maxmemory:'.(1024 * 1024), 'w+b');
|
||||
$this->process = null;
|
||||
$this->latestSignal = null;
|
||||
$this->status = self::STATUS_READY;
|
||||
|
@ -368,22 +368,13 @@ class PropertyAccessor implements PropertyAccessorInterface
|
||||
if (!$ignoreInvalidIndices) {
|
||||
if (!\is_array($zval[self::VALUE])) {
|
||||
if (!$zval[self::VALUE] instanceof \Traversable) {
|
||||
throw new NoSuchIndexException(sprintf(
|
||||
'Cannot read index "%s" while trying to traverse path "%s".',
|
||||
$property,
|
||||
(string) $propertyPath
|
||||
));
|
||||
throw new NoSuchIndexException(sprintf('Cannot read index "%s" while trying to traverse path "%s".', $property, (string) $propertyPath));
|
||||
}
|
||||
|
||||
$zval[self::VALUE] = iterator_to_array($zval[self::VALUE]);
|
||||
}
|
||||
|
||||
throw new NoSuchIndexException(sprintf(
|
||||
'Cannot read index "%s" while trying to traverse path "%s". Available indices are "%s".',
|
||||
$property,
|
||||
(string) $propertyPath,
|
||||
print_r(array_keys($zval[self::VALUE]), true)
|
||||
));
|
||||
throw new NoSuchIndexException(sprintf('Cannot read index "%s" while trying to traverse path "%s". Available indices are "%s".', $property, (string) $propertyPath, print_r(array_keys($zval[self::VALUE]), true)));
|
||||
}
|
||||
|
||||
if ($i + 1 < $propertyPath->getLength()) {
|
||||
|
@ -77,12 +77,7 @@ class PropertyPath implements \IteratorAggregate, PropertyPathInterface
|
||||
return;
|
||||
}
|
||||
if (!\is_string($propertyPath)) {
|
||||
throw new InvalidArgumentException(sprintf(
|
||||
'The property path constructor needs a string or an instance of '.
|
||||
'"Symfony\Component\PropertyAccess\PropertyPath". '.
|
||||
'Got: "%s"',
|
||||
\is_object($propertyPath) ? \get_class($propertyPath) : \gettype($propertyPath)
|
||||
));
|
||||
throw new InvalidArgumentException(sprintf('The property path constructor needs a string or an instance of "Symfony\Component\PropertyAccess\PropertyPath". Got: "%s"', \is_object($propertyPath) ? \get_class($propertyPath) : \gettype($propertyPath)));
|
||||
}
|
||||
|
||||
if ('' === $propertyPath) {
|
||||
@ -113,12 +108,7 @@ class PropertyPath implements \IteratorAggregate, PropertyPathInterface
|
||||
}
|
||||
|
||||
if ('' !== $remaining) {
|
||||
throw new InvalidPropertyPathException(sprintf(
|
||||
'Could not parse property path "%s". Unexpected token "%s" at position %d',
|
||||
$propertyPath,
|
||||
$remaining[0],
|
||||
$position
|
||||
));
|
||||
throw new InvalidPropertyPathException(sprintf('Could not parse property path "%s". Unexpected token "%s" at position %d', $propertyPath, $remaining[0], $position));
|
||||
}
|
||||
|
||||
$this->length = \count($this->elements);
|
||||
|
@ -203,28 +203,16 @@ class YamlFileLoader extends FileLoader
|
||||
throw new \InvalidArgumentException(sprintf('The definition of "%s" in "%s" must be a YAML array.', $name, $path));
|
||||
}
|
||||
if ($extraKeys = array_diff(array_keys($config), self::$availableKeys)) {
|
||||
throw new \InvalidArgumentException(sprintf(
|
||||
'The routing file "%s" contains unsupported keys for "%s": "%s". Expected one of: "%s".',
|
||||
$path, $name, implode('", "', $extraKeys), implode('", "', self::$availableKeys)
|
||||
));
|
||||
throw new \InvalidArgumentException(sprintf('The routing file "%s" contains unsupported keys for "%s": "%s". Expected one of: "%s".', $path, $name, implode('", "', $extraKeys), implode('", "', self::$availableKeys)));
|
||||
}
|
||||
if (isset($config['resource']) && isset($config['path'])) {
|
||||
throw new \InvalidArgumentException(sprintf(
|
||||
'The routing file "%s" must not specify both the "resource" key and the "path" key for "%s". Choose between an import and a route definition.',
|
||||
$path, $name
|
||||
));
|
||||
throw new \InvalidArgumentException(sprintf('The routing file "%s" must not specify both the "resource" key and the "path" key for "%s". Choose between an import and a route definition.', $path, $name));
|
||||
}
|
||||
if (!isset($config['resource']) && isset($config['type'])) {
|
||||
throw new \InvalidArgumentException(sprintf(
|
||||
'The "type" key for the route definition "%s" in "%s" is unsupported. It is only available for imports in combination with the "resource" key.',
|
||||
$name, $path
|
||||
));
|
||||
throw new \InvalidArgumentException(sprintf('The "type" key for the route definition "%s" in "%s" is unsupported. It is only available for imports in combination with the "resource" key.', $name, $path));
|
||||
}
|
||||
if (!isset($config['resource']) && !isset($config['path'])) {
|
||||
throw new \InvalidArgumentException(sprintf(
|
||||
'You must define a "path" for the route "%s" in file "%s".',
|
||||
$name, $path
|
||||
));
|
||||
throw new \InvalidArgumentException(sprintf('You must define a "path" for the route "%s" in file "%s".', $name, $path));
|
||||
}
|
||||
if (isset($config['controller']) && isset($config['defaults']['_controller'])) {
|
||||
throw new \InvalidArgumentException(sprintf('The routing file "%s" must not specify both the "controller" key and the defaults key "_controller" for "%s".', $path, $name));
|
||||
|
@ -213,10 +213,7 @@ class GuardAuthenticationListener implements ListenerInterface
|
||||
}
|
||||
|
||||
if (!$response instanceof Response) {
|
||||
throw new \LogicException(sprintf(
|
||||
'%s::onAuthenticationSuccess *must* return a Response if you want to use the remember me functionality. Return a Response, or set remember_me to false under the guard configuration.',
|
||||
\get_class($guardAuthenticator)
|
||||
));
|
||||
throw new \LogicException(sprintf('%s::onAuthenticationSuccess *must* return a Response if you want to use the remember me functionality. Return a Response, or set remember_me to false under the guard configuration.', \get_class($guardAuthenticator)));
|
||||
}
|
||||
|
||||
$this->rememberMeServices->loginSuccess($request, $response, $token);
|
||||
|
@ -86,11 +86,7 @@ class GuardAuthenticatorHandler
|
||||
return $response;
|
||||
}
|
||||
|
||||
throw new \UnexpectedValueException(sprintf(
|
||||
'The %s::onAuthenticationSuccess method must return null or a Response object. You returned %s.',
|
||||
\get_class($guardAuthenticator),
|
||||
\is_object($response) ? \get_class($response) : \gettype($response)
|
||||
));
|
||||
throw new \UnexpectedValueException(sprintf('The %s::onAuthenticationSuccess method must return null or a Response object. You returned %s.', \get_class($guardAuthenticator), \is_object($response) ? \get_class($response) : \gettype($response)));
|
||||
}
|
||||
|
||||
/**
|
||||
@ -134,11 +130,7 @@ class GuardAuthenticatorHandler
|
||||
return $response;
|
||||
}
|
||||
|
||||
throw new \UnexpectedValueException(sprintf(
|
||||
'The %s::onAuthenticationFailure method must return null or a Response object. You returned %s.',
|
||||
\get_class($guardAuthenticator),
|
||||
\is_object($response) ? \get_class($response) : \gettype($response)
|
||||
));
|
||||
throw new \UnexpectedValueException(sprintf('The %s::onAuthenticationFailure method must return null or a Response object. You returned %s.', \get_class($guardAuthenticator), \is_object($response) ? \get_class($response) : \gettype($response)));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -120,10 +120,7 @@ abstract class AbstractNormalizer extends SerializerAwareNormalizer implements N
|
||||
{
|
||||
foreach ($callbacks as $attribute => $callback) {
|
||||
if (!\is_callable($callback)) {
|
||||
throw new InvalidArgumentException(sprintf(
|
||||
'The given callback for attribute "%s" is not callable.',
|
||||
$attribute
|
||||
));
|
||||
throw new InvalidArgumentException(sprintf('The given callback for attribute "%s" is not callable.', $attribute));
|
||||
}
|
||||
}
|
||||
$this->callbacks = $callbacks;
|
||||
@ -379,13 +376,7 @@ abstract class AbstractNormalizer extends SerializerAwareNormalizer implements N
|
||||
} elseif ($constructorParameter->isDefaultValueAvailable()) {
|
||||
$params[] = $constructorParameter->getDefaultValue();
|
||||
} else {
|
||||
throw new RuntimeException(
|
||||
sprintf(
|
||||
'Cannot create an instance of %s from serialized data because its constructor requires parameter "%s" to be present.',
|
||||
$class,
|
||||
$constructorParameter->name
|
||||
)
|
||||
);
|
||||
throw new RuntimeException(sprintf('Cannot create an instance of %s from serialized data because its constructor requires parameter "%s" to be present.', $class, $constructorParameter->name));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -28,7 +28,7 @@ class CsvFileDumper extends FileDumper
|
||||
*/
|
||||
public function formatCatalogue(MessageCatalogue $messages, $domain, array $options = array())
|
||||
{
|
||||
$handle = fopen('php://memory', 'rb+');
|
||||
$handle = fopen('php://memory', 'r+b');
|
||||
|
||||
foreach ($messages->all($domain) as $source => $target) {
|
||||
fputcsv($handle, array($source, $target), $this->delimiter, $this->enclosure);
|
||||
|
@ -70,11 +70,7 @@ abstract class Constraint
|
||||
public static function getErrorName($errorCode)
|
||||
{
|
||||
if (!isset(static::$errorNames[$errorCode])) {
|
||||
throw new InvalidArgumentException(sprintf(
|
||||
'The error code "%s" does not exist for constraint of type "%s".',
|
||||
$errorCode,
|
||||
\get_called_class()
|
||||
));
|
||||
throw new InvalidArgumentException(sprintf('The error code "%s" does not exist for constraint of type "%s".', $errorCode, \get_called_class()));
|
||||
}
|
||||
|
||||
return static::$errorNames[$errorCode];
|
||||
@ -137,9 +133,7 @@ abstract class Constraint
|
||||
$option = $this->getDefaultOption();
|
||||
|
||||
if (null === $option) {
|
||||
throw new ConstraintDefinitionException(
|
||||
sprintf('No default option is configured for constraint %s', \get_class($this))
|
||||
);
|
||||
throw new ConstraintDefinitionException(sprintf('No default option is configured for constraint %s', \get_class($this)));
|
||||
}
|
||||
|
||||
if (array_key_exists($option, $knownOptions)) {
|
||||
@ -151,17 +145,11 @@ abstract class Constraint
|
||||
}
|
||||
|
||||
if (\count($invalidOptions) > 0) {
|
||||
throw new InvalidOptionsException(
|
||||
sprintf('The options "%s" do not exist in constraint %s', implode('", "', $invalidOptions), \get_class($this)),
|
||||
$invalidOptions
|
||||
);
|
||||
throw new InvalidOptionsException(sprintf('The options "%s" do not exist in constraint %s', implode('", "', $invalidOptions), \get_class($this)), $invalidOptions);
|
||||
}
|
||||
|
||||
if (\count($missingOptions) > 0) {
|
||||
throw new MissingOptionsException(
|
||||
sprintf('The options "%s" must be set for constraint %s', implode('", "', array_keys($missingOptions)), \get_class($this)),
|
||||
array_keys($missingOptions)
|
||||
);
|
||||
throw new MissingOptionsException(sprintf('The options "%s" must be set for constraint %s', implode('", "', array_keys($missingOptions)), \get_class($this)), array_keys($missingOptions));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -99,13 +99,7 @@ abstract class Composite extends Constraint
|
||||
$excessGroups = array_diff($constraint->groups, $this->groups);
|
||||
|
||||
if (\count($excessGroups) > 0) {
|
||||
throw new ConstraintDefinitionException(sprintf(
|
||||
'The group(s) "%s" passed to the constraint %s '.
|
||||
'should also be passed to its containing constraint %s',
|
||||
implode('", "', $excessGroups),
|
||||
\get_class($constraint),
|
||||
\get_class($this)
|
||||
));
|
||||
throw new ConstraintDefinitionException(sprintf('The group(s) "%s" passed to the constraint %s should also be passed to its containing constraint %s', implode('", "', $excessGroups), \get_class($constraint), \get_class($this)));
|
||||
}
|
||||
} else {
|
||||
$constraint->groups = $this->groups;
|
||||
|
@ -26,10 +26,7 @@ class Traverse extends Constraint
|
||||
public function __construct($options = null)
|
||||
{
|
||||
if (\is_array($options) && array_key_exists('groups', $options)) {
|
||||
throw new ConstraintDefinitionException(sprintf(
|
||||
'The option "groups" is not supported by the constraint %s',
|
||||
__CLASS__
|
||||
));
|
||||
throw new ConstraintDefinitionException(sprintf('The option "groups" is not supported by the constraint %s', __CLASS__));
|
||||
}
|
||||
|
||||
parent::__construct($options);
|
||||
|
@ -180,17 +180,11 @@ class ClassMetadata extends GenericMetadata implements ClassMetadataInterface
|
||||
public function addConstraint(Constraint $constraint)
|
||||
{
|
||||
if (!\in_array(Constraint::CLASS_CONSTRAINT, (array) $constraint->getTargets())) {
|
||||
throw new ConstraintDefinitionException(sprintf(
|
||||
'The constraint "%s" cannot be put on classes.',
|
||||
\get_class($constraint)
|
||||
));
|
||||
throw new ConstraintDefinitionException(sprintf('The constraint "%s" cannot be put on classes.', \get_class($constraint)));
|
||||
}
|
||||
|
||||
if ($constraint instanceof Valid) {
|
||||
throw new ConstraintDefinitionException(sprintf(
|
||||
'The constraint "%s" cannot be put on classes.',
|
||||
\get_class($constraint)
|
||||
));
|
||||
throw new ConstraintDefinitionException(sprintf('The constraint "%s" cannot be put on classes.', \get_class($constraint)));
|
||||
}
|
||||
|
||||
if ($constraint instanceof Traverse) {
|
||||
|
@ -122,11 +122,7 @@ class GenericMetadata implements MetadataInterface
|
||||
public function addConstraint(Constraint $constraint)
|
||||
{
|
||||
if ($constraint instanceof Traverse) {
|
||||
throw new ConstraintDefinitionException(sprintf(
|
||||
'The constraint "%s" can only be put on classes. Please use '.
|
||||
'"Symfony\Component\Validator\Constraints\Valid" instead.',
|
||||
\get_class($constraint)
|
||||
));
|
||||
throw new ConstraintDefinitionException(sprintf('The constraint "%s" can only be put on classes. Please use "Symfony\Component\Validator\Constraints\Valid" instead.', \get_class($constraint)));
|
||||
}
|
||||
|
||||
if ($constraint instanceof Valid && null === $constraint->groups) {
|
||||
|
@ -72,10 +72,7 @@ abstract class MemberMetadata extends GenericMetadata implements PropertyMetadat
|
||||
public function addConstraint(Constraint $constraint)
|
||||
{
|
||||
if (!\in_array(Constraint::PROPERTY_CONSTRAINT, (array) $constraint->getTargets())) {
|
||||
throw new ConstraintDefinitionException(sprintf(
|
||||
'The constraint %s cannot be put on properties or getters',
|
||||
\get_class($constraint)
|
||||
));
|
||||
throw new ConstraintDefinitionException(sprintf('The constraint %s cannot be put on properties or getters', \get_class($constraint)));
|
||||
}
|
||||
|
||||
parent::addConstraint($constraint);
|
||||
|
@ -161,11 +161,7 @@ class RecursiveContextualValidator implements ContextualValidatorInterface
|
||||
return $this;
|
||||
}
|
||||
|
||||
throw new RuntimeException(sprintf(
|
||||
'Cannot validate values of type "%s" automatically. Please '.
|
||||
'provide a constraint.',
|
||||
\gettype($value)
|
||||
));
|
||||
throw new RuntimeException(sprintf('Cannot validate values of type "%s" automatically. Please provide a constraint.', \gettype($value)));
|
||||
}
|
||||
|
||||
/**
|
||||
@ -176,12 +172,7 @@ class RecursiveContextualValidator implements ContextualValidatorInterface
|
||||
$classMetadata = $this->metadataFactory->getMetadataFor($object);
|
||||
|
||||
if (!$classMetadata instanceof ClassMetadataInterface) {
|
||||
throw new ValidatorException(sprintf(
|
||||
'The metadata factory should return instances of '.
|
||||
'"\Symfony\Component\Validator\Mapping\ClassMetadataInterface", '.
|
||||
'got: "%s".',
|
||||
\is_object($classMetadata) ? \get_class($classMetadata) : \gettype($classMetadata)
|
||||
));
|
||||
throw new ValidatorException(sprintf('The metadata factory should return instances of "\Symfony\Component\Validator\Mapping\ClassMetadataInterface", got: "%s".', \is_object($classMetadata) ? \get_class($classMetadata) : \gettype($classMetadata)));
|
||||
}
|
||||
|
||||
$propertyMetadatas = $classMetadata->getPropertyMetadata($propertyName);
|
||||
@ -225,12 +216,7 @@ class RecursiveContextualValidator implements ContextualValidatorInterface
|
||||
$classMetadata = $this->metadataFactory->getMetadataFor($objectOrClass);
|
||||
|
||||
if (!$classMetadata instanceof ClassMetadataInterface) {
|
||||
throw new ValidatorException(sprintf(
|
||||
'The metadata factory should return instances of '.
|
||||
'"\Symfony\Component\Validator\Mapping\ClassMetadataInterface", '.
|
||||
'got: "%s".',
|
||||
\is_object($classMetadata) ? \get_class($classMetadata) : \gettype($classMetadata)
|
||||
));
|
||||
throw new ValidatorException(sprintf('The metadata factory should return instances of "\Symfony\Component\Validator\Mapping\ClassMetadataInterface", got: "%s".', \is_object($classMetadata) ? \get_class($classMetadata) : \gettype($classMetadata)));
|
||||
}
|
||||
|
||||
$propertyMetadatas = $classMetadata->getPropertyMetadata($propertyName);
|
||||
@ -328,12 +314,7 @@ class RecursiveContextualValidator implements ContextualValidatorInterface
|
||||
$classMetadata = $this->metadataFactory->getMetadataFor($object);
|
||||
|
||||
if (!$classMetadata instanceof ClassMetadataInterface) {
|
||||
throw new UnsupportedMetadataException(sprintf(
|
||||
'The metadata factory should return instances of '.
|
||||
'"Symfony\Component\Validator\Mapping\ClassMetadataInterface", '.
|
||||
'got: "%s".',
|
||||
\is_object($classMetadata) ? \get_class($classMetadata) : \gettype($classMetadata)
|
||||
));
|
||||
throw new UnsupportedMetadataException(sprintf('The metadata factory should return instances of "Symfony\Component\Validator\Mapping\ClassMetadataInterface", got: "%s".', \is_object($classMetadata) ? \get_class($classMetadata) : \gettype($classMetadata)));
|
||||
}
|
||||
|
||||
$this->validateClassNode(
|
||||
@ -555,12 +536,7 @@ class RecursiveContextualValidator implements ContextualValidatorInterface
|
||||
// returns two metadata objects, not just one
|
||||
foreach ($metadata->getPropertyMetadata($propertyName) as $propertyMetadata) {
|
||||
if (!$propertyMetadata instanceof PropertyMetadataInterface) {
|
||||
throw new UnsupportedMetadataException(sprintf(
|
||||
'The property metadata instances should implement '.
|
||||
'"Symfony\Component\Validator\Mapping\PropertyMetadataInterface", '.
|
||||
'got: "%s".',
|
||||
\is_object($propertyMetadata) ? \get_class($propertyMetadata) : \gettype($propertyMetadata)
|
||||
));
|
||||
throw new UnsupportedMetadataException(sprintf('The property metadata instances should implement "Symfony\Component\Validator\Mapping\PropertyMetadataInterface", got: "%s".', \is_object($propertyMetadata) ? \get_class($propertyMetadata) : \gettype($propertyMetadata)));
|
||||
}
|
||||
|
||||
$propertyValue = $propertyMetadata->getPropertyValue($object);
|
||||
@ -597,11 +573,7 @@ class RecursiveContextualValidator implements ContextualValidatorInterface
|
||||
|
||||
// If TRAVERSE, fail if we have no Traversable
|
||||
if (!$object instanceof \Traversable) {
|
||||
throw new ConstraintDefinitionException(sprintf(
|
||||
'Traversal was enabled for "%s", but this class '.
|
||||
'does not implement "\Traversable".',
|
||||
\get_class($object)
|
||||
));
|
||||
throw new ConstraintDefinitionException(sprintf('Traversal was enabled for "%s", but this class does not implement "\Traversable".', \get_class($object)));
|
||||
}
|
||||
|
||||
$this->validateEachObjectIn(
|
||||
|
Reference in New Issue
Block a user