Page MenuHomePhorge

ArcanistCommitUpstreamHardpointQuery.php
No OneTemporary

ArcanistCommitUpstreamHardpointQuery.php

<?php
final class ArcanistCommitUpstreamHardpointQuery
extends ArcanistWorkflowHardpointQuery {
public function getHardpoints() {
return array(
ArcanistCommitRef::HARDPOINT_UPSTREAM,
);
}
protected function canLoadRef(ArcanistRef $ref) {
return ($ref instanceof ArcanistCommitRef);
}
public function loadHardpoint(array $refs, $hardpoint) {
$repository_ref = (yield $this->yieldRepositoryRef());
if (!$repository_ref) {
yield $this->yieldValue($refs, null);
}
$repository_phid = $repository_ref->getPHID();
$commit_map = array();
foreach ($refs as $key => $ref) {
$hash = $ref->getCommitHash();
$commit_map[$hash][] = $key;
}
$commit_info = (yield $this->yieldConduit(
'diffusion.querycommits',
array(
'repositoryPHID' => $repository_phid,
'names' => array_keys($commit_map),
)));
$results = array();
foreach ($commit_map as $hash => $keys) {
$commit_phid = idx($commit_info['identifierMap'], $hash);
if ($commit_phid) {
$commit_data = idx($commit_info['data'], $commit_phid);
} else {
$commit_data = null;
}
foreach ($keys as $key) {
$results[$key] = $commit_data;
}
}
yield $this->yieldMap($results);
}
}

File Metadata

Mime Type
text/x-php
Expires
Mar 24 2025, 10:13 (6 w, 6 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
1205102
Default Alt Text
ArcanistCommitUpstreamHardpointQuery.php (1 KB)

Event Timeline