From 476c0e82d3ed42cc42b247485aedf7d019b27fc9 Mon Sep 17 00:00:00 2001 From: jerome mouneyrac Date: Wed, 14 Jul 2010 07:33:26 +0000 Subject: [PATCH] webservice MDL-12886 exception more explicit when clean response value fail --- lang/en/webservice.php | 1 + lib/externallib.php | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/lang/en/webservice.php b/lang/en/webservice.php index ba2c7aa2158..30d09a33dd7 100644 --- a/lang/en/webservice.php +++ b/lang/en/webservice.php @@ -76,6 +76,7 @@ $string['errormissingkey'] = 'Missing required key in single structure: {$a}'; $string['errornotemptydefaultparamarray'] = 'The web service description parameter named \'{$a}\' is an single or multiple structure. The default can only be empty array. Check web service description.'; $string['erroronlyarray'] = 'Only arrays accepted.'; $string['erroroptionalparamarray'] = 'The web service description parameter named \'{$a}\' is an single or multiple structure. It can not be set as VALUE_OPTIONAL. Check web service description.'; +$string['errorresponsemissingkey'] = 'Error in response - Missing following required key in a single structure: {$a}'; $string['errorscalartype'] = 'Scalar type expected, array or object received.'; $string['errorunexpectedkey'] = 'Unexpected keys detected in parameter array.'; $string['execute'] = 'Execute'; diff --git a/lib/externallib.php b/lib/externallib.php index b4067a50796..551ad114f8c 100644 --- a/lib/externallib.php +++ b/lib/externallib.php @@ -235,7 +235,7 @@ class external_api { foreach ($description->keys as $key=>$subdesc) { if (!array_key_exists($key, $response)) { if ($subdesc->required == VALUE_REQUIRED) { - throw new invalid_response_exception(get_string('errormissingkey', 'webservice', $key)); + throw new webservice_parameter_exception('errorresponsemissingkey', $key); } if ($subdesc instanceof external_value) { if ($subdesc->required == VALUE_DEFAULT) {