[ Index ]

PHP Cross Reference of Phabricator

title

Body

[close]

/src/applications/repository/storage/ -> PhabricatorRepositoryMirror.php (source)

   1  <?php
   2  
   3  final class PhabricatorRepositoryMirror extends PhabricatorRepositoryDAO
   4    implements PhabricatorPolicyInterface {
   5  
   6    protected $repositoryPHID;
   7    protected $remoteURI;
   8    protected $credentialPHID;
   9  
  10    private $repository = self::ATTACHABLE;
  11  
  12    public static function initializeNewMirror(PhabricatorUser $actor) {
  13      return id(new PhabricatorRepositoryMirror())
  14        ->setRemoteURI('');
  15    }
  16  
  17    public function getConfiguration() {
  18      return array(
  19        self::CONFIG_AUX_PHID => true,
  20        self::CONFIG_COLUMN_SCHEMA => array(
  21          'remoteURI' => 'text255',
  22          'credentialPHID' => 'phid?',
  23        ),
  24        self::CONFIG_KEY_SCHEMA => array(
  25          'key_repository' => array(
  26            'columns' => array('repositoryPHID'),
  27          ),
  28        ),
  29      ) + parent::getConfiguration();
  30    }
  31  
  32    public function generatePHID() {
  33      return PhabricatorPHID::generateNewPHID(
  34        PhabricatorRepositoryMirrorPHIDType::TYPECONST);
  35    }
  36  
  37    public function attachRepository(PhabricatorRepository $repository) {
  38      $this->repository = $repository;
  39      return $this;
  40    }
  41  
  42    public function getRepository() {
  43      return $this->assertAttached($this->repository);
  44    }
  45  
  46  
  47  /* -(  PhabricatorPolicyInterface  )----------------------------------------- */
  48  
  49  
  50    public function getCapabilities() {
  51      return array(
  52        PhabricatorPolicyCapability::CAN_VIEW,
  53        PhabricatorPolicyCapability::CAN_EDIT,
  54      );
  55    }
  56  
  57    public function getPolicy($capability) {
  58      return $this->getRepository()->getPolicy($capability);
  59    }
  60  
  61    public function hasAutomaticCapability($capability, PhabricatorUser $viewer) {
  62      return $this->getRepository()->hasAutomaticCapability($capability, $viewer);
  63    }
  64  
  65    public function describeAutomaticCapability($capability) {
  66      return null;
  67    }
  68  
  69  }


Generated: Sun Nov 30 09:20:46 2014 Cross-referenced by PHPXref 0.7.1