You are here

public function PaymentStatusManager::getAncestors in Payment 8.2

Gets a payment status's ancestors.

Parameters

string $plugin_id:

Return value

array The plugin IDs of this status's ancestors.

Overrides PaymentStatusManagerInterface::getAncestors

1 call to PaymentStatusManager::getAncestors()
PaymentStatusManager::hasAncestor in src/Plugin/Payment/Status/PaymentStatusManager.php
Checks if a status has a given other status as one of its ancestors.

File

src/Plugin/Payment/Status/PaymentStatusManager.php, line 102

Class

PaymentStatusManager
Manages discovery and instantiation of payment status plugins.

Namespace

Drupal\payment\Plugin\Payment\Status

Code

public function getAncestors($plugin_id) {
  $definition = $this
    ->getDefinition($plugin_id);
  if (isset($definition['parent_id'])) {
    $parent_id = $definition['parent_id'];
    return array_unique(array_merge(array(
      $parent_id,
    ), $this
      ->getAncestors($parent_id)));
  }
  return [];
}