You are here

public function DeployProcessorBatch::deploy in Deploy - Content Staging 7.3

Same name and namespace in other branches
  1. 7.2 plugins/DeployProcessorBatch.inc \DeployProcessorBatch::deploy()

Main processing method that should hand over the aggregator to the endpoint to deploy all the entities.

Parameters

integer $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/DeployProcessorBatch.inc, line 35
Batch API plugin for deploy Processor.

Class

DeployProcessorBatch
Processor class using the Batch API

Code

public function deploy($deployment_key, DeployEndpoint $endpoint, $lock_name = NULL) {
  deploy_log($deployment_key, DEPLOY_STATUS_PROCESSING);
  foreach ($this->aggregator as $entity) {
    $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;
    $this->operations[] = array(
      'deploy_queue_worker_deploy',
      array(
        $entity,
      ),
    );
  }
}