/**
  * @param Client  $client
  * @param Project $project
  * @param array   $data
  * @return MergeRequest
  */
 public static function fromArray(Client $client, Project $project, array $data)
 {
     $mr = new static($project, $data['id'], $client);
     if (isset($data['author'])) {
         $data['author'] = User::fromArray($client, $data['author']);
     }
     if (isset($data['assignee'])) {
         $data['assignee'] = User::fromArray($client, $data['assignee']);
     }
     if (isset($data['milestone'])) {
         $data['milestone'] = Milestone::fromArray($client, $project, $data['milestone']);
     }
     if (isset($data['files'])) {
         $files = array();
         foreach ($data['files'] as $file) {
             $files[] = File::fromArray($client, $project, $file);
         }
         $data['files'] = $files;
     }
     return $mr->hydrate($data);
 }
Beispiel #2
0
 /**
  * @param string $title
  * @param array $params
  * @return Milestone
  */
 public function createMilestone($title, array $params = array())
 {
     $params['title'] = $title;
     $data = $this->api('milestones')->create($this->id, $params);
     return Milestone::fromArray($this->getClient(), $this, $data);
 }