function salesforce_pull_update_8004 in Salesforce Suite 8.3
Same name and namespace in other branches
- 8.4 modules/salesforce_pull/salesforce_pull.install \salesforce_pull_update_8004()
- 5.0.x modules/salesforce_pull/salesforce_pull.install \salesforce_pull_update_8004()
Refactor pull timestamps, again, into per-mapping timestamps.
File
- modules/
salesforce_pull/ salesforce_pull.install, line 78 - Install/uninstall tasks for the Salesforce Pull module.
Code
function salesforce_pull_update_8004() {
$mapping_pull_info = [];
$pull_info = \Drupal::state()
->get('salesforce.sobject_pull_info', []);
$mappings = \Drupal::entityTypeManager()
->getStorage('salesforce_mapping')
->loadMultiple();
$new_pull_info = [];
foreach ($mappings as $mapping) {
$sobject_type = $mapping
->getSalesforceObjectType();
if (empty($pull_info[$sobject_type])) {
continue;
}
$mapping_pull_info = $pull_info[$sobject_type];
$new_pull_info[$mapping
->id()] = $mapping_pull_info;
}
\Drupal::state()
->set('salesforce.mapping_pull_info', $mapping_pull_info);
\Drupal::state()
->delete('salesforce.sobject_pull_info');
}