function services_client_error_retry in Services Client 7.2
Same name and namespace in other branches
- 7 services_client_error/services_client_error.module \services_client_error_retry()
Retry and execute error
Parameters
array $error: Error record from DB.
Return value
ServicesClientEventResult Reslt from sync operation.
3 calls to services_client_error_retry()
- ServicesClientErrorWebTestCase::testServicesClientErrors in services_client_error/
tests/ services_client_error.test - services_client_error_admin_repair_synchronize in services_client_error/
services_client_error.admin.inc - Try to resynchronize data.
- services_client_error_task_retry_call in services_client_error/
services_client_error.tasks.inc - Re-try to send data to remote connection on services client failure.
File
- services_client_error/
services_client_error.module, line 387 - Services Client error handling, re-try and reporting.
Code
function services_client_error_retry($error) {
if (empty($error['event'])) {
return;
}
// Count error retry
$error['retries']++;
$handler = services_client_get_event($error['event']);
$result = $handler
->addTag('sc_error')
->setEntity($error['entity'])
->execute();
if ($result
->success()) {
$error['status'] = $result->sc_error_status = SC_ERROR_COMPLETED;
}
else {
$error['error_code'] = $result->error_code;
$error['error_message'] = $result->error_message;
}
// Count retries.
$result->sc_error_retries = $error['retries'];
drupal_write_record('services_client_error', $error, array(
'eid',
));
return $result;
}