vaultPaymentMethod = $vaultPaymentMethod; $this->availabilityChecker = $availabilityChecker; $this->paymentTokenFormatter = $paymentTokenFormatter; $this->paymentAdditionalInformationProvider = $paymentAdditionalInformationProvider; } /** * Returns integrated vault payment method code. * * @return string */ public function getVaultCode(): string { return $this->vaultPaymentMethod->getCode(); } /** * Returns integrated vault payment method provider code. * * @return string */ public function getVaultProviderCode(): string { return $this->vaultPaymentMethod->getProviderCode(); } /** * Returns integrated vault payment method instance. * * @return VaultPaymentInterface */ public function getPaymentMethod(): VaultPaymentInterface { return $this->vaultPaymentMethod; } /** * @inheritdoc */ public function isAvailable(): bool { return $this->availabilityChecker->isAvailable(); } /** * @inheritdoc */ public function formatPaymentToken(PaymentTokenInterface $paymentToken): string { return $this->paymentTokenFormatter->formatPaymentToken($paymentToken); } /** * @inheritdoc */ public function getAdditionalInformation(PaymentTokenInterface $paymentToken): array { return $this->paymentAdditionalInformationProvider->getAdditionalInformation($paymentToken); } }