[ Index ] |
PHP Cross Reference of Phabricator |
[Summary view] [Print] [Text view]
1 <?php 2 3 final class ReleephQueryRequestsConduitAPIMethod 4 extends ReleephConduitAPIMethod { 5 6 public function getAPIMethodName() { 7 return 'releeph.queryrequests'; 8 } 9 10 public function getMethodDescription() { 11 return 12 'Return information about all Releeph requests linked to the given ids.'; 13 } 14 15 public function defineParamTypes() { 16 return array( 17 'revisionPHIDs' => 'optional list<phid>', 18 'requestedCommitPHIDs' => 'optional list<phid>', 19 ); 20 } 21 22 public function defineReturnType() { 23 return 'dict<string, wild>'; 24 } 25 26 public function defineErrorTypes() { 27 return array(); 28 } 29 30 protected function execute(ConduitAPIRequest $conduit_request) { 31 $revision_phids = $conduit_request->getValue('revisionPHIDs'); 32 $requested_commit_phids = 33 $conduit_request->getValue('requestedCommitPHIDs'); 34 $result = array(); 35 36 if (!$revision_phids && !$requested_commit_phids) { 37 return $result; 38 } 39 40 $query = new ReleephRequestQuery(); 41 $query->setViewer($conduit_request->getUser()); 42 43 if ($revision_phids) { 44 $query->withRequestedObjectPHIDs($revision_phids); 45 } else if ($requested_commit_phids) { 46 $query->withRequestedCommitPHIDs($requested_commit_phids); 47 } 48 49 $releephRequests = $query->execute(); 50 51 foreach ($releephRequests as $releephRequest) { 52 $branch = $releephRequest->getBranch(); 53 54 $request_commit_phid = $releephRequest->getRequestCommitPHID(); 55 56 $object = $releephRequest->getRequestedObject(); 57 if ($object instanceof DifferentialRevision) { 58 $object_phid = $object->getPHID(); 59 } else { 60 $object_phid = null; 61 } 62 63 $status = $releephRequest->getStatus(); 64 $statusName = ReleephRequestStatus::getStatusDescriptionFor($status); 65 $url = PhabricatorEnv::getProductionURI('/RQ'.$releephRequest->getID()); 66 67 $result[] = array( 68 'branchBasename' => $branch->getBasename(), 69 'branchSymbolic' => $branch->getSymbolicName(), 70 'requestID' => $releephRequest->getID(), 71 'revisionPHID' => $object_phid, 72 'status' => $status, 73 'statusName' => $statusName, 74 'url' => $url, 75 ); 76 } 77 78 return $result; 79 } 80 81 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Sun Nov 30 09:20:46 2014 | Cross-referenced by PHPXref 0.7.1 |