Page MenuHomePhabricator
Diviner Phabricator Tech Docs DiffusionCachedResolveRefsQuery

final class DiffusionCachedResolveRefsQuery
Phabricator Technical Documentation (Diffusion)

Resolves references into canonical, stable commit identifiers by examining database caches.

This is a counterpart to DiffusionLowLevelResolveRefsQuery. This query offers fast resolution, but can not resolve everything that the low-level query can.

This class can resolve the most common refs (commits, branches, tags) and can do so cheaply (by examining the database, without needing to make calls to the VCS or the service host).

Methods

protected function executeQuery()

This method is not documented.
Return
wild

public function setRepository($repository)
Inherited

This method is not documented.
Parameters
PhabricatorRepository$repository
Return
wild

public function getRepository()
Inherited

This method is not documented.
Return
wild

public function execute()
Inherited

This method is not documented.
Return
wild

protected function filterRefsByType($refs, $types)
Inherited

This method is not documented.
Parameters
array$refs
array$types
Return
wild

public function withRefs($refs)

This method is not documented.
Parameters
array$refs
Return
wild

public function withTypes($types)

This method is not documented.
Parameters
array$types
Return
wild

private function resolveGitAndMercurialRefs()

Resolve refs in Git and Mercurial repositories.

We can resolve commit hashes from the commits table, and branch and tag names from the refcursor table.

Return
wild

private function resolveSubversionRefs()

Resolve refs in Subversion repositories.

We can resolve all numeric identifiers and the keyword HEAD.

Return
wild