You are here

class PayPalExpress in PayPal for Payment 8

Same name in this branch
  1. 8 src/Plugin/Payment/MethodConfiguration/PayPalExpress.php \Drupal\paypal_payment\Plugin\Payment\MethodConfiguration\PayPalExpress
  2. 8 src/Plugin/Payment/Method/PayPalExpress.php \Drupal\paypal_payment\Plugin\Payment\Method\PayPalExpress
Same name and namespace in other branches
  1. 2.0.x src/Plugin/Payment/Method/PayPalExpress.php \Drupal\paypal_payment\Plugin\Payment\Method\PayPalExpress

PayPal Express payment method.

Plugin annotation


@PaymentMethod(
  deriver = "\Drupal\paypal_payment\Plugin\Payment\Method\PayPalExpressDeriver",
  id = "paypal_payment_express",
  operations_provider = "\Drupal\paypal_payment\Plugin\Payment\Method\PayPalExpressOperationsProvider",
)

Hierarchy

Expanded class hierarchy of PayPalExpress

1 file declares its use of PayPalExpress
PayPalExpress.php in src/Plugin/Payment/MethodConfiguration/PayPalExpress.php

File

src/Plugin/Payment/Method/PayPalExpress.php, line 20

Namespace

Drupal\paypal_payment\Plugin\Payment\Method
View source
class PayPalExpress extends PayPalBasic {

  /**
   * {@inheritdoc}
   */
  public function getWebhookUrl() : string {
    $configuration = $this
      ->getPluginDefinition();
    list(, $id) = explode(':', $configuration['id']);
    return self::webhookUrl($id);
  }

  /**
   * {@inheritdoc}
   */
  public function getWebhookId() : string {
    $configuration = $this
      ->getPluginDefinition();
    return $configuration['webhookId'];
  }

  /**
   * {{@inheritdoc}}
   */
  public function getApiContext($type) : ApiContext {
    return self::apiContext($this
      ->getPluginDefinition(), $type);
  }

  /**
   * @param $configuration
   * @param $type
   *
   * @return \PayPal\Rest\ApiContext
   */
  public static function apiContext($configuration, $type) : ApiContext {
    $apiContext = new ApiContext(new OAuthTokenCredential($configuration['clientId'], $configuration['clientSecret']));
    $storage = PhpStorageFactory::get('paypal_api_context');
    if (!$storage
      ->exists('auth.cache')) {
      $storage
        ->save('auth.cache', '');
    }
    $apiContext
      ->setConfig([
      'mode' => $configuration['production'] ? 'live' : 'sandbox',
      'log.LogEnabled' => $configuration['logging'][$type],
      'log.FileName' => \Drupal::service('file_system')
        ->getTempDirectory() . '/DrupalPayPal.log',
      'log.LogLevel' => $configuration['loglevel'],
      'cache.enabled' => TRUE,
      'cache.FileName' => DRUPAL_ROOT . '/' . $storage
        ->getFullPath('auth.cache'),
    ]);
    return $apiContext;
  }

  /**
   * @param $id
   *
   * @return string
   */
  public static function webhookUrl($id) : string {
    $webhook = new Url('paypal_payment.webhook', [
      'payment_method_id' => $id,
    ], [
      'absolute' => TRUE,
    ]);
    return $webhook
      ->toString(TRUE)
      ->getGeneratedUrl();
  }

}

Members

