You are here

protected function MergeOperation::processDomain in Zircon Profile 8.0

Same name and namespace in other branches
  1. 8 vendor/symfony/translation/Catalogue/MergeOperation.php \Symfony\Component\Translation\Catalogue\MergeOperation::processDomain()

Parameters

string $domain:

Overrides AbstractOperation::processDomain

File

vendor/symfony/translation/Catalogue/MergeOperation.php, line 24

Class

MergeOperation
Merge operation between two catalogues.

Namespace

Symfony\Component\Translation\Catalogue

Code

protected function processDomain($domain) {
  $this->messages[$domain] = array(
    'all' => array(),
    'new' => array(),
    'obsolete' => array(),
  );
  foreach ($this->source
    ->all($domain) as $id => $message) {
    $this->messages[$domain]['all'][$id] = $message;
    $this->result
      ->add(array(
      $id => $message,
    ), $domain);
    if (null !== ($keyMetadata = $this->source
      ->getMetadata($id, $domain))) {
      $this->result
        ->setMetadata($id, $keyMetadata, $domain);
    }
  }
  foreach ($this->target
    ->all($domain) as $id => $message) {
    if (!$this->source
      ->has($id, $domain)) {
      $this->messages[$domain]['all'][$id] = $message;
      $this->messages[$domain]['new'][$id] = $message;
      $this->result
        ->add(array(
        $id => $message,
      ), $domain);
      if (null !== ($keyMetadata = $this->target
        ->getMetadata($id, $domain))) {
        $this->result
          ->setMetadata($id, $keyMetadata, $domain);
      }
    }
  }
}