Inheritance: use trait LinksTrait, use trait MetaTrait
Ejemplo n.º 1
0
 /**
  * @param mixed $model
  * @return Relationship
  */
 public function profile($model)
 {
     $serializer = new AuthProfileSerializer();
     $relationship = new Relationship(new Resource($model->getUser(), $serializer));
     $relationship->setLinks(['related' => '%apiurl%' . $serializer->getType(null) . '/' . $serializer->getId($model)]);
     return $this->addRelationshipSelfLink($relationship, $model, 'profile');
 }
Ejemplo n.º 2
0
 /**
  *
  * @param Relationship $relationship
  * @param mixed $model
  * @param string $related
  * @return Relationship
  */
 protected function addRelationshipSelfLink(Relationship $relationship, $model, $related)
 {
     $links = $relationship->getLinks();
     $links = !is_array($links) ? [] : $links;
     $links = array_merge($links, ['self' => $this->getSelf($model) . '/relationships/' . $related]);
     $relationship->setLinks($links);
     return $relationship;
 }
Ejemplo n.º 3
0
 /**
  * @param mixed $model
  * @return Relationship
  */
 public function action($model)
 {
     $serializer = Action::getSerializer();
     $id = $serializer->getId($model->getAction());
     if ($id !== null) {
         $relationship = new Relationship(new Resource($model->getAction(), $serializer));
         $relationship->setLinks(['related' => '%apiurl%' . $serializer->getType(null) . '/' . $id]);
         return $this->addRelationshipSelfLink($relationship, $model, 'action');
     }
     return null;
 }
Ejemplo n.º 4
0
 /**
  * @param mixed $model
  * @return Relationship
  */
 public function performanceTotalStatistic($model)
 {
     $serializer = PerformanceStatistic::getSerializer();
     $id = $serializer->getId($model->getPerformanceTotalStatistic());
     if ($id !== null) {
         $relationship = new Relationship(new Resource($model->getPerformanceTotalStatistic(), $serializer));
         $relationship->setLinks(['related' => '%apiurl%' . $serializer->getType(null) . '/' . $id]);
         return $this->addRelationshipSelfLink($relationship, $model, 'performance-total-statistic');
     }
     return null;
 }