PaymentMethodManager.php in Payment 8.2
File
src/Plugin/Payment/Method/PaymentMethodManager.php
View source
<?php
namespace Drupal\payment\Plugin\Payment\Method;
use Drupal\Component\Plugin\FallbackPluginManagerInterface;
use Drupal\Core\Cache\CacheBackendInterface;
use Drupal\Core\DependencyInjection\ClassResolverInterface;
use Drupal\Core\Extension\ModuleHandlerInterface;
use Drupal\Core\Plugin\DefaultPluginManager;
use Drupal\payment\Annotations\PaymentMethod;
use Drupal\plugin\Plugin\PluginOperationsProviderPluginManagerTrait;
class PaymentMethodManager extends DefaultPluginManager implements PaymentMethodManagerInterface, FallbackPluginManagerInterface {
use PluginOperationsProviderPluginManagerTrait;
public function __construct(\Traversable $namespaces, CacheBackendInterface $cache_backend, ModuleHandlerInterface $module_handler, ClassResolverInterface $class_resolver) {
parent::__construct('Plugin/Payment/Method', $namespaces, $module_handler, PaymentMethodInterface::class, PaymentMethod::class);
$this
->alterInfo('payment_method');
$this
->setCacheBackend($cache_backend, 'payment_method', [
'payment_method',
]);
$this->classResolver = $class_resolver;
}
public function getFallbackPluginId($plugin_id, array $configuration = []) {
return 'payment_unavailable';
}
}