public function DeployProcessorQueue::publish in Deploy - Content Staging 7.2
Same name and namespace in other branches
- 7.3 plugins/DeployProcessorQueue.inc \DeployProcessorQueue::publish()
Processing method that should hand over the aggregator to the endpoint to publish all deployed entities. This method will only be called after successful deployments.
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::publish
File
- plugins/
DeployProcessorQueue.inc, line 38 - Queue API plugin for deploy Processor.
Class
- DeployProcessorQueue
- Processor class using the Queue API
Code
public function publish($deployment_key, DeployEndpoint $endpoint, $lock_name = NULL) {
$queue = DrupalQueue::get('deploy_publish');
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);
}
}
}