arch-8.x-1.x-dev/modules/product/modules/downloadable/src/DownloadUrlBuilderInterface.php
modules/product/modules/downloadable/src/DownloadUrlBuilderInterface.php
<?php namespace Drupal\arch_downloadable_product; use Drupal\arch_product\Entity\ProductInterface; use Drupal\file\FileInterface; use Drupal\user\UserInterface; /** * Download URL builder interface. * * @package Drupal\arch_downloadable_product */ interface DownloadUrlBuilderInterface { /** * Get token for URL. * * @param \Drupal\arch_product\Entity\ProductInterface $product * Product entity. * @param \Drupal\file\FileInterface $file * File instance to download. * @param \Drupal\user\UserInterface $account * Customer account. * * @return string * Token. */ public function getToken(ProductInterface $product, FileInterface $file, UserInterface $account); /** * Get download url. * * @param \Drupal\arch_product\Entity\ProductInterface $product * Product entity. * @param \Drupal\file\FileInterface $file * Purchased file. * @param \Drupal\user\UserInterface $account * Customer account. * * @return \Drupal\Core\Url * Generated URL. */ public function getDownloadUrl(ProductInterface $product, FileInterface $file, UserInterface $account); }