function sf_queue_process_queue in Salesforce Suite 6.2
Same name and namespace in other branches
- 7.2 sf_queue/sf_queue.module \sf_queue_process_queue()
2 calls to sf_queue_process_queue()
- sf_queue_cron in sf_queue/
sf_queue.module - Implements hook_cron
- sf_queue_process_queue_force in sf_queue/
sf_queue.module
File
- sf_queue/
sf_queue.module, line 191 - sf_queue.module Implements export queue and administrativa for SalesForce API
Code
function sf_queue_process_queue($settings, $state) {
$duration = $settings['cron_period'];
if ($duration > 0.5) {
$duration = 0.5;
}
$limit = ini_get('max_execution_time') * $duration;
$start_time = time();
// Clean up the queue before we do any processing.
db_query('DELETE FROM {salesforce_export_queue} WHERE sf_op IN ("delete", "update") AND (sfid IS NULL OR sfid = NULL OR sfid = "")');
$settings = array_merge($settings, array(
'start_time' => $start_time,
'limit' => $limit,
));
// Order of operations: delete, update, create
if (in_array('delete', $settings['cron_operations'])) {
sf_queue_handle_deletes($settings);
}
if (in_array('create', $settings['cron_operations']) || in_array('update', $settings['cron_operations'])) {
sf_queue_handle_upserts($settings);
}
}