Namesort descending Modifiers Type Description Overrides
Basic::$paymentStatusManager protected property The payment status manager.
Basic::create public static function Creates an instance of the plugin. Overrides PaymentMethodBase::create
Basic::doCapturePayment public function Performs the actual payment capture. Overrides PaymentMethodBase::doCapturePayment
Basic::doCapturePaymentAccess public function Performs a payment method-specific access check for payment capture. Overrides PaymentMethodBase::doCapturePaymentAccess
Basic::doRefundPayment public function Performs the actual payment refund. Overrides PaymentMethodBase::doRefundPayment
Basic::doRefundPaymentAccess public function Performs a payment method-specific access check for payment refunds. Overrides PaymentMethodBase::doRefundPaymentAccess
Basic::getCapture public function Gets whether or not capture is supported.
Basic::getCaptureStatusId public function Gets the status to set on payment capture.
Basic::getEntityId public function Gets the ID of the payment method this plugin is for.
Basic::getExecuteStatusId public function Gets the status to set on payment execution.
Basic::getRefund public function Gets whether or not capture is supported.
Basic::getRefundStatusId public function Gets the status to set on payment refund.
Basic::getSettablePaymentStatuses public function Returns the statuses that can be set on a payment. Overrides PaymentMethodUpdatePaymentStatusInterface::getSettablePaymentStatuses
Basic::getSupportedCurrencies public function Returns the supported currencies. Overrides PaymentMethodBase::getSupportedCurrencies
Basic::updatePaymentStatusAccess public function Checks if the payment status can be updated. Overrides PaymentMethodUpdatePaymentStatusInterface::updatePaymentStatusAccess
Basic::__construct public function Constructs a new instance. Overrides PaymentMethodBase::__construct
DependencySerializationTrait::$_entityStorages protected property An array of entity type IDs keyed by the property name of their storages.
DependencySerializationTrait::$_serviceIds protected property An array of service IDs keyed by property name used for serialization.
DependencySerializationTrait::__sleep public function 1
DependencySerializationTrait::__wakeup public function 2
MessengerTrait::$messenger protected property The messenger. 29
MessengerTrait::messenger public function Gets the messenger. 29
MessengerTrait::setMessenger public function Sets the messenger.
PaymentAwareTrait::$payment protected property The payment.
PaymentAwareTrait::getPayment public function
PaymentAwareTrait::setPayment public function
PaymentMethodBase::$eventDispatcher protected property The event dispatcher.
PaymentMethodBase::$moduleHandler protected property The module handler.
PaymentMethodBase::$token protected property The token API.
PaymentMethodBase::buildConfigurationForm public function Form constructor. Overrides PluginFormInterface::buildConfigurationForm
PaymentMethodBase::calculateDependencies public function Calculates dependencies for the configured plugin. Overrides DependentPluginInterface::calculateDependencies
PaymentMethodBase::capturePayment public function Captures the payment. Overrides PaymentMethodCapturePaymentInterface::capturePayment
PaymentMethodBase::capturePaymentAccess public function Checks if the payment can be captured. Overrides PaymentMethodCapturePaymentInterface::capturePaymentAccess
PaymentMethodBase::defaultConfiguration public function Gets default configuration for this plugin. Overrides ConfigurableInterface::defaultConfiguration
PaymentMethodBase::doExecutePaymentAccess protected function Performs a payment method-specific access check for payment execution.
PaymentMethodBase::executePayment public function Executes the payment. Overrides PaymentMethodInterface::executePayment
PaymentMethodBase::executePaymentAccess public function Checks if the payment can be executed. Overrides PaymentMethodInterface::executePaymentAccess
PaymentMethodBase::executePaymentAccessCurrency protected function Checks a payment's currency against this plugin.
PaymentMethodBase::getCacheContexts public function The cache contexts associated with this object. Overrides CacheableDependencyInterface::getCacheContexts
PaymentMethodBase::getCacheMaxAge public function The maximum age for which this object may be cached. Overrides CacheableDependencyInterface::getCacheMaxAge
PaymentMethodBase::getCacheTags public function The cache tags associated with this object. Overrides CacheableDependencyInterface::getCacheTags
PaymentMethodBase::getConfiguration public function Gets this plugin's configuration. Overrides ConfigurableInterface::getConfiguration
PaymentMethodBase::getMessageText public function Gets the payer message text.
PaymentMethodBase::getMessageTextFormat public function Gets the payer message text format.
PaymentMethodBase::getPaymentCaptureResult public function Gets the payment capture status. Overrides PaymentMethodCapturePaymentInterface::getPaymentCaptureResult
PaymentMethodBase::getPaymentRefundResult public function Gets the payment refund status. Overrides PaymentMethodRefundPaymentInterface::getPaymentRefundResult
PaymentMethodBase::refundPayment public function Refunds the payment. Overrides PaymentMethodRefundPaymentInterface::refundPayment
PaymentMethodBase::refundPaymentAccess public function Checks if the payment can be refunded. Overrides PaymentMethodRefundPaymentInterface::refundPaymentAccess
PaymentMethodBase::setConfiguration public function Sets the configuration for this plugin instance. Overrides ConfigurableInterface::setConfiguration
PaymentMethodBase::submitConfigurationForm public function Form submission handler. Overrides PluginFormInterface::submitConfigurationForm
PaymentMethodBase::validateConfigurationForm public function Form validation handler. Overrides PluginFormInterface::validateConfigurationForm
PayPalBasic::$paymentExecutionResult protected property
PayPalBasic::doExecutePayment protected function Performs the actual payment execution. Overrides Basic::doExecutePayment
PayPalBasic::getPaymentExecutionResult public function Gets the payment execution status. Overrides PaymentMethodBase::getPaymentExecutionResult
PayPalBasic::getPaymentId public function
PayPalBasic::PAYPAL_CONTEXT_TYPE_ADMIN constant
PayPalBasic::PAYPAL_CONTEXT_TYPE_CREATE constant
PayPalBasic::PAYPAL_CONTEXT_TYPE_REDIRECT constant
PayPalBasic::PAYPAL_CONTEXT_TYPE_WEBHOOK constant
PayPalBasic::PAYPAL_DEFAULT_CURRENCY constant
PayPalBasic::setPaymentId private function
PayPalExpress::apiContext public static function
PayPalExpress::getApiContext public function {} Overrides PayPalBasic::getApiContext
PayPalExpress::getWebhookId public function Overrides PayPalBasic::getWebhookId
PayPalExpress::getWebhookUrl public function Overrides PayPalBasic::getWebhookUrl
PayPalExpress::webhookUrl public static function
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 3
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. 1
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.