1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-11-10 00:42:41 +01:00

Add repository parameter to diffusion.findsymbols method

Summary: Ref T7977. Add a repository parameter to the `diffusion.findsymbols` Conduit method to allow restricting search results to the specified repository.

Test Plan: Queried the Conduit endpoint.

Reviewers: avivey, epriestley, #blessed_reviewers

Reviewed By: avivey, epriestley, #blessed_reviewers

Subscribers: eadler, avivey, Korvin, epriestley

Maniphest Tasks: T7977

Differential Revision: https://secure.phabricator.com/D12663
This commit is contained in:
Joshua Spence 2015-05-05 07:36:04 +10:00
parent f83e12c943
commit 2cc898a63f

View file

@ -13,11 +13,12 @@ final class DiffusionFindSymbolsConduitAPIMethod
protected function defineParamTypes() {
return array(
'name' => 'optional string',
'namePrefix' => 'optional string',
'context' => 'optional string',
'language' => 'optional string',
'type' => 'optional string',
'name' => 'optional string',
'namePrefix' => 'optional string',
'context' => 'optional string',
'language' => 'optional string',
'type' => 'optional string',
'repositoryPHID' => 'optional string',
);
}
@ -31,6 +32,7 @@ final class DiffusionFindSymbolsConduitAPIMethod
$context = $request->getValue('context');
$language = $request->getValue('language');
$type = $request->getValue('type');
$repository = $request->getValue('repositoryPHID');
$query = id(new DiffusionSymbolQuery())
->setViewer($request->getUser());
@ -49,6 +51,9 @@ final class DiffusionFindSymbolsConduitAPIMethod
if ($type !== null) {
$query->setType($type);
}
if ($repository !== null) {
$query->withRepositoryPHIDs(array($repository));
}
$query->needPaths(true);
$query->needRepositories(true);
@ -64,13 +69,14 @@ final class DiffusionFindSymbolsConduitAPIMethod
}
$response[] = array(
'name' => $result->getSymbolName(),
'context' => $result->getSymbolContext(),
'type' => $result->getSymbolType(),
'language' => $result->getSymbolLanguage(),
'path' => $result->getPath(),
'line' => $result->getLineNumber(),
'uri' => $uri,
'name' => $result->getSymbolName(),
'context' => $result->getSymbolContext(),
'type' => $result->getSymbolType(),
'language' => $result->getSymbolLanguage(),
'path' => $result->getPath(),
'line' => $result->getLineNumber(),
'uri' => $uri,
'repositoryPHID' => $result->getRepository()->getPHID(),
);
}