Changeset View
Changeset View
Standalone View
Standalone View
src/applications/diffusion/view/DiffusionPushLogListView.php
Show All 35 Lines | public function render() { | ||||
$flag_map = PhabricatorRepositoryPushLog::getFlagDisplayNames(); | $flag_map = PhabricatorRepositoryPushLog::getFlagDisplayNames(); | ||||
$reject_map = PhabricatorRepositoryPushLog::getRejectCodeDisplayNames(); | $reject_map = PhabricatorRepositoryPushLog::getRejectCodeDisplayNames(); | ||||
$rows = array(); | $rows = array(); | ||||
$any_host = false; | $any_host = false; | ||||
foreach ($logs as $log) { | foreach ($logs as $log) { | ||||
$repository = $log->getRepository(); | $repository = $log->getRepository(); | ||||
$event = $log->getPushEvent(); | |||||
if ($remotes_visible) { | if ($remotes_visible) { | ||||
$remote_address = $log->getPushEvent()->getRemoteAddress(); | $remote_address = $event->getRemoteAddress(); | ||||
} else { | } else { | ||||
$remote_address = null; | $remote_address = null; | ||||
} | } | ||||
$event_id = $log->getPushEvent()->getID(); | $event_id = $log->getPushEvent()->getID(); | ||||
$old_ref_link = null; | $old_ref_link = null; | ||||
if ($log->getRefOld() != DiffusionCommitHookEngine::EMPTY_HASH) { | if ($log->getRefOld() != DiffusionCommitHookEngine::EMPTY_HASH) { | ||||
Show All 19 Lines | foreach ($logs as $log) { | ||||
if (($flags & $flag_key) === $flag_key) { | if (($flags & $flag_key) === $flag_key) { | ||||
$flag_names[] = $flag_name; | $flag_names[] = $flag_name; | ||||
} | } | ||||
} | } | ||||
$flag_names = phutil_implode_html( | $flag_names = phutil_implode_html( | ||||
phutil_tag('br'), | phutil_tag('br'), | ||||
$flag_names); | $flag_names); | ||||
$reject_code = $log->getPushEvent()->getRejectCode(); | $reject_code = $event->getRejectCode(); | ||||
if ($reject_code == $reject_herald) { | if ($reject_code == $reject_herald) { | ||||
$rule_phid = $log->getPushEvent()->getRejectDetails(); | $rule_phid = $event->getRejectDetails(); | ||||
$handle = $viewer->renderHandle($rule_phid); | $handle = $viewer->renderHandle($rule_phid); | ||||
$reject_label = pht('Blocked: %s', $handle); | $reject_label = pht('Blocked: %s', $handle); | ||||
} else { | } else { | ||||
$reject_label = idx( | $reject_label = idx( | ||||
$reject_map, | $reject_map, | ||||
$reject_code, | $reject_code, | ||||
pht('Unknown ("%s")', $reject_code)); | pht('Unknown ("%s")', $reject_code)); | ||||
} | } | ||||
$host_wait = $this->formatMicroseconds($event->getHostWait()); | |||||
$write_wait = $this->formatMicroseconds($event->getWriteWait()); | |||||
$read_wait = $this->formatMicroseconds($event->getReadWait()); | |||||
$hook_wait = $this->formatMicroseconds($event->getHookWait()); | |||||
$rows[] = array( | $rows[] = array( | ||||
phutil_tag( | phutil_tag( | ||||
'a', | 'a', | ||||
array( | array( | ||||
'href' => '/diffusion/pushlog/view/'.$event_id.'/', | 'href' => '/diffusion/pushlog/view/'.$event_id.'/', | ||||
), | ), | ||||
$event_id), | $event_id), | ||||
phutil_tag( | phutil_tag( | ||||
'a', | 'a', | ||||
array( | array( | ||||
'href' => $repository->getURI(), | 'href' => $repository->getURI(), | ||||
), | ), | ||||
$repository->getDisplayName()), | $repository->getDisplayName()), | ||||
$viewer->renderHandle($log->getPusherPHID()), | $viewer->renderHandle($log->getPusherPHID()), | ||||
$remote_address, | $remote_address, | ||||
$log->getPushEvent()->getRemoteProtocol(), | $event->getRemoteProtocol(), | ||||
$device, | $device, | ||||
$log->getRefType(), | $log->getRefType(), | ||||
$log->getRefName(), | $log->getRefName(), | ||||
$old_ref_link, | $old_ref_link, | ||||
phutil_tag( | phutil_tag( | ||||
'a', | 'a', | ||||
array( | array( | ||||
'href' => $repository->getCommitURI($log->getRefNew()), | 'href' => $repository->getCommitURI($log->getRefNew()), | ||||
), | ), | ||||
$log->getRefNewShort()), | $log->getRefNewShort()), | ||||
$flag_names, | $flag_names, | ||||
$reject_label, | $reject_label, | ||||
$viewer->formatShortDateTime($log->getEpoch()), | $viewer->formatShortDateTime($log->getEpoch()), | ||||
$host_wait, | |||||
$write_wait, | |||||
$read_wait, | |||||
$hook_wait, | |||||
); | ); | ||||
} | } | ||||
$table = id(new AphrontTableView($rows)) | $table = id(new AphrontTableView($rows)) | ||||
->setHeaders( | ->setHeaders( | ||||
array( | array( | ||||
pht('Push'), | pht('Push'), | ||||
pht('Repository'), | pht('Repository'), | ||||
pht('Pusher'), | pht('Pusher'), | ||||
pht('From'), | pht('From'), | ||||
pht('Via'), | pht('Via'), | ||||
pht('Host'), | pht('Host'), | ||||
pht('Type'), | pht('Type'), | ||||
pht('Name'), | pht('Name'), | ||||
pht('Old'), | pht('Old'), | ||||
pht('New'), | pht('New'), | ||||
pht('Flags'), | pht('Flags'), | ||||
pht('Result'), | pht('Result'), | ||||
pht('Date'), | pht('Date'), | ||||
pht('Host Wait'), | |||||
pht('Write Wait'), | |||||
pht('Read Wait'), | |||||
pht('Hook Wait'), | |||||
)) | )) | ||||
->setColumnClasses( | ->setColumnClasses( | ||||
array( | array( | ||||
'', | '', | ||||
'', | '', | ||||
'', | '', | ||||
'', | '', | ||||
'', | '', | ||||
'', | '', | ||||
'', | '', | ||||
'wide', | 'wide', | ||||
'n', | 'n', | ||||
'n', | 'n', | ||||
'', | '', | ||||
'', | '', | ||||
'right', | 'right', | ||||
'n right', | |||||
'n right', | |||||
'n right', | |||||
'n right', | |||||
)) | )) | ||||
->setColumnVisibility( | ->setColumnVisibility( | ||||
array( | array( | ||||
true, | true, | ||||
true, | true, | ||||
true, | true, | ||||
$remotes_visible, | $remotes_visible, | ||||
true, | true, | ||||
$any_host, | $any_host, | ||||
)); | )); | ||||
return $table; | return $table; | ||||
} | } | ||||
private function formatMicroseconds($duration) { | |||||
if ($duration === null) { | |||||
return null; | |||||
} | |||||
return pht('%sus', new PhutilNumber($duration)); | |||||
} | |||||
} | } |