DownloadAllTranslationsFromLingotekAction.php in Lingotek Translation 8.2
Same filename and directory in other branches
- 4.0.x src/Plugin/Action/DownloadAllTranslationsFromLingotekAction.php
- 3.0.x src/Plugin/Action/DownloadAllTranslationsFromLingotekAction.php
- 3.1.x src/Plugin/Action/DownloadAllTranslationsFromLingotekAction.php
- 3.2.x src/Plugin/Action/DownloadAllTranslationsFromLingotekAction.php
- 3.3.x src/Plugin/Action/DownloadAllTranslationsFromLingotekAction.php
- 3.4.x src/Plugin/Action/DownloadAllTranslationsFromLingotekAction.php
- 3.5.x src/Plugin/Action/DownloadAllTranslationsFromLingotekAction.php
- 3.6.x src/Plugin/Action/DownloadAllTranslationsFromLingotekAction.php
- 3.7.x src/Plugin/Action/DownloadAllTranslationsFromLingotekAction.php
- 3.8.x src/Plugin/Action/DownloadAllTranslationsFromLingotekAction.php
Namespace
Drupal\lingotek\Plugin\ActionFile
src/Plugin/Action/DownloadAllTranslationsFromLingotekAction.phpView source
<?php
namespace Drupal\lingotek\Plugin\Action;
use Drupal\lingotek\Exception\LingotekApiException;
use Drupal\lingotek\Exception\LingotekContentEntityStorageException;
/**
 * Assigns ownership of a node to a user.
 *
 * @Action(
 *   id = "entity:lingotek_download_translations_action",
 *   action_label = @Translation("Download all @entity_label translations from Lingotek"),
 *   category = "Lingotek",
 *   deriver = "Drupal\lingotek\Plugin\Action\Derivative\ContentEntityLingotekActionDeriver",
 * )
 */
class DownloadAllTranslationsFromLingotekAction extends LingotekContentEntityActionBase {
  /**
   * {@inheritdoc}
   */
  public function execute($entity = NULL) {
    $result = FALSE;
    try {
      /** @var \Drupal\node\NodeInterface $entity */
      $result = $this->translationService
        ->downloadDocuments($entity);
    } catch (LingotekApiException $exception) {
      $this
        ->messenger()
        ->addError(t('The download for @entity_type %title translation failed. Please try again.', [
        '@entity_type' => $entity
          ->getEntityTypeId(),
        '%title' => $entity
          ->label(),
      ]));
    } catch (LingotekContentEntityStorageException $storage_exception) {
      \Drupal::logger('lingotek')
        ->error('The download for @entity_type %title failed because of the length of one field translation value: %table.', [
        '@entity_type' => $entity
          ->getEntityTypeId(),
        '%title' => $entity
          ->label(),
        '%table' => $storage_exception
          ->getTable(),
      ]);
      $this
        ->messenger()
        ->addError(t('The download for @entity_type %title failed because of the length of one field translation value: %table.', [
        '@entity_type' => $entity
          ->getEntityTypeId(),
        '%title' => $entity
          ->label(),
        '%table' => $storage_exception
          ->getTable(),
      ]));
    }
    return $result;
  }
}Classes
| Name   | Description | 
|---|---|
| DownloadAllTranslationsFromLingotekAction | Assigns ownership of a node to a user. | 
