webservice MDL-21511 add webservice_parameter_exception to indicate which external parameter is invalid

This commit is contained in:
jerome mouneyrac
2010-02-05 04:10:36 +00:00
parent 71f61c41f3
commit 559a5dbd1d
3 changed files with 28 additions and 2 deletions
+10 -2
View File
@@ -168,11 +168,19 @@ class external_api {
}
if ($subdesc instanceof external_value) {
if ($subdesc->required == VALUE_DEFAULT) {
$result[$key] = self::validate_parameters($subdesc, $subdesc->default);
try {
$result[$key] = self::validate_parameters($subdesc, $subdesc->default);
} catch (invalid_parameter_exception $e) {
throw new webservice_parameter_exception('invalidextparam',$key);
}
}
}
} else {
$result[$key] = self::validate_parameters($subdesc, $params[$key]);
try {
$result[$key] = self::validate_parameters($subdesc, $params[$key]);
} catch (invalid_parameter_exception $e) {
throw new webservice_parameter_exception('invalidextparam',$key);
}
}
unset($params[$key]);
}