Merge pull request #8810 from heddn/8809_expand_context_post_file_download
#8809: expand context for post file download eventpull/8836/head
commit
d6a9d78309
|
@ -141,7 +141,7 @@ class FileDownloader implements DownloaderInterface, ChangeReportInterface
|
||||||
->then($accept, $reject);
|
->then($accept, $reject);
|
||||||
}
|
}
|
||||||
|
|
||||||
return $result->then(function ($result) use ($fileName, $checksum, $url, $eventDispatcher) {
|
return $result->then(function ($result) use ($fileName, $checksum, $url, $package, $eventDispatcher) {
|
||||||
// in case of retry, the first call's Promise chain finally calls this twice at the end,
|
// in case of retry, the first call's Promise chain finally calls this twice at the end,
|
||||||
// once with $result being the returned $fileName from $accept, and then once for every
|
// once with $result being the returned $fileName from $accept, and then once for every
|
||||||
// failed request with a null result, which can be skipped.
|
// failed request with a null result, which can be skipped.
|
||||||
|
@ -159,7 +159,7 @@ class FileDownloader implements DownloaderInterface, ChangeReportInterface
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($eventDispatcher) {
|
if ($eventDispatcher) {
|
||||||
$postFileDownloadEvent = new PostFileDownloadEvent(PluginEvents::POST_FILE_DOWNLOAD, $fileName, $checksum, $url['processed']);
|
$postFileDownloadEvent = new PostFileDownloadEvent(PluginEvents::POST_FILE_DOWNLOAD, $fileName, $checksum, $url['processed'], $package);
|
||||||
$eventDispatcher->dispatch($postFileDownloadEvent->getName(), $postFileDownloadEvent);
|
$eventDispatcher->dispatch($postFileDownloadEvent->getName(), $postFileDownloadEvent);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
namespace Composer\Plugin;
|
namespace Composer\Plugin;
|
||||||
|
|
||||||
use Composer\EventDispatcher\Event;
|
use Composer\EventDispatcher\Event;
|
||||||
use Composer\Util\RemoteFilesystem;
|
use Composer\Package\PackageInterface;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The post file download event.
|
* The post file download event.
|
||||||
|
@ -38,6 +38,11 @@ class PostFileDownloadEvent extends Event
|
||||||
*/
|
*/
|
||||||
private $url;
|
private $url;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var \Composer\Package\PackageInterface
|
||||||
|
*/
|
||||||
|
private $package;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructor.
|
* Constructor.
|
||||||
*
|
*
|
||||||
|
@ -45,13 +50,15 @@ class PostFileDownloadEvent extends Event
|
||||||
* @param string $fileName The file name
|
* @param string $fileName The file name
|
||||||
* @param string|null $checksum The checksum
|
* @param string|null $checksum The checksum
|
||||||
* @param string $url The processed url
|
* @param string $url The processed url
|
||||||
|
* @param PackageInterface $package The package.
|
||||||
*/
|
*/
|
||||||
public function __construct($name, $fileName, $checksum, $url)
|
public function __construct($name, $fileName, $checksum, $url, PackageInterface $package)
|
||||||
{
|
{
|
||||||
parent::__construct($name);
|
parent::__construct($name);
|
||||||
$this->fileName = $fileName;
|
$this->fileName = $fileName;
|
||||||
$this->checksum = $checksum;
|
$this->checksum = $checksum;
|
||||||
$this->url = $url;
|
$this->url = $url;
|
||||||
|
$this->package = $package;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -82,4 +89,14 @@ class PostFileDownloadEvent extends Event
|
||||||
return $this->url;
|
return $this->url;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the package.
|
||||||
|
*
|
||||||
|
* @return \Composer\Package\PackageInterface
|
||||||
|
* The package.
|
||||||
|
*/
|
||||||
|
public function getPackage() {
|
||||||
|
return $this->package;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue