public function DeployProcessorQueue::deploy in Deploy - Content Staging 7.2
Same name and namespace in other branches
- 7.3 plugins/DeployProcessorQueue.inc \DeployProcessorQueue::deploy()
Main processing method that should hand over the aggregator to the endpoint to deploy all the entities.
Parameters
interger $deployment_key: The unique deployment key for this deployment.
DeployEndpoint $endpoint: The endpoint object to hand over the aggregator to.
string $lock_name: Optional name of the lock that this deployment is working under.
Overrides DeployProcessorMemory::deploy
File
- plugins/
DeployProcessorQueue.inc, line 15 - Queue API plugin for deploy Processor.
Class
- DeployProcessorQueue
- Processor class using the Queue API
Code
public function deploy($deployment_key, DeployEndpoint $endpoint, $lock_name = NULL) {
deploy_log($deployment_key, DEPLOY_STATUS_PROCESSING);
$queue = DrupalQueue::get('deploy_deploy');
foreach ($this->aggregator as $entity) {
// We don't want entities that has a cause, i.e. not dependencies, because
// those'll be taken care of when the service iterates over the queue.
if (empty($entity->__metadata['cause'])) {
$entity_info = entity_get_info($entity->__metadata['type']);
$id_key = $entity_info['entity keys']['id'];
$entity->__metadata['id'] = $entity->{$id_key};
$entity->__metadata['deployment_key'] = $deployment_key;
$entity->__metadata['plan_name'] = $this->aggregator->plan->name;
$entity->__metadata['endpoint_name'] = $endpoint->name;
$entity->__metadata['lock_name'] = $lock_name;
$queue
->createItem($entity);
}
}
}