You are here

class ForwardStatistics in Forward 4.0.x

Same name in this branch
  1. 4.0.x src/Plugin/migrate/source/ForwardStatistics.php \Drupal\forward\Plugin\migrate\source\ForwardStatistics
  2. 4.0.x src/Plugin/migrate/destination/ForwardStatistics.php \Drupal\forward\Plugin\migrate\destination\ForwardStatistics
Same name and namespace in other branches
  1. 8.3 src/Plugin/migrate/destination/ForwardStatistics.php \Drupal\forward\Plugin\migrate\destination\ForwardStatistics
  2. 8 src/Plugin/migrate/destination/ForwardStatistics.php \Drupal\forward\Plugin\migrate\destination\ForwardStatistics
  3. 8.2 src/Plugin/migrate/destination/ForwardStatistics.php \Drupal\forward\Plugin\migrate\destination\ForwardStatistics
  4. 4.x src/Plugin/migrate/destination/ForwardStatistics.php \Drupal\forward\Plugin\migrate\destination\ForwardStatistics

Drupal 8 destination for forward statistics.

Plugin annotation


@MigrateDestination(
  id = "forward_statistics"
)

Hierarchy

Expanded class hierarchy of ForwardStatistics

File

src/Plugin/migrate/destination/ForwardStatistics.php, line 15

Namespace

Drupal\forward\Plugin\migrate\destination
View source
class ForwardStatistics extends ForwardDestinationBase {

  /**
   * {@inheritdoc}
   */
  public function import(Row $row, array $old_destination_id_values = []) {
    $destination = $row
      ->getDestination();
    $this->database
      ->merge('forward_statistics')
      ->key([
      'type' => $destination['type'],
      'id' => $destination['id'],
    ])
      ->fields([
      'type' => $destination['type'],
      'bundle' => $destination['bundle'],
      'id' => $destination['id'],
      'last_forward_timestamp' => $destination['last_forward_timestamp'],
      'forward_count' => $destination['forward_count'],
      'clickthrough_count' => $destination['clickthrough_count'],
    ])
      ->execute();
    return [
      $row
        ->getDestinationProperty('type'),
      $row
        ->getDestinationProperty('bundle'),
      $row
        ->getDestinationProperty('id'),
    ];
  }

  /**
   * {@inheritdoc}
   */
  public function getIds() {
    $ids['type']['type'] = 'string';
    $ids['bundle']['type'] = 'string';
    $ids['id']['type'] = 'integer';
    return $ids;
  }

  /**
   * {@inheritdoc}
   */
  public function fields(MigrationInterface $migration = NULL) {
    return [
      'type' => $this
        ->t('The entity type, which is always "node".'),
      'bundle' => $this
        ->t('The entity bundle from the node type.'),
      'id' => $this
        ->t('The entity unique ID from the node ID.'),
      'last_forward_timestamp' => $this
        ->t('The date and time the entity was last forwarded.'),
      'forward_count' => $this
        ->t('The number of times the entity was forwarded.'),
      'clickthrough_count' => $this
        ->t('The number of times that the entity was subsequently visited from a link in a forward email.'),
    ];
  }

}

Members

Namesort descending Modifiers Type Description Overrides
DependencySerializationTrait::$_entityStorages protected property
DependencySerializationTrait::$_serviceIds protected property
DependencySerializationTrait::__sleep public function 2
DependencySerializationTrait::__wakeup public function 2
DestinationBase::$migration protected property The migration.
DestinationBase::$rollbackAction protected property The rollback action to be saved for the last imported item.
DestinationBase::$supportsRollback protected property Indicates whether the destination can be rolled back.
DestinationBase::checkRequirements public function Checks if requirements for this plugin are OK. Overrides RequirementsInterface::checkRequirements
DestinationBase::getDestinationModule public function Gets the destination module handling the destination data. Overrides MigrateDestinationInterface::getDestinationModule 1
DestinationBase::rollback public function Delete the specified destination object from the target Drupal. Overrides MigrateDestinationInterface::rollback 2
DestinationBase::rollbackAction public function The rollback action for the last imported item. Overrides MigrateDestinationInterface::rollbackAction
DestinationBase::setRollbackAction protected function For a destination item being updated, set the appropriate rollback action.
DestinationBase::supportsRollback public function Whether the destination can be rolled back or not. Overrides MigrateDestinationInterface::supportsRollback
ForwardDestinationBase::$database protected property The access checker service.
ForwardDestinationBase::__construct public function Base class for forward migrate destination classes. Overrides DestinationBase::__construct
ForwardStatistics::fields public function Returns an array of destination fields. Overrides MigrateDestinationInterface::fields
ForwardStatistics::getIds public function Gets the destination IDs. Overrides MigrateDestinationInterface::getIds
ForwardStatistics::import public function Import the row. Overrides MigrateDestinationInterface::import
MessengerTrait::$messenger protected property The messenger. 27
MessengerTrait::messenger public function Gets the messenger. 27
MessengerTrait::setMessenger public function Sets the messenger.
PluginBase::$configuration protected property Configuration information passed into the plugin. 1
PluginBase::$pluginDefinition protected property The plugin implementation definition. 1
PluginBase::$pluginId protected property The plugin_id.
PluginBase::DERIVATIVE_SEPARATOR constant A string which is used to separate base plugin IDs from the derivative ID.
PluginBase::getBaseId public function Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface::getBaseId
PluginBase::getDerivativeId public function Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface::getDerivativeId
PluginBase::getPluginDefinition public function Gets the definition of the plugin implementation. Overrides PluginInspectionInterface::getPluginDefinition 2
PluginBase::getPluginId public function Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface::getPluginId
PluginBase::isConfigurable public function Determines if the plugin is configurable.
StringTranslationTrait::$stringTranslation protected property The string translation service. 4
StringTranslationTrait::formatPlural protected function Formats a string containing a count of items.
StringTranslationTrait::getNumberOfPlurals protected function Returns the number of plurals supported by a given language.
StringTranslationTrait::getStringTranslation protected function Gets the string translation service.
StringTranslationTrait::setStringTranslation public function Sets the string translation service to use. 2
StringTranslationTrait::t protected function Translates a string to the current language or to a given language.