Path: blob/master/src/applications/audit/query/DiffusionInternalCommitSearchEngine.php
12256 views
<?php12final class DiffusionInternalCommitSearchEngine3extends PhabricatorApplicationSearchEngine {45public function getResultTypeDescription() {6return pht('Diffusion Raw Commits');7}89public function getApplicationClassName() {10return 'PhabricatorDiffusionApplication';11}1213public function newQuery() {14return new DiffusionCommitQuery();15}1617protected function buildQueryFromParameters(array $map) {18$query = $this->newQuery();1920if ($map['repositoryPHIDs']) {21$query->withRepositoryPHIDs($map['repositoryPHIDs']);22}2324return $query;25}2627protected function buildCustomSearchFields() {28return array(29id(new PhabricatorSearchDatasourceField())30->setLabel(pht('Repositories'))31->setKey('repositoryPHIDs')32->setDatasource(new DiffusionRepositoryFunctionDatasource())33->setDescription(pht('Find commits in particular repositories.')),34);35}3637protected function getURI($path) {38return null;39}4041protected function renderResultList(42array $commits,43PhabricatorSavedQuery $query,44array $handles) {45return null;46}4748protected function getObjectWireFieldsForConduit(49$object,50array $field_extensions,51array $extension_data) {5253$commit = $object;54$viewer = $this->requireViewer();5556$repository = $commit->getRepository();57$identifier = $commit->getCommitIdentifier();5859id(new DiffusionRepositoryClusterEngine())60->setViewer($viewer)61->setRepository($repository)62->synchronizeWorkingCopyBeforeRead();6364$ref = id(new DiffusionLowLevelCommitQuery())65->setRepository($repository)66->withIdentifier($identifier)67->execute();6869return array(70'ref' => $ref->newDictionary(),71);72}7374}757